Welcome, Guest!

Here are some links you may find helpful

PC SaGa Frontier Remastered - Extracting Original Source Code from IL2Cpp DLL?

ffvd_games

New member
Original poster
Registered
Nov 18, 2020
3
1
3
www.ffvdgames.com
Hello. I'm one of the main modders/dataminers for SaGa Frontier and its remaster that came out a month ago. I've been working on documenting how the remaster works compared to the original game (along with documenting prerelease info for the original) and I stumbled upon some interesting finds, the most important of which being that the remaster uses source code and source files from the original game. Yes, you read that correctly; Square somehow preserved a good chunk of source code for SaGa Frontier across both Square Japan and Square USA, enough that the remaster plays almost exactly like the original game. Unfortunately, they didn't get all of it as most of the enemy models were deleted when one of the designers was in LA working on Parasite Eve. They even use files from the original disc and some files we've never seen before, which leads me to believe that they're also using a prototype build of the game, but I'm not 100% sure on that.

I've hit a wall recently. We only have access to a small handful of these source files. The only files we've been able to access so far are the ones stored in resources.assets and most of the CriWare audio files. We still don't have access to the compressed files in the StreamingAssets folder (they do have archive:/CAB in the header but that's all we know) or the code stored in GameAssembly.dll (thanks, IL2Cpp). I have created a list of files that are probably source code files here:

You can view all the code file names in globalgamemanagers.assets if you have the remaster. I have attempted to reverse engineer the .dll via IL2CppDumper and IL2CppInspector several times to no avail (I even tried using the python scripts in Ghidra), either because I'm stupid or Square and Bullets did something right.

Does anyone here happen to know how to do this properly or am I screwed? Any and all help is very welcome as we don't really know what we're doing in regards to decompiling compressed files and IL2Cpp stuff.
 

swaglord

Well-known member
Registered
Jul 9, 2019
53
16
8
doesn't IL2CPP imply the game is made in C#? Can't you just use a .net decompiler?
 

ffvd_games

New member
Original poster
Registered
Nov 18, 2020
3
1
3
www.ffvdgames.com
doesn't IL2CPP imply the game is made in C#? Can't you just use a .net decompiler?
The game was made in C#, yes. It also uses C and PSX ASM code.

Unfortunately, I can't just pop it into dnSpy and call it a day. It requires some tools to de-obfuscate stuff and give me readable code, which I have yet to get 100% working. I've attempted to use IL2CppDumper and Inspector's ghidra python scripts to no avail, either because I'm doing something wrong or I'm missing something with the ghidra setup cuz ghidra's hard. Inspector's script quits out before it finishes, and Dumper's script just doesn't run properly and I have no clue why.
 

Make a donation