PDA

View Full Version : Appearence changing


Jerec Skywalker
06-25-2006, 11:54 PM
Is it possible to easily change the appearence of a non-playable character? For K1 and K2.

Example:
Change Vandar into a human, or Luxa into a Twi'lik.

Arátoeldar
06-25-2006, 11:58 PM
Yes there are a bunch of Juhani re-skins and even a re-skin of Mission into a black female.

Princess Artemis
06-26-2006, 04:56 AM
It's possible, yes. For the character you want to change, use Kotor Tool to find their .utc file (BIFs --> templates.bif --> Blueprints, Character; Vandar is n_yoda.utc in K1; sometimes the character might be harder to find; Luxa is in RIMs --> Modules --> 208TEL_s.rim --> Blueprints, Character, n_203_luxa.utc), use the drop down menu next to Appearance, pick an appearance (for kicks make him a krayt dragon ;) ), then save the .utc and put it in Override. I believe that will only work if you haven't run into the character you want to change yet. This works for both K1 and K2. If you want to change them into something you made yourself, you'll have to change appearance.2da, and that's a good bit more involved.

Jerec Skywalker
06-26-2006, 05:23 AM
^^^
Great! Thanks!

Princess Artemis
06-26-2006, 05:26 AM
You're welcome :)

Jackel
06-26-2006, 08:30 AM
If you go the utc file changing way be a little careful as some characters use the same named utc file even if they are in different modules (you will find this mostly in K2 though). Your best bet is to change appearance.2da to make sure only the character you want to change changes.

Darth333
06-26-2006, 02:17 PM
What Jackel said. Be very careful with .utc editing. You can use tk102's findrefs to verify if the file is unique: http://www.starwarsknights.com/tools

If the .utc is not unique, then your best bet is scripts.

In KotOR 1 you can apply a disguise:

void main()
{
//check nwscript.nss for the possible disguise effects (DISGUISE_TYPE_*)
ApplyEffectToObject(DURATION_TYPE_PERMANENT,DISGUI SE_TYPE_*, GetObjectByTag("my_npc_tag"));
}


In Kotor 2, you can use the ChangeObjectAppearance function:


void main()
{
//Replace int Appearance by the appearance.2da row number.
ChangeObjectAppearance(GetObjectByTag("my_npc_tag"), int nAppearance );
}

The duplicate head appearance function can also be useful depending on what you want to do (just avoid putting Vrook's head on Mission's body!):

DuplicateHeadAppearance(object oidCreatureToChange, object oidCreatureToMatch);

However, I don't know if this function is available in KotOR 1. You can verify this by checking nwscript.nss.