Jump to content
Sign in to follow this  

TLK file format

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

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.

Share this post

Link to post

It's good that they won't use multiple tlks. It's kinda hard to follow all the stuff in a single (double) file already.

Share this post

Link to post
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

  • Create New...