Table Data Types in KCD

From Nexus Mods Wiki
Jump to: navigation, search
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  


  • 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