Page tree
Skip to end of metadata
Go to start of metadata

racialtypes.2da is used to define the different races in the game.

Hardcoded Notes

NWN:EE unhardcoded a chunk of game engine things to do with races, especially around the free feat for Humans. See column information below.

The feats for favoured racial types for Ranger are hardcoded however so new races (and some existing ones like Oozes) cannot be selected.

The players races are meant to be only ever entries 0 through 6 (Dwarf, Elf, Gnome, Halfing, Half Elf, Half Orc and Human). If you allow players to be other races the game may not treat them equally - the main thing seems to be the voiced conjuration sounds in spells.2da which are not used.

There is a limit to the amount of racial types, 254. 255 is RACIAL_TYPE_INVALID.


There is no direct subrace support in Neverwinter Nights but there is a script-settable/gettable Subrace text field the player can also edit in.

You can also do subraces (if scripted for support in some aspects) using additional racial type rows although you'd need to edit a fair chunk of spells which make assumptions on what is humanoid (for instance Charm Person).

2da Column Information

Column NameExampleValid ValuesDescription
ID (no actual name)

Row numbers for the benefit of human readers. The game engine ignores the value in this field, instead generating sequential row numbers as the file is read. It is good practice to keep the entries in this field sequentially numbered to avoid confusion.
TextThe name of the race for the benefit of human readers. Unused by the game.
TextThe two-letter abbreviation for this race. Not used in the game as far as we know.
TLK entryA StringRef for the name of this race (capitalized).
TLK entryA StringRef for the adjective form of this race (capitalized).
TLK entryA StringRef for the adjective form of this race in lowercase.
TLK entryA StringRef for the name of members of this race (capitalized, plural).
TLK entryA StringRef for the description of this race (shown during character creation).
appearance.2da line referenceThe ID of the row in appearance.2da that defines the default appearance for members of this race. (In particular, this is the appearance given to player characters of this race during character creation.)
IntegerThe racial modifier to strength for members of this race.
IntegerThe racial modifier to dexterity for members of this race.
IntegerThe racial modifier to intelligence for members of this race.
IntegerThe racial modifier to charisma for members of this race.
IntegerThe racial modifier to wisdom for members of this race.
IntegerThe racial modifier to constitution for members of this race.

Ignored. This field contains remnants of a (pre-release) definition of the movement speeds of the playable races. However, by the time the game was released, race-based speed definitions were discarded in favor of creaturespeed.2da.
classes.2da line referenceThe ID of the row in classes.2da that defines the favored class of this race.
2da resref name

The name of the .2da file (without the extension) defining the racial feats gained from taking this race.

Bioware used the naming format race_feat_*.2da which you can safely ignore (but can help to keep them together).

Note the feats listed here not always are functional just informational like Quick to Master. The unhardcoded columns allow some like Quick to Master to be retooled/changed now however.

TLK entryA StringRef for the default biography of this race, which is the default description provided for player characters during character creation.
PlayerRace11 or 0

1 = playable race

0 = non-playable race

Does not seem to affect the script command GetIsPlayableRacialType.

TextIgnored. The NWScript symbolic constant for this racial type. This is ignored by the game and is only for the reference of the human reader.
IntegerThe default age for player characters of this race.
classes.2da line referenceThe default class selected by the Toolset when creating a non-player character of this race.
CRModifier1Float valueUsed for CR calculations in the toolset, which affect XP given for defeating monsters.







Resref of an LTR file minus the "f" or "m"

Unhardcoded random name generation file used for this race during PC character generation.

From niv: "LTR files are relatively simple probability lists and letter lookup tables for various parts of the name. I can look into writing up some docs on it, but editing them comfortably will require more than a spec."

These probably ommit the "f" and "m" part. So not sure if you can use "familiar" as an option here. Test and replace this line if you find you can (or can generate new ones).

NameGenTableBAs aboveAs above.

Unhardcoded random name generation file used for this race during PC character generation.

Half elves use this to have human and elf names available.

ExtraFeatsAtFirstLevel1**** or IntegerIf set it adds this many extra feats at first level - ie; human trait sets this to 1
ExtraSkillPointsPerLevel1**** or IntegerIf set it adds this many extra skill points at each level up. ie; humans have this set to 1.

The amount of skill points at first level are multiplied by this, for instance a 10 intelligence Human Cleric gets 4 * (2 + 1) = 12 skill points at level 1. A Half-Orc Cleric would get 4 * (2 + 0) = 8 skill points at level 1.

You can set this to 0 to have level 1 characters not get any skill points.

AbilitiesPointBuyNumber30IntegerAmount of points available for point buys. ruleset.2da contains some overarching options to do with this as well.
NormalFeatEveryNthLevel3IntegerThe amount of levels between normal feats. EG: 3 means you get a feat at level 1, 3, 6, 12, 15. 4 would mean 1, 4, 8, 12, 16.
NumberNormalFeatsEveryNthLevel1IntegerAmount of feats gained when NormalFeatEveryNthLevel level occurs, plus level 1.
SkillPointModifierAbilityINTSTR, DEX, CON, WIS, INT, CHA3 letter code for an ability modifier used to provide additional skill points on level up. If blanked (****) it will not provide any. If the column is missing it will default to INT.
  • No labels