For some reason the opening settings page made me think this would be someone who just told claude to make a monkey ball style game.. maybe from seeing too much of that on HN. forgive me for that, this is awesome.
As far as i can tell it's not even an emulator or a decompilation running in emscripten or anything like that, they remade the game in TypeScript. love stuff like this https://github.com/sndrec/WebMonkeyBall
I keep saying JS JIT + WebGL/WebGPU is fast enough for these kind of games, no need for the WebAssembly toolchains that are still a pain to use years later.
See PlayCanvas.
The whole GX code reminds me of the Gamecube API from the same name.
In 2006 the iPhone was announced without an App Store and Apple’s party line was to just build/use web apps.
Fast forward to 2008 and the App Store is launched along with Super Monkey Ball – a day one app – the perfect game to demonstrate the power of a true native app that could _never_ be achieved on the web.
Fast forward to 2026 and after 15 years, the browser vendors have not yet provided anything remotely similar to RenderDoc, only SpectorJS survives, barely usable.
Also this game remains the exception, Infinity Blade was released in 2010 to show what iPhone could do with OpenGL ES 3.0, the base for WebGL 2.0, and yet most Web games are basically Flash like remakes.
I'm really at a loss to explain why there aren't more web games of this quality. It's totally feasible to make these, and yet they are so rare. I've ported a couple of games myself (https://thelongestyard.link/q3a-demo/, https://thelongestyard.link/cave-story/), but there ought to be hundreds like this.
I was in the market looking for some fun iOS games, things that I could play casually, pick up in a moment, load quickly, and not be burdened by the ridiculousness of modern gameplay and incentive mechanics. To my surprise, it was very hard. I couldn’t find anything. This is exactly what I’m looking for.
Apple has had some good chips, but is not a high priority for game developers. If you are on ARM, than the emulation performance hit will heavily limit what kind of games are playable.
The gyro permission request doesn't work on iOS since it's not tied to user input.
If you're feeling brave, you can paste this into your phone's javascript console to add a button that requests permission.
var b=document.createElement('button');
b.textContent='Gyro';
b.style='position:fixed;z-index:999';
b.onclick=()=>{DeviceOrientationEvent.requestPermission();b.remove()};
document.body.appendChild(b);
The GTA Vice City in browser was also really impressive, but it seems it has been taken down. How much of an advantage has AI got on decompilation projects? Complex assembly seems to be still done to some degree by hand these days (see - ffmpeg), and I wonder how big of a training set you could provide. I have wondered if it was possible to take the re3/reVC code and the assembly and use it for training data to get GTA San Andreas on macOS.
GTA Vice City and San Andreas were released on iOS more than a decade ago. I tried installing the mobile version on my Mac with Apple Silicon. It launches fine (if I remember right), it just needs an update for the controls to work, since it was made for touch. I haven’t tried hooking a gamepad to the Mac, maybe that would solve it.
It seems like Rockstar could make a relatively minor update to officially support macOS and sell a lot of additional copies. At this point, they could simply not support Intel Macs and I don’t think anyone would mind.
Well this was a fun way to see that Firefox on Linux finally fixed the shader cache being broken (at least for NixOS). This is great.
Though I gotta say, I am a little disappointed that there are no monkeys inside the balls. It's just a big ball, at least for me on Firefox and Chrome on NixOS.
Monkey Ball (without the Super iirc) was an arcade game initially. With a banana-shaped joystick and everything. Then SMB added some extra modes and came out as a release title for the Nintendo GameCube. It was probably intended as kind of a low-budget thing, but ended up being recognized as one of the best games for the system, especially early on.
If you haven't seen Smiling Friends, you're in for a treat. Zach Hadel is a genius.
The mix of 2D animation, 3D animation, claymation, stop motion, live action rotoscoping, and comping in guest animators like Joel Haver and David Post amazing. You know they appreciate the art form.
I tried to put on a movie while I was home for the holidays and my brother instantly complained that the drone shot made him motion sick. Was weird to me to hear that a stationary screen could upend someone's vestibular senses.
The author commented on their ko-fi: "there isn't much to say that would require a big writeup - a lot of the code is already reversed, and anything that's missing can be yoinked from ghidra decomp output and cleaned up, so it's just a matter of transpiling to a different language. plus much of the game's proprietary formats are thoroughly documented by the modding community. time consuming but quite easy if you're just patient haha"
Embarrassingly, I only ever knew this game as Neverball because there was a period when I would only play open source games and this, Xmoto, and tux racer.
So. this code was most likely generated with AI trained on community decompilation efforts, possibly without their knowledge. I know that the community has not yet reverse engineered custom model skinning for the game, so it does not appear here because it wasn't in the training data. Why would somebody who has supposedly already implemented billboard object support, or as the code calls it "flipbook objects", couldn't just stick a similar animated billboard texture inside the ball? probably because they have no clue how the code actually works or is structured.
It's genuinely impressive that generative AI has advanced to the point where this was possible, but it also feels like this was built backwards, extremely niche mechanics in the game are rendered nearly perfectly, where the base elements of the game had this been built from the ground up are implented wrongly or completely absent.
[+] [-] unleaded|1 month ago|reply
As far as i can tell it's not even an emulator or a decompilation running in emscripten or anything like that, they remade the game in TypeScript. love stuff like this https://github.com/sndrec/WebMonkeyBall
[+] [-] bloppe|1 month ago|reply
[+] [-] pjmlp|1 month ago|reply
See PlayCanvas.
The whole GX code reminds me of the Gamecube API from the same name.
[+] [-] calflegal|1 month ago|reply
[+] [-] alexarena|1 month ago|reply
Fast forward to 2008 and the App Store is launched along with Super Monkey Ball – a day one app – the perfect game to demonstrate the power of a true native app that could _never_ be achieved on the web.
[+] [-] pjmlp|1 month ago|reply
Also this game remains the exception, Infinity Blade was released in 2010 to show what iPhone could do with OpenGL ES 3.0, the base for WebGL 2.0, and yet most Web games are basically Flash like remakes.
https://en.wikipedia.org/wiki/Infinity_Blade
"Infinity Blade: iPhone Trailer", 15 years ago
https://www.youtube.com/watch?v=JDvPIhCd8N4
[+] [-] modeless|1 month ago|reply
[+] [-] iFreilicht|1 month ago|reply
[+] [-] laborcontract|1 month ago|reply
[+] [-] Joel_Mckay|1 month ago|reply
https://github.com/86Box/86Box/releases
https://github.com/Moonif/MacBox/releases
Note, Steam will also natively run on many Apple ARM systems now, but again the compatibility of game titles will be sparse. Have fun =3
[+] [-] yuppiepuppie|1 month ago|reply
[+] [-] sjml|1 month ago|reply
[+] [-] MiddleEndian|1 month ago|reply
[+] [-] rda2|1 month ago|reply
var b=document.createElement('button'); b.textContent='Gyro'; b.style='position:fixed;z-index:999'; b.onclick=()=>{DeviceOrientationEvent.requestPermission();b.remove()}; document.body.appendChild(b);
[+] [-] CuriousRose|1 month ago|reply
[+] [-] al_borland|1 month ago|reply
It seems like Rockstar could make a relatively minor update to officially support macOS and sell a lot of additional copies. At this point, they could simply not support Intel Macs and I don’t think anyone would mind.
[+] [-] DANmode|1 month ago|reply
[+] [-] tyleo|1 month ago|reply
[+] [-] drivers99|1 month ago|reply
For me, it's not really the same without the monkey yelling when you fall off the level. (example: https://www.youtube.com/watch?v=rIs7bCOCQj0 )
[+] [-] adzm|1 month ago|reply
[+] [-] hackernudes|1 month ago|reply
[+] [-] OutThisLife|1 month ago|reply
[+] [-] NickC25|1 month ago|reply
This is incredible. Well done.
[+] [-] tombert|1 month ago|reply
Though I gotta say, I am a little disappointed that there are no monkeys inside the balls. It's just a big ball, at least for me on Firefox and Chrome on NixOS.
[+] [-] TZubiri|1 month ago|reply
[+] [-] kilpikaarna|1 month ago|reply
[+] [-] echelon|1 month ago|reply
If you haven't seen Smiling Friends, you're in for a treat. Zach Hadel is a genius.
The mix of 2D animation, 3D animation, claymation, stop motion, live action rotoscoping, and comping in guest animators like Joel Haver and David Post amazing. You know they appreciate the art form.
You've probably already seen the gif of this scene: https://www.youtube.com/watch?v=5zxL77g1em4
[+] [-] skeaker|1 month ago|reply
[+] [-] andrewcraft|1 month ago|reply
[+] [-] bsimpson|1 month ago|reply
Seeing this, I understand.
[+] [-] msephton|1 month ago|reply
[+] [-] letmevoteplease|1 month ago|reply
[+] [-] renewiltord|1 month ago|reply
[+] [-] tarantino-sax|1 month ago|reply
It's genuinely impressive that generative AI has advanced to the point where this was possible, but it also feels like this was built backwards, extremely niche mechanics in the game are rendered nearly perfectly, where the base elements of the game had this been built from the ground up are implented wrongly or completely absent.
[+] [-] kuschkufan|1 month ago|reply
[+] [-] Cloudef|1 month ago|reply
[+] [-] jader201|1 month ago|reply
This would be prefect for iPhone gyro controls, but I’m not getting it to work.
Edit: never mind, the permissions are broken:
https://news.ycombinator.com/item?id=46791545
[+] [-] socalgal2|1 month ago|reply
https://experiments.withgoogle.com/world-wide-maze
(only a video is still up)