Field Guide
Everything, explained plainly
Controls, progression, and a straight account of where your play data lives — which is nowhere but here.
Controls by trail
Moose Charge
3D Low-Poly Runner- ← / → or A / D
- Shift trail
- Space or ↑
- Leap timber
- ↓ or S
- Duck branches
- Esc
- Pause the run
Alpine Archers
Precision Arrow Shooter- Move pointer
- Aim the bow
- Hold pointer / Space
- Draw power
- Release
- Loose the arrow
- Esc
- Pause the run
Great Lake Angler
Zen Fishing Arcade- Hold pointer / Space
- Charge the cast
- Release
- Cast the lure
- ← / → or A / D
- Steer the sinking lure
- Hold pointer / Space
- Reel — watch the tension
Pinecone Pop
Bubble Shooter Fusion- Move pointer
- Aim the launcher
- Click / Space
- Fire the pinecone
- ← / → or A / D
- Fine-tune the angle
- Shift
- Swap to the queued cone
Night Forest Escape
Stealth Puzzle- Arrows or W A S D
- Step one tile
- Hold Shift
- Creep — silent, half speed
- Space
- Hold still in shadow
- Esc
- Pause the run
Timber Trail Rally
Isometric Offroad- ↑ / W
- Throttle
- ↓ / S
- Brake and reverse
- ← / → or A / D
- Steer
- Space
- Handbrake — start a drift
Escape pauses any run; P toggles pause. Every trail also accepts pointer input, so all six are playable on a touchscreen — tap the left or right third to steer in Moose Charge, tap toward a tile to step in Night Forest Escape, and hold anywhere to charge in the archery and fishing games.
Difficulty tiers
Sapling
×0.85
Gentle trails. Forgiving timing.
Ranger
×1.00
The standard wilderness run.
Tracker
×1.30
Denser forest, sharper hazards.
Alpha
×1.70
Antlers up. No mercy in the pines.
The multiplier scales hazard density as well as payout. On Timber Trail Rally an Alpha run is a narrower cut with more mud and less clock, not just the same course worth more.
Forest EXP and Antler Badges
Forest EXP
Every finished run pays its score times the difficulty multiplier, plus a flat 25 for completing it — so a rough run on a hard trail still moves the needle. EXP drives your rank, from Seedling through to Alpha Bull.
Antlers
A coarser currency earned from score, topped up by the trails that literally count antlers. Moose Charge shards, archery golds, fish landed, cones popped, grids escaped and gates cleared all feed it.
Antler Badges
Eight badges, each naming a specific thing you did rather than a number you ground out. Clearing all six trails once earns Six Trails; fifteen runs on one earns Trail Specialist.
Where it lives
All of it is in your browser's localStorage and none of it is on our servers — there are no servers holding player data to speak of. Clearing site data erases it, and there is no account to recover it from. In exchange, there is nothing to sign up for and nothing about your play to leak.
Under the hood
- Server
- Express + EJS, server-rendered HTML. No API, no database.
- Games
- Hand-written 2D canvas engines on one shared shell at a fixed 60 Hz timestep.
- Client JS
- Native ES modules straight from
/js— no bundler, no build step. - Styling
- One hand-written stylesheet. Faceted panels are real clip-paths, not border-radius.
- Audio
- Web Audio API only — every sound is synthesised, zero audio bytes shipped.
- Storage
- Your browser's localStorage. That is the entire persistence layer.
Motion, sound and access
Reduced motion
With prefers-reduced-motion set, the ambient firefly field never starts, the
hero terrain renders one static frame, the card icons hold still and all transitions
collapse. The games themselves are unaffected — they are the content.
Sound
Everything is off until you ask for it. No audio context is even constructed before your first interaction, and the mute state is remembered between visits.
Keyboard
Every trail is fully playable from the keyboard, every control has a visible focus ring, and a skip link is the first thing in the tab order.