Work in progress · Rust · Bevy

COD4REWRITE

Call of Duty 4 multiplayer, rebuilt to look and play better. Modern UI, new graphics, controller support, and BO1, WaW and MW2 content.

The CoD4 Rewrite main menu: Play, Player and System sections with a profile panel over a night-time city scene
What it is

A modern take on a classic

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.

Call of Duty 4: Modern WarfareRequired
Call of Duty: Black OpsOptional
Call of Duty: World at WarOptional
Modern Warfare 2Optional
Modern Warfare 3Planned
Black Ops 2Planned
Screenshots

How it looks now

Captured from the game running on a local install.

Features

What's been added

Still work in progress, so features may be added or removed.

Game
  • Full controller supportWith aim assist
  • Improved settingsResolution scaling and an FOV slider
  • Custom camo editorAnd custom reticles
  • AI botsTrain on real player data
  • Modern UINew menus, HUD and loadout screens
  • Character selection
  • Supply dropsWeapon variants and characters
  • Improved combat recordWith an emblem editor
  • Bodycam camera modeInspired by bodycam footage
Graphics
  • Ambient occlusion
  • Screen-space reflections
  • Volumetric clouds & lighting
  • Reflective materials
  • Rebaked lighting
  • Tonemapping & film tintOptional
Content
  • BO1, WaW and MW2 contentWeapons, characters and maps
  • Custom mapsFrom CoD4 and the supported games
Top-down map with lines of sight between scattered players

Free-for-all

Everyone against everyone.

Top-down map with three glowing capture zones

Domination

Hold flags to earn points.

Top-down map of a walled compound with a bomb site

Search & Destroy

Plant or defuse the bomb.

Games needed

Bring your own games

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.

GameStatusIf it isn't found automatically
Call of Duty 4: Modern WarfareRequiredSet COD4_PATH to the folder with iw3mp.exe
Call of Duty: Black OpsOptionalSet BLACKOPS_PATH to the folder with BlackOps.exe
Call of Duty: World at WarOptionalSet WAW_PATH to the folder with CoDWaWmp.exe
Modern Warfare 2OptionalSet 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.

Download and play

Download, open, play

No Rust or other tools needed. The launcher fetches the latest build of the game for you and keeps it up to date.

  1. Own Call of Duty 4: Modern Warfare. It is required, because the game reads its maps, models and sounds from your install. Black Ops, World at War and Modern Warfare 2 are optional and add their content if you have them installed.
  2. Download the ZIP and unzip it anywhere.
  3. Open 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.

Build from source (optional)

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.

Bug reports

Found a bug? Press F10

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.

  1. Press F10 in game. It takes a screenshot, pauses the game and asks what's wrong.
  2. Type a description and press Enter to save the report (Esc throws it away).
  3. Find the two files in the 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.
    • Started with Launcher.exe: game\bugreports, inside the folder you unzipped.
    • Built from source: bugreports in the folder you ran the game from.
  4. Send both files to the Discord channel.

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.

About the project

Work in progress

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.