Inspiration

I love cozy games with quick, satisfying loops (think Threes/2048 meets a chill fishing vibe). I wanted a puzzle that’s skillful but stress-free, playable on mobile and desktop, with short sessions and meaningful progression.

What it does

A bite-sized match & merge fishing puzzle: cast, hook fish tiles, and slide to merge species into rarer fish for higher scores.

Gesture controls on mobile (swipes/taps) and keyboard/gamepad on desktop.

Dynamic spawns simulate schools moving through the lake; power-ups (Lure, Net, Tide) change the board state.

How I built it

Engine/Runtime: Horizon Web/Mobile with TypeScript (component/ECS style).

Input: Focused Interaction for on-screen gestures (drag, swipe, tap) + fallback to keyboard arrows/D-Pad.

Core puzzle logic: deterministic slide-and-merge (each tile can merge once per move), adapted from classic 2048 patterns.

State & networking: lightweight NetworkEvents to broadcast moves, score deltas, resets, and game-over.

Performance: grid operations are pure functions; rendering only updates changed tiles/skins.

Challenges I ran into

Mobile gesture reliability: some devices showed touch halos but didn’t emit drag events. We added watchdogs and graceful fallback to on-screen controls.

Merge correctness: ensuring 2-2-2-2 becomes 4-4-0-0 (not 8-0-0-0) required a clean single-merge-per-tile pass.

Responsive feel: calibrating swipe thresholds by screen size/DPR so moves trigger confidently without false positives.

Accomplishments that we're proud of

Snappy, bug-free core loop that feels great on both phone and PC.

Zero-friction inputs: gestures + keyboard + pad, all coexisting.

Polish: ambient soundscape and subtle animations make short sessions feel premium.

Robust endgame flow: automatic leaderboard submission and optional auto-show leaderboard panel.

What I learned

Designing for gesture parity with desktop controls needs careful thresholding and fallbacks.

Small UX touches (debounce, easing, audio cues) dramatically improve player perception of fairness.

Keeping puzzle logic pure and testable accelerates iteration and prevents regressions.

What’s next for Fishing Puzzle Game

Leaderboards and power ups

Daily/weekly challenges with unique spawn patterns and rotating modifiers.

Collections & rarity: a fishdex that tracks species discovered and personal best merges.

Accessibility: left-hand UI layout, color-blind skins, haptic feedback on mobile.

Live ops: seasonal events (night fishing, storms) and limited-time power-ups.

Built With

Share this project:

Updates