Debugging Code#
Present within the deobfuscated main game code are a few debugging functions that are only activated under certain conditions.
Keyboard Commands#
There are three keyboard commands that are present in a SceneManager override that controls if a key was held down.
It is triggered as long as Ctrl + Alt is pressed, NW.js is active, and if App.isDevMode() is set.
Here are the (simplified) commands:
- Ctrl + Alt + Del: Clears all Steam Achievements.
- Ctrl + Alt + F5: Sets mouse cursor movement to 0, and reloads the current scene.
- Ctrl + Alt + F8: Calls NW.js window, and shows developer tools.
The first command is very peculiar since Ctrl + Alt + Del is a menu shortcut on Windows.
Language Error Bypasses#
If App.isDevMode() is set, certain errors involving language-related files in the game are skipped entirely.
- If the amount of languages in the game are less than 1 (no languages are present), the game will state that the language select was skipped in the debugging prompt, instead of crashing the game. (This shouldn't be an issue either way as the language is fetched from the current Steam configuration.)
- If the exception "Default languages missing." is caught, the game will simply fail with that exception instead of crashing the game with said exception (again, this also shouldn't be an issue).
(Source: Original TCRF Research)
Undocumented Dialogue Configurations#
The in-game dialogue runs via a dialogue.loc file, which is actually a JavaScript-formatted JSON file with a special header that contains miscellaneous information.
Built into the files of the game is a .exe application that assists with fan-translations by extracting specific images from the game, as well as extracting the dialogue to .txt and .csv format.
What isn't documented in the application is that you can actually import those files into the game without formatting them back to .loc, via placing the reformatted files into a specific directory.
- .txt files need to be placed within dialogue/english_txt/.
- .csv files need to be placed within dialogue/english_csv/.
The filename doesn't even have to be dialogue.loc, as no specific filename is ever specified within the game code.
Another oddity is that an additional 3 languages are supplied within the game code - that being "korean", "japanese", and "chinese" - although "english" is the only supported language at the moment.
(Source: Original TCRF Research)