Jump to content


Appearance.2da walkthrough(TSL)


Recommended Posts

Edit tk102: stoffe -mkb- did a good job summarizing the major fields in appearance.2da for TSL. KotOR's appearance.2da also works in a similar fashion.


Original post


The heads are determined by the normalhead and backuphead columns in the appearance.2da, for each appearance type. The number this column contain is an index in the heads.2da file of which head to use.


normalhead is what is usually used, but if the player has this head an NPC using this appearance will switch to the head in the backuphead column instead.




The different model/tex columns determine how the character look (ie which model and texture to use) when they wear different items in their body slot. As far as I can tell they are:


modela/texa = underwear model.

modelb/texb = common clothes model.

modelc/texc = armor w/base defense 4

modeld/texd = armor w/base defense 5

modele/texe = armor w/base defense 6

modelf/texf = armor w/base defense 7

modelg/texg = armor w/base defense 8

modelh/texh = armor w/base defense 9

modeli/texi = new jedi robes.

modelj/texj = revan/starforge robes.

modelk/texk = new jumpsuit-like baggy armor.

modell/texl = the silly dancer's outfit.

modelm/texm = neophyte/mentor/warrior armor with skirt flap in the back.

modeln/texn = new jedi master robes with jackboots.


You'll need to specify a model for all slots representing something the player could wear or Bad Things may happen.


Some models have textures specified internally and as such have a "****" in their corresponding tex column.


The others only specify the base name of the texture without the numeric suffix at the end. The numbers at the end is used to specify the TextureVariation which is set on each individual item in their UTI to choose how it should look.


For example, the standard jedi robe for females, set in the modeli column, is the model "PFBIM" (meaning Player, Female, Body, Model I, Medium size), and it has the value "PFBI" set in its corresponding texi. Now the actual texture files are named "PFBI01.tpc", "PFBI02.tpc", "PFBI03.tpc" and so on. Which one of them to use, ie the matching 01, 02 etc number is set in the TextureVariation field in the different item blueprints.


For example normal Jedi Robes (blueprint "a_robe_08") have BaseItem set to "Jedi Robe" (35) which uses the model in the modeli column and textures in the texi column. Why? Because the "bodyvar" column in baseitems.2da for line 35 says "I". :)


The blueprint also has the TextureVariation field set to 4, which means it uses the "PFBI04.tpc" texture.




The label column in appearances.2da is just there to make it more easily human readable, ti's not actually used for anything by the game as far as I can tell, so it doesn't really matter what you put there for your new lines. To make it easier for others to read though it might be a good idea to stick with the standard naming convention for player models though, as:






P = Player model


FEM/MAL = Female/Male


C/A/B/H = White, Asian, Black, Hispanic


SML/MED/LRG = K1: Scoundrel/Scout/Soldier, TSL: Consular/Sentinel/Guardian


# = Unique numeric identifier

Link to comment
Share on other sites

  • 2 years later...

Edit tk102: As a follow up to the previous post, I've appended another of stoffe's posts from this thread to describe an example appearance.2da editing scenario...

On another note (seeing as it's probably an editing-matter too), I've noticed that in Kotor 1, unlike TSL, the different player classes have different body lengths, with male soldier being the tallest and female scoundrel the petitest. Is there any way to switch different lengths for different classes? Say, getting a female soldier but with the body of a scoundrel? (wait, that didn't come out right...)


You can flip the body models used in the appearance.2da file for the player appearance type you use. Those lines have labels like for example P_FEM_B_SML_02, where:


P_ = Player model

FEM_ = Female (or MAL_ = Male)

B_ = Black (or C_ = white, A_ = asian)

SML_ = Scoundrel (or MED_ = Scout, LRG_ = Soldier)

02 = Sequence number


Normally each selectable head/appearance has three lines here, one for each class (SML/MED/LRG).


For those lines look in the modela --> modelj columns for the name of the body models, and texa --> texj columns for the base name of the corresponding textures (without the TextureVariation number at the end).


The last letter of those column labels correspond to:

A = underwear

B = plain clothes

C = Light armor

D = Light armor variant 2

E = Medium armor

F = Medium armor variant 2

G = Heavy armor

H = Heavy armor variant 2

I = Jedi Robes

J = Revan/Starforge robes


So, for example if you wish to edit the second black female to switch the body size of the scoundrel and soldier you'd look for lines with labels P_FEM_B_SML_02 (row 109) P_FEM_B_LRG_02 (row 111) in appearance.2da. Then switch the content of the above mentioned columns between those lines.


Line 109, column modela: PFBAS --> PFBAL

Line 111, column modela: PFBAL --> PFBAS

Line 109, column texa: PFBASB --> PFBALB

Line 111, column texa: PFBALB --> PFBASB

Line 109, column texaevil: PFBASD --> PFBALD

Line 111, column texaevil: PFBALD --> PFBASD


...etc for the rest of the columns.

Link to comment
Share on other sites


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

  • Create New...