NIF Objects | Compound Types | Enum Types | Basic Types | File Versions
| Name | Description |
|---|---|
| BlockTypeIndex | A 16-bit (signed?) integer, which is used in the header to refer to a particular object type in a object type string array. The upper bit appears to be a flag used for PhysX block types. |
| FileVersion | A 32-bit integer that stores the version in hexadecimal format with each byte representing a number in the version string. Some widely-used versions and their hex representation: 4.0.0.2: 0x04000002 4.1.0.12: 0x0401000C 4.2.0.2: 0x04020002 4.2.1.0: 0x04020100 4.2.2.0: 0x04020200 10.0.1.0: 0x0A000100 10.1.0.0: 0x0A010000 10.2.0.0: 0x0A020000 20.0.0.4: 0x14000004 20.0.0.5: 0x14000005 |
| Flags | A 16-bit integer, used for bit flags. Function varies by object type. |
| HeaderString | A variable length string that ends with a newline character (0x0A). The string starts as follows depending on the version: Version <= 10.0.1.0: 'NetImmerse File Format' Version >= 10.1.0.0: 'Gamebryo File Format' |
| LineString | A variable length string that ends with a newline character (0x0A). |
| Ptr | A signed 32-bit integer, referring to a object before this one in the hierarchy. Examples: Bones, gravity objects. |
| Ref | A signed 32-bit integer, used to refer to another object; -1 means no reference. These should always point down the hierarchy. Other types are used for indexes that point to objects higher up. |
| StringIndex | A 32-bit unsigned integer, used to refer to strings in the header. |
| StringOffset | A 32-bit unsigned integer, used to refer to strings in a NiStringPalette. |
| bool | A boolean; 32-bit from 4.0.0.2, and 8-bit from 4.1.0.1 on. |
| byte | An unsigned 8-bit integer. |
| char | An 8-bit character. |
| float | A standard 32-bit floating point number. |
| int | A signed 32-bit integer. |
| short | A signed 16-bit integer. |
| uint | An unsigned 32-bit integer. |
| ushort | An unsigned 16-bit integer. |