HABBengine
Play it, then take it. This is the engine every game on this account is built from, and it is one HTML file you can open in a text editor.
What is running in the frame is the kit itself with a trivial demo inside it. Move with WASD or the arrows, touch the orbs, reach ten. The demo is meant to be thrown away. The engine underneath is the thing.
WHAT IT IS
One HTML file, about 52 KB. No build step, no dependencies, no asset files, no network calls. Canvas and Web Audio. It runs offline, off a thumb drive, with no server and nothing to install. View source and you are looking at all of it.
WHAT YOU GET IN IT
A scene machine with title, play, pause and game over already wired. Music and sound toggles that persist. A particle system, screen shake, a toast queue, seeded randomness, save and load codes. Safe-area padding, pointer and touch and keyboard input, a screen wake lock, and a crash card that shows a version stamp instead of a dead canvas. Reduced-motion is honoured throughout.
WHY IT IS SHAPED THIS WAY
The engine is written to be worked in by an AI, and most of its design follows from that.
One file, because an agent can hold the whole game in context and patch it by exact string match. A project split across a bundler and a node_modules tree means the agent is editing blind.
A headless test hook, because an agent has to be able to fail and find out on its own. The file exports its own update loop and ships with a Node smoke test, so a build can be driven and asserted with nobody watching.
Zero external requests, because that is what lets the whole thing render from file:// in a headless browser. An agent that cannot look at the picture is only reasoning about code, and warp, clipping and bad centring are invisible in code and obvious in an image.
Hard won corrections baked in, because an agent starting from a blank file re-derives none of them and ships all of them. The iOS audio unlock that survives the trap where a pointerdown grants no activation. Canvas context-loss recovery, because memory pressure otherwise freezes a game to a still image. A music scheduler built on setTimeout rather than setInterval, because a throttled background interval piles up and bursts queued notes when the tab comes back. A service worker whose install no longer reports success on an empty cache.
And one correction that is specifically about being machine written. A grep of ten games on this account found eight of them drawing every character in system-ui, -apple-system, Segoe UI, Roboto. That string is the Tailwind and shadcn default and one of the most shipped strings in machine written frontend. Players cannot name it. They recognise it anyway. The kit ships a 55 glyph bitmap face so a build can stop leaking it.
HOW IT WAS BUILT
Claude as the coding agent, with a human directing the work and reviewing it before anything ships. AI assisted, human directed and edited. Nothing here is claimed as hand made.
If you use it, I would like to know what you built.
| Updated | 8 days ago |
| Published | 11 days ago |
| Status | In development |
| Platforms | HTML5 |
| Author | M Dawg |




Leave a comment
Log in with itch.io to leave a comment.