Skip to content
View in the app

A better way to browse. Learn more.

ResHax

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.
Help us keep the site running.

Nintendo Modern Arcade games (*.TXBN, Text BiNary)

Featured Replies

  • Author
  • Localization

LolHacksRule, posted Wed Feb 26, 2020 5:14 pm (50787)


I want to help with the English translation project of the JP version of the Mario Kart Arcade GP DX (since that was the only release dumped), preferably edit and view the TXBN (TeXt BiNary) files. So far, this is what I know on the files when examining data_en/txbn/format.txbn (smallest file)... They are similar to Nintendo's MSBT format but I guess Nintendo's Modern Arcade version of the file.

Code:
0x00-0x04: TXBN (54 58 42 4E)
0x04: text node count
0x04-0x07: zero
0x08: same as 0x04
0x09-0x0B: same as 0x04-0x07
0C: 1A/1E/17/2A/2B/28/30/32/34 (unsure? 32: Uses empty bytes in text data? 1A: Uses FF in text data, nodes end with 00 00, add 20 bytes for first byte in, all bytes in or all bytes in first text nodes. 2A: Similar to 1A but the first hex of a text node is is added by 20. 2B: Compressed, add 20 bytes to hex before and after FF bytes in text data, has 30 bytes. 28: Compressed, add 20 bytes to hex before 00 bytes, has 30 before text nodes beyond 1. 30: Similar to 2B but only one byte in nodes are touched. 34: Has padding? First hex in each text node is added by 20, has FF bytes in text nodes, end with 00 00. 1E: Similar to 28 20 ? 17: ?)
0D-0x17: zero
0x18: text node number?
0x19-0x1B: zero
0x1C: same as 0x18
0x1D-0x1F: zero
0x20-0x22: FF
0x23: zero
0x24: ?
0x26-0x2B: zero
0x2C: ?
0x2D-0x33: zero
0x34: Text byte count
0x35-0x37: zero
0x38: Text data
0x46-0x47: zero (end of file)


UPDATE: TXBN is not by Namco, is it Nintendo?
UPDATE2: An SDK kit (?) leftover for TxtMessage is in LM Arcade's dump.
UPDATE3: TXBN is not by SEGA, is it Nintendo?
UPDATE4: Its definitely Nintendo according what I can compare similarly to internal leaks.
  • Author
  • Localization

LokiReborn, posted Sat Feb 29, 2020 12:30 am (54326)


Not sure if it's the same for all of the files but looking at one this is the basic breakdown, all strings are unicode.

Code:
54 58 42 4E //Magic
22 00 00 00 //Count Table 1
22 00 00 00 //Count Table 2

/Start Table 1
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00
00 00 00 00 //Identifier
08 00 00 00 //Length with null terminator
00 00 00 00 //Relative offset to String Table

1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 01 00 00 00 0A 00 00 00 08 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 02 00 00 00 0C 00 00 00 12 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 03 00 00 00 08 00 00 00 1E 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 04 00 00 00 0A 00 00 00 26 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 05 00 00 00 0A 00 00 00 30 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 06 00 00 00 0C 00 00 00 3A 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 07 00 00 00 08 00 00 00 46 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 08 00 00 00 10 00 00 00 4E 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 09 00 00 00 08 00 00 00 5E 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 0A 00 00 00 0C 00 00 00 66 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 0B 00 00 00 0E 00 00 00 72 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 0C 00 00 00 0A 00 00 00 80 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 0D 00 00 00 0E 00 00 00 8A 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 0E 00 00 00 0E 00 00 00 98 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 0F 00 00 00 10 00 00 00 A6 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 10 00 00 00 08 00 00 00 B6 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 11 00 00 00 0A 00 00 00 BE 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 12 00 00 00 0C 00 00 00 C8 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 13 00 00 00 08 00 00 00 D4 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 14 00 00 00 0A 00 00 00 DC 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 15 00 00 00 0A 00 00 00 E6 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 16 00 00 00 0C 00 00 00 F0 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 17 00 00 00 08 00 00 00 FC 00 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 18 00 00 00 10 00 00 00 04 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 19 00 00 00 08 00 00 00 14 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 1A 00 00 00 0C 00 00 00 1C 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 1B 00 00 00 0E 00 00 00 28 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 1C 00 00 00 0A 00 00 00 36 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 1D 00 00 00 0E 00 00 00 40 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 1E 00 00 00 0E 00 00 00 4E 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 1F 00 00 00 10 00 00 00 5C 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 20 00 00 00 08 00 00 00 6C 01 00 00
1A 00 00 00 00 00 00 00 00 00 00 00 01 00 00 00 01 00 00 00 FF FF FF 00 01 00 00 00 21 00 00 00 08 00 00 00 74 01 00 00

//Start Table 2
06 00 00 00 //Length of string without null terminator
08 00 00 00
0A 00 00 00
06 00 00 00
08 00 00 00
08 00 00 00
0A 00 00 00
06 00 00 00
0E 00 00 00
06 00 00 00
0A 00 00 00
0C 00 00 00
08 00 00 00
0C 00 00 00
0C 00 00 00
0E 00 00 00
06 00 00 00
08 00 00 00
0A 00 00 00
06 00 00 00
08 00 00 00
08 00 00 00
0A 00 00 00
06 00 00 00
0E 00 00 00
06 00 00 00
0A 00 00 00
0C 00 00 00
08 00 00 00
0C 00 00 00
0C 00 00 00
0E 00 00 00
06 00 00 00
06 00 00 00

//Strings
DE 30 EA 30 AA 30 00 00
EB 30 A4 30 FC 30 B8 30 00 00
D1 30 C3 30 AF 30 DE 30 F3 30 00 00
D4 30 FC 30 C1 30 00 00
E8 30 C3 30 B7 30 FC 30 00 00
AD 30 CE 30 D4 30 AA 30 00 00
69 30 93 30 61 30 83 30 93 30 00 00
AF 30 C3 30 D1 30 00 00
C9 30 F3 30 AD 30 FC 30 B3 30 F3 30 B0 30 00 00
EF 30 EA 30 AA 30 00 00
EF 30 EB 30 A4 30 FC 30 B8 30 00 00
AF 30 C3 30 D1 30 2A FF 52 FF 0E FF 00 00
ED 30 BC 30 C3 30 BF 30 00 00
E1 30 BF 30 EB 30 DE 30 EA 30 AA 30 00 00
BF 30 CC 30 AD 30 DE 30 EA 30 AA 30 00 00
DA 30 F3 30 AE 30 F3 30 DE 30 EA 30 AA 30 00 00
DE 30 EA 30 AA 30 00 00
EB 30 A4 30 FC 30 B8 30 00 00
D1 30 C3 30 AF 30 DE 30 F3 30 00 00
D4 30 FC 30 C1 30 00 00
E8 30 C3 30 B7 30 FC 30 00 00
AD 30 CE 30 D4 30 AA 30 00 00
69 30 93 30 61 30 83 30 93 30 00 00
AF 30 C3 30 D1 30 00 00
C9 30 F3 30 AD 30 FC 30 B3 30 F3 30 B0 30 00 00
EF 30 EA 30 AA 30 00 00
EF 30 EB 30 A4 30 FC 30 B8 30 00 00
AF 30 C3 30 D1 30 2A FF 52 FF 0E FF 00 00
ED 30 BC 30 C3 30 BF 30 00 00
E1 30 BF 30 EB 30 DE 30 EA 30 AA 30 00 00
BF 30 CC 30 AD 30 DE 30 EA 30 AA 30 00 00
DA 30 F3 30 AE 30 F3 30 DE 30 EA 30 AA 30 00 00
C1 30 FC 30 E0 30 00 00
00 30 FB 30 00 30 00 00
  • Author
  • Localization

LolHacksRule, posted Sat Feb 29, 2020 7:45 pm (54340)


Thanks so much. tbh someone has a tool too but I don't think he's giving it away... Doesn't really work on some of Luigi's Mansion Arcade's TXBNs (some of them have "no data" exported and are binary).
  • Author
  • Localization

LokiReborn, posted Sun Mar 01, 2020 11:30 pm (54354)


LolHacksRule wrote:
Thanks so much. tbh someone has a tool too but I don't think he's giving it away... Doesn't really work on some of Luigi's Mansion Arcade's TXBNs (some of them have "no data" exported and are binary).


The format for these files are similar but different, so the same tool wouldn't work on it as is. Were these files edited at all, specifically system.txbn? The count of the entries in table 1 is wrong which was kind of weird.

In regards to extracting them the process is pretty simple, something like the attached would work. In regards to repacking the part where it gets interesting is if you want to change the number of lines and stuff. The default is 0x0A which is switched to printed \n and you need to generate the string table according for the lengths of the line breaks.

Luigi's Mansion.zip

  • Author
  • Localization

LolHacksRule, posted Mon Mar 02, 2020 1:22 am (54355)


Thanks
  • Author
  • Localization

LolHacksRule, posted Mon Mar 02, 2020 4:47 pm (54370)


No the files are clean from the game's dir.
  • Author
  • Localization

LolHacksRule, posted Wed Jul 22, 2020 6:03 pm (57731)


Never mind
Guest
This topic is now closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.