nowfound

Dev tools · March 8, 2026

RE

Reverse-engineering Shockwave to save early 2000s web games (Rust/WASM)

Hi HN, When browsers killed NPAPI plugin support, thousands of early 2000s web games were effectively lost to time. Macromedia Shockwave, in particular, was a closed-source, highly complex, and largely undocumented beast. So a few friends and I spent the last two years doing something arguably unhinged: rebuilding the entire Director engine from scratch. Today, we're finally sharing dirplayer-rs. Repo: https://github.com/igorlira/dirplayer-rs We intentionally stayed quiet on this until we had undeniable proof that it was actually possible. With our latest v0.4.1 release,…

In plain words

Dirplayer-rs is an open-source recreation of the Macromedia Shockwave/Director engine built in Rust and WebAssembly. It enables early 2000s web games created with these now-obsolete technologies to run natively in modern browsers. Developed over two years by reverse-engineering the closed-source, undocumented format, the tool features hardware-accelerated graphics and can play complex games like Habbo Hotel and LEGO Junkbot. It is designed for preservationists, game historians, and anyone seeking to recover lost web gaming content.

written from the facts on this page · September 2026

From the sources

In the maker’s words, at launch

Hi HN, When browsers killed NPAPI plugin support, thousands of early 2000s web games were effectively lost to time. Macromedia Shockwave, in particular, was a closed-source, highly complex, and largely undocumented beast. So a few friends and I spent the last two years doing something arguably unhinged: rebuilding the entire Director engine from scratch. Today, we're finally sharing dirplayer-rs. Repo: https://github.com/igorlira/dirplayer-rs We intentionally stayed quiet on this until we had undeniable proof that it was actually possible. With our latest v0.4.1 release, we have full hardware-accelerated graphics. Complex games are booting natively in the browser and are fully playable. A few childhood favorites, actually playable right now: Habbo Hotel: https://dirplayer.com/habbo LEGO Junkbot: https://dirplayer.com/junkbot LEGO Worldbuilder: https://dirplayer.com/worldbuilder We chose Rust and WebAssembly because we wanted a native, plugin-free way to play these games without relying on ancient executables. Parsing decades-old, untrusted binary blobs and undocumented bytecode is a memory safety nightmare, making Rust an easy choice. It also gives us predictable performance with zero GC pauses, keeping frame rates smooth. The biggest headache by far has been Lingo, Director's scripting language. It's massive. It heavily supports 3D graphics, embedded Flash content, and the worst part: Xtras. Xtras were external distributable plugins compiled from native C code. Figuring out how to make those play nice in a modern WASM environment has been a serious challenge. We did, however, successfully implement the Multiuser Xtra so games can create socket connections (which is how Habbo is working!). We still have a long way to go to support full 3D and the massive ecosystem of third-party Xtras, but the foundation is solid. None of this happened in isolation. We built on years of prior work from the Shockwave reverse-engineering community: folks who have been poking at Director's internals for years, and their prior projects, tools, and research made this possible. Happy to get into the weeds in the comments: the RE process, decompiling ancient binaries, the weird quirks of Director's VM, the Rust architecture, whatever you're curious about. And genuinely: what old Shockwave game do you wish still worked? Drop it below and we'll see if we can get it booting.

More dev tools this month

the category →
  • Dograh592

    The open source VAPI alternative

    Dev tools · 25d ago · dograh.com

  • Meridian530

    Don't let your work go unnoticed. Get promoted!

    Dev tools · 20d ago · meridiona.com

  • x1516

    Lovable for iPhone apps go from idea to App Store

    Dev tools · 11d ago · x1.new

  • Open-source GTM skills for technical founders

    Dev tools · 29d ago · gtmcofounder.com

  • OpenTrailPaper is open-source bike computer firmware for the LilyGO T5S3 4.7" E-Paper PRO. It supports offline maps, GPX routes, FIT recording and Bluetooth sensors.

    Dev tools · 1d ago · opentrailpaper.com

  • Nuphos380

    The AI-Native DevOps Workspace.

    Dev tools · 24d ago · nuphos.ai

Launched alongside, March 2026

the whole month →
  • AI-native CRM that builds itself and does work for you

    AI · Mar 2026 · lightfield.app

  • Tobira.ai730

    A network where AI agents find deals for their humans

    AI · Mar 2026 · tobira.ai

  • Switch from ChatGPT to Claude with import memory feature

    AI · Mar 2026 · claude.com

  • The AI assistant that already knows your work

    AI · Mar 2026 · littlebird.ai

  • Your AI Coworker that proactively executes tasks

    AI · Mar 2026 · viktor.com

  • Jupid664

    File your taxes with Claude Code

    Commerce · Mar 2026 · jupid.com