GeneralsX Beta 15
This is a beta release. Some bugs are still expected. If you run into any problems, please open an issue so we can investigate.
What's New
π Historic Milestone: True Cross-Platform LAN Multiplayer!
Mac (Apple Silicon) and Linux (x86_64) players can now play against each other seamlessly!
Real-time strategy games rely on perfect mathematical synchronization (determinism) between all players. For decades, the hardware differences between an Intel processor and an ARM processor meant that rounding floating-point numbers would inevitably cause a "SyncCrash" (Desync).
In this massive milestone, we have completely shielded the engine's physics and game logic. By enforcing strict Floating-Point Unit (FPU) isolation, disabling non-deterministic compiler features (like FMA), and rewriting the core math layer (WWMath), GeneralsX now maintains bit-identical frame simulation across fundamentally different CPU architectures!
π οΈ New Diagnostic Tools
To support this effort, we've built a new engine-level telemetry system:
- The game now actively tracks state transfers and can automatically dump binary snapshots (
Deep CRC Memory Buffers) the exact moment a match falls out of sync. - π Developers & Modders: Read our new HOWTO: Investigating SyncCrashes guide to learn how to extract and hex-parse these buffers to hunt down desyncs like a pro.
π Bug Fixes & Improvements
- Audio: Fixed an issue where the game would stay permanently silent after loading a saved game (MiniAudio/OpenAL parity fix).
- Campaign: Fixed an edge-case bug that caused an instant "Defeat" screen during the intro cinematic of Generals Challenge missions.
- Miscellaneous stability tweaks and codebase modernization.
Getting Started
Install the engine: Follow the Installation Guide to set up GeneralsX on your platform.
Community Ports based on GeneralsX
If you like GeneralsX, please also take a look into these projects
- Generals-Mac-iOS-iPad - iOS port by ammaarreshi
- Generals-Android - Android port by fadi-labib
- GeneralsXWeb - Web port by meerzulee
Changelog
- UI: Scale fonts on high resolutions for tooltips and menus by @fbraz3 in #213
- Update release pipeline and remove old workflows by @fbraz3 in #216
- Fix cross-platform math determinism (Mac/Linux) by @fbraz3 in #217
- bugfix: Re-assert FP mode in mouse pick to fix wrong click location with audio active by @costin-alupului in #222
- Linux crash fixes by @Hamschta in #223
- fix(audio-miniaudio): restart sound groups in reset() to restore audio after loadGame by @coolswood in #224
- bugfix(challenge): Fix Generals Challenge defeat during next mission intro cinematic by @coolswood in #225
- fix(audio): guard FP environment at all audio entry points by @meerzulee in #226
- refactor: Consolidate mouse-pick FP-mode guard into getPickRay() by @costin-alupului in #228
- fix(sync): TheSuperHackers upstream sync 07-20-2026 by @fbraz3 in #229
- fix(network): fix multiplayer uncapped FPS and add buffer HUD by @fbraz3 in #230
Full Changelog: GeneralsX-Beta-14...GeneralsX-Beta-15