Jump to content

Home

playing as Bastila


icetrey47

Recommended Posts

I've seen alot of chat about being able to use NPC textures to "play" as another character in the game, so i was wondering if somebody would mind tell me how i would go about making my player look like Bastila. does it involve using a script file in the override folder? if so, would you possibly include how to go about making that file? thanks!

Link to comment
Share on other sites

If you've got nwn then you'll be able to do this by scripting.

First download Lil' jawa KOTOR builder module from Here

 

Go to the script editor in nwntoolset and copy paste this in a new script.

(seems to be the best way to get a permenent model change)

 

//::k_def_heartbt01

/*

Default heartbeat script

*/

//:: Created By: Preston Watamaniuk

//:: Copyright © 2002 Bioware Corp.

//:: Modified By Override367

 

#include "k_inc_switch"

#include "k_inc_debug"

 

void main()

 

 

{

 

ExecuteScript("k_ai_master", OBJECT_SELF, KOTOR_DEFAULT_EVENT_ON_HEARTBEAT);

 

/*

object oEnemy = GetNearestCreature(CREATURE_TYPE_REPUTATION, REPUTATION_TYPE_ENEMY, OBJECT_SELF,1, CREATURE_TYPE_PERCEPTION, PERCEPTION_SEEN);

 

if(!GN_GetSpawnInCondition(SW_FLAG_AI_OFF))

{

if(GN_GetSpawnInCondition(SW_FLAG_AMBIENT_ANIMATIO

NS) || GN_GetSpawnInCondition(SW_FLAG_AMBIENT_ANIMATIONS_

MOBILE))

{

string sWay = "WP_" + GetTag(OBJECT_SELF) + "_01";

int nSeries = GetLocalNumber(OBJECT_SELF, WALKWAYS_SERIES_NUMBER);

if(!GetIsObjectValid(GetObjectByTag(sWay)) && nSeries <= 0)

{

if(GetCurrentAction(OBJECT_SELF) != ACTION_MOVETOPOINT)

{

if(!GN_GetIsFighting(OBJECT_SELF) && !GetIsObjectValid(oEnemy))

{

GN_PlayAmbientAnimation();

}

}

}

}

}

if(GN_GetSpawnInCondition(SW_FLAG_EVENT_ON_HEARTBE

AT))

{

SignalEvent(OBJECT_SELF, EventUserDefined(1001));

 

}

*/

 

{

object oPC = GetFirstPC();

ApplyEffectToObject(DURATION_TYPE_PERMANENT,

EffectDisguise(DISGUISE_TYPE_P_BASTILLA), oPC);

 

}

}

 

 

//::End of Script

----------------------------------------------------------------------------------

 

You'll need this script too (I know theres a much easier way to do this but I dont know how, Maybe someody can expalin it to ya, but this is the only way I know how to do it.)

 

Put this next one in a new script also called k_inc_switch and then save it(this is so you can save the first one)

------------------------------------------------------------------------------------

 

//:: k_inc_switch

/*

A simple include defining all of the

events in the game as constants.

*/

//:: Created By: Preston Watamaniuk

//:: Copyright © 2002 Bioware Corp.

 

//DEFAULT AI EVENTS

int KOTOR_DEFAULT_EVENT_ON_HEARTBEAT = 1001;

int KOTOR_DEFAULT_EVENT_ON_PERCEPTION = 1002;

int KOTOR_DEFAULT_EVENT_ON_COMBAT_ROUND_END = 1003;

int KOTOR_DEFAULT_EVENT_ON_DIALOGUE = 1004;

int KOTOR_DEFAULT_EVENT_ON_ATTACKED = 1005;

int KOTOR_DEFAULT_EVENT_ON_DAMAGE = 1006;

int KOTOR_DEFAULT_EVENT_ON_DEATH = 1007;

int KOTOR_DEFAULT_EVENT_ON_DISTURBED = 1008;

int KOTOR_DEFAULT_EVENT_ON_BLOCKED = 1009;

int KOTOR_DEFAULT_EVENT_ON_FORCE_AFFECTED = 1010;

int KOTOR_DEFAULT_EVENT_ON_GLOBAL_DIALOGUE_END = 1011;

int KOTOR_DEFAULT_EVENT_ON_PATH_BLOCKED = 1012;

 

//HENCHMEN AI EVENTS

int KOTOR_HENCH_EVENT_ON_HEARTBEAT = 2001;

int KOTOR_HENCH_EVENT_ON_PERCEPTION = 2002;

int KOTOR_HENCH_EVENT_ON_COMBAT_ROUND_END = 2003;

int KOTOR_HENCH_EVENT_ON_DIALOGUE = 2004;

int KOTOR_HENCH_EVENT_ON_ATTACKED = 2005;

int KOTOR_HENCH_EVENT_ON_DAMAGE = 2006;

int KOTOR_HENCH_EVENT_ON_DEATH = 2007;

int KOTOR_HENCH_EVENT_ON_DISTURBED = 2008;

int KOTOR_HENCH_EVENT_ON_BLOCKED = 2009;

int KOTOR_HENCH_EVENT_ON_FORCE_AFFECTED = 2010;

int KOTOR_HENCH_EVENT_ON_GLOBAL_DIALOGUE_END = 2011;

int KOTOR_HENCH_EVENT_ON_PATH_BLOCKED = 2012;

int KOTOR_HENCH_EVENT_ON_ENTER_5m = 2013;

int KOTOR_HENCH_EVENT_ON_EXIT_5m = 2014;

 

//MISC AI EVENTS

int KOTOR_MISC_DETERMINE_COMBAT_ROUND = 3001;

int KOTOR_MISC_DETERMINE_COMBAT_ROUND_ON_PC = 3002;

int KOTOR_MISC_DETERMINE_COMBAT_ROUND_ON_INDEX_ZERO = 3003;

 

 

//::End of Script

------------------------------------------------------------------------------------once you compile the first script, go into your nwn/modules.temp0 folder and grab the k_def_heartbt01.nsc file and paste it into your KOTOR/override folder

 

I know this seems complicated and pretty heavy, as I said hopefully someone how actually knows how to script can explain to you how to impliment the change model script into k_def_heartbt01 without having to compile the whole thing..

 

Best of Luck!

 

-Zhoken.

Link to comment
Share on other sites

Zhoken:

 

I used the script you posted and it worked. I had one issue though. In the heartbt script you have this line:

 

#include "k_inc_debug"

 

I had to remove that line since I didn't have that script. I would get compile errors if I didn't. It still worked once I removed that line though.

 

I just want to verify whether or not you will retain the Bastila model when you transition to other worlds? I understand that your character is invisible during cutscenes and that is alright by me. I wish I knew how to bypass all of the cutscenes. Some you can and some you can't.

 

Final question for now is how do I utilize other models with this script? I tried typing in VANDAR but it wouldn't compile. I am probably using the wrong id reference. If you could post the proper list to use other npc's it would be appreciated.

 

Thanks in advance and keep up the good work.

 

Stator

Link to comment
Share on other sites

Zhoken and Lil' Jawa:

 

I've just finished running some tests and both of your scripts will work fine together. No conflicts at all.

 

Here are some of the things that I did find though.

 

I have deduced that when you are picking the new character model that you are choosing between standard npc's and party members.

 

N = npc

P = party member

 

Further testing has shown that not all npc's are worthwhile to use. Some of them don't have any combat animations. Master Vandar was the one I tried and he doesn't have any combat animations. All party members worked fine and they even showed different clothing properly. That is jedi robes would appear on them.

 

Although party members do have portraits, your original portrat still remains. I presume that you would have to link the appropriate portraits with the script but I don't have a clue how to do that.

 

Lastly, you lose the new model when you transition to another world such as when you go to Taris from the Endar Spire. I think that you already knew that one.

 

Great work from both of you. Keep it up and newbies like me will keep playing with them.

 

Stator

Link to comment
Share on other sites

Just to make something clear, the change model script and the modified haertbeat script is not my creation. Override367 and Lil'jawas did all the work, and all the praise should be directed at them.. I just posted it here to pass along the methods.

 

Have fun with the scripts

 

-Zhoken.

Link to comment
Share on other sites

I've given praise to Override367 in some of my other posts. I'm sure he won't shoot me for missing him this one time. :p :p

 

I personally feel that praise and thanks should go out to everyone who is working towards expanding this game. Quite honestly, without mods, many games would hit the dust bin after they have been played a few times. Mods keep the games fresh and gives people reasons to play them over and over again. Keep up the good work everyone.

 

Stator

Link to comment
Share on other sites

On the contrary I DEMAND you give me credit! :p

 

lol

 

I wish I could mod more but busy moving... in my absence the far more talented folks can pump out random script-based mods, I would however like to know if there are any websites that would host KOTOR scripts, I have a few that just need cleanup and can be uploaded as mods

Link to comment
Share on other sites

  • 2 weeks later...

First off, I'd like to give praise to those who have made these scripts, how the heck you ever did it is beyond me.

 

Second, I'd like to know if I've done it wrong, I've followed the instructions but something weird seems to happen. In the introduction, most of the time time the original selected character is in the bed for a few seconds, then it seems the script kicks in and places the character in the middle of the room so the camera just film the wall (the almost opposite has also happened where the override charcter is in the bed, and Trask comes in and talks to the air).

Also, the original character seems to appear in the "safe" places (the appartment, Ebon Hawk) but as soon as I leave these areas the override character appears again.

This isn't something that bothers me really, I'd just like to know if there's something I've missed.

 

EDIT: That's not exactly true, it's only the original character the first time inside the Ebon Hawk, when going to a new world.

Link to comment
Share on other sites

@Lundquist

 

The EffectDisguise will destroy any cinematic animation, thats the bad point on script model change. For that you need to stop with scripting and head over to the 2das. I wrote two mods with that, Carnival and Twi´lek Mania. There you have full animation support and your own portraits. Bad point on this method, you must start a new game if you dont want a random model ;).

 

Maybe I will write a tutorial for editing the model with 2da.

 

Swoop Modding Garage

Link to comment
Share on other sites

Hey! That's pretty sweet:)

Is it possible to edit it so you get another head in revan's robes instead of Uthar's? Like keeping the head you select in the beginning?

A turorial would be the answer to my praiers.

 

Edit: I've studied the 2da, and found out how to replace the head with anyone I want - this is VERY VERY cool.

Link to comment
Share on other sites

you said you know how to replace the head with anyone you want? do you know how to replace the body, but keep your head? so that you could say, keep the head you chose originally and wear bandon's armor as it appeared on him? :)

 

so yeah a tutorial on how to do something like this through a .2da would be nice.

Link to comment
Share on other sites

Archived

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

×
×
  • Create New...