1 - The tools bind.py, wave.py, text.py, and evs.py are now able to repack.
2 - Besides being able to reinject files, like the event scripts, back into the game with translations,
enough of the format is understood to add character appearances/modify expressions,
alter backgrounds, etc.
3 - Found the functions responsible for loading the /event/ .evs files, so I can execute any event/cutscene at will.
4 - Found a bunch of debug menus which can trigger various scenarios.
These will be useful for verifying translations without having to play through the game.
The way I found them was by having a script that'd relaunch the emulator a bunch of times,
each time forcing a jump to a different piece of code as if it was a menu function.
Most would crash, some would yield interesting results.
Took about two days.
Sadly I couldn't find a "master" debug menu that links to all those little menus.
Also I've toggled one-off features like slow-motion or camera position information,
and I've not seen those exposed anywhere in the debug menus uncovered so far.
And based on the pieces of text like this, I'm sure the master debug menu must exist in there still:
Code: Select all
0x001D1438: Data(DataType.String, 20, '● Battle Play Start\0', "●戦闘プレイ開始\0"),
0x001D144C: Data(DataType.String, 20, '● Battle Demo Test\0', "●戦闘デモテスト\0"),
0x001D1460: Data(DataType.String, 16, '● Adjusted Play\0', "●調整プレイ\0"),
0x001D1470: Data(DataType.String, 16, '● Demo Check\0', "●デモチェック\0"),
0x001D1480: Data(DataType.String, 20, '● Debug Switch\0', "●デバッグスイッチ\0"),
0x001D1494: Data(DataType.String, 20, '● Game Flag Settings\0', "●ゲームフラグ設定\0"),
0x001D14A8: Data(DataType.String, 24, '● Hideaki Anno Mode Settings\0', "●庵野監督モード設定\0"),
0x001D14C0: Data(DataType.String, 24, '● Display Test Menu\0', "●表示テストメニュー\0"),
0x001D14D8: Data(DataType.String, 28, '● Event Test Menu\0', "●イベントテストメニュー\0"),
0x001D14F4: Data(DataType.String, 24, '● Screen Test Menu\0', "●画面テストメニュー\0"),
0x001D150C: Data(DataType.String, 24, '● Misc. Test Menu\0', "●その他テストメニュー\0"),
0x001D1524: Data(DataType.String, 20, '● Misato 1 Day Vacation\0', "●ミサト1日やすみ\0"),
0x001D1538: Data(DataType.String, 16, '● Option\0', "●オプション\0"),
0x001D1548: Data(DataType.String, 12, '● Test\0', "●テスト\0"),
But anyways, here they are, but first some notes:
Code: Select all
After enabling cheats in PPSSPP
and adding the code to PPSSPP's cheats folder [i]PPSSPP_folder\PSP\Cheats\ULJS00064.ini[/i],
press triangle to activate it in-game.
The first couple of debug menus have lots of other sub-menus,
so definitely worth exploring.
I suggest using these on a PSP emulator,
since the menu selections tend to crash,
or some menus can't be exited without a reset.
Also, the debug menus don't pause the game,
so if a character interrupts with a new messagebox,
it'll "freeze" the menu.
Finally, lots of the battle-mode menus can't be brought up in battle-mode
since I haven't looked into a button hook for it, yet.
The codes:
Code: Select all
_C0 Debug menu: Dummy/Outside/bath (crashes)
_L 0x201C97CC 0x088B6320
Code: Select all
_C0 Debug menu: Priorities of something (no idea)
_L 0x201C97CC 0x088C295C
Code: Select all
_C0 Debug menu: IM/Door trigger-locations viewer (can't exit)
_L 0x201C97CC 0x088CB99C
Code: Select all
_C0 Debug menu: Shows IM by ranges; probably a select few for quickly executing
_L 0x201C97CC 0x088E6D28
Code: Select all
_C0 Debug menu: IM Executor; select an IM and execute it
_L 0x201C97CC 0x088E71F0
If you set IM-0001 and Execute it, it will open up the following debug menu:
Or you can directly access the above menu via:
Code: Select all
_C0 Debug menu: Impulse Debug Functions
_L 0x201C97CC 0x088ECD08
Code: Select all
_C0 Debug menu: Daily Special Debug
_L 0x201C97CC 0x0888984C0
Code: Select all
_C0 Debug menu: Some kind of Eva attack menu (Punch/Kick)
_L 0x201C97CC 0x0893A400
Code: Select all
_C0 Debug menu: Another kind of Eva attack menu (act/cmd)
_L 0x201C97CC 0x0894B81C
Code: Select all
_C0 Debug menu: Battle mode settings 1
_L 0x201C97CC 0x0895AFA0
Code: Select all
_C0 Debug menu: Battle mode settings 2
_L 0x201C97CC 0x089387B8
Code: Select all
_C0 Debug menu: Battle mode settings 3
_L 0x201C97CC 0x0895737C
Code: Select all
_C0 Debug menu: Battle mode settings 4
_L 0x201C97CC 0x08910850
Code: Select all
_C0 Debug menu: Some kind of btdemo/btldemo menu (they do nothing?)
_L 0x201C97CC 0x0893C958
Code: Select all
_C0 Debug menu: Window frame/Display Tests (Lots of Unimplemented errors)
_L 0x201C97CC 0x089107A8
Code: Select all
_C0 Debug menu: Event Tests (Lots of Unimplemented errors)
_L 0x201C97CC 0x089107FC
Code: Select all
_C0 Debug menu: Impulse/Memory/Unit-Data (Lots of Unimplemented errors)
_L 0x201C97CC 0x089108A4
Code: Select all
_C0 Debug menu: Modify AT field values
_L 0x201C97CC 0x08910CE0
Code: Select all
_C0 Debug menu: Possibly camera controls (things just go pitch black/have no effect)
_L 0x201C97CC 0x08965C98
Code: Select all
_C0 Debug menu: Character expressions
_L 0x201C97CC 0x088E6A44
Misc:
Code: Select all
_C0 Oddity: Directly trigger siren (crashes afterwards):
_L 0x201C97CC 0x0888EEA0
Code: Select all
_C0 Oddity: Sometimes crashes, sometimes makes a person leave the map
_L 0x201C97CC 0x0895DC64
In the top-right you'll notice Shinji has left
Code: Select all
_C0 Oddity: Invert the draw ordering
_L 0x201C97CC 0x0898E96C
This is a fun/trippy one:
Code: Select all
_C0 Oddity: Set time to midnight
_L 0x201C97CC 0x08842CE0
Code: Select all
_C0 Oddity: Some kind of data transmission menu
_L 0x201C97CC 0x088851B0
Code: Select all
_C0 Oddity: Some kind of Back/Redo/Next commands, unless this is used somewhere within the game?
_L 0x201C97CC 0x08840320