Decompiled and recompiled games in a browser
People search “decompiled games” and “WebAssembly games” when they want the method, not a shopping list. Here are the four words I will stick to. Projects often pick a different word for themselves.
Four definitions
- Emulation. Software pretends to be the old hardware. The game binary stays as it was. The directory’s emulator tag counted 47 cards on 4 Nov 2026.
- Decompilation. Machine code is recovered into source that a person can read, then built again for a new machine.
- Recompilation. The binary is translated to a new architecture without a full source recovery. Wikipedia’s static-translation page uses N64 recompilation projects of the 2020s as the example: the old executable becomes C, often with a higher frame rate and a wide screen.
- Source port or engine rewrite. A known engine, or a new one, loads the game’s data. Doom’s PrBoom+ builds sit here. So do re3 and reVC for the older GTA games. Skate 3’s Rust project is a new engine, not EA’s code.
The browser is the destination, not the method
WebAssembly is a compile target with near-native speed for languages such as C, C++, and Rust. Cricket 07’s repository describes translating its Windows x86 executable into C and compiling that C to WebAssembly, a static-recompilation workflow. NFS Underground 2’s card describes a recompile of the PC code. Vice City points at reVC. GTA III on WASM Arcade points at re3. Doom cards point at PrBoom+. Same window, four methods. The games table is where those rows are listed.
Rights sit outside the diagram
A clean technical label does not make a build lawful. The Modern Warfare 2 card says the project was removed after a DMCA notice from Activision. SavePoint still points people who can buy the game toward the official edition. I link the videos people use to learn the vocabulary, and I do not treat a YouTube title as a definition.


Questions people ask
Is a browser port the same as an emulator?
No. An emulator pretends to be the old console. A recompile or a source port runs translated code. The directory tags both, and they are not interchangeable.
What is WebAssembly doing here?
It is the compile target that lets C, C++, C#, or Rust run in the page. It does not decide whether the project emulated a console.
Can these projects be taken down?
Yes. The Modern Warfare 2 card says Activision’s DMCA notice removed that build. A technical category is not a license.
Sources
- Cricket 07 translation README — checked 2026-11-04
- MDN WebAssembly — checked 2026-11-04
- Wikipedia: static recompilation — checked 2026-11-04
- SavePoint — checked 2026-11-04
- Modern Warfare 2 card — checked 2026-11-04