Open nolrinale opened 3 months ago
btw not really related to this but figured would be interesting to add, playing with the Unpacked Exe on both Windows and Linux I can tell the game audio subsystem gets screwed up, if you go to the shopping area and attempt to sell something the "blingblingblingbling!" sound of money making gets cut midway whereas with the original packed exe this doesnt happen and all the sounds play properly.
The SFX of the Gi's in Episode 2 areas also gets cut midway in the unpacked exe, all these sound bugs are also present in the Tethealla client because they all use the same extraction method to unpack the exe
So I guess the extractor is not flawless and might mess with more game internal logic we might think about at first...
During my initial testing I found that the BB memory is not decompressed by the time AzureFlare tries to patch the process memory, leading to not finding any memory pointers for patching GameGuard. I may need to do some alternate ways to be able to read the memory under Linux as I doubt this is a Wine issue.
So I guess the extractor is not flawless and might mess with more game internal logic we might think about at first...
This is already known as the currently available unpacked EXE is not properly unpacked. It does need to be unpacked via a debugger (OllyDbg, x64dbg, etc) and the instructions are in the clear web. Relevant data is in this newserv issue.
Creating this small thread as an area where we can brainstorm different approaches to make the original untouched PsoBB.exe and the AzureFlare patch work under the Steam Deck and/or any linux with Wine installed.
In the meantime I also want to share some findings attempting to debug via winedbg didnt allowed me to attack to the PsoBB.exe process with
info process
and theattach
command.I also tried with
WINEDEBUG=+relay,+loaddll,+winsock wine 'C:\SEGA\PHANTASY STAR ONLINE Blue Burst\online.exe' 2>&1
as a nuclear option and managed to make the game run but then it cannot find the required files to start such as thePsoBB.exe
tried also
grep
'ing the strings wsock, sock, dll, user32 and whatnot to see if I can find some clue on where the DLL is failing to patch the gameguard with the packed exe to no avail either.I've been unable to build and compile my own AzureFlare under linux yet I guess i will need to install all the dotnet packages for that but again I have no clue exactly at which point the patch is failing in the
PatchPackedGameGuard()
function undergameguard.cpp
Does anyone knows the best way to debug dll overrides like these on linux/wine? I think wine has too many hidden options one of them must be the correct one for a comfortable debugging experience!