GHAMRA STUDIOS

· v0.10.0

A meadow stamped a thousand times

Inside The Workshop in The Ash Bend ruins: long benches and tables on a patterned stone floor, Nix Forge at the back, the player and Malachar Shard by the door, a minimap in the corner.

The grass under everything outdoors was one tile: a flat square of #adbc3a, 100% one colour. A meadow was that square repeated a thousand times, with flowers scattered on top of a perfect grid.

On 20 September we spent a day on how places look. Almost none of it needed new art: the sprite pack had shipped most of it all along, unreferenced.

Ground

Grass and dirt now meet on a bank instead of one 16px square butting against another. Grass gets flecked variants, one cell in six rather than uniformly, because the dirt row has only two: crossed twigs and a pebble. A uniform pick would have put the same twigs on a third of every road in the game.

A marsh is finally its own place. The ticket said it differed from a meadow only in its water, but both had always drawn the same shore tile. Dark grass is the first thing that has ever told the two apart.

A fence runs horizontally only, with no corners, because the art does not support either and we refused to guess. A bridge crosses a marsh on banks that wander a cell at a time. Simulated over 2,280 channels, a two-cell step left about a fifth of all planks lying on dry grass.

A marsh and a cave at the same stage of a run used to draw the same monsters . Now a marsh gets bog serpents and fen slimes, a cave spiders and a crag basilisk.

Water, fog and weather

Water ripples, and a lake no longer blinks as one block: Godot animates a tile on one shared clock, so we baked four phase-shifted rows and pick one per cell. Fog drifts west at six pixels a second with time and never with the camera. There had been no weather at all. Now there is: rain in a marsh, leaves in a forest, blossom at a shrine, a cloud shadow on open ground by day. It can be turned down or off in Settings.

Rooms

Seven pieces of furniture dressed every building in the game, and the way out was a paler patch of floor. Rooms now have beds and wardrobes, racks and kilns, and a door. Every room used to be full brightness at every hour, so stepping in off a dusk street made the screen brighter; now it follows the clock and its fires glow. All 504 floor cells of a guild hall were one green stone; floors have variants and rugs now. And a room that had been laid on a perfect lattice now has gaps and nudges in it.

In combat, 715 animation files had never been loaded. A fighter now swings, and lies down when it dies. A fireball or an ice spike crosses the arena before the hit lands.

What the plan got wrong

The plan behind all this, MAP_FIDELITY_PLAN, now has a section listing what it got wrong. Seven items, kept rather than edited away: four art claims that did not survive measurement, the marsh-water claim, a count of “four unopened atlases” that was three, and a lone fence post this plan’s own work shipped on a fully transparent tile. An invisible wall, reachable in five of twenty-four farmsteads, past every fence test we had. Each was believed because it was plausible and nobody had looked.

It also records what one rule cost. A test fails any new file over 800 lines: “split, not grandfathered”. It gated four phases, and every time the answer was an extraction: TileTrees, TileFills, TileFences with PlaceStructures, and place_outline with place_slots. Three of the four were found at the gate, which costs a full run each. The plan now says to expect an extraction every phase, and to measure the file before designing.

← All entries