Sedora Skies
A calm, exploration-driven life and farming sim set on a floating island.
In active development
- Role
- Independent game developer
- Engine
- Godot 4 · GDScript
- Genre
- 3D life / farming sim
- Focus
- NPC and world systems


( Idea )
On an island that grows over time, the player restores buildings, farms, looks after animals and gets to know the NPCs.
The project's main technical goal is to run this world on independent, reusable systems: farming, NPC behaviour, navigation and saving have to work together without getting tangled.
( What I built )
Independent systemsWorld and environment
- A 3D island, waterfall and river
- Vegetation, birds and animals
- World behaviour tied to day and night
- Ruined buildings and restoration
Farming
- Cell-based fields
- Sowing, growth stages, harvest
- Farming capacity
- Vegetation that regrows over time
NPC architecture
- WorldQuery, WorldServices
- Occupancy, Reservation
- Navigation, Action system
- Contextual interaction, daily schedule
Animation
- Idle, Walk, Turn Left/Right
- AnimationTree
- In-place locomotion; separating movement from animation
Dialogue
- Lines, sequences, speakers
- Portraits, pagination, typewriter effect
- Mouse, touch and keyboard input
Saves and world state
- Deterministic save restore
- Offline progress logic
- Separating persistent and transient state
- Save safeguards
( Technical depth )
Problem and approachLetting an NPC get things done without colliding with the world
If Green Uncle is going to inspect a crop, he needs to know the crop is really there, that there's a path to it, and that nobody else is using that spot.
ApproachAn action pipeline that hands each step to a separate service. The order below is the actual order in the code for the "inspect crop" action:
- Schedulepicks an activity
- Actionvalidates, starts
- WorldQuerycrop and approach points
- Navigationis there a path?
- Reservationreserves the spot for a while
- Movementwalks, turns, inspects
While the action runs, the target and the reservation are re-validated regularly; the reservation is released when the action ends. The daily schedule system currently runs in test scenes.


Finding a path on uneven terrain
The island is full of height differences, slopes, bridges and planted fields. Where an NPC can walk can change at any moment.
ApproachGrid-based pathfinding with an A* approach; height and slope checks, occupied-area checks, and target and movement management.
Keeping the world the same after loading a save
Crops grow, NPCs move, the player leaves and comes back; the restored world has to be consistent.
ApproachDeterministic save restoration, separating persistent and transient state, offline progress logic, and keeping NPC actions consistent with world state.
( Tech stack )
( What I went deep on )
3D game development, NPC system architecture, behaviour management, navigation, animation and game state management. This is the project that best shows the game programming and systems engineering side of my work.
( Gallery )
In-game screenshots · development build

