Welcome to Data Crystal's new home! Data Crystal is now part of the TCRF family (sort of).
The wiki has recently moved; please report any issues in Discord. Pardon the dust.

Strike Witches: Silver Wing/TBL: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(Create initial page. Moved text format research to text table. Text table incomplete)
 
(More research)
 
(10 intermediate revisions by the same user not shown)
Line 3: Line 3:
===Text Format===
===Text Format===


Mostly found in '''/media/data/sc_scenario.bin''', uses non-standard formatting
'''/media/data/sc_scenario.bin''' is potentially unused, but contains a copy of all the text in the game?


* Hiragana, Katakana and Kanji encoded using UTF-16
Mostly found in '''/media/data/event/[GGXARCHIVE].bin'''.
* Some special characters (ex: newline) are encoded with 8-bits, unclear how exactly these work
 
* Numbers (possibly other Latin characters?) are encoded with 16-bitsTheir value is '''0xFF''' followed by their UTF-8 value - '''0x20''' (ex: "1939" is '''0xFF 0x11 0xFF 0x19 0xFF 0x13 0xFF 0x19''')
* <code>ADV</code> - ADVENTURE
* <code>BA[x]</code> - BASE[x]
* <code>ST[x]</code> - STORY[x]
* 19 and 20 seem to be unused
 
Inside GGXArchives are relevant DDS textures for that scene and a textbin.  Textbin uses non-standard formatting:
 
* LE UTF-16
* Seems to be a small virtual machine with instructions to do various things?  (Dubbed "MiniVN")
* Message length possibly releated to CrLf count? Can insert bytes without modifying "instructions" but overwriting CrLf hard freezes
 
{| class="wikitable"
|+ Text Files
|-
! Entry !! Data
|-
| Header/Length field || 4 bytes, indicates length in DWORDs of next segment<sup>(LE)</sup>
|-
| Unknown Table/Commands?/Instructions? || Collection of DWORDs<sup>(LE)</sup>.  '''VERY COMPLICATED'''
DWORD 4 is always number of CrLf in file
|-
| Raw Text || Text Data
 
Does not have any breaks.  '''0x0D 0x00 0x0A 0x00''' (CrLf) is newline
|-
| Internal References || UTF-16<sup>(LE)</sup>, used by executable
|}
 
{| class="wikitable"
|+ Command/Instruction Behavior?
|-
! Command/Instruction? !! Behavior
|-
| 0x02 0x13 || Clear textbox, reset cursor position to 0
|-
| 0x02 0x29 [arg1]|| Always appears at end of command data?  arg1 is always the sum of lines + internal references, possibly unload?
|-
| 0x03 0x10 [arg1]|| Write line to textbox, arg1 is line number
|-
| 0x03 0x27 [arg1] || Related to tarot card mini-game.  arg1 is boolean, '''0x27 0x00''' = no tarot, '''0x27 0x01''' = tarot, always draws "The Fool"?
|-
| 0x04 [arg1] [arg2] [arg3]|| Load?
|-
| 0x04 0x1D [arg1] [arg2]|| Audio play, arg1 is audio ID, arg2 is probably volume percent (most use 0x64/100%)
|}
*Note:  Commands are DWORDs but have been shorted to single bytes here for simplicity


===Text Table===
===Text Table===
Line 25: Line 70:
30FC=ー
30FC=ー


FF10=0
FF10=
FF11=1
FF11=
FF12=2
FF12=
FF13=3
FF13=
FF14=4
FF14=
FF15=5
FF15=
FF16=6
FF16=
FF17=7
FF17=
FF18=8
FF18=
FF19=9
FF19=





Latest revision as of 18:12, 7 May 2024

Chip tiny.png The following article is a Text Table for Strike Witches: Silver Wing.

Text Format

/media/data/sc_scenario.bin is potentially unused, but contains a copy of all the text in the game?

Mostly found in /media/data/event/[GGXARCHIVE].bin.

  • ADV - ADVENTURE
  • BA[x] - BASE[x]
  • ST[x] - STORY[x]
  • 19 and 20 seem to be unused

Inside GGXArchives are relevant DDS textures for that scene and a textbin. Textbin uses non-standard formatting:

  • LE UTF-16
  • Seems to be a small virtual machine with instructions to do various things? (Dubbed "MiniVN")
  • Message length possibly releated to CrLf count? Can insert bytes without modifying "instructions" but overwriting CrLf hard freezes
Text Files
Entry Data
Header/Length field 4 bytes, indicates length in DWORDs of next segment(LE)
Unknown Table/Commands?/Instructions? Collection of DWORDs(LE). VERY COMPLICATED

DWORD 4 is always number of CrLf in file

Raw Text Text Data

Does not have any breaks. 0x0D 0x00 0x0A 0x00 (CrLf) is newline

Internal References UTF-16(LE), used by executable
Command/Instruction Behavior?
Command/Instruction? Behavior
0x02 0x13 Clear textbox, reset cursor position to 0
0x02 0x29 [arg1] Always appears at end of command data? arg1 is always the sum of lines + internal references, possibly unload?
0x03 0x10 [arg1] Write line to textbox, arg1 is line number
0x03 0x27 [arg1] Related to tarot card mini-game. arg1 is boolean, 0x27 0x00 = no tarot, 0x27 0x01 = tarot, always draws "The Fool"?
0x04 [arg1] [arg2] [arg3] Load?
0x04 0x1D [arg1] [arg2] Audio play, arg1 is audio ID, arg2 is probably volume percent (most use 0x64/100%)
  • Note: Commands are DWORDs but have been shorted to single bytes here for simplicity

Text Table


30A3=ィ
30A4=イ
30A6=ウ
30AF=ク
30B9=ス
30BA=ズ
30C1=チ
30C3=ッ
30C8=ト
30E9=ラ
30FC=ー

FF10=0
FF11=1
FF12=2
FF13=3
FF14=4
FF15=5
FF16=6
FF17=7
FF18=8
FF19=9