Adventure in the Rabbit Hole

Blog

Game tips, tales of the rabbit and the burrow, and notes from development.

Building an endless curved tunnel in React Three Fiber
2026-07-12

Building an endless curved tunnel in React Three Fiber

The burrow in Rabbit Hole bends forever, but it's really just six recycled wall segments and a TubeGeometry. How the path works, why the game logic ignores the curve, and the bug that only ever broke the first run.

#3D#Tech
Fixing frame drops in React Three Fiber
2026-07-11

Fixing frame drops in React Three Fiber

Why a smooth React Three Fiber scene starts to stutter as it grows (allocations in useFrame, setState per frame, mount/unmount churn), and the scratch-ref, pooling, and ref-mutation patterns that protect the frame budget.

#3D#Tech
A serverless game leaderboard on Upstash Redis
2026-07-10

A serverless game leaderboard on Upstash Redis

Building a global leaderboard for a browser game with nothing but Upstash Redis — sorted sets for best-per-player, a companion hash for display data, rolling TTLs, cost-bounded trimming, and a rate limit that has to be shared across serverless instances.

#Web#Tech
Animals That Live Underground — And Why Only the Mole Made It Into the Game
2026-06-14

Animals That Live Underground — And Why Only the Mole Made It Into the Game

The underground lives of moles, prairie dogs, and badgers, and the design reason only one of them became an obstacle.

#Animals#Game Design
Do Rabbits Really Love Carrots? — And What Carrots Actually Do in the Game
2026-06-14

Do Rabbits Really Love Carrots? — And What Carrots Actually Do in the Game

Where the rabbit-and-carrot image came from, and why in the game a carrot isn't food at all — it's a signpost.

#Animals#Game Design
Rabbits in Culture, and the Origin of "Rabbit Hole" — Where Three Burrows Came From
2026-06-14

Rabbits in Culture, and the Origin of "Rabbit Hole" — Where Three Burrows Came From

From the moon rabbit to the Easter Bunny, and how those images turned into the game's three burrows.

#Animals#Game Design
Why Do Rabbits Dig Burrows? — And How That Burrow Became a Game
2026-06-14

Why Do Rabbits Dig Burrows? — And How That Burrow Became a Game

The structure of a real rabbit warren, and what I kept and threw away translating it into an endless runner's tunnel.

#Animals#Game Design
Collecting Carrot Coins and Dressing Up Mocha
2026-06-13

Collecting Carrot Coins and Dressing Up Mocha

Every source of coins and everything worth spending them on, plus what to buy first.

#Guide#Cosmetics
Combos Make the Score — A Combo-Keeping Guide
2026-06-13

Combos Make the Score — A Combo-Keeping Guide

Chain carrots within 2 seconds and your score doubles. The multiplier tiers, magnet and trampoline synergies, and when you should deliberately let a combo go.

#Guide#Combo
Today's Burrow — How to Master the Same Map Every Day
2026-06-13

Today's Burrow — How to Master the Same Map Every Day

The daily challenge serves everyone the exact same burrow. Which means you can memorize it, and which is why the ranking is fair.

#Guide#Daily
The Deeper You Go, the Faster It Gets — Survival Strategy by Section
2026-06-13

The Deeper You Go, the Faster It Gets — Survival Strategy by Section

From a 12 m/s start to a 30 m/s peak — how survival changes as your speed climbs, and how to handle each obstacle.

#Guide#Survival
Pushing a Single Run's Score Higher — The Mechanics of High Scores
2026-06-13

Pushing a Single Run's Score Higher — The Mechanics of High Scores

Every source of points laid out in one table, and how to thread depth, combos, and burrow choice onto a single line.

#Guide#Score
Trampolines and the Pocket Watch, Done Right
2026-06-13

Trampolines and the Pocket Watch, Done Right

The pink mushroom and the stopped pocket watch turn danger into opportunity. Exact heights and durations, and the timing worth saving them for.

#Strategy#Items
Welcome to Rabbit Hole
2026-06-12

Welcome to Rabbit Hole

An introduction to the endless rabbit-hole game and its controls, plus a map of everything on this blog.

#Announcement
Before / After — What Changed
2026-06-12

Before / After — What Changed

From a rail stroll to an arcade runner. Comparing the rebuild side by side, and what taking external assets from 27MB to zero actually cost and bought.

#Retrospective#Rebuild
2026-06-11

Zero Sound Files — Synthesizing SFX with Web Audio

How I built collect, jump, and combo sounds using nothing but oscillators and gain envelopes.

#Sound#Tech
The Root That Slipped Between Frames — Collisions and Tunneling
2026-06-10

The Root That Slipped Between Frames — Collisions and Tunneling

Sphere-approximated collisions, arc-obstacle checks, the bug where the rabbit passed clean through a root at high speed, and why the hit radius and the drawn radius deliberately disagree.

#Game Feel#Tech
The Anatomy of Weight — Arcade Movement and Jumping
2026-06-09

The Anatomy of Weight — Arcade Movement and Jumping

Building game feel with angular acceleration, damping, and artificial gravity on polar coordinates of the tunnel cross-section — the actual constants, the speed ramp, and why I skipped the physics engine.

#Game Feel#Tech
2026-06-08

Build passes, blank screen: fixing the React 19 'ReactCurrentOwner' crash in Next.js + React Three Fiber

Using @react-three/fiber v8 with React 19 (Next.js App Router) throws 'Cannot read properties of undefined (reading ReactCurrentOwner)' and a white screen. Here's the real cause and the version fix.

#React#War Stories
Peeling Off the Gray Plastic with Toon Shading
2026-06-06

Peeling Off the Gray Plastic with Toon Shading

How I ditched the MeshStandardMaterial defaults and painted the burrow with a 3-step toon ramp — sharing one ramp texture, per-burrow lighting, and the angle where the walls seemed to vanish.

#3D#Art
Cuteness Comes From Motion, Not the Model
2026-06-05

Cuteness Comes From Motion, Not the Model

The procedural animation I gave the rabbit — hopping, squash & stretch, and the glance-back — plus why deriving motion from state beats keyframe clips.

#3D#Tech#Animation
Sculpting a Rabbit Out of 14 Spheres and Capsules
2026-06-04

Sculpting a Rabbit Out of 14 Spheres and Capsules

Assembling a chibi rabbit from primitives alone, with no external model — the actual measurements and proportions, outline hulls, and the recurring bug where parts sank inside the body.

#3D#Tech
Redesign Direction — Cuteness and Feel as the Yardstick
2026-06-02

Redesign Direction — Cuteness and Feel as the Yardstick

Pinning the mood down in writing first, collecting every color in one place, and why I dropped the physics engine.

#Retrospective#Art
Diagnosing the Old Version Before Tearing the Rabbit Hole Apart
2026-06-01

Diagnosing the Old Version Before Tearing the Rabbit Hole Apart

The old Rabbit Hole had no physics and no failure state. Why it wasn't really a game, and how I decided to rebuild instead of repair.

#Retrospective#Rebuild