A comprehensive cross-platform port of Command & Conquer: Generals and Zero Hour, bringing the classic RTS experience to macOS, Linux, and Windows through modern Vulkan rendering and SDL2 API.
This repository now focuses on experimental cross-platform development and serves as the technical foundation for multi-platform support.
To keep updated about this project status, visit our Dev Blog
For official releases and stable builds (Windows only), visit:
๐ TheSuperHackers/GeneralsGameCode Releases
Cross-platform game development requires significant time, resources, and technical expertise. If GeneralsX has been valuable to you or the Command & Conquer community, consider supporting continued development:
Your support helps with:
- Development Time - Hundreds of hours invested in cross-platform porting
- Testing Infrastructure - Multiple platforms, hardware configurations, and tools
- Documentation - Comprehensive guides and technical resources
- Community Support - Maintaining issues, discussions, and contributions
Every contribution, no matter the size, makes a difference in keeping classic games alive across all platforms!
This project transforms the Windows-exclusive Command & Conquer: Generals into a truly cross-platform game:
- ๐ macOS Native Support - Full compatibility with Apple Silicon and Intel Macs
- ๐ง Linux Distribution - Native builds for major Linux distributions
- ๐ช Windows Enhanced - Improved stability and modern graphics support
- ๐ฎ Unified Experience - Consistent gameplay across all platforms
- ๐ง Modern Architecture - Updated from VC6/C++98 to modern C++20 standards
Cross-Platform Compatibility:
- Native compilation on macOS, Linux, and Windows
- Unified configuration system replacing Windows Registry
- Platform-native file system integration
Graphics Enhancements:
- Vulkan rendering pipeline for modern GPU compatibility
- Improved texture loading and memory management
- Enhanced graphics debugging and profiling tools
Modern Development:
- Updated from Visual C++ 6.0 to modern C++20 standards
- CMake build system for consistent cross-platform builds
- Comprehensive test suite for validation across platforms - planned
- Automated CI/CD for continuous integration - planned
For stable releases and official builds, visit: TheSuperHackers/GeneralsGameCode Releases
Comprehensive build instructions for macOS development: ๐ macOS Build Guide
Key requirements:
- Xcode Command Line Tools
- Homebrew (CMake, Ninja)
- Original game assets
# Quick build (macOS)
git clone https://github.com/fbraz3/GeneralsX.git
cd GeneralsX
cmake --preset vc6
cmake --build build/vc6 --target GeneralsXZH -j 4Linux port is under development: ๐ Linux Build Guide
Timeline: Q1 2026 based on macOS foundation
Windows builds are maintained through the official TheSuperHackers repository with enhanced cross-platform compatibility.
Complete documentation is available in the docs/ directory:
- docs/MACOS_BUILD_INSTRUCTIONS.md - Complete macOS build instructions and troubleshooting
- docs/LINUX_BUILD_INSTRUCTIONS.md - Linux port status and contribution guidelines
- docs/DEV_BLOG/ - Technical development diary organized by month
- docs/PLANNING/ - Phase planning, implementation notes, and strategic decisions
- CONTRIBUTING.md - Guidelines for contributing to cross-platform development
For documented limitations and known bugs, see: ๐ Known Issues Index
This is a future initiative to leverage multi-core CPUs while preserving deterministic gameplay. High-level plan:
- Start with low-risk tasks (parallel asset/INI loading, background audio/I/O)
- Evolve to moderate threading (AI batches, object updates with partitioning)
- Consider advanced loop decoupling (producerโconsumer) once stable
Read the full analysis and phased plan in docs/Misc/MULTITHREADING_ANALYSIS.md.
Contributions are welcome! We're particularly interested in:
Current Priority Areas:
- TheMetaMap Subsystem Resolution - Help resolve CommandMap.ini loading issues
- Final Subsystem Validation - Test remaining 5/42 subsystems (12%)
- Graphics Pipeline Testing - Validate W3D/OpenGL rendering functionality
- Linux Compatibility Research - Prepare foundation for Linux port
- Cross-Platform Testing - Validate functionality across systems
How to Contribute:
- Check current issues and GitHub discussions
- Read platform-specific build guides (macOS, Linux)
- Follow CONTRIBUTING.md guidelines
- Submit issues or pull requests with detailed information
Contributing to Official Project: For contributions to the main project, visit: TheSuperHackers/GeneralsGameCode
- TheSuperHackers Team for their foundational work and official integration of this cross-platform effort
- Xezon and contributors for maintaining the GeneralsGameCode project
- Westwood Studios for creating the legendary Command & Conquer series
- EA Games for Command & Conquer: Generals, which continues to inspire gaming communities
- All contributors and sponsors helping to make this game truly cross-platform and accessible worldwide
Special thanks to GitHub Sponsors supporting this open-source effort!
See the LICENSE file for details.