Jump to content

TLK file format


Wisp

Recommended Posts

I don't know how widely this is known, but Scott Brooks of Beamdog released some info on the TLK format that conflicts with what is currently stated in the IESDP format description. Source (you probably still need to sign up and be approved before you can view it).

 

Many people think string ID are 32bit ints. This is not actually the case.

const DWORD	 CTlkTable::STRING_ID_MASK =		 0x00FFFFFF;

From the string fetch code.
//Remove the file id from the strId
strId &= STRING_ID_MASK;

The top 8 bits of a stringID refer to an internal file id, the other 24 bits refer to the string id as everyone expects.

 

[...]

 

[0x01 for the file id] is used internally already for dialogF.tlk in some of the multilingual versions of the game.

 

Since they abandoned their plans for a expanded multi-tlk system, the implication seems to be that you can maximally have lots and lots of strings, rather than lots and lots and lots of strings.

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...