This is not a crack, a cheat, or a recode of the game. The script restores install layout and extracts binaries that already ship inside Gaijin’s own zips. Then you clear Gatekeeper if macOS blocked the app.
What is actually wrong
- Primary. The launcher should unpack
acesand CEF from those zips. On affected installs it dies before that finishes. Reinstall reprints this. - Then macOS may still block until Privacy & Security → Open Anyway.
- OS Error 259 means the nest path is incomplete — often
WarThunder.app.workleft beside the launcher. That is a layout problem. It clears when the nest is restored. It is not the root of (1).
Steam’s wt_mac_install.vdf backslash installscript error is cosmetic. Ignore it.
The fix, in order
- Restore the nest if needed:
WarThunderLauncher.app/Contents/WarThunder.app - Unpack
acesand CEF from the shipped zips if they are missing. Unzip keeps Gaijin’s Developer ID signatures. You should not need to re-sign on the normal path. - Quit Steam, hit Play, then Open Anyway if macOS blocked the app.
- Confirm a real client:
acesRSS in the tens or hundreds of MB — often GB — not a ~16KB launcher stub.
fix-warthunder-mac.sh does steps 1–2. Step 3 is you.
Nest restores write an undo script under $WT/.wt-fix-backup/<timestamp>/ before moving. There is no default full-tree copy — that would duplicate about 80GB. Set WT_FIX_BACKUP=1 for a full copy first, or WT_FIX_YES=1 to skip the interactive confirm when stdin is a TTY.
About code signing
- You should not need to re-sign for the usual fix. The working payload is still Gaijin-signed from the zip.
- Blind
codesign --force --sign -is a don’t. It strips the secure timestamp and breaks the outer notarized seal. - The script only ad-hoc signs if a binary looks unsigned — no
TeamIdentifier, or “not signed.” It does not usecodesign --verifyon in-bundle paths. That false-fails when the nest seal is imperfect and would wrongly trigger a force-sign.
Run it
git clone https://github.com/Gingerjoe1/warthunder-macos-launch-fix.git
cd warthunder-macos-launch-fix
chmod +x fix-warthunder-mac.sh play-warthunder.sh
./fix-warthunder-mac.sh./fix-warthunder-mac.sh "/path/to/Steam/steamapps/common/War Thunder"After the script:
- Quit Steam fully, relaunch, hit Play.
- System Settings → Privacy & Security → Security → Open Anyway, if blocked.
- Confirm a real client:
ps -axo pid,rss,etime,command | grep -i "MacOS/aces" | grep -v grepFallback if Steam still will not spawn aces after Open Anyway:
./play-warthunder.sh "/path/to/Steam/steamapps/common/War Thunder"Do not
- Reinstall hoping for a different outcome.
- Treat OS Error 259 as the root bug if nest restore is not finished.
- Move
WarThunder.appout of the launcher “to fix the seal.” - Blind ad-hoc re-sign everything.
- Call it done on a ~16KB launcher with no
aceschild. - Call this hacking the game. It isn’t.
Not affiliated with Gaijin Entertainment or Valve. Layout restore and extract of files already inside the official Mac bundle only. Use at your own risk.
Script and notes live on GitHub: Gingerjoe1/warthunder-macos-launch-fix.