PSA: Virtual Machines Are Blocked By SEGA (Mac, Linux)

@coldreactive If my current findings are correct, first GameGuard looked for bootstrapping info (CPUID flags, listing running processes and match against an internal blacklist), secondly it begins to check for any "suspicious" programs by scanning the entire memory range for the duration of the game. I managed to login, screwing around for a while before GG unexpectedly terminate PSO2 (keep in mind during this time, I did install VMware Tools. Things when back to normal after uninstalling that).

As for Wine/Proton won't work, possibly 3 reasons:

  • Incorrect mapping of memory due to how Unix-based OS restrict access to currently running memory map.
  • Wine/Proton have debuggers (winedbg and Wine's personal implementation of Windows Debugging API) that can attach to processes to backtrace games' codes during runtime. This alone already set a giant red flag for SEGA.
  • Patching GameGuard can only fix the problem temporary, since it is designed to work exclusively with Windows. Until INCA decided to man up and release a Linux version of their "anti-cheating solution", I doubt we can play without GG screaming NP1013 and nuke PSO2.exe to orbit.

It's true that Wine/Proton isn't "emulators", but it isn't ready to game, especially if that particular game have anti-cheat in-place IMO. So virtualization is currently the only way to circumvent that without getting yourself deep into technical issues.

I think the main reason why SEGA implement this is just trying to stop entry-level cheaters and bots for using obvious tools like Cheat Engine, ArtMoney,.... Obviously SEGA and INCA knew quite well that they can't stop people that knew what they are doing (trust me when I say the game client itself isn't the only piece of software where you can directly connect to SEGA servers.). The larger the system, the more vulnerable it becomes.

Since we are approaching the grey zone between perfectly legal conversation and sensitive stuff, I'll leave the players to figure it out for themselves.

TL;DR: SEGA probably afraid of reverse-engineering the game's code and/or cheating in their system, so they ban anything that is suspicious. "Better safe than sorry" mentality.

@M1kuCh4n I wish MMO developers would get it in their heads that you can just attach to DirectX itself and bot that way. So using any form of third-party anti-cheat is useless. Even in FFXIV, which requires hooking into DirectX to bot/cheat in (or else the game's internal anti-cheat systems will detect the botting/cheating.) (This is why bots can be seen as "AFK" because the AFK trigger in FFXIV detects if you're actually sending hardware inputs to the game. If you aren't, the AFK system will set you to AFK even if you're moving around using software to send inputs. I know this because I've seen it happen to bots constantly.)

@coldreactive The game engine is still running under DirectX 9, so I'm guessing the SEGA devs themselves aren't having a lot of options on their table without rebuilding the game from scratch.

Judging from the anti-cheat solutions perspective, they won't "port" or create a native version to other OS without getting the greenlight from the publisher itself - which is SEGA for a sole reason: Hugh manpower and resources investment for a "small" fanbase won't cut it (even though macOS and Unix-based users are lots).

Funny how myself and my IT team have to provide VDI (Virtual Desktop Infrastructure) solution to some customers that requested this requirement just to play PSO2 for some reason. At least it works, for now.