-
Notifications
You must be signed in to change notification settings - Fork 1
Translating map labels
Most strings for labels for map locations are written into 1ST_READ.BIN, while others are found in chapter script files.
The properties map labels that do not change throughout the game are located in 1ST_READ.BIN. Their properties are described in consecutive chunks of data.
This is an example found at 0x1928b8
.
Offset | Example value | Description |
---|---|---|
0x0 |
00 00 00 ff |
Mask? |
0x4 |
00 00 00 00 |
00 |
0x8 |
64 00 00 00 |
ID? |
0xC |
42 00 00 00 |
Label graphic width; default values are in multiples of 22 pixels per character |
0x10 |
00 4c 22 8c |
Pointer to string; this one is "@fs22,22@fm24,0下町へ" |
0x14 |
00 00 00 00 |
Floating point for X coordinate of hotspot location |
0x18 |
9a 99 11 c1 |
Floating point for Y coordinate of hotspot location |
The default strings change the text size to 22 and the character offset to 24. See the documentation on control codes.
To edit this label, write a new string into a free location, change the pointer to that location, and change the label graphic width accordingly.
At 0x21581
in 1ST_READ.BIN is a string that is prepended to strings in the script files that contain the map location label: "@fs22,22@fm24,0"
When the map label is rendered, the number of characters in the string in the script file is used to calculate the length of the label graphic. It is recommended to edit kanji tiles in SKFONT.CG into the translated text and change the string in the script file to the former kanji. In order to facilitate this change, the above string should be changed to "@fs22,22@fm22,0", setting the @fm
value equal to the @fs
value.
As noted on the page on SKFONT.CG, an easy way to do this is to start with the first character in the Shift-JIS table and edit enough consecutive tiles to fit the translated label, then using the kanji that used to correspond to those tiles, such as the first four Shift-JIS characters: "亜唖娃阿". This can be repeated as many times as needed with successive characters to translate all such labels.
Formats
- ASCR format
- SBX/SBN
- LIP file
- SKFONT.CG
- ADCG texture
- BPV1 container
- LC1 file
- EYECATCH.BIN
- OpOption.bin
- Miscellaneous information
English translation technical details
Translation Instructions
- Extracting assets and rebuilding disc images
- Ghidra setup
- Emulation and memory searching
- Debugging Flycast with gdb-multiarch
- Script files
- Custom font tiles
- Map labels
- Editing compressed graphics
- Texture locations
- SRPG strings
- Menu strings
- Video encoding