Help Requested: Vondo does not have a name!
karnage
Member Posts: 92
Hi, sorry to be such a bother.
This character I am trying to create, "Vondo"; I have him tagging along in a game I am running. He has no name,: Dialog boxes, control tip text, character sheet. The commands to give him a name were included in my .tp2 file so I do not understand this.
This character I am trying to create, "Vondo"; I have him tagging along in a game I am running. He has no name,: Dialog boxes, control tip text, character sheet. The commands to give him a name were included in my .tp2 file so I do not understand this.
0
Comments
If the COPY occurs in ACTION_IF block, make sure the check passes and the block is actually executed.
If you're installing on vanilla BG2 (not BG2EE) and you have a copy of dialog.tlk in "lang" subfolder like I do (to satisfy latest versions of DLTCEP), then make sure to copy it back to your main game folder after installing your mod, since weidu will be using that .tlk, not the one actually used by the game.
Here is my .tp2:
BACKUP ~zkwmod01vondo\backup~
AUTHOR ~ghreyfain@pocketplane.net~
BEGIN ~Vondo the NPC for BG2:ToB~
// The following is the copying of Vondo's portraits
COPY ~zkwmod01vondo\kwvondol.bmp~ ~portraits\vondol.bmp~
COPY ~zkwmod01vondo\kwvondos.bmp~ ~portraits\vondos.bmp~
// The following is the copying of Vondo's .cre file.
COPY ~zkwmod01vondo\KWVondo.cre~ ~override\Vondo.cre~
// The following is assigning Vondo's name to the CRE file.
SAY NAME1 ~Vondo~
SAY NAME2 ~Vondo~
// The following is assigning Vondo's sound sets.
SAY SELECT_COMMON4 ~Blah blah blah.~ [Vondo1] // [Vondo1] is the name of the .wav
SAY SELECT_COMMON5 ~Give the word.~ [Vondo2]
SAY SELECT_COMMON6 ~Point the way.~ [Vondo3]
SAY SELECT_ACTION1 ~I'm on the job.~ [Vondo4]
SAY SELECT_ACTION2 ~As you wish.~ [Vondo5]
// The following is telling WeiDU to compile the .d files
COMPILE ~zkwmod01vondo\kwvondo.d~
// The following is compilling the script and placing it in the override.
COMPILE ~zkwmod01vondo\kwVondo.baf~
// The following is appending what we wrote in AR1000.baf to the bottom of
// AR1000.bcs
EXTEND_TOP ~Ar1000.bcs~ ~zkwmod01vondo\ar1000.baf~
--------------
PS -- I am working on a 2nd TP2 that will replace EXTEND_TOP with EXTEND_BOTTOM as has been recommended to me, but I'm saving those changes elsewhere until I uninstall what I already have, if that makes sense.
These are the forums for the Enhanced Edition games, after all.
EEs have the dialog.tlk under "lang" subfolder in your installation folder, while the BG2 vanilla has it in the main folder (one with the baldur.exe and chitin.key files). If you're modding non-EE BG2, and you have created the lang subfolder and copied the .tlk in there for whatever reason (I did so because DLTCEP editor complains otherwise), then weidu will append any new strrefs to that file, instead of the one in the installation folder. That might cause the problem you're having (missing strrefs), which is why I brought it up.
I don't see anything wrong with your TP2 code, except maybe the portraits usually go into override folder too (unless you specifically want them to be selectable as an option for the player during character creation). So it installs without any errors or warnings (check the .DEBUG file to make sure), but the NPC still has no name? Have you tried re-installing to be sure? Check if he has a name if you open the CRE file in Near Infinity.
---------------------------
I completely removed everything Vondo, went through the files with fine toothed combs, made sure all filenames were consistent with each other and reinstalled.
---------------------------
The Kickout is still not working;
I found my mistake. The variable name still says "zkwvondojoined" but everywhere else the variable name is "zkwvond-------", LoL. Details, details, details ... I'll un/reinstall and check it again.
---------------------------
Something else, though. Here is my .baf script:
//*Combat*
IF
AttackedBy([ANYONE],DEFAULT)
THEN
RESPONSE #100
AttackReevaluate(LastAttackerOf(Myself),30)
END
IF
See(NearestEnemyOf(Myself))
THEN
RESPONSE #100
AttackReevaluate(NearestEnemyOf(Myself),30)
END
// * Initiates dialog
IF
See([PC])
NumTimesTalkedTo(0)
THEN
RESPONSE #100
Dialogue(Nearest([PC]))
END
-----------------------------
When attacked, Vondo does attack back, as I want him to, but the circle does not turn red. In all this redoing and undoing, I once had it working so that it did turn red and he was an enemy; I have no idea what I did different last time.
Still not working (kickout)
Here is the kickout script:
BEGIN zkwVondP
IF ~Global("zkwVondJoined","LOCALS",1)~ THEN BEGIN KickOut
SAY ~You are now kicking me out.~
IF ~~ THEN REPLY ~No! Forgive my mispoken words. We want you to stay in the party.~ DO ~JoinParty()~ EXIT
IF ~~ THEN REPLY ~I do not need you in the party right now.~ DO ~SetGlobal("zkwVondJoined","LOCALS",0)~ EXIT
END
IF ~Global("ZkwVondJoined","LOCALS",0)~ THEN BEGIN Rejoin
SAY ~You want me to rejoin?~
IF ~~ THEN REPLY ~That's right Vondo, get back in formation.~ DO ~SetGlobal("zkwVondJoined","LOCALS",1)
JoinParty()~ EXIT
IF ~~ THEN REPLY ~That's right, I don't want you in the party.~ EXIT
END
---------------------------------
Instead, he says, "It has been a pleasure adventuring with you" and I have 2 responses: "Get back in the party" or "Bye".
As for the kickout dialog, check the char's scripts. Probably one of them is the default multiplayer DPLAYER3.BCS, which sets the dialog to MULTIG on kick-out. Removing the script should fix that.
The CRE files in my OVERRIDE and my source folder (ZKWVOND) have the correct DLG and Default Script files listed.
But the CRE file in my BALDUR.GAM has been changed from ZKWVOND.DLG to MULTIG.DLG; the default script has been changed to DPLAYER2; the other characters in the game are also DPLAYER2 but the default script reflects their correct default scripts rather than MULTIG.DLG; so for some reason, after bringing Vondo into the game, the source .DLG file was changed.
Could this be because BG2 could not find a ZKWVONDJ file?
// This appends to the pdiag file; the first is the death variable, then the P file (before joining);
// then the J file (joined); then the D file (dream script); the remaining are TOB files.
// Beyond the death variable, these must conform to old DOS rules.
APPEND ~pdialog.2da~
~zkwVondDeath zkwVondP zkwVondJ zkwVondD zVond25P zVond25J zVond25D zVond25~
UNLESS ~zkwVondDeath~
// The Interdia.2da file is for party banter and romance dialogs.
APPEND ~interdia.2da~
~zkwVondDeath zkwvondB zvondB25~
UNLESS ~zkwVondDeath~
I hate it when I ask questions I already have the answer to, LoL!