DialogTree (d3)

Game dialog tree middleware engine

D3 Binary

Here's description of the d3 binary format.

int - integer

Type | Description
-----+------- ----  ---   --    -
int  | 32bit unsigned integer, little-endian (x86 style)


- -------------------------------------------------------------------------- -


str - string

Type | Description
-----+------- ----  ---   --    -
int  | Number of bytes in the string
byte | N bytes of data


- -------------------------------------------------------------------------- -


lstr - localized string

Type | Description
-----+------- ----  ---   --    -
int  | Number of languages

For each language:

Type | Description
-----+------- ----  ---   --    -
str  | Language id
str  | String in language


- -------------------------------------------------------------------------- -


Format description:

Type | Description
-----+------- ----  ---   --    -
int  | Magic 0x00013364, 'd' '3' 1 0 in reverse. d3 format version 1.0.
str  | Deck id
str  | Deck user data
int  | Card count

For each card:

Type | Description
-----+------- ----  ---   --    -
str  | Card id
str  | Tags to set
str  | Tags to clear
str  | Card user data
lstr | Question text
int  | Number of answers

For each answer:

Type | Description
-----+------- ----  ---   --    -
str  | Target card id
str  | Tags needed to view this answer
str  | Tags that must not to be there to view this answer
str  | Answer user data
lstr | Answer text

Comments, etc, appreciated, as always.