A free browser game from the Play Moehr Games arcade

The only weapon you get is the monster attacking you.

MAELSTROM is a free physics game that runs right in this browser tab: spin to aim, hook a sea-monster out of the charging swarm, wind it into orbit, and fling it off the island. Runs are about five minutes, and everyone gets the same daily.

Dive today's daily

Free, no ads, no signup. 16 KB over the wire: it loads faster than this page did.
Built for a mouse and a desk (on a phone now? save it for later).

Real gameplay: the crab flings a hooked monster through the swarm and a DOUBLE YOINK floats up as the abyss closes in. Real gameplay still: the crab mid-throw, a DOUBLE YOINK toast on screen, the swarm crowding a shrinking island.

The whole game is one throw

Somewhere along the way, these games stopped needing you: pick a build, walk in circles, watch the weapons fire themselves. MAELSTROM is the opposite, and the opposite fits in one throw.

Hook. Hold the button and it fires along your stare, because your facing is the reticle: no cursor, no lock-on, just where you're pointed. It thunks into something angry. The chain snaps taut, and the thing that was charging you half a second ago is orbiting you on a tether instead. (You, by the way, are a crab. A one-clawed crab-god, marooned and furious. The game does not explain this and neither will we.)

Wind. Keep holding to reel the orbit tighter and faster. Spin, and your spin pours into the chain, because turning is loading a slingshot. The monster becomes a blur, and the blur is a blade: anything it clips gets body-checked across the stone.

Let go. The body leaves on a clean tangent, through two of its friends, off the rim, into the dark. Flat out, a flung body crosses the entire island in about a third of a second. That's a DOUBLE YOINK, in the game's own vocabulary. And the recoil shoves you backward like a panic dash, which, three tides from now, will save your shell by a hair.

That's the whole moveset. Nothing fires itself, so every kill on your score is a throw your hands made, and the release angle is yours every single time. Your gut will need a few dives to calibrate the tangent. Calibrating it is the game.

Nothing here has a health bar

Not the monsters. Not you. That's the entire rulebook: things die one way, by leaving the island. Monsters go over the rim, into the abyss, gone. The swarm can't bite you either; it shoves, crowding you toward the edge one shoulder-check at a time, and the only counterplay is making room. Every death reads clean. You were too slow to make room, you know it, and you're already diving again.

Meanwhile the island is sinking. Every 45 seconds a tide rises: the abyss lunges inward, the swarm gets meaner, and the game pauses just long enough to offer you one of three hook mods (small upgrades that bend how your one verb behaves). Twelve are in the pool and they stack: Long Line over Whipcord over Barbed Chain and you've built a railgun, one throw punching through kill after kill from half the island away. Stack Kickback instead and every heavy fling doubles as an escape dash. Same verb, different animal.

Real frame: the chain taut across a shrunken island, a hooked monster at the end of it, a heavy Brute and the swarm closing in.
tide 1, one chain, real frame

Three anchor pylons stand out in the shallows, and a flick of the other button slings you to one when a corner closes in. By tide five the floor is a coin. The swarm stands shoulder to shoulder, the only open space is whatever a flung Warden just cleared, and you're spinning and releasing on instinct until the water takes you: DRAGGED UNDER, in big letters, over a count of everything you did.

Then you press enter.

Six monsters, six different throws

Throw one

Your first yoink is ten seconds away. Mouse and a desk; a run is about five minutes.

The daily: everyone fights the same collapse

If you play Wordle, you already know this shape: one shared puzzle a day, gone at midnight. Here's today's, the actual string the game hashes:

maelstrom-2026-8-27

That's it. The date. Everyone who dives the daily today starts the identical run: same island, same opening waves, same tide clock, drawn from the same seeded deck. From there your run branches with your throws (kill different monsters and the deck deals you different spawns and mod offers), but the start is provably level and the physics never rolls dice. When your friend posts a higher score, they read the same collapse better than you did. That's the fight.

Your best score and today's best live in your browser, on your machine. No account, no server, nothing phoning home. If you want a rivalry, start a group chat. And if you'd rather warm up on a throwaway island first: press F on the title screen for what the game calls a free dive, a practice run on a random seed.

Keep your twenty-minute games; this is the five minutes between them. Score-wise it's simple: every ring-out pays that monster's bounty times your combo multiplier, which climbs while the kills keep coming and fades after three seconds of quiet. Every extra body cleared by the same fling pays a fat bonus on top. Greed, but aimed.

44 KB, and that's the whole game

44 KBof code
16 KBover the wire
60 Hzfixed physics
0audio files

One JavaScript file: 44 KB of code, about 16 KB over the wire once compression squeezes it. Smaller than the thumbnail image of a game on most portals, never mind the ad networks they load before you're allowed to click anything.

Small is why the title screen beats your patience to the punch. Deterministic is why the daily is a fair fight. And synthesized-live is why the sound follows your reel speed instead of looping an mp3 at you: zero audio files ship with this game, no engine, no framework, no dependencies. Underneath, the physics runs at a fixed 60 ticks a second no matter what your machine is doing, pinned down by 61 automated tests (that one you'll have to take on faith; everything else here you can check in one free click).

No reviews yet, so the game does its own talking

It shipped quietly onto the arcade. Until players say things, here's the game's own voice.

The title screen, on what it is:

grab the thing trying to kill you — sling it into the things trying to kill you

The words that float up off the stone when one throw clears more than one monster:

DOUBLE YOINK. TRIPLE YOINK. MEGA YOINK.

And the death screen, which counts up your run (survived, tides, ring-outs, best yoink, peak combo), stamps it FINAL SCORE, and offers exactly one piece of consolation:

click / enter to dive again

Is this your kind of five minutes?

Honest gripes first, because there are some. It's built for a mouse: touch works in a pinch, but on a phone you're getting maybe a third of the game. (Trackpad on a laptop? The keyboard scheme exists for exactly you: A and D spin, Space hooks, Shift slings.) You'll also die a lot at the start, and the game will not apologize.

But dying is the score resetting, not the fun stopping: the throw is the game, and the throw works from your first one. The fat, slightly magnetic hook tip, the gentle current that drifts you back toward center when you stand still, and the 1.6 quiet seconds before the first monster spawns are the only other mercy on offer.

Probably for you if: you keep a daily-run habit and a number-chasing streak. You love games where one interaction is tuned until it sings. There's a tab in your life reserved for exactly this kind of five minutes. The phrase "the enemy is the ammo" does something to you.

Probably not for you if: you're phone-first. You want progression bars and a meta to grind (the only thing that levels up here is you). You'd rather pause and think than spin and commit.

Free, actually

No ads. No account. No purchases, cosmetic or otherwise. Nothing to install, no email gate between you and the title screen.

Why? It's one game on a handbuilt arcade of fifty-plus, made for the love of the thing. The whole business model is that you have a good five minutes and maybe wander the arcade after.

Today's seed retires at midnight (that's just how calendars work)

No countdown, no timer: the daily is generated from today's date, so when the date turns over, today's collapse is gone and tomorrow's is already waiting. There is always another one coming, and it's always five minutes.

So: five minutes. One verb. Your hands. And by tonight, your group chat could have a number to beat.

Play today's island

In this browser, right now. Hold to YOINK, release to fling.
On a phone? It'll still be here at your desk tomorrow; the daily resets every midnight.

Controls, complete: aim with the mouse (or A and D). Hold left-click or Space to hook and reel. Release to fling. Right-click or Shift slings you to an anchor pylon. M mutes. That's everything there is to learn; the rest is timing.

Where the buttons go, in plain text: playmoehrgames.com/play/maelstrom. No interstitial, no redirect, no signup wall. That's the whole trip.

P.S. Somewhere around your third dive, the island will be down to a sliver, and you'll wind a Brute up until it hums and clear the whole rim with one release. Nobody will be there to see it. You'll say "did you SEE that" out loud anyway. That's the game. Grab the thing trying to kill you; you know the rest.