Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
Rust와 bevy, wgpu 기반 독립 실행형 실험용 Call of Duty 런타임
Standalone experimental Call of Duty runtime in Rust, built on bevy and wgpu
게임Rust · Common LispGitHub @vladtrc직접 설치운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗IW4L is an open-source runtime for Call of Duty: Modern Warfare 2 (2009), written in Rust with Bevy. Point it at a copy of MW2 you already own and it loads that installation's maps, models, textures and weapons into its own engine. You can try implemented movement and combat on multiplayer maps, then inspect or change how those systems work.
Explore maps, fight bots, and record and replay demos. Gameplay remains incomplete; expect missing behavior, bugs and desyncs. The asset readers also cover MW3 and Black Ops.
APIs, configuration, caches and the wire protocol change between commits; multiplayer peers must run the same build.
iw4l-windows.zip from Releases and extract it into an
empty writable folder. The archive password is t.me/contextrot.iw4l.exe. It finds MW2 in your Steam libraries and creates a
Modern Warfare 2.lnk shortcut next to itself. For an install outside Steam, create
that shortcut to your MW2 folder yourself.For online play, put the .iw4l-server file you received from a server operator next
to iw4l.exe. With it the game finds that master and updates itself on launch. Details:
Windows guide.
Install Rust through rustup and GNU Make. Build dependencies cover Linux's C/C++ toolchain and system libraries, and macOS's Xcode command line tools. Windows instructions cover building and arranging a portable folder.
You need your own installed MW2 Multiplayer data. IW4L
distributes no game assets and reads installations without patching or replacing their
files. Caches, demos and logs go under iw4l-artifacts/; Linux settings use a separate
configuration directory described in the run guide.
From the repository root:
cp .env.example .env
# Edit .env: set IW4L_GAMES to the folder containing your game installations.
make map mp_boneyard CMDS='wait world; spawn 0; force_match_start; bot add 3'
This builds the optimized play profile and starts a local match with three bots.
force_match_start skips the warmup that otherwise freezes movement.
| Area | Implementation |
|---|---|
| Assets | Native FastFile readers convert game data into a shared intermediate representation. |
| Shaders | Retail Direct3D 9 Shader Model 3 bytecode is translated to WGSL. |
| Rendering | World geometry, models and effects feed one sorted draw-surface list. |
| Simulation | Server authority, client prediction and replay share one simulation step over explicit Bevy ECS state. |
| Networking | Custom UDP traffic; a QUIC master provides browsing and relaying. The host simulates the match. |
This whole project is written by an LLM.
Thank you to all contributors for code, bug reports, testing and feedback. Special thanks to ju1cedr1nker and silvernote03 for QA testing weapons, maps, attachments and other gameplay features.
OpenAssetTools and its iw4x-x64 fork informed asset layouts; IW4x informed asset and protocol behavior; KisakCOD informed engine structure. Ghidra was used to inspect the original binaries.
Movement implementation history and source boundaries are recorded in its provenance note.
IW4L's source is licensed under Apache 2.0. Preserve required attribution and bundled font license texts when redistributing; see NOTICE. Original game assets and trademarks belong to their owners. IW4L is unaffiliated with them.