Call of Duty 4 multiplayer, rebuilt to look and play better. Modern UI, new graphics, controller support, and BO1, WaW and MW2 content.
This is a COD4 rewrite using Rust and Bevy. The goal is to modernize and improve on the original game while retaining its core feel and mechanics.
It also supports Black Ops, World at War and Modern Warfare 2 weapons, characters and maps, with more games to be added in the future such as MW3 and BO2. It also supports custom maps made for the original CoD4 and the other games mentioned.
The repository contains no game data. Everything is read from your own installs at runtime.
Captured from the game running on a local install.
Still work in progress, so features may be added or removed.

Everyone against everyone.

Hold flags to earn points.

Plant or defuse the bomb.
Call of Duty 4: Modern Warfare is required. Black Ops, World at War and Modern Warfare 2 are completely optional and add their own content when installed.
| Game | Status | If it isn't found automatically |
|---|---|---|
| Call of Duty 4: Modern Warfare | Required | Set COD4_PATH to the folder with iw3mp.exe |
| Call of Duty: Black Ops | Optional | Set BLACKOPS_PATH to the folder with BlackOps.exe |
| Call of Duty: World at War | Optional | Set WAW_PATH to the folder with CoDWaWmp.exe |
| Modern Warfare 2 | Optional | Set MW2_PATH to its install folder |
Game versions: the rewrite has been built on the latest Steam versions. Other ways of obtaining the games may work.
No Rust or other tools needed. The launcher fetches the latest build of the game for you and keeps it up to date.
Launcher.exe. It downloads the latest release of the game from GitHub into a game folder beside it, then starts the game. Each time you open it, it checks for a newer release and updates first.You need Windows and a graphics card with Vulkan. No game files are downloaded or included, because everything is read from your own installs, found automatically in common Steam locations.
Only needed if you want to modify the game. Install a Rust toolchain, then:
git clone https://github.com/Nilbong/COD4-Rewrite.git
cd COD4-Rewrite
cargo run --release -p game
Skip the menus and go straight into a match:
cargo run --release -p game -- --map mp_killhouse --bots 6
The full option list, controls and format notes are in the README.
The game has a built-in bug reporter. A report is one screenshot plus a text file with what was going on, which makes bugs much easier to track down.
F10 in game. It takes a screenshot, pauses the game and asks what's wrong.bugreports folder: a .png screenshot and a .txt with your description, the map, the time, where you and the camera are, and what every bot was doing.
Launcher.exe: game\bugreports, inside the folder you unzipped.bugreports in the folder you ran the game from.The .txt file includes the file path of the game, which can contain your Windows username. Open it before sharing and remove that line if you'd rather not post it.
This is still work in progress and features may be added or removed.
I decided to do this project because this is one of my favourite games of all time, and I'm having a lot of fun playing around with it in a rewrite.
Come and chat about the project in the Discord channel, and please feel free to give me any feedback or suggestions there.
CoD4 Rewrite is an independent fan project. It is not affiliated with, endorsed by, or sponsored by Activision, Infinity Ward, Treyarch, Sledgehammer or Microsoft. Call of Duty is a trademark of its owners.
This repository contains no game data: no maps, models, textures, sounds or fonts, from any of the games. You must own legitimate copies, and everything is read from your own installations at runtime. The format layouts were derived from community reverse-engineering work, especially OpenAssetTools, used as documentation only.