GeneralsX is an open-source engine port — it provides the launcher and runtime, but cannot distribute the original game assets due to copyright. You must own a legitimate copy of Command & Conquer: Generals - Zero Hour (or the base game) to play.
We build and test against the Steam version. Other retail releases may work, but are not officially supported.
Once you have the game files, see INSTALLATION.md for how to set up GeneralsX on your platform.
The game is a Windows-only title on Steam, but platform behavior is different:
- macOS: Steam usually does not show an Install button for this title.
- Linux: Steam may still allow installation through Steam Play / Proton (depending on your Steam settings).
Because this can vary by setup, we document multiple ways to obtain the game files.
If you already installed the game on Linux via Steam + Proton, you can use that data directly.
-
Locate the installed game folder (common locations):
~/.steam/steam/steamapps/common/Command and Conquer Generals Zero Hour~/.local/share/Steam/steamapps/common/Command and Conquer Generals Zero Hour~/.steam/steam/steamapps/common/Command and Conquer Generals~/.local/share/Steam/steamapps/common/Command and Conquer Generals
-
Choose one of the following:
- Copy the folder(s) to the recommended layout:
$HOME/GeneralsX/GeneralsZHfor Zero Hour$HOME/GeneralsX/Generalsfor the base game
- Keep files in the Steam directory and provide paths via environment variables when launching (advanced):
CNC_GENERALS_ZH_PATH="$HOME/.steam/steam/steamapps/common/Command and Conquer Generals Zero Hour" \ CNC_GENERALS_PATH="$HOME/.steam/steam/steamapps/common/Command and Conquer Generals" \ ./GeneralsXZH -win
You can set these variables permanently in your shell profile if desired.
- Copy the folder(s) to the recommended layout:
If you have access to a Windows PC or a Windows virtual machine:
- Install C&C Generals: Zero Hour (and/or Generals) via Steam on Windows.
- Locate the installation folder, typically:
C:\Program Files (x86)\Steam\steamapps\common\Command and Conquer Generals Zero HourC:\Program Files (x86)\Steam\steamapps\common\Command and Conquer Generals
- Copy the folder(s) to your Mac or Linux system via USB drive, network share, or cloud storage.
- Place them in the expected locations:
$HOME/GeneralsX/GeneralsZHfor Zero Hour$HOME/GeneralsX/Generalsfor the base game
CrossOver allows you to run Windows software — including the Windows Steam client — directly on macOS or Linux. It offers a free 14-day trial.
- Download and install CrossOver from codeweavers.com/crossover.
- Inside CrossOver, create a new bottle and install the Windows version of Steam.
- Log in to Steam and download C&C Generals: Zero Hour (and/or Generals).
- Locate the installed game files inside the CrossOver bottle (usually under
~/Library/Application Support/CrossOver/Bottles/<bottle-name>/drive_c/Program Files (x86)/Steam/steamapps/common/on macOS). - Copy the game folder(s) to the expected locations described above.
Note: CrossOver is only needed to download the game files. You do not need it to run GeneralsX — the GeneralsX engine runs natively on macOS and Linux.
SteamCMD is Valve's official headless Steam client. It can download Windows game files on any platform, including macOS and Linux.
-
Download and install SteamCMD by following the official instructions.
-
Run SteamCMD and log in with your Steam account:
./steamcmd.sh
Inside the SteamCMD prompt:
@sSteamCmdForcePlatformType windows login <your_steam_username> force_install_dir ./zh_files app_update 2732960 validate quit- App ID
2732960is C&C Generals: Zero Hour. - App ID
2229870is C&C Generals (base game).
- App ID
-
After the download completes, move the game folder to the expected location:
mv ./zh_files "$HOME/GeneralsX/GeneralsZH"
After placing the game files in the correct directories, follow INSTALLATION.md to download the GeneralsX release for your platform and launch the game.
If you run into any issues, please open a discussion or report a bug.