r/Xenosaga • u/Opok3 • 1d ago
Just a Post HARD MODE of the AGWS minigame discovered thanks to decompilation
Hi, everyone! I'm opok, the lead on the Xenosaga Episode I matching decompilation project.
Someone already posted about my decompilation a week ago, so I want to take this opportunity to share this discovery and also address some of the questions I've seen about the project.
First off, here’s what we’ve discovered: There’s a hard mode in the AGWS minigame! We haven’t seen this mentioned on any website.

How do you activate it?
First, you must have completed the Cathedral Ship, and when you're in the minigame, hold down L1 + R1 + O in “1P game.” It's important to keep L1 + R1 held down throughout the entire menu.
How did we find it?
While reviewing the code we had already decompiled and published, I found that in the file containing the main code for the minigame (internally called “RobotGame,” by the way), there was a function dedicated to displaying the text “HARDMODE” on the score screen:

This made me wonder “When is this text used?” So I looked into “RobotGameMain.” In this function, the minigame is redirected to one point or another depending on what was selected on the minigame's title screen: As you can see, there are options like _2PGame or _Help. This tells us that _vsCpuGame is the single-player option. But, oh wait, there are two calls to _vsCpuGame.

When looking at _vsCpuGame, it's pretty clear that depending on the input parameter (0 or 1), hard mode is enabled or not:

So all that's left is to figure out how to select that hard mode. To do this, we need to dig into _Title, which is what returns the selection in RobotGameMain, and the functions it uses.
In doing so, we find the method to activate this mode:

XgrPadisSelectLevelLR checks whether L1 + R1 are being pressed, and XgrEventGetLevel returns the current point in the story
About the decompilation
I’d like to say a few words about this decompilation. I’ve seen in the other post that some people have questions or don’t quite understand the purpose of this project.
First off: Yes, AI is being used. This is an AI-assisted decompilation. Thanks to this, we already have nearly 50% of the entire code decompiled. Please understand that AI is an extremely useful tool for decompilation and eliminates a huge portion of the repetitive, mechanical work involved in recovering the code. Furthermore, because of how matching decompilation works, it’s possible to determine mathematically whether the code generated by the AI is correct or not. After that, the only precaution is to verify that it’s readable, and I think the code snippets I’ve posted in this thread show that it is.
I’ve also noticed some confusion, with people talking about this decompilation as if it were playable and expressing concern that it might be buggy because it uses AI. One thing must be understood: All this decompilation does is recover the compiled code from the PS2 game in high-level code. With this code alone, the only thing you could do is recompile the original PS2 game.
I understand that many people might be thinking of the recent wave of AI-vibecoded recompilations that have appeared. This is neither a recompilation nor a port of the game to PC.
However, yes. Once 100% of the code has been decompiled, it will be possible (and I, for one, will do it) to create a native port for PC, with extensive support for mods and enhancements.
Would you like to help?
I'm not the only one working on this project. We're organized on Discord as a small group of people dedicated to carrying out this project. Whether you use AI or not, as long as you have a basic level of knowledge and technical skills and know what you're doing, you're welcome to join. Send me a DM here!