What happens when the little character from my website gets a palace of his own to explore? That question became a game: run, jump, catch a ledge, pull yourself up. Read a guard's movements instead of hammering the attack key. And, eventually, bring a Windlight back from the depths.
Play first. Then look behind the scenes.
The route crosses three worlds: the warm sandstone of the palace, the catacombs beneath it, and a glowing cistern. Each world contains three levels, with two connected rooms per level. The rooftops introduce momentum and jumping. Below the palace, a crumbling shaft takes you down before galleries lead you back up. In the cistern, lava, guards and the journey to the last gate come together.
Use the arrow keys or WASD to move and Space to jump. Hold V or Shift to catch a ledge; press ↑ to pull up. X attacks, C parries, and P or Escape pauses. Touch controls are available on phones; landscape gives the rooms more space. If you die, R or Enter retries the room. Unlocked levels and your last room entry are saved on this device.
One character. Many in-between frames.
The first idea came quickly. The movement did not. Six attractive poses are not enough to make a convincing run. You need the moments between them: a foot taking the body's weight, a shoulder following through, the brief transition between contact and flight.

Prince of Persia inspired the weight and rhythm of the movement. We also examined the publicly available SDLPoP reconstruction as a reference for timing and state changes. The character, guards and scenery were created for this experiment; the game package contains no original game graphics or music.
The hand has to stay on the ledge.
A small registration error in a run cycle might take a few steps to notice. In a climb, it is immediately obvious. Align every frame by its centre and the hand slides across the wall. The whole character appears to shrink or jump.

That is why the pictures need data too: crops, scales and anchor points. For a climb, the hand matters; for a run, the feet. Several rounds of corrections dealt with stray edges, a halo in the hair and keeping the sword in the same hand. This is the less spectacular half of making these images, and often the more consequential one.
A beautiful room is not necessarily a good room.
The rooms had to do more than look good. A passage on an upper gallery cannot suddenly put the player on the ground in the next room. A wall has to explain why a route is blocked. A grille dropping behind you must not cut off the only reachable way out.
Those mistakes led to explicit connections between rooms, matching entry heights and shared pieces for floors, wall faces and openings. The illustrated scenery sits behind them. The playable architecture is drawn in a canvas and cached for each room. Automated runs use the same movement and combat rules as a player. They help find dead ends; whether a jump feels good still needs to be played.
A guard has a life before the duel.
A guard waiting forever with a raised sword feels like an obstacle. He becomes more interesting when he first walks his beat: weapon sheathed, with his own walk cycle and a brief moment of recognition when he notices the player. Only then does he draw his sword and engage. If he loses sight of you on his floor, he waits briefly, puts the weapon away and returns to patrol.

Opening and closing pressure plates, time limits and connected floor heights now add small puzzles to the route. A switch below opens a grille above. A dark cross plate closes another grille again. Two seals require a detour, but stay activated once found. Hints sit outside the play area so that feet, ledges and traps remain visible.
Music that notices the fight.
Sound is part of the experiment too: an original MIDI score, synthesized in the browser. When a nearby guard becomes alert, an additional combat layer joins in. Plates, spikes, hits and parries have their own sound cues. Music and effects can be switched independently.
When you scroll down to read the article, the game simulation and audio pause. The playable version loads compressed WebP sprite sheets and backgrounds. The large working files remain in the development archive.
The process belongs here too.
The game grew through a dialogue with an AI coding assistant: describing ideas, making images, implementing, playing, disagreeing and revising. The seemingly small details — a slipping hand, an incorrect overlap, an impossible return route — shaped its character.
Discarded attempts and improved versions are kept. This exploration shares a selection of them. The game is a small adventure with an ending, and a look at how one character, many experiments and a lot of adjustments became a world you can walk through.
