Hookline
Design brief
Hold to hook a floating ring, let go to fling yourself forward, and keep swinging right before a wall of darkness swallows the city behind you.
Date: 2026-10-08 Genre: endless runner Platform: Mobile (portrait, touch-first) Status: Playable build
Concept
You are a spark of light crossing a night harbor on a grappling line, swinging from one floating hook to the next. A blackout is rolling in from the left and turning every lit window it passes dark. There is one control. All the skill is in when you grab and when you let go.
Core loop: hold to latch onto the nearest hook ahead, swing through the arc, release on the upswing to fly toward the next hook, while the hooks spread apart and start failing as the dark closes in.
How to play
Press and hold anywhere on the screen to hook the nearest ring ahead of you; a dashed circle marks which one you'll get. Hold to swing, then lift your thumb to let go and fly. If you hold before a ring is in reach, the hook fires the moment one comes into range.
You lose if you drop into the harbor, clip a pylon, or slow down enough for the blackout to reach you. The game-over screen tells you which one it was. On desktop, hold Space, Up, W, Z or the mouse button. R restarts, P or Esc pauses, M mutes.
Core mechanics
- When you grab sets the rope length. Hook early from far away and you get a long rope with a deep, fast swing that dips toward the water. Hook late, close under the ring, and you get a short, tight arc that stays high.
- When you release sets the flight. Let go just past the bottom of the arc and you shoot flat and fast. Let go near the top and you lob high but slow. Hold too long and you swing backward toward the dark.
- Amber hooks crumble 0.8 seconds after you latch on, with a countdown ring around them, so you have to commit to the release early.
- Drifting hooks bob 45 px up and down, so the rope length you get depends on when in the bob you grab.
- Pylons stick up out of the harbor between some hooks. A long rope will swing you straight into one, so you need the short grab there.
Progression & scoring
Difficulty goes up in steps by distance (40 px = 1 m), and each step adds one new kind of pressure:
| Distance | What changes |
|---|---|
| 0 m | Plain cyan hooks 150–190 px apart; the dark moves at 120 px/s and trails 300 px behind the camera |
| 150 m | Amber crumbling hooks (30%) |
| 300 m | Gaps widen to 175–225 px; the dark speeds up to 165 px/s and closes to 220 px |
| 450 m | Drifting hooks (35%) |
| 650 m | Pylons in the harbor (45% of gaps) |
| 900 m | Full blackout: gaps up to 250 px, dark at 215 px/s and 160 px behind |
The blackout can fall back no further than its trailing distance, so you can't build up a safe lead. Any backward swing costs you ground.
Score is meters plus style points:
- Skip: fly past a hook without grabbing it and latch the one after: +60 per skipped hook.
- Air: stay in free flight for 0.9 s or more before latching: +40 per second.
- Skim: fly within about 40 px of the water surface: +60 per second.
- Each skip or air bonus adds to a chain worth ×1.5, ×2, up to ×4. The next plain grab drops the chain back to ×1.
Your best score is saved on the device and shown under the live score.
Look & feel
Synthwave harbor at night: an indigo-to-magenta sky, a big pink moon, two parallax layers of skyscrapers with warm and cyan windows, and a teal sea. Hooks are color-coded: cyan for normal, amber for crumbling, magenta for drifting. The blackout is a jagged black edge with a violet crackle, and the skyline behind it is redrawn with every window dark. Everything is drawn on canvas at runtime. The game sits inside a rounded phone bezel on a muted backdrop.
All sound is synthesized with WebAudio: a rising blip when you hook, a soft whoosh when you let go, a two-note chime for a style bonus, filtered noise when an amber hook breaks, a fizz while you skim, and a falling saw tone when you die. A red pulse on the left edge warns you when the dark gets close.
What makes it fun
- Grab timing and release timing both matter, and they interact. A late, short-rope grab clears the pylon but gives you less speed, so now the release has to be exact.
- Skipping a hook pays the most and is the riskiest thing you can do. You let a safe ring go by and bet the flight carries you to the next one. When it works the chain multiplier jumps. When it doesn't, you hit the water.
- Skimming the waves pays per second. The points come from flying as low as you can without touching the water.
- Each death has one clear cause, shown on screen (splashdown, spiked, blacked out), and the next run starts with a single tap.