Cast deep. Dodge down. Catch up. A Three.js underwater arcade fishing game on tglgames.com.
Play now LeaderboardYou stand above the surface. Tap Cast line and the hook drops. From there the run plays out in two phases:
Each fish has a base point value (small = less, large or rare = more). Your run score is:
score = round(sum(catch.base_pts) × clamp(depth_reached_ft / 100, 0.3, 1.5))
Cast deep and catch heavy. A shallow run with mediocre catches is worth a fraction; a max-depth run with the right ten is worth 1.5× the catalog sum.
Ten species, with weight, spawn rarity, points, and depth band:
| Fish | Weight (lb) | Rarity | Points | Depth band |
|---|---|---|---|---|
| Minnow | 0.2 | 30 | 1 | 0–40 ft |
| Sunfish | 0.7 | 25 | 2 | 0–60 ft |
| Bass | 3.0 | 18 | 5 | 20–80 ft |
| Trout | 4.5 | 14 | 7 | 30–80 ft |
| Catfish | 12.0 | 8 | 12 | 50–100 ft |
| Pike | 18.0 | 6 | 15 | 60–100 ft |
| Sturgeon | 60.0 | 3 | 25 | 80–100 ft |
| Tuna | 120.0 | 2 | 30 | 80–100 ft |
| Marlin | 250.0 | 1 | 50 | 90–100 ft |
| Golden Bass | 5.0 | 0.2 | 100 | 70–100 ft (mythic) |
Every interaction — fish spawn, hit, near-miss, catch, phase change — is timestamped and posted with the run. The server keeps the full event log forever (per the platform policy) and uses the same Mulberry32 PRNG the client uses, so submissions can be re-simulated and scored independently in the future.
Play now More games