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.

Adding a new character

Page: 1 of 1
 Sarthos
07-07-2006, 10:40 PM
#1
Once you lose Bastilla in the game, I don't like the empty space left where she used to be... I'm thinking of making a mod to replace her, once she is removed from the party. I'd start with the scripts, and then possibly sounds, and make the model last (using a model already in-game for the time-being)..Since you can't post emails here, can someone (preferably with MSN) please PM me, if you want to help me with voices and scripting?
 Arбtoeldar
07-07-2006, 11:34 PM
#2
Once you lose Bastilla in the game, I don't like the empty space left where she used to be... I'm thinking of making a mod to replace her, once she is removed from the party. I'd start with the scripts, and then possibly sounds, and make the model last (using a model already in-game for the time-being)..Since you can't post emails here, can someone (preferably with MSN) please PM me, if you want to help me with voices and scripting?

As RedHawke found out you cannot permantly replace certain NPCs. With his Recuit RedHawke if you replace Juhani it will cause bugs. you will need Juhani when you confront Bastila on the Temple Mount. The way that RedHawke gets around this is to have the recuited RedHawke leave the party once you have access to the Temple Mount.

The best that you can do is to do is to use the Leviathan Strike (http://pcgamemods.com/mod/8296.html) mod.
 RedHawke
07-07-2006, 11:41 PM
#3
As RedHawke found out you cannot permantly replace certain NPCs. With his Recuit RedHawke if you replace Juhani it will cause bugs. you will need Juhani when you confront Bastila on the Temple Mount. The way that RedHawke gets around this is to have the recuited RedHawke leave the party once you have access to the Temple Mount.

The best that you can do is to do is to use the Leviathan Strike (http://pcgamemods.com/mod/8296.html) mod.
Actually it was Jolee not Juhani. ;)
 Arбtoeldar
07-07-2006, 11:45 PM
#4
Actually it was Jolee not Juhani. ;)
My bad, the one time I used her I replaced Juhani. I assumed that you needed both if you are playing the LS way.
 Sarthos
07-08-2006, 1:07 AM
#5
I want to replace the empty spot Bastila leaves, not Juhani
 Lit Ridl
07-08-2006, 3:41 AM
#6
Download recruit mod and do it.
Or simply talk to cheatbot and ask it to give you Bastila (bugged, it causes sometimes tagging errors, why I don't know.)
If you can't find any Bastila replacement mod,
modify source scripts of one of those mods.
Give it Bastila slot.
 Sarthos
07-08-2006, 11:56 AM
#7
I want to try to start one from scratch, not to use someone else's mod.

Can someone at least guide me to what I would do to add the unit, after you reach a certain event?

Ok, I found the guide that allows you to recruit NPCs, but how do I set exactly where to spawn the person (Like in the Korriban academy) and what event causes them to appear? Also, could someone please contact me, so I can get help over MSN if I ever get stuck? Thank you.
 Lit Ridl
07-09-2006, 4:06 AM
#8
I ma contact with you if you'll get troubles. By MSN. Just PM me your MSN. But tomorrow I can't talk, so only today.
About spawning. Look at this:

void main()
{
CreateObject( OBJECT_TYPE_CREATURE, "creature_resref", GetLocation(GetFirstPC()) );
}

It will spawn creature with Template ResRef "creature_resref" near you.
This will spawn creature at specific whereami coordinates.

void main ()
{ float x=0.00f; //add the 'whereami' cheat coordinate 1.
float y=0.00f; //add the 'whereami' cheat coordinate 2.
float z=0.00f; //add the 'whereami' cheat coordinate 3.
float r=0.0f; // set the orientation of the placeable, set in degrees.
vector MyVec = Vector(x,y,z);
location MyLoc = Location(MyVec, r);
CreateObject( OBJECT_TYPE_CREATURE, "creature_resref", MyLoc);
}

Replace 0.00 with coordinates, orientation is not really useful.
This line (insert in the starting of the script) will check and return if creature is already exists.

if (!GetIsObjectValid(GetObjectByTag("creature_tag")))

So you should have something like this if you want to spawn it at specified coordinates.

void main ()
{
if (!GetIsObjectValid(GetObjectByTag("creature_tag")))
float x=0.00f; //add the 'whereami' cheat coordinate 1.
float y=0.00f; //add the 'whereami' cheat coordinate 2.
float z=0.00f; //add the 'whereami' cheat coordinate 3.
float r=0.0f; // set the orientation of the placeable, set in degrees.
vector MyVec = Vector(x,y,z);
location MyLoc = Location(MyVec, r);
CreateObject( OBJECT_TYPE_CREATURE, "creature_resref", MyLoc);
}

The best way is to attach this script to dialog that you can't skip. Or to door you can't not open (for example locked door on Endar Spire), attach script to on use or on open event. For more info you know how to contact me. And you know that I will not be on place since 10 to 22 of july.
 Sarthos
07-09-2006, 8:17 AM
#9
unfotunately, I won't be able to work on this until tomorrow. How do I find the coordinates of where I want the unit to be placed? Also, how do I know which planet I'm putting the unit on? I'd guess that's included in there, but what? What would I put for say the Korriban Academy, main room?

Okay, I should be able to choose where the NPC spawns, but how do I make sure it happens after Bastilla is lost?
 deathdisco
07-10-2006, 12:14 AM
#10
If you use Bastila's tag, the "Malak tortures Bastila" scene will use your recruit. And if I remember correctly you lose the NPC. The scripts in that cut scene would have to be looked at and edited. The Rakatan temple summit might also be bugged.
 Pavlos
07-10-2006, 7:51 AM
#11
Okay, I should be able to choose where the NPC spawns, but how do I make sure it happens after Bastilla is lost?

You find the global boolean/number relating to Bastila's capture and insert a check for it. I have no idea what that one is, but we can use the Boolean which is set when you discover that you are Darth Revan:

void main() {
if (GetGlobalBoolean("LEV_MALDREAM") && !GetIsObjectValid(GetObjectByTag("foo_tag"))) {
float x = 0.0;
float y = 0.0;
float z = 0.0;
float r = 0.0;
location MyLoc = Location(Vector(x, y, z), r);
CreateObject( OBJECT_TYPE_CREATURE, "foo_ResRef", MyLoc);
}
}
 Lit Ridl
07-10-2006, 9:58 AM
#12
Pavlos, I gave him all he need by msn, so mod is finished, I just have to finish some models after 22 of july.
Page: 1 of 1