Case study

IW4L: a Rust runtime that plays Modern Warfare 2 from the user’s installed game

Implements a standalone runtime for Call of Duty: Modern Warfare 2 (2009) in Rust on Bevy and wgpu, loading maps, models, textures and weapons from the user’s installed game through native FastFile readers and translating its Direct3D 9 shaders to WGSL. Bots, demo recording and replay, and multiplayer over custom UDP with a QUIC master are implemented, while README warns that gameplay remains incomplete, with missing behavior, bugs and desyncs. README states that the whole project is written by an LLM; NOTICE names the community projects consulted and says the original binaries were read with Ghidra.

Targets
Game
Category
Independent reconstruction cases
Relationship
Independent reconstruction project
Sources reviewed

Requirements & limits

  • Prerequisites: Needs the user’s own MW2 Multiplayer installation, which BUILD.md describes as the Windows depot of a Steam copy; Black Ops and MW3 data are optional. The repository and release archives contain no game data, and CONTRIBUTING.md forbids attaching, committing or linking original game files.
  • Prerequisites: Builds with stable Rust through rustup and GNU Make. Linux needs a C/C++ toolchain and X11, Wayland, ALSA, udev and xkbcommon development packages; macOS needs only the Xcode command-line tools. The Windows release is a password-protected iw4l-windows.zip; given a server operator’s .iw4l-server descriptor, iw4l.exe installs SHA-256-verified executable updates from that operator.
  • Limits: Releases are tagged demo builds, v0.1.0-demo.23 at review. APIs, caches and the wire protocol change between commits, so multiplayer peers must run the same build.
  • Testing evidence: No CI workflow or cargo test suite: make publish-check rejects test modules, and the only permanent checks are two owner-approved end-to-end scenarios driving real clients on MW2 maps with the user’s game data. Fidelity to the original game is not measured.
  • License: Apache-2.0 source with two bundled OFL fonts; game assets and trademarks remain their owners’.
  • Attribution: NOTICE says no third-party source is vendored and names references read during development, including OpenAssetTools, IW4x, KisakCOD and Plutonium’s decompiled Black Ops II scripts. A provenance note records replacing a movement module after reported similarities to GPL code, without establishing copying.

About this entry

The description was reviewed against primary sources. This does not establish runtime testing, security auditing or verified compatibility.

Report an outdated entry Suggest a translation fix

Primary sources

  1. README.md GitHub · vladtrc/iw4L · Revision acc57a5
  2. NOTICE GitHub · vladtrc/iw4L · Revision acc57a5
  3. CONTRIBUTING.md GitHub · vladtrc/iw4L · Revision acc57a5
  4. AGENT.md GitHub · vladtrc/iw4L · Revision acc57a5
  5. docs/BUILD.md GitHub · vladtrc/iw4L · Revision acc57a5
  6. docs/WINDOWS.md GitHub · vladtrc/iw4L · Revision acc57a5
  7. Makefile GitHub · vladtrc/iw4L · Revision acc57a5
  8. crates/approved_tests/README.md GitHub · vladtrc/iw4L · Revision acc57a5
  9. docs/provenance/movement-iw4.md GitHub · vladtrc/iw4L · Revision acc57a5
  10. LICENSE GitHub · vladtrc/iw4L · Revision acc57a5
  11. https://github.com/vladtrc/iw4L/releases/tag/v0.1.0-demo.23

More in Games

All 245 entries in GamesGames case studies (203)