TheOpponent/st3-translation-notes

Determine how the text and lipsync scripts are compiled in memory

Opened this issue · 0 comments

The known regions of the SBX format and the LIP files do not contain information on how the scripts are loaded and interleaved to form the order of the in-game dialogue. Text for voiced lines in the SBX files is not used by the game, instead being replaced by data in the LIP file. The correct order of this script is needed to determine the actual used lines in the SBX files and which lines are replaced by lines in the LIP files.

  • Find the region in memory where the compiled script resides, if any.
  • Find pointers to this region and how conditional branches (values changed by LIPS decisions, etc.) are executed.
    • Address 8c4c0154 contains a counter for the script location.
  • Determine where graphics commands that change the current pose and text box portrait are stored and how they're executed. This information can be used to determine the speaking character for each line.
  • Optional: Determine if the SBX files contain information on changing trust values depending on results of LIPS input.