Note: LucasForums Archive Project
The content here was reconstructed by scraping the Wayback Machine in an effort to restore some of what was lost when LF went down. The LucasForums Archive Project claims no ownership over the content or assets that were archived on archive.org.

This project is meant for research purposes only.

Help on a Recruitment Mod

Page: 1 of 1
 JediMaster76
05-17-2008, 11:41 PM
#1
Hello everybody. I recently got back into modding attempts, and I'm stuck at an roadblock here. I'm attempting to spawn a Jedi character, Zaen, on Dantooine near one of the large trees on the Matale grounds. He should replace T3, however, I can't even get him to appear! :P

The trigger for his spawn script is set when Master Dorak explains that the "ruins have been known to them, but assumed they were burial mounds, etc." However, after I am allowed to leave the sanctuary and I head to where he should spawn, he never appears.

It would really help if someone who has a save game in that area (Dantooine, before fighting Juhanni) could run through my mod and tell me what I'm doing wrong... or at the very least, examine the scripts/dlg files I'm using to make sure its done correctly. Here's the Mediafire link...

http://www.mediafire.com/?bj1lb5ddxlt)

Thanks guys.
 DarthNandis
05-17-2008, 11:49 PM
#2
You need to put the trigger on the module that he will appear.

E.g.: For spawning the npc on the Matale Grounds, youll need to set the trigger on "Matale Grounds", not the academy.

=]
 JediMaster76
05-17-2008, 11:58 PM
#3
Hmm... so to make it simpler, I could make it so that when the PC talks to Nemo or that guy who wants the Mandalorians killed, he spawns in front of the ruins?

--edit--

I changed the spawn script so it is fire when you talk to Nemo and he says the stuff about nature and the Force (when you first meet him). However, I still can't get Zaen to appear outside of the ruins... could someone look over the files and make sure I did everything right? I feel as though I'm missing something.

*Updated download link* - http://www.mediafire.com/?2jybvfht9ce)
 HdVaderII
05-18-2008, 12:39 PM
#4
Do you have the right x,y,z coordinates?
 EnderWiggin
05-18-2008, 1:02 PM
#5
Yeah, that's not the problem.

The major thing I see is the tag.

You still have the tag set to T3M4 instead of p_zaen.

And not only that, in your script, you reference the resref "p_zaenbenax" which is your filename, and not the actual resref, p_zaen.

Use the same name for everything to help keep yourself straight.

So to recap:
Set the tag and template resref fields to the same thing, and then use that in your spawn_zaen script instead of p_zaenbenax.

HTH.

_EW_
 JediMaster76
05-18-2008, 5:58 PM
#6
Well, I changed the tag and the template resref to p_zaen, and all references of it (the spawn script for example) have also been changed to match it. However, he still won't appear! And yes, I have the coordinates right (whereami says he should spawn at 319.89, 85.24, and 1.87), so I don't know what the problem could be... would starting a new game help, because its autosaved right before I talk to Nemo...
 EnderWiggin
05-18-2008, 10:08 PM
#7
You need a save game that has never loaded the module script that you edited.

It will only run the onEnter script one time.

_EW_
 JediMaster76
05-19-2008, 5:50 PM
#8
Well, I started a new game, and he still won't appear. However, Nemo's modified script works fine, so there must be something wrong w/ my spawn script. Otherwise, I'm at my wit's end how to make him show up :S
 EnderWiggin
05-19-2008, 7:21 PM
#9
It might be a problem with the dialog, too. I'll give it a look-see.

Post your updated script, if you would.

_EW_


I think the problem might be the fact that you have a script run in the middle of the dialog. I remember when I used to mod K1 I always made the script fire on a blank node, but I can't remember if that was to make it easy for me or because it was necessary.
 JediMaster76
05-19-2008, 7:55 PM
#10
Sure. Here's the new updated link...

http://www.mediafire.com/?wxm0xikchid)
 EnderWiggin
05-19-2008, 8:12 PM
#11
Ok, I'm looking at it now. Do you have an easy save that I could have to test with?

_EW_

And are you sure that you want the character to spawn off of Nemo's dialog? Is there any specific reason for it?
 JediMaster76
05-19-2008, 8:19 PM
#12
Hmm, a saved game? Yeah, here's a link to it (its right after your first dream sequence on Dantooine, before the Jedi training)...

http://www.mediafire.com/?32ecvtjmt69)

And as for Nemo's dialog, no there's no specific reason. I just put it there b/c its the first person you can have a conversation w/ outside the Jedi chambers.
 EnderWiggin
05-19-2008, 8:26 PM
#13
Hmm, a saved game? Yeah, here's a link to it (its right after your first dream sequence on Dantooine, before the Jedi training)...

http://www.mediafire.com/?32ecvtjmt69)

And as for Nemo's dialog, no there's no specific reason. I just put it there b/c its the first person you can have a conversation w/ outside the Jedi chambers.


Well, to be honest, he's probably not a very good choice, because if the PC has gotten the quest to go into the ruins, Nemo disappears and he is replaced by a corpse.

I'm looking at your script right now. It's not very simplified, so I took out a bit of the excess. Some things I've noticed - one of the most major is that you have the character walk up to you and start talking - but this script fires in the middle of the dialog with Nemo. And not only that, you have him start talking with a dialog file that doesn't exist. So I'm trying to clean it up.

_EW_
 JediMaster76
05-19-2008, 8:42 PM
#14
Thank you for cleaning that up. I didn't realize that I had him walk up in the middle of Nemo's speech, and about his death, perhaps it would be better if it were attached to Jon or that random Jedi who walks around the courtyard?
 EnderWiggin
05-19-2008, 9:43 PM
#15
Got sidetracked. R/L sucks sometimes.

Would you like me to add it to the module itself, so that way it spawns him when you first come to the area?

Or would you rather I talked you through it?

_EW_

Woah!
I just saw something!

You need two *.utc files - one that just stands there and you talk to them before they are recruited, and then one for when they're actually in your party. I only see the second one here.

_EW_
 JediMaster76
05-19-2008, 9:44 PM
#16
You can add it to the module when he first enters I suppose. Unless you think its better talking me through it.

-- edit --

Of course... that would explain a bit... I suppose for the time being, I could just copy/paste the first utc and make a copy of it...
 EnderWiggin
05-19-2008, 9:50 PM
#17
You can add it to the module when he first enters I suppose. Unless you think its better talking me through it.

Ok, this should work. Create a new *.utc with another tag... such as jm_zaen.
then use this:
void main()
{
if (!GetIsObjectValid(GetObjectByTag("jm_zaen"))) {
CreateObject(OBJECT_TYPE_CREATURE, "jm_zaen", Location(Vector(319.89, 85.24, 1.87), 0.0));
}
ExecuteScript("old_14a_area", OBJECT_SELF);
}

And extract the k_pdan_14a_area.ncs file from the RIMs section under danm14aa and Scripts, Compiled.

Then go ahead and rename that file to "old_14a_area.ncs" and compile the script I just posted as "k_pdan_14a_area.ncs".

Make sure you change the dialog to zaen_invite when you're creating your new *.utc file.

Then throw the files into override and test it.

_EW_

Be back after the season finale of House.
 JediMaster76
05-19-2008, 10:05 PM
#18
Alright, what other files do I have to change? I added the new files, changed all of jm_zaen's tags to jm_zaen, but he still doesn't appear.
 EnderWiggin
05-19-2008, 10:24 PM
#19
Are you sure your coordinates are correct?

I've eliminated all of the bugs I see - but it's possible that one of the script functions I used could have been the wrong syntax.

I might need someone like stoffe or TK to come check it out.

Compile this code and put it in as the k_pdan script.


void main()
{
vector vPosition=Vector(319.89, 85.24, 1.87);
location lWhereToSpawn=Location(vPosition,0.0);
CreateObject( OBJECT_TYPE_CREATURE,"jm_zaen",lWhereToSpawn);
ExecuteScript("old_14a_area", OBJECT_SELF);
}


_EW_
 JediMaster76
05-19-2008, 10:48 PM
#20
Well, I adjusted the script, but he still doesn't show up. Quite a stubborn thing, or maybe I'm just missing a variable or haven't changed something? I'll go through the scripts again to check for errors.

-- Edit --

I think it might have something to do with either the .utc file or the spawn.nss script. Most of the other files look like they work fine.
 EnderWiggin
05-19-2008, 10:52 PM
#21
I just can't figure out what the problem is.

I've fixed a bunch of things, and yet there is still some unknown problem that I can't find.

_EW_
 JediMaster76
05-20-2008, 9:48 PM
#22
Yay! Zaen now appears where he is supposed to appear. I just forgot to copy a part of the script you gave me correctly :lol: Thanks for the help! However, there are 2 more minor problems...

1. There are around 40 copies of him all standing around in a circle, how can I make it so there is only 1 of him?

2. When I click the recruitment option in the dialog, he says he'll join me, but he doesn't actually join my party.

Thanks!
 HodgePodge
05-20-2008, 10:22 PM
#23
Could you post the script you're using to add him to your party?

I suspect that you might be having the same problem as I was having. I was trying to replace Juhani with my character, and after trying dozens of things, I finally found a solution. Try remaking the .utc file using the person you want to replace as a template. i.e. if you want to replace Mission, open up Mission's .utc file and rename it, set the skills/feats/etc. how you want.
 JediMaster76
05-20-2008, 10:32 PM
#24
void main()
{
RemoveAvailableNPC(7);
AddAvailableNPCByTemplate(7, "p_zaen");
DelayCommand(1.5,ShowPartySelectionGUI());
}


That's the script that I use to have him join my party. It supposed to replaces Zaen w/ T3.
 HodgePodge
05-20-2008, 10:41 PM
#25
Hehe. That's the exact same one I've been using :P. Does the Party Selection GUI appear? If so, the script is firing but there might be something wrong with the .uti file...
 JediMaster76
05-20-2008, 10:43 PM
#26
Actually, it doesn't even fire. So there must be something wrong with the .uti file then?
 HodgePodge
05-20-2008, 10:48 PM
#27
Not necessarily. I'm gonna open your mod and take a look around, see if I can figure anything out.
 Ferc Kast
05-20-2008, 11:23 PM
#28
Is the tag of p_zaen.utc set to T3M4? If not, that might be the problem.


EDIT: Just looked at your most updated link; And, the tag wasn't set correctly. Change it to T3M4 & that should do the trick.
 HodgePodge
05-20-2008, 11:28 PM
#29
Yes, that could be it, but whenever I had my tag wrong, I still got the party member. The game just crashed afterwards xD

If re-doing the .utc file doesn't work, I'm at a loss. Maybe Ferc or someone else who actually knows what they're talking about can help?
 JediMaster76
05-20-2008, 11:39 PM
#30
Thanks, I'll try setting the tag to T3 and see if that works.

-- Edit --
Thanks guys, it works. However, a problem remains. There are still a bunch of Zaens when I arrive, and none of them disappear after talking to him to get him to join my party. How would I go about doing this?
Page: 1 of 1