A week later and we have an example of what will look like in MML Editor... and IT'S INSANE!!! 🔥🎆💥
@Escapation recalled where pokemon was playable in MML editor from years ago.
@RJFWhite had the secret component. Streaming via scripting to a screen in MML. Inputs on the gamepad impacted the actions which were streamed. INSANE! When we found out this was possible, so we patched 9 different roms in 7 days. 😅😂🤣
Here's the breakdown:
Built a fully playable retro arcade inside a 3D Metaverse world. Here's what's running:
🕹️ 9 playable arcade cabinets — each a custom 3D GLB model with a live game streaming to the screen in real time
🎮 Games featured:
🍄A Plumber for All Seasons (SNES)
🍄SMB3 Mix (NES)
🍄The Rainbow Realms 1.3 (NES)
🍄Rainbow Realms 2 (NES)
⚔️Pokémon Insurgence (PC fan game via Wine)
🍄New Super Mario World 1 - The 12 Magic Orbs (SNES)
🍄New Super Mario World 2 - Around The World (SNES)
🍄Super Mario World Beta (SNES)
📐Zelda3 - Allhallows Eve (SNES)
⚡ Live streaming architecture — each cabinet streams real gameplay frames over WebSocket at 30fps with audio, directly into the 3D world
🖥️ Custom server on Railway running Node.js Puppeteer EmulatorJS Wine ffmpeg PulseAudio — all containerized via Docker
🃏 Custom info cards for every game — showing difficulty rating, author, platform, base game, and source with a color-coded difficulty bar which appears automatically
🕹️ Full gamepad support — physical controllers work with animated button press feedback on the 3D controller model
💾 Persistent save states — your progress saves automatically every 60 seconds per wallet
🐉 Pokémon Insurgence running via Wine on a cloud server — game files hosted on a Railway persistent volume, auto-downloaded from ArDrive on first boot
🔧 Full CI/CD pipeline — push to GitHub → Railway auto-deploys → world updates live
💥Streaming a game is expensive. Especially if you're writing key inputs for a player, images, and sound. We've set up 10 very different roms that all stream from a single server. Claude coded this to where multiple arcades could be loaded at the same time without bleeding sound or images from one cabinet into another.
🔥The near 1 sec delay is killer especially for platformer/adventurers. The next obstacle is finding a way to eliminate this by getting his to work in MFrame. It also makes it like 99% cheaper. I don't even know if that's possible and what we'll forfeit by doing this.
Is it passable, yes.
Is it playable in Otherside - almost certainly.
Do you have to anticipate the lag to get through a level...- 100%
but IT IS PLAYABLE!
That's all for now. The rom hacks I've selected are some of the best gems I've come across! Let me know if you want a link to any of these to give them a try in your native browser or have any recommendations.
Took quite a break from this but back with a vengence. What if Mario Rom Hacks playable in OS arcade...
The prime obstacle is loading this via web socket and having an interactable screen within an existing game that allows interaction. We know an element of this is possible, but to what extent. Can I play a kaizo mario Rom hack on Otherside? 🤣Are there delays? It all maters.
🅰️We first needed to make the game playable, and accessible online. The game needs to register controller input and automap based on that input. Keyboard players are toast on Kaizo Mario. Sure you can play but you wont want to... 🍄
🅱️Once the game was playable we created an arcade and info that deploys on hover. Similar to the levels in Otherside with Leaderboards. As the player approaches the arcade machine the information about the level - maker - and difficulty all populate - pulling the player in. 💥
🍄The biggest obstacle now is getting the E input to load the menu which fills player screen and interacts to their inputs. We don't want external links to other systems... and MML player currently blocks this playing in the MML viewer, but will UE5 with OS....? TBD.
Watch till the end... 🤣😅😁