HOLDLINE — One tap. Hold your nerve.
A one-tap reflex puzzle about knowing when not to tap — every TICK flips a switch and burns energy.
The Challenge
The mobile one-tap shelf is loud. Flappy Bird trains you to tap fast. Helix Jump offers endless drift without rhythm. Wordle gets daily right but only with words. None of them sit in the gap that mattered to us: a game where restraint is the skill.
HOLDLINE plants a flag in that gap. A paper particle drifts on its own. You get a single tap to flip the next switch. Tap wrong — die. Tap unnecessarily — drain tick energy — die. Most switches on the path are meant to be ignored. That is the hardest part: daring not to tap.
Design Approach
Three principles drive every decision:
- Restraint as skill. The game does not ask how fast you tap. It asks whether you dare not to.
- World breathes with you. The camera holds still. The paper world reacts to you: folding, unfolding, palette-shifting when your streak crosses a threshold.
- One effect = one emotion. Every effect must map to a clear emotion. If we cannot name the feeling, we cut the effect.
Aesthetic north star: Mini Metro × ELOH — thin line geometry telling a story over a watercolor wash on warm paper.
How to Play
- The paper particle moves itself across a 7×7 board.
- Tap anywhere on the screen to TICK — flip the next switch.
- Each TICK costs one tick energy. Reach the Goal: score + tick energy + stage up.
- Game over when the particle hits a wall, gets stuck, or runs out of tick energy.
- On death, Death Replay rewinds the final 3 seconds in slow frame — the exact tap (or missed tap) that killed your run.
Core Experiences
Endless Survival
Each stage adds complexity. The current run autosaves — close the app mid-run, reopen, and you continue from the same particle position. Best score persists across sessions.
Daily Seed
One global map per day, generated from hash(UTC_YYYY-MM-DD) — everyone fights the same challenge. Five modifiers rotate Monday through Friday (Tight Energy, Mirror Switch, Phantom Goal, Tempo Lock, Decoy Density). The Score Card after each run shares as a Wordle-style emoji grid.
Tempo Shift
Hit a streak threshold and the world breathes faster: particle BPM, audio, and palette shift to a new phase. Andante (80 BPM) → Allegro (110) → Vivace (140) → Offbeat. A mandatory 2-second telegraph leads every transition — and the shift is gated when the particle is in a danger zone.
Paper Fold
Our signature near-miss moment. When a tap saves the particle from a collision, a 3×3 paper triangle around it folds 18° and unfolds across 280ms. The camera holds still while the world responds. This is where players first feel the world is alive with them.
Death Replay
Every game-over rewinds the final 3 seconds in slow frame, highlighting the exact wasted tap or missed switch. The target metric: retry rate > 50% — because players understand what they did wrong.
7 Palette Families
Paper Dawn (default) → Paper Noon, Dusk, Midnight, Storm, Rain, Bloom. Each palette shifts the hue across the entire world but preserves the same five color roles (background, switch line, particle, goal, near-miss accent). Beautiful without breaking readability.
Player-Respecting Design
No account required. No forced ads. The only IAP is "No Forced Ads" — one purchase, ads gone forever. 100% offline. No internet needed.
What Makes HOLDLINE Different
| Criterion | HOLDLINE | Flappy Bird | Helix Jump | Wordle |
|---|---|---|---|---|
| One-tap input | Yes | Yes | No (hold) | No (text) |
| Restraint as skill | Yes | No (tap fast) | No | Partial |
| Global Daily Seed | Yes | No | No | Yes |
| Death Replay | Yes | No | No | n/a |
| 100% offline | Yes | Yes | Yes | No |
| Emoji-grid share | Yes | No | No | Yes |
| No pay-to-win | Yes | Yes | No (lives) | Yes |
Tech Highlights
- Vanilla Flutter —
CustomPainter+Ticker+Listener. No Flame, no shaders, no 3D. - Pure deterministic step() —
step(GameState, Input, dt) → GameStateis pure Dart with no Flutter imports. Engine and solver share the same codepath. mulberry32PRNG — immutable state, fixed test vectors. The Daily Seed produces the same map across all devices.- 60fps on Redmi Note 11/12 — dual-listener pattern:
GameLoop extends ChangeNotifierdrives the board repaint;ValueNotifier<GameState>drives the top bar. - Active Run Resume — autosave every 10 seconds and on stage transitions. Close mid-run, reopen, choose Continue or New Run.
- Asset budget — critical assets < 500 KB, install size < 25 MB, App Bundle < 18 MB.
- Daily Seed share —
RepaintBoundary→toImage→share_plus. No backend required.
Get the App
Experience native performance.
