MCPcopy Index your code
hub / github.com/alterware/alterware-launcher

github.com/alterware/alterware-launcher @v0.11.6

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.11.6 ↗ · + Follow
82 symbols 181 edges 14 files 6 documented · 7% updated 5d agov0.11.6 · 2026-03-13★ 52
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

AlterWare Launcher

Official launcher for AlterWare Call of Duty mods

IW4-SP | IW5-Mod | IW6-Mod | S1-Mod

GitHub tag (with filter) GitHub (Pre-)Release Date GitHub all releases

[!IMPORTANT] Only legitimate copies of the games are supported. If you don't own the game, please buy it.

🗺️ Table of Contents


📦 Installation

Windows | Debian/Ubuntu | Other Linux OS | macOS


🪟 Windows

  1. Download the game from Steam.
  2. Download the appropriate version of the AlterWare launcher:
  3. Windows 64-bit: Download the latest alterware-launcher.exe.
  4. Windows 32-bit: Download the latest alterware-launcher-x86.exe.
  5. Place the alterware-launcher.exe in the game directory.
  6. Run alterware-launcher.exe. After updating, the game will launch automatically.

[!NOTE] Windows 7 is no longer supported.

[!IMPORTANT]

Information for server owners:

On Windows, the launcher self-updates and restarts by spawning a new console. For automated processes, use --skip-launcher-update and manually download the latest launcher from here.


🐧 Debian/Ubuntu (amd64/arm64)

  1. Download the game from Steam using either SteamCMD or the official Steam desktop app.
  2. Follow the instructions provided in this forum post to install the alterware-launcher using our self-hosted APT repository.
  3. Once installed, run the launcher from your game directory to download the client files automatically.

[!TIP] Use the --update command-line argument if you want to launch the game through Proton or other Wine versions instead of the default wine found in your path.

[!NOTE] The steps above can be used for any Debian-based distribution that uses the APT package manager.

[!NOTE] For more information on how to run the launcher on Linux, see this guide.


🐧 Other Linux OS

  1. Download the game from Steam using either SteamCMD or the official Steam desktop app.
  2. Download the latest release corresponding to your system architecture.
  3. Unpack the archive and copy the alterware-launcher executable to your game directory.
    • Alternatively, you can place it in your PATH so you can run it from anywhere. For example, in /usr/local/bin/
  4. Make the launcher executable: chmod +x alterware-launcher
  5. Run the launcher from your game directory to download the client files: ./alterware-launcher

[!TIP] Use the --update command-line argument if you want to launch the game through Proton or other Wine versions instead of the default wine found in your path.

[!NOTE] For more information on how to run the launcher on Linux, see this guide.


🍎 macOS

  1. Download the game from Steam using either SteamCMD or the official Steam desktop app.
  2. Download the latest alterware-launcher.
  3. Once installed, run the launcher from your game directory to download the client files automatically. For updates, use the launcher from the terminal with the --update command-line argument as explained in this guide.

[!CAUTION] Running the AlterWare launcher on macOS has not been officially tested. However, since WINE has a macOS port, it should theoretically be possible to run our clients on this platform.


🎮 Supported Games

[!IMPORTANT] Only legitimate copies of the games are supported. If you don't own the game, please buy it.

IW4-SP
Call of Duty: Modern Warfare 2 - Singeplayer

IW5-Mod
Call of Duty: Modern Warfare 3 - Singleplayer, SpecOps

IW6-Mod
Call of Duty: Ghosts

S1-Mod
Call of Duty: Advanced Warfare


⚙️ Command line arguments

  • iw4-sp, iw5-mod, iw6-mod, s1-mod
  • Skip automatic detection and launch the specified game
    • Must be the first argument if used
  • --help
  • Print help
  • --update, -u
  • Update the game without launching it
  • --skip-launcher-update
  • Skip updating the launcher
  • --bonus
  • Download bonus content (default)
  • --skip-bonus
  • Don't download bonus content
  • --force, -f
  • Force file hash recheck
  • --path, -p
  • Set the game installation path
    • Do not include a trailing backslash in the path
  • --pass
  • Pass additional arguments to the game
  • --version, -v
  • Print the launcher version
  • --ignore-required-files
  • Install client even if required files are missing
  • --skip-redist
  • Skip installing redistributables
  • --redist
  • Install or reinstall redistributables
  • --prerelease
  • Update to prerelease version of the launcher
  • --cdn-url
  • --offline
Example:
alterware-launcher.exe iw6 --bonus -u --path "C:\Games\IW6x" --pass "-headless"

[!TIP] Some arguments can be set in alterware-launcher.json, args generally override the values of the config.


🔧 Config file alterware-launcher.json

  • update_only: Set to true to only update the game. Default: false.
  • skip_self_update: Skip launcher updates. Default: false.
  • download_bonus_content: Automatically download bonus content. Default: false.
  • ask_download_bonus_content: Ask before downloading bonus content. Default: false.
  • force_update: Force file recheck. Default: false.
  • args: Pass additional arguments to the game. Default: "".
  • use_https: Use HTTPS for downloads. Default: true.
  • skip_redist: Skip redistributable installations. Default: false.
  • prerelease: Update to prerelease version of clients and launcher. Default: false.
  • cdn_url
  • offline

🔨 Building from Source

See CONTRIBUTING.md for details.


❓ Support

Need help or have questions? We're here to help you!

  • AlterWare Forum: Visit our official forum for in-depth discussions, troubleshooting, and community support.
  • Discord Community: Join our Discord server for real-time chat, quick questions, and to connect with other users.

Extension points exported contracts — how you extend this code

Blake3Path (Interface)
(no doc) [2 implementers]
src/extend.rs
CutePath (Interface)
(no doc) [2 implementers]
src/extend.rs

Core symbols most depended-on inside this repo

stdin
called by 19
src/misc.rs
arg_bool
called by 15
src/main.rs
arg_remove
called by 12
src/main.rs
load
called by 6
src/config.rs
get_cache
called by 5
src/cache.rs
get_stored_data
called by 5
src/cache.rs
save
called by 4
src/config.rs
arg_value
called by 4
src/main.rs

Shape

Function 59
Method 13
Class 8
Interface 2

Languages

Rust100%

Modules by API surface

src/main.rs17 symbols
src/cdn.rs10 symbols
src/tests.rs9 symbols
src/structs.rs9 symbols
src/misc.rs7 symbols
src/http_async.rs5 symbols
src/github.rs5 symbols
src/extend.rs5 symbols
src/config.rs4 symbols
src/cache.rs4 symbols
src/self_update.rs3 symbols
src/http.rs3 symbols

For agents

$ claude mcp add alterware-launcher \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact