Saturday, first day with actual code. The pitch from Friday fitted in one line: you are a rock, you get wings, and the wings only last while you keep beating them in time. One button and nothing else.

No sprites, no meshes, no textures

The entire picture is one fragment shader (scene.glsl, which by the end had grown a pile of includes: ground, weather, moon, stars, sun...). Mountain, rain, sea, clouds, moon, stars: all of it comes out of a single altitude uniform through a 4x4 Bayer dither, so the sky changes band by band as you climb.

The mountain in the rain, over the water

No asset pipeline also means nothing to import and nothing to wait for. Change a number, look at the sky, change it again. In a jam I don't think I'd work any other way.

The ride, tested headless

The other half of the day went into leap, the pure logic: the beat window, the wish breaking, and gravity that scales with your apex. Zero engine dependency, so the whole loop is unit tested without opening a window. Sounds like overkill for a jam, but it's the opposite: I could tune the difficulty curve from tests instead of playing the game 200 times :D

End of the day it climbs and it falls, and the wish breaks somewhere in between. Not a single sound in it yet, but the thing works.

Day 2, a rock that wants to fly