Strike Witches: Silver Wing/TBL: Difference between revisions

From Data Crystal
Jump to navigation Jump to search
(Update research on text format)
(More research)
 
(2 intermediate revisions by the same user not shown)
Line 26: Line 26:
|-
|-
| Unknown Table/Commands?/Instructions? || Collection of DWORDs<sup>(LE)</sup>.  '''VERY COMPLICATED'''
| Unknown Table/Commands?/Instructions? || Collection of DWORDs<sup>(LE)</sup>.  '''VERY COMPLICATED'''
 
DWORD 4 is always number of CrLf in file
DWORD 4 is number of total linebreaks for that textbin?  Follows pattern but changing it has no effect?
 
DWORD 7, 8, 11, 12, 15 and 16 are position of speakers? (ADV_ST1_02.BIN)
 
DWORD 22 controls visibility of bottom half of Sakamoto? (ADV_ST1_02.BIN)
 
DWORD 34 controls Minna's visibility?  (ADV_ST1_02.BIN)
 
DWORD 40 and 44 control room visibility?  (ADV_ST1_02.BIN)
|-
|-
| Raw Text || Text Data
| Raw Text || Text Data
Line 41: Line 32:
Does not have any breaks.  '''0x0D 0x00 0x0A 0x00''' (CrLf) is newline
Does not have any breaks.  '''0x0D 0x00 0x0A 0x00''' (CrLf) is newline
|-
|-
| Replaceable Text and Commands? || UTF-16<sup>(LE)</sup>
| Internal References || UTF-16<sup>(LE)</sup>, used by executable
|}
|}


Line 49: Line 40:
! Command/Instruction? !! Behavior
! Command/Instruction? !! Behavior
|-
|-
| 0x00 ||
| 0x02 0x13 || Clear textbox, reset cursor position to 0
|-
| 0x01 ||
|-
| 0x02 ||  
|-
| 0x03 ||
|-
| 0x04 || Load?
|-
| 0x05 || Common, but unknown
|-
| 0x06 ||
|-
| 0x07 || Common, but unknown
|-
| 0x08 ||
|-
| 0x09 ||
|-
| 0x0A ||
|-
| 0x0B ||
|-
| 0x0C ||
|-
| 0x0D ||
|-
| 0x0E ||
|-
| 0x0F ||
|-
| 0x10 || Do not clear textbox, display next two lines out of order
|-
| 0x11 || Glitch textbox
|-
| 0x12 || Hide textbox (text stays, freezes if you go straight to next message)
|-
|-
| 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?
|-
|-
| 0x14 || Causes the text box to violently shake
| 0x03 0x10 [arg1]|| Write line to textbox, arg1 is line number
|-
|-
| 0x15 || Drop textbox (text stays, freezes if you got straight to next message)
| 0x03 0x27 [arg1] || Related to tarot card mini-game.  arg1 is boolean, '''0x27 0x00''' = no tarot, '''0x27 0x01''' = tarot, always draws "The Fool"?
|-
|-
| 0x26 || Causes the last message to auto close? (ADV_ST1_02.BIN)
| 0x04 [arg1] [arg2] [arg3]|| Load?
|-
|-
| 0x27 || Related to tarot card mini-game.  '''0x27 0x00''' = no tarot, '''0x27 0x01''' = tarot, always draws "The Fool"?
| 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===

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