Skip to content

← All projects

Owl Adventure Game

A child-friendly Godot browser game with forgiving flight, a procedurally generated world, and optional activities built around exploration rather than failure.

Owl Adventure Game browser game cover artworkVisit the live site ↗

I made this for a five-year-old who wanted to fly. The player explores as a red owl, running, jumping, flying, and gliding through a 3D world. It is a place to wander, not a game to beat: there are no timers, deaths, or game-over screens.

The work spans movement, procedural terrain, optional animal and music activities, and presentation across keyboard, gamepad, and touch controls. The browser version runs without installing the game.

Building a forgiving flight system

The controls are simple: tap to jump, hold while airborne to fly, and release to glide. Steering down during a descent allows a dive. A movement state machine separates ground, airborne, and powered-flight behavior so those controls can produce different movement without requiring more buttons.

Jump buffering remembers a press just before landing, while coyote time allows a jump shortly after leaving an edge. If the player falls below the world, a soft respawn returns them to previously tracked safe ground instead of ending the game.

Forgiving movement does not mean removing every obstacle. Tree trunks are solid, while foliage remains pass-through; the camera also responds to trunks to avoid moving inside them.

Streaming a world to explore

Meadows, forests, lakes, and floating islands are built from deterministic procedural terrain. Chunk coordinates and a world seed determine generated content, so rebuilding an area does not randomly replace its landscape.

The chunk manager loads missing areas nearest the player first and recycles distant chunk containers for reuse. Terrain generation and shared resources are separate from the activities placed in the world. This makes the landscape an ongoing part of exploration rather than a single hand-built level.

Guiding exploration without making it mandatory

Optional activities give players a reason to stop: find a hiding bunny, walk a baby bunny back to its parent, or land on musical stumps and hear a bird answer. The music playground has no required sequence, score, or wrong notes.

Picture-based activity buttons and a nearby discovery map provide direction without requiring the player to follow a fixed order. Selecting an activity updates its destination hints; during the reunion, guidance changes from the baby to its parent once the baby starts following.

The reunion is designed to tolerate detours. If the player flies away or stops walking with the baby, it waits and resumes when they return rather than discarding progress. The activity supports exploration instead of turning a distraction into a failure.

Keeping flight visually consistent on mobile

A subtle shaking issue on mobile exposed a mismatch between systems: smoothing the owl’s wing and body poses alone did not synchronize its world movement with the camera following it.

The fix enabled physics interpolation for world movement and made the render-driven camera follow the player’s interpolated position. The existing manual pose interpolation stays separate to avoid smoothing those poses twice, and respawn resets movement interpolation history after a teleport.

The flight-shaking fix was deployed and confirmed resolved on a phone. That confirmation applies to this reported issue, not a claim of identical behavior across every device.

Testing movement and activities

Regression checks cover movement transitions, jump timing, gliding, diving, safe-ground respawn, and camera behavior. Separate checks cover touch controls, animation presentation, and the optional activities.

For the mobile flight fix, presentation, gameplay, and touch-control checks passed before release, and public runtime files were checked against the exported build. Automated checks protect the underlying behavior; testing on a phone supplied the visual confirmation for the shaking that prompted the work.

Red owl flying above lakes and grassy hills with a discovery map and picture-based activity buttons
Development capture: flight over generated terrain, with nearby discovery markers and picture-based activity choices.
Owl beside reunited rabbits beneath a Together again message in a grassy clearing
Development capture: the optional bunny reunion celebrates completion without ending free exploration.