Independent project guideSource checked · 15 OCT 2026
Source on GitHub

Game report

God of War II Web Recomp

The second documented title showed why a working race demo does not mean every PS2 hardware path is already covered.

Source reviewed 15 October 2026 · Evidence & method

The current documented result

The upstream maintainer reports God of War II reaching menus, cutscenes and combat through the same port.sh workflow used for Gran Turismo 4. The README quotes 60 frames per second in heavy combat at native resolution in Chrome, and 48–60 at twice the resolution on the test laptop’s integrated GPU. These are the author’s observations in measured scenes, not an all-device or whole-game guarantee.

The project says this title needed no game-specific code. That does not mean the first attempt worked without changes: it exposed generic bugs and missing emulated services. Those fixes improved the runtime for the hardware behavior the game exercised.

Why the initial build was silent

The game’s sound driver uses an I/O processor hardware timer to schedule its audio work. That timer behavior had not been implemented, so no mixed audio samples were produced. This is a useful diagnostic distinction: silence can come from emulated hardware scheduling, as well as from browser audio permissions or an output-device setting.

A branch-delay bug crossed a generated-code boundary

The recompiler splits guest code into translation units. The maintainer traced a crash to a branch at the end of a 16 KiB unit. One execution path resumed in the next unit at an incorrect delay-slot position, duplicating an instruction or executing one that should have been skipped. Corrupted rendering data then overran memory. The visible failure looked like bad geometry, while the underlying cause was control flow.

Why giant polygons remained after the crash fix

A separate vector unit timing problem affected clip flags. God of War II reads those flags three instructions after the operation that produces them; the model had made them visible later. Gran Turismo 4’s code waited longer, so it did not expose the same error. Once the timing was corrected, triangles that should be culled no longer obscured the scene in that way.

Other generic additions included a BIOS-like boot path, loading a module from memory and scratchpad DMA destination-chain handling. This makes the title a concrete example of compatibility work spanning the CPU, vector units and I/O system. It is more informative than treating recompilation as a single automatic conversion.

Testing your own build

Use the setup instructions, retain the exact commit and disc revision, and start at native resolution. Check sound and a repeatable combat scene separately. If another part fails, report its stopping point rather than assuming that every area has been verified because combat appeared in the README.

This guide has not independently played or completed God of War II. No unrelated fan remake, original God of War port or PS2Recomp fork is counted as evidence for this project’s browser build.

Source: Upstream project documentation · reviewed 15 October 2026.