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

Creature size is an attribute used for several modifiers for feats, skills and abilities. Size also usually determines the creatures "Personal Space" and the height may be useful to know to make more real looking worlds.

The size is linked purely to the appearance ID lines as per below and is not stored on the UTC blueprint and cannot be changed with script commands.

Size Definition

appearance.2da has a few relevant size columns. The SIZECATEGORY links to the sizes in nwscript.nss:

int CREATURE_SIZE_INVALID = 0;
int CREATURE_SIZE_TINY =    1;
int CREATURE_SIZE_SMALL =   2;
int CREATURE_SIZE_MEDIUM =  3;
int CREATURE_SIZE_LARGE =   4;
int CREATURE_SIZE_HUGE =    5;

This in turn links to the 2da file creaturesize.2da (which is technically unused - see the 2da page for what ruleset.2da values are used instead, although might be used by the toolset):

2DA V2.0

    LABEL        ACATTACKMOD  STRREF
0   INVALID      ****         ****
1   TINY         2            ****
2   SMALL        1            ****
3   MEDIUM       0            ****
4   LARGE        -1           ****
5   HUGE         -2           ****

Size Modifiers

See the creaturesize.2da for the ruleset.2da entries that affect relative size modifiers.

Creature Height and Standard Race Heights

Quick reference these are the standard race heights against an in-game feet guide.

HumanElfDwarf

appearance.2da HEIGHT column apparently affects the games pathfinding - yes, surprising everyone when you mention it given it is essentially a 2D pathfinder (you can't have multi-level overlaps of terrain such as a tunnel). The extent of this is relatively undocumented and the HEIGHT values of most creatures is actually just set to 1...mysterious engine!

It also is the height of the player camera (so is why your camera jumps up when polymorphing into a Frost Giant or Dragon), although this might be additionally hardcoded for cases where it is just 1.

You can scale a creatures visual appearance using the transform tools in the toolset or nwscript, and it has absolutely no effect on movement, spell casting, attacks or line of sight.

There are some animations that can change when you change the TARGETHEIGHT column (attacking upwards/downwards, ie a human hitting a low to the ground badger for instance).

Personal Space and Creature Personal Space

appearance.2da has 2 columns for PERSPACE and CPERSPACE. These are related to the radius of the creature.

PERSPACE is the "Personal Space" radius that pathfinding uses. It is the "not overlapping too much of the model" space.

CPERSPACE is the "Creature Personal Space" radius and is always equal or larger than PERSPACE. Attacks are made from the edge of this since creature's hands are outstretched etc. and it might affect pathfinding past creatures. If a CPERSPACE is 1.5, and a short ranged, 8M spell is cast, it can be 9.5 to a point on the ground from the center of the model, or to the edge of another CPERSPACE value. It stops larger creatures like dragons clipping into another creature to attack them in melee.

A few more values like HITDIST and PREFATCKDIST I am yet to fully work out but nwn.fandom suggests they are used to determine melee range.

Examples of values for reference:

Nominal SizePERSPACECPERSPACEHITDISTPREFATCKDISTExample
Tiny0.20.20.21.710, Bat
Small0.250.30.251.13, Halfling
Medium0.30.50.31.76, Human
Large0.61.21.21.913, Brown Bear
Huge1.121.13.341, Dragon, Black

Notes on the sizing:

  • Huge is generally the only size which will have issues with normal sized doorways, although this may also be down to the height of the creature
  • No labels