Table Data Types in KCD
Revision as of 11:12, 25 July 2019 by Pickysaurus (talk | contribs)
Name | Width in TBL file | Name in XML table descriptor |
---|---|---|
Int | 32 bit | integer |
Int64 | 64 bit | bigint |
Float | 32 bit | real |
Guid | 128 bit | uuid |
Bool | 8 bit | boolean |
String | 32 bit | text, character varying |
Vec3 | 96 bit (3 * 32 bit) | vec3 |
Quat | 128 bit (4 * 32 bit) | quat |
QuatT | 224 bit ((4 + 3) * 32 bit) | quatt |
Padding | variable |
Notes
- Strings are stored as 32-bit signed integers pointing into the string table. See TBL File Format in KCD.
- Most tables do not use any padding. Whether table uses or doesn't use padding is hard-coded in KCD source. KCD data can only tell you that there is some padding somewhere, but not where. To see whether table uses padding, compare table description in XML file with line size in TBL file.
Example - POI Types Table
Column | Type | Width |
---|---|---|
poi_type_id | Guid | 128 bit |
mark_type | Int | 32 bit |
label | String | |
discovery_msg | String | |
discovery_dist | Float | 32 bit |
compass_mark_type_id | Int | 32 bit |
associated_codex_perk_id | Guid | 128 bit |
discovery_msg_mode | Int | 32 bit |
discoverable_by_location | Bool | 8 bit |
ui_order | Int | 32 bit |