← Back to the arena

Oblivion Brawl

A browser wrapper for the cartridge supplied by Jesse. The game runs in two local WebAssembly emulator instances joined by an emulated GBA link cable. This is an unofficial fan project; Kingdom Hearts and game content belong to their respective owners.

Emulation and the original browser frontend: mGBA Splitscreen, building on mGBA by Jeffrey Pfau. Distributed under MPL 2.0. The readable modified frontend source is served as main.js, online.js, and touch-controls.js. The core's source is available at the pinned repository above. The binary has one additional table export for save import/export; the reproducible patch is here.

The starter save is adapted from a test fixture in Game Tools Collection by RyudoSynbios (MIT). Both players get the same custom 450 HP / 800 CP / level 50 setup, a 24-card deck, and unlocked attack and magic sleights.

Online transport uses PeerJS (MIT) and its signaling service. The invite opens our dedicated Oblivion Brawl Player 2 client. Game video, audio, and controls pass directly between browsers; the cartridge stays on the host. Online connectivity depends on the two networks and the signaling service. Local play does not need them. The host must keep the game tab active.

QR code generation uses node-qrcode (MIT). Original crash-report submission has been removed from this hosted wrapper. Save states stay in this browser, or can be exported from the File menu.

Oblivion Brawl title logo: original artwork created for this fan project. Sora’s “Ocean” illustration is sourced from the Kingdom Hearts Wiki. Original game and character art © Disney / Square Enix. Menu typography: KHMenu by Televo, from Kingdom Hearts Re:Collection.