MEOWDIVER

OVERVIEW

INCREMENTAL GAME · PLAYDATE

A cat in a home-made sub cleans the sea, one haul at a time.

Meowdiver gameplay: diving in Shallow Bay, collecting trash, docking and selling the haul

Crank to dive, tilt to steer, hover over ocean trash and let the intake pull it in. Sell the haul for parts, upgrade the sub, and unlock deeper, richer seas.

Dive→ Collect→ Sell→ Upgrade→ Go deeper
4
Seas
×10–25
Value per sea
198
Workshop ranks
Download on itch.io
GENREIncremental × Underwater Action
YEAR2026
IncrementalPlaydateSystem DesignLua / C
MY ROLESolo Developer — Design, Programming, Art, Audio
COLLABORATORSIndividual Project
PLATFORMPlaydate (Lua + C, Playdate SDK)

Gallery

DESIGN DETAILS

1. The Loop

DIVE · 20–90 s per run
HAUL · two clocks: air and cargo
SELL · dock safely = full price, rescued = half
UPGRADE · every level bought = +1 rank
NEW SEA · rank gate opens the next sea
Receipt screen after selling a haul
The receipt turns every dive into a readable result.

The core tension: one more piece of trash, or head home now? Greed risks running out of air — and the co-op only pays half for a rescue.

2. Incremental Design: Three Layers

Incremental games run on "numbers going up" — but once the curve is smooth, nothing feels new. Meowdiver splits growth into three layers, each answering a different question:

Zones · Where

Four seas, each with new trash, hazards, rock texture and music. A new sea resets the player's comfort.

Skill Tree · How

Four branches around the sub: air, engine, intake, cargo. Each new sea grows a whole new outer ring.

Numbers · How much

Each sea is worth ×10–25 per piece and burns air ×3–8 faster. One sea = one order of magnitude.

Trash value per sea (log scale)air drain / s
Shallow Bay
rank 0
2–9
×1
Kelp Shelf
rank 18
30–90
×3
Wreck Trench
rank 68
800–3K
×18
The Abyss
rank 128
22K–45K
×150
Squeeze → Release, every sea

Seconds of air on arrival vs. on leaving, from the pacing model. Each new sea knocks the player back down; a few hauls buy them back up.

SHALLOWKELPWRECKABYSS 23s50s17s90s15s80s10s120s 06142029 dives

The rule that ties it together: a new sea and a new ring of the tree open at the same moment, priced in the same magnitude. The gate only asks for about a third of the new ring — so the player moves on while it still feels fresh.

3. The Workshop Tree

Browsing the workshop skill tree and the sea chart
Locked rings show as sealed dashed circles — the player always sees what is coming.
RingAir ↑Engine →Intake ↓Cargo ←
1
~2.5K
Air Tank
Rebreather
Propeller
Float Bladder
Suction
★ Chain Zap
Cargo Hold
Haggle
2
~77K
Twin Tanks
Vent Valve
Twin Screws
Rise Jets
Twin Nozzle
★ Bubble Bomb
Cargo Pods
★ Hot Streak
3
~2.9M
Pressure Tanks
Emergency Tank
Hydrojet
Current Fins
Big Boom
★ Buddy Turret
Freight Bay
Lucky Paw
4
~89M
Abyss Lung
Headlamp
Fusion DriveQuad Nozzle
Buddy Squad
Mega Hold
Black Market

Branches keep their role in every ring, so the player learns the tree once. Prices follow base × growth^level, rounded to two significant figures. ★ Skills are spread one per ring so each sea brings a new toy.

4. Every Dive Is a Decision

Streak

Catch again within 2.5 s for +10% value per level. Rewards planning a route, not just collecting.

Jellyfish

A sting costs 10% air and knocks the sub away. In the Abyss they glow — dodge early.

Vents that dry up

Refill air, but each holds only 40% of a tank per run. No more infinite camping.

Seeded landmarks

Chests, currents and canisters sit in fixed spots, so routes can be learned and optimised.

Chain Zap → Bubble Bomb → Buddy Turret

Late game turns collecting from "one piece at a time" into "clear the whole area" — the incremental fantasy, felt in the hands.

Wreck Trench: chain zaps and a buddy turret clearing trash
Wreck Trench: chain zaps and the buddy turret.

5. Tuned With a Simulation

Dives per sea v0.3 v0.4
Shallow Bay
11 → 6
Kelp Shelf
11 → 8
Wreck Trench
11 → 6
The Abyss
13 → 9
Total: 46 → 29 dives

A greedy model — always dive the most profitable sea, buy the cheapest node — estimates how many runs each sea takes. Paired with a full playtest, it drove v0.4:

  • ▶Sea gates 30 / 85 / 145 → 18 / 68 / 128 to cut repetition early on.
  • ▶Chain Zap moved to ring 1 so the first seas have a power spike too.
  • ▶Late-game air glut fixed: vents now dry up, canisters and air upgrades trimmed.
  • ▶Passages widened so trash is always reachable.

6. Made for Playdate

Crank + Tilt

Crank to rise and dive, tilt to steer, with water inertia — it feels like piloting a tiny sub. Collection is automatic, so hands focus on movement. Calibration, reversed crank and a d-pad fallback included.

1-bit Pixel Renderer

A small Python renderer I wrote shades shapes into 5 levels of 2×2 dither with outlines, giving sprites volume on a black-and-white screen.

Synthesised Audio

No audio files. All SFX and music use the SDK synth on a C-major pentatonic scale — pickups climb the scale as the streak grows.

Sprites: the cat sub, a fish, a jellyfish, a bottle, a tyre, a ghost net, an anchor, a satellite and the cat idol
The Abyss with a fully upgraded sub
The Abyss: a fully upgraded sub, glowing jellyfish, six-figure catches. Trash physics runs in C at 30 Hz to hold the frame rate on hardware.