3D survival prototype · Godot

Ocean Island Survival

A first-person survival prototype on a 4 km island, with its own ocean, weather and fresh water.

Role
Solo project · AI-assisted
Timeline
2026 – Present
Status
Playable prototype · in development
Platform
Windows · Godot 4.6 (Forward+)
Stack
Godot 4.6 · GDScript · GLSL compute shaders · Godot shaders · MultiMesh · Python tooling · Blender
The island's mountain rising from open water under a clear sky

How it was built

Ocean Island Survival started as a test of how far agentic AI coding could go in building a game. A Cut Above is the more traditional one, mostly hand coded over several years. For Ocean Island I wanted to try the other way, with Claude Code doing most of the programming as an agent over a series of numbered work sessions. For each session I set the goals and the checks it had to pass, and a handoff file carried the state from one session to the next. Each change was checked with the automated validation runner and its screenshot captures, plus a visual review pass.

Highlights

  • Ocean and coastline

    The FFT waves run in compute shaders. A custom coastal layer makes them shoal, steepen and break based on the island's actual underwater shape, and the CPU uses the same wave formula so swimming matches the height that's drawn.

  • A 4 km island

    The landform was shaped with Python scripts, eroded in Gaea and baked into one elevation source. Collision, shading, wave shoaling and planting all read from it.

  • Three nights

    Each night is colder than the last, and there's a storm on the third. There's gathering, 14 crafting recipes, a campfire, a lean-to, temperature, wetness and saving.

  • Saves

    The world is generated the same way every time, so saves only store what the player changed. Gather yields are seeded per object, so reloading can't re-roll a harvest.

What it does

Ocean Island Survival is a first-person survival prototype set on an island about 4 km across, surrounded by open ocean. You start on a beach next to a wrecked boat with almost nothing, and you have to explore inland, gather supplies, find fresh water, make tools, build a shelter and stay warm and dry through three nights.

Four routes cross the island through spruce forest, fern-covered gullies, rocky overlooks and upland meadow, and they all meet at a mountain pool called the Tarn.

There are two parts to the project. One is making an island that still looks right when the player can walk anywhere, turn any way, and see it in different weather and light. The other is making the survival systems underneath predictable and testable.

A wrecked boat on a wide sand beach at golden hour, with the treeline behind and surf to the right
The landing beach where each run starts, with the wrecked boat and the first materials around it.

What’s in it

  • A full island you can explore, with terrain, rock and ground materials, generated rock formations, forests, grass and undergrowth.
  • A vegetation system that builds the forest when the world loads, and then streams smaller plants in around the player as they move.
  • A GPU shallow-water simulation for the freshwater pools, separate from the ocean.
  • First-person walking, running and swimming, with settings to reduce head movement and camera shake.
  • Survival systems for health, hunger, thirst, warmth and wetness, with inventory, crafting, building and drinkable fresh water.
  • One survival state that owns all of those values, so they aren’t changed from different parts of the game.
  • Ambient audio that changes gradually with distance from the coast, elevation, tree cover and weather, instead of switching at trigger zones.
  • An automated validation runner that goes to named locations, takes screenshots, and checks survival, progression, collision, comfort settings and saving and loading, then writes the results to a report.
A freshwater spring pool in the sand with reeds around it, a Drink prompt on screen and health, food and water bars at the bottom left
A freshwater spring. The sea is salt water, so finding one of these is the first real task of the first day.

Problems and fixes

  • The ocean is calculated from waves at the current moment. That looks good over a big open surface, but it has no memory of where the water was, so it can’t fill a pool. The freshwater pools use a separate shallow-water simulation that moves water between grid cells on the GPU and conserves it, so the pools hold their own water and ripples keep moving after whatever caused them has stopped.

  • The island has about 305,000 plants. They’re placed from a grid that marks each area as forest, clearing, damp ground, rock or shoreline, so nothing is placed by hand, and they’re drawn in batches by area instead of as separate objects. Distant trees switch to flat impostors generated from the original meshes, and only trees close to the player cast full canopy shadows. Across 27 test viewpoints at 1920×1080 on High settings, performance was between 85 and 215 FPS, with a median of 121.

  • The benchmark was measuring frame rate right after taking a screenshot, so the result included the pause from capturing the image. One forest view read 42 FPS that way, and 95 FPS once the frame rate was sampled before the screenshot and averaged over several frames.

  • There are 248 automated checks in five suites covering survival, progression, saving and loading, comfort settings and collision. They run inside the full game instead of against mock objects, which leaves the visuals and how the island feels to play as the things that still need a person to judge.

The pack and crafting screen, with inventory slots on the left and recipes for cordage, a stone knife, a campfire, a lean-to and a stone hatchet on the right
The pack and the crafting list, grouped by what you need that day: cord, a knife, water, fire and a roof.

What is not finished

Ocean Island Survival is a prototype, and the repository says so. The forest assets look basic up close, grass and small plants can visibly pop in as you move, and there are no first-person arms or character animations yet. There’s also a fully simulated waterfall for the Tarn behind a command-line option, but it’s turned off because it didn’t look good enough to include.

Technologies

  • Godot 4.6 (Forward+)
  • GDScript
  • GLSL compute shaders
  • Godot shading language
  • Gaea (terrain erosion)
  • Python (terrain, texture and audio tools)
  • Blender
  • Sky3D
  • OceanFFT add-on
  • AI coding agent (Claude Code)

There's a Windows build on itch.io. The GitHub repository is a source snapshot. It has all of the game's code, shaders and tools, but not the art, audio and terrain assets, so it won't open as a runnable project by itself. The project site has a written technical overview.

The island's landform was eroded in Gaea. The ocean waves come from the open-source Godot 4 Ocean add-on by Tessa Avery and Achal Pandey (MIT), and the sky uses Sky3D. Trees and plants come from Asset Quest's CC0 Stylized Forest Kit, and the rocks from Kasper Arnklit Frandsen's Godot Cliffs and Rocks pack.