Jump to content

I'm just a sad starter


Bardess

Recommended Posts

Heya all! I don’t know if this has already been explained somewhere (sorry), but I would beg someone to tell me the basics of making a mod for BG2. (or redirect me to the right place)

 

I often write things (songs, stories, etc) and have tried to write a mod for BG2, but for now I have no idea how people hacked into the game and made all those incredible mods real. I've searched through some places on the net, but I still can't get along. What program do you use to open (and create) all those strange format files? :p

 

In particular, I’d like to know about inputing a joinable NPC and stuff. If much programming is needed for that and if you think a starter such as myself wouldn’t make it, then please tell me if someone would be willing to help me (someday, nothing’s finished yet). But I would like to know how you do it anyway, for I prefer messing in things on my own. :p

 

Cheers! (and apologies...)

 

Edit: Heh, and wrong forum, I see.

 

Anyway, I've seen talk about Ghrey's tutorial. Where do I find that?

Link to comment
In particular, I’d like to know about inputing a joinable NPC and stuff. If much programming is needed for that and if you think a starter such as myself wouldn’t make it, then please tell me if someone would be willing to help me (someday, nothing’s finished yet). But I would like to know how you do it anyway, for I prefer messing in things on my own.

 

I strongly recommend that you learn how to code yourself. Then you're not depending on someone else to code or fix bugs. It's not that's hard to learn after all, even though at first it might seem like it is. Plus, when you understand what can be done in the limits of IE, the writing itself is easier and you don't end up making up things that can't be done in IE.

 

Here's Ghreyfain's tutorial. There's also another tutorial on NPC creation that you might find useful: N00b's Guide to NPC Creation, by Theacefes.

 

Theacefes's tutorial also gives you links to the tools you need. In addition, IESDP (Infinity Engine Structures Description Project) will become a valuable resource once you've gotten the basics of coding.

Link to comment

No, this could well be the right forum. You have a question, after all. As it turns out, the answer is right here, and also on PPG, and on Chosen of Mystra, with parallels on several other forums.

 

First of all, let me say that it is possible for a non-programmer to learn to do this. I'm learning, and I've never trusted anything with a plug.

 

This topic might be easier to understand than Ghreyfain's tutorial. You will eventually want to look at that, too, because it's just a good idea, but here are a couple links to get you started.

 

How to make an NPC if you are a nOOb Quite good, really.

 

A beginner's guide to NPC creation with WeiDU This is the Ghreyfain one.

 

The road to banter, by Blue the Immortal Bard Essential, because you are going to want to write your banters immediately after you get your joining dialogue down.

 

WeiDU basics It's going to be tough going, but you're going to need to learn WeiDU eventually. Just be patient, and take it slow. If it doesn't make sense, set it aside for a while and work on something else. You can always try again later.

 

SimDingO's Guide to Scripting Highly useful, but advanced. You're going to need this, but not right away.

 

Romance authoring tutorial Also contains useful information for any NPC, really. The only difference between a friendship talk and a lovetalk is the content, so this will help you regardless. Might be better if your first attempt at an NPC isn't romanceable. Mine was, and there were a lot of times I threw up my hands in frustration.

 

CHAIN is so much cooler... Learning to use CHAIN, a very powerful dialogue tool.

 

Let's abuse CHAIN together Another take on CHAIN, also very informative

 

How to make an interjection Incredibly useful, but wait until you learn to write banters before trying it.

 

If your head has not yet exploded, I wish you well.

Link to comment

Yay! Thanks! :p

 

I've been following one of the guides and installed some testing npc, but I can't seem to find him on the map! Those coordinates are confusing me. Hope I'll find a way to make him appear where I want. :p

Link to comment
If you have debug mode enabled, you can find a likely spot and hit CTRL-X to get the coordinates of the pointer. That will give you the x coordinate, the y coordinate, the tile coordinates, and the area.

 

The funny thing is, a year and a half I've been modding without knowing this, and finding coordinates by hand. Sigh. On the other hand, I was still able to release a mod, which, I suppose, counts for something.

Link to comment

Hm, I'll try to find the coordinates that way. But I tried it with those given in a guide, when the NPC appears in Copper Coronet, and still it didn't work. I think it's not just that.

The NPC was nowhere to be found. Then I was messing both in the script file for the area that I made in my mod folder (I think I had an error somewhere in it), and the .CRE file. After some changes done, the game started crushing when I try to enter the Copper Coronet. After some more messing, acces to the tavern was possible again, but now the NPC spawned endlessly and walked to my character, but neither of them could be talked to. It was really freaky! :p So, now I've come to a state where once again upon entering the tavern there is no NPC of mine.

That's it for me for not making exactly Vondo or John NPCs!

Link to comment

Yeah, you might want to make Vondo or John until you get the hang of it.

 

Endless spawns usually means that you didn't include a global to tell it to stop.

 

This is what I've got in Gavin's area script (since I'm doing Tutu, it's _AR3400)

 

/* Adding Gavin to the Beregost Temple Area, Tutu */
IF
AreaCheck("FW3400")
Global("B!GavinExists","GLOBAL",0)
THEN
RESPONSE #100
SetGlobal("B!GavinExists","GLOBAL",1)
CreateCreature("B!GAVIN",[728.1474],3)
Continue()
END

 

When you say that your npc walks up to the player, but never actually starts talking, that sounds like a script/dialogue assignment issue.

 

This goes in my tp2, and assigns both an override script and a dialogue file to him. I'm assuming that since you want him to walk up to the pc and start talking? You'd use INITDLG.bcs as a default script, then.

 

This goes in the tp2 to assign scripts:

 

//Creature copying and naming
COPY ~Gavin/CRE/B!GAVIN.CRE~ ~override~
SAY NAME1 ~Gavin~
SAY NAME2 ~Gavin~
WRITE_ASCII 0x248 ~B!GAVIN~ #8 // override script assignment
WRITE_ASCII 0x2cc ~B!GAVIN~ #8 // dialogue file assignment

Link to comment

My area script looked a little different, but it's how it looks in the guide.

Noticed something strange. When in NI, in my .cre file on the view panel some scripts are blue and underlined, while the override script is gray! In the guide it says to type J#Vondo in the slot for override script (that's W#fiars for me), but it won't update. I've tried with W#fiars.bcs (or whatever the format of those scripts from the list is), but it won't accept it (maybe because that file doesn't exist yet, but what do I do about it?).

Now I understand why there are so many uncompleted mods out there. My second day working on it (not counting what I wrote before), and I'm already sick of it! WHY WON'T HE APPEAR??? :p

 

I don't have any lines like these. What's with the 0x248, 0x2cc and #8?

 

WRITE_ASCII 0x248 ~B!GAVIN~ #8

WRITE_ASCII 0x2cc ~B!GAVIN~ #8

Link to comment

That's what assigns the script and the dialogue file. That way I don't have to edit them with NI, apart from setting the DV and default script, and even that can be done in the tp2.

 

There are different ways to do things.

 

When you edit a CRE, you can only update to scripts that are already installed, which is why I put those 2 lines in.

 

 

0x248 and 0x2cc are the fields that get the files named B!GAVIN. #8 is the max number of characters it can have.

 

Here's the whole set, for a different CRE:

 

COPY ~GAVIN/CRE/B!DARLOS.CRE~ ~override~

SAY NAME1 ~Darlos~

SAY NAME2 ~Darlos~

WRITE_ASCII 0x248 ~B!DARLOS~ #8 // override

WRITE_ASCII 0x2cc ~B!DARLOS~ #8 // dialogue

WRITE_ASCII 0X34 ~bdarlos~ #8 //small portrait

WRITE_ASCII 0x280 ~B!DARLOS~ #32 //DV

Link to comment

Ok, I'll try from the beginning and if I don't make it then, I'm posting my .d, .tp2 files and the contents of my cre file here. Sure, If I write all the conversations and make my portraits and sounds, I'd be grateful if someone else could fix it all for me to work, but I'd prefer to be able to test it and experiment on my own.

 

Btw, NI won't open myNPC's small portrait, though I can use it in the game for my PC. Says "error" and then a lot of numbers when I click on it in NI and it won't show the portrait in the CRE file (says no small portrait). Have any idea what I could have done wrong?

 

There must be some mistake I made, but it's hard to find as this is all new to me now. Why does it have to be this complicated? :p

 

More questions: is the kickout dialogue typed in the same file as the first one? And what about the other lalalaJ, lalalaB, lala25J and such, do I make new .d files, or put them all in the same one?

Link to comment

I know it sounds confusing, but you really will catch on. Going word for word is a good bet.

 

You are absolutely correct when you put forth that the best way to do it is to do it yourself. Sometimes, a writer and coder with compatible ideas meet and the end result is a thing of beauty, but it is as rare as true love, or even moreso, because the potential pool of candidates is smaller. It's much more certain to result in a completed NPC when the writer and the coder are the same person.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...