Token Text Table

From Hercules Wiki
Jump to: navigation, search

A text table format used for the Ragnarok Online client. It is used for organizing text data into columns and rows, mostly for id-description relations. It usually has the file extension .txt and can be found inside and outside the GRF.

Contents

File Format

The files are plain text files, where rows and columns are separated by the token character #. It can be edited with every text editor like Notepad. Make sure, that the file is not stored in Unicode or UTF-8.

The amount of columns is fixed for each file, that uses this file format. Rows are either limited by available memory or by hard-coded limits, as seen below. Note that all of these limits can be lifted by hexing the client. Whether line breaks are allowed within a cell or not depends on each file as well. Multi-line cells support using # character inside the text, as long it is followed by a space character. Contrary to that, all other # characters must be followed by either a new line or a non-spacing character.

Examples

1-column table (CardPostfixNameTable)

4039#
4041#
4042#
4046#
4050#

1-column table multi-line (TipOfTheDay)

/savechat : saves chat as text file.
#
You can select a type of mini-map using ctrl+[*],between transparency and opacity.
#
You can change the view of character with dragging a mouse while holding right button and pressing shift key.
   Double clicking right button on a mouse enables to return the view to default one.
#

2-column table (IdNum2ItemDisplayNameTable)

512#Apple#
513#Banana#
514#Grape#

2-column multi-line table (IdNum2ItemDescTable)

1071#
A test tube that contains some sort of unidentified fluid.
^ffffff_^000000
Weight :^777777 3^000000
#
1072#
It's a personal letter written by Mahnsoo, chief of the Merchant Guild.
^ffffff_^000000
Weight :^777777 1^000000
#
1073#
A delivery voucher with the serial number # 2485741
^ffffff_^000000
Weight :^777777 1^000000
#

Comments

You may insert comments inside the file by putting // at the beginning of a line. The comment then spans to the end of that line. Trailing comments (not starting at beginning of a line) will not work. Example:

row1#
// Disabled because it does not work
// row2#
row3#


Known Row Limits

Table Name Row Limit
BookItemNameTable 80000
CardItemNameTable 80000
CardPostfixNameTable 80000
CardPrefixNameTable 80000
IdNum2ItemDescTable 80000
IdNum2ItemDisplayNameTable 80000
IdNum2ItemResNameTable 80000
IndoorRswTable 4096
ItemParamTable 80000
ItemSlotTable 80000
ItemSlotCountTable 80000
LevelUseSkillSpAmount 16384
MapNameTable 4096
MapObjLightTable 4096
MetalProcessItemList 80000
Mp3NameTable 4096
MsgStringTable 4096
Num2CardIllustNameTable 80000
Num2ItemDesctable 80000
Num2ItemDisplayNameTable 20000
Num2ItemResNameTable 80000
QuestID2Display 80000
SkillNameTable 4096
SkillDescTable 16384
SkillDescTable2 16384