Legacy runtime preservation / Playable artifact
Die, AI!
Preserved a 2018 ActionScript game as a playable modern-browser artifact by keeping the original FLA, source, GreenSock dependency, and SWF intact while adding a static Ruffle wrapper, verified controls, fallback context, checksums, and archival documentation.
- Operating proof
- Direct digital-preservation evidence spanning a 50,392,143-byte FLA, 3,223,681-byte SWF, original ActionScript and GreenSock source, a pinned Ruffle WebAssembly wrapper, runtime-confirmed keyboard controls, checksum manifests, fallback content, and archive runbooks.
- Engagement
- GIMM 110 student project / Independent preservation
- Evidence set
- 7 reviewed artifacts
- Capability coverage
- 4 documented areas
Primary artifact
01 / 07Preserved Sector 12 gameplay
The primary artifact is the original SWF gameplay state: a two-minute defense loop with score, timer, player movement, laser fire, robot waves, and an exit-failure condition preserved through Ruffle.
01 / Context
Situation
•A playable 2018 project lost its browser runtime
DieAI began as a GIMM 110 Flash game about hacked AICorp Buddy Bots escaping Sector 12. When browser Flash Player support ended, the original SWF, keyboard controls, timeline scenes, and ActionScript mechanics stopped being directly accessible on the web.
•A rewrite would erase the preservation evidence
Rebuilding the game in a modern engine could reproduce the appearance while replacing the original runtime artifact. The revival needed to keep the FLA, SWF, source, dependencies, and historical context intact while modernizing only the delivery layer.
•Preservation required more than successful playback
A durable archive also needed provenance, checksums, rights notes, input verification, accessible non-playable context, fallback behavior, release procedures, and explicit documentation of what remained external or unverified.
Original Flash start screen
The preserved opening screen keeps the 2018 neon-grid identity and first interaction intact rather than recreating it in a new engine.
02 / Mandate
Mandate
•Keep the original artifact set inspectable
Preserve the Adobe Animate authoring file, exported SWF, ActionScript game classes, bundled GreenSock source, screenshots, legacy embed output, and supporting historical analysis in one reviewable repository.
•Restore browser play without rewriting gameplay
Load the original SWF through a pinned Ruffle runtime in a static GitHub Pages wrapper while retaining the original game loop, visuals, timing, score, enemies, lasers, and win or loss states.
•Make failure and focus states understandable
Provide visible controls, player-focus guidance, screenshot fallback, a direct-file guard, source links, and a story transcript so the page remains useful when the emulator or input path is unavailable.
•Document release and archival decisions
Record artifact scope, checksums, dependency licensing, Ruffle delivery, rebuild assumptions, release-bundle inventory, external-archive readiness, and approval gates before publishing a preservation release.
AICorp launch narrative
The original intro establishes the Buddy Bot product launch before the attack, preserving the timeline-authored story context around the gameplay loop.
03 / Build
Build
1.Separated artifact, presentation, and evidence layers
Kept the original FLA, SWF, ActionScript, and GreenSock files distinct from the modern static wrapper and from the preservation documentation covering provenance, accessibility, licensing, QA, release, and archive decisions.
2.Wrapped the unchanged SWF with pinned Ruffle
Built a no-bundler HTML shell that loads @ruffle-rs/ruffle 0.2.0, fetches the original SWF, shows controls and project context, blocks unsupported file:// launches before runtime loading, and keeps screenshots available as fallback evidence.
3.Audited the preservation set
Recorded a 145-file, 59,131,113-byte preservation manifest with SHA-256 hashes, including the 50,392,143-byte FLA, 3,223,681-byte SWF, four original game-source files, 129 GreenSock files, and seven wrapper images.
4.Verified browser behavior and accessible context
Confirmed live HTTPS playback, SWF and runtime delivery, desktop and mobile layout, player focus, A and D movement, Space firing, and the direct-file guard; added a non-playable story and screen transcript plus explicit unsupported-input notes.
Live Ruffle start state
The deployed GitHub Pages wrapper loads the original SWF through pinned Ruffle, exposes the runtime-confirmed A, D, and Space controls, and keeps source and project context beside the player.
Compromised Buddy Bot state
The hacked warning supplies the transition from product announcement to defense scenario and remains part of the unchanged SWF sequence.
04 / Outcomes
Outcomes
•The original SWF is playable on the modern web
The live GitHub Pages wrapper runs the preserved Flash build through Ruffle without a browser plugin or gameplay rewrite, while the repository retains the authoring file, source, dependencies, screenshots, and legacy output.
•Runtime controls are documented from evidence
A browser input audit confirmed A for left, D for right, and Space for fire while the Ruffle player held focus. Arrow keys, W, S, Escape, mouse shooting, gamepad, and touch are not presented as supported without validation.
•Preservation remains useful when play fails
The wrapper keeps story context, controls, screenshots, source access, and next actions visible, and the repository includes a text transcript for readers who cannot operate the Flash or Ruffle experience.
•A working archive with explicit remaining gaps
The current archive is checksummed, documented, and playable, but it does not yet have an automated SWF rebuild, a proven Adobe Animate round trip, a vendored Ruffle runtime, a published preservation release bundle, or an external archive submission.
Preserved failure state
The game-over screen confirms that the wrapper retains the original loss path and replay loop rather than stopping at a static screenshot or menu shell.
Modern preservation identity
The revival identity gives the archive a current public-facing frame while the playable artifact, screenshots, source, and checksums remain tied to the preserved 2018 build.
Continue the evidence trail
From proof to role fit
Compare Die, AI! with adjacent systems, or carry its reviewed capabilities into an Adaptive Focus brief.