#################################### get FILENAME basename idstring "tlj_pack0001" get FILES long
for i = 0 < FILES get UNK0 long get UNK1 long get OFFSET long get SIZE long get UNK2 long string NAME p= "%s/%08x.dat" FILENAME OFFSET savepos TMP if SIZE > 0 goto OFFSET get SIGN0 long get SIGN1 short goto OFFSET get STRSIGN string if SIGN0 == 542327876 string NAME p= "%s/%08x.dds" FILENAME OFFSET elif SIGN0 == 796160609 string NAME p= "%s/%08x.font" FILENAME OFFSET elif SIGN0 == 1179011410 string NAME p= "%s/%08x.wav" FILENAME OFFSET elif SIGN0 == 1430672467 string NAME p= "%s/%08x.uft" FILENAME OFFSET elif SIGN1 == 28261 string NAME p= "%s/%08x.loc" FILENAME OFFSET elif STRSIGN == shark3d_snake_binary string NAME p= "%s/%08x.bin" FILENAME OFFSET endif log NAME OFFSET SIZE endif goto TMP next i
Loc file is serialized in a way i don't understand how to output. There are 14016 ID's and 14016 offsets. But string references count is only 10040. In a short table uses multiple same offsets for one string reference with ID's combination.