Skip to content

The Simpsons Game — Recompiled v0.0.4

Choose a tag to compare

@github-actions github-actions released this 16 Jul 10:35

The Performance Release

The first release since the repository went public — and the largest set of performance work so far. Same game, same visuals, substantially faster.

Quick start — Windows: unzip, run simpsons-launcher.exe, click Install from ISO, then Play.
Quick start — Linux / Steam Deck: extract, run Play.sh.

Performance

  • Real 60 FPS. The game shipped with its own hardcoded "wait 2 vblanks between frames" — a 30 FPS lock that ignored every setting. It's now patched at the instruction level (matching the community-verified 60 FPS patch for this title), so the launcher's Framerate setting actually works. 60 is well-tested; 90/120 remain experimental.
  • ~50% faster in the heaviest measured scene. The recompiled game code now builds at full optimization with a modern CPU baseline (-O3 + x86-64-v3) — previously the hottest code in the project was compiled at a lower optimization level than everything around it. Combined with the engine fixes below, the main-menu draw-storm scene went from a locked ~32 FPS to ~48+ FPS in like-for-like measurement.
  • Engine hot-path fixes: removed a per-draw-call cache that the code's own upstream history documents as a measured loss (it ran on every draw); eliminated redundant global-lock acquisitions on two hot paths (guest thread-sync calls, and the memory-fault handler that fires tens of thousands of times during level streaming); fixed the audio worker's wait loop busy-spinning under load.
  • Tear-free presentation. Main-menu flicker traced to a tearing-permitted swapchain default; the presenter now prefers a tear-free mode with the same latency.
  • Audio fixes: startup failure on systems without a JACK server fixed (SDL now targets PipeWire/PulseAudio/ALSA directly); wait-loop fix above also reduces audio crunch under load.

Launcher

  • Update checker fixed: it now offers an update only when a release is actually newer than what you're running (previously any version mismatch nagged forever).
  • Steam Deck Gaming Mode: launcher opens as a real app window instead of Steam's built-in browser, and the game no longer black-screens when switching to it (both were one root cause: the sandboxed Steam Linux Runtime container).
  • Settings dropdowns fixed inside the launcher's embedded window.

Under the hood (for contributors)

  • Built-in per-frame performance logging (perf_log_csv) — fps, frame times, draw calls, GPU stalls, cache hit rates.
  • Live FPS overlay on F3.
  • A benchmark harness (tools/bench/): A/B performance runs with saved baselines, GPU shader-cost ranking, a pixel-diff rendering-verification harness, and a scripted PGO pipeline.
  • The complete map of the game's D3D command-writer method table (simpsons/re/d3d_method_table.md) — all 73 rendering operations identified, the foundation for the native-renderer roadmap in the README.
  • Optional ThinLTO builds (-DREXGLUE_ENABLE_LTO=ON) and opt-in draw-submission telemetry (-DSIMPSONS_DRAW_TELEMETRY=ON).

Known issues

Unchanged from the README: the "instant pop-in" patch remains dangerous on Steam Deck hardware (workaround documented), audio can still crunch under very heavy load (a deeper fix is in development), and 90/120 FPS modes are experimental.

You must own the game. As always, no game content is included — the launcher installs from your own legally-owned ISO.