Repository navigation
v0.4.3 — Loops, buttons and a bigger wheel
A fairground you can actually ride: a button that books a train or a gondola, doors and safety bars that close and hold rather than pass through you, loops in the coaster sized by real physics, and a rebuilt fifty-metre wheel. Twenty-six commits since v0.4.2, nearly all of them from riding the rides on a phone and reporting what looked wrong.
Two loops in the coaster
The lift climbs to fifty metres now instead of twenty, the first drop runs out on the straight rather than inside the following bend, and the train goes into two vertical loops — twenty-eight metres and twenty-three across — arriving at 29.3 and 27.5 metres a second against the 26.2 and 23.8 a loop that size needs. A loop is not a hill: it is spliced into the circuit as a stretch of track during which the base line does not advance at all, so a car leaves the rail, travels its own circumference, and comes down on the point it left. Each hangs inside a painted yellow hoop standing on its own feet, the way every looping coaster a child has seen does.
Bends are banked by the angle their speed actually asks for, tan(bank) = v²/rg, rather than at a fixed angle — the hardest bend used to pull thirteen and a half g sideways, because the layout put a six-and-a-half-metre bend right where the first drop was still paying out; it pulls 3.2 g now. Gravity along the track is read as the sine of the real slope rather than the tangent of a horizontal one, which is what let the loops get this big at all: the old arithmetic silently clamped anything steeper than forty-five degrees and thirteen extra metres of lift bought less than a metre a second.
The rider goes over the top with the car, upside down, rather than held resolutely vertical while the seat turns around them. The camera comes round to face the way the train is going and stands back far enough to see the track ahead, instead of pressing into the seat back it used to collide with. And a whole ride is one lap: a train nobody has booked runs the platform straight through, and a train with somebody in a car pulls up at the end of their lap and waits — it no longer sets off again with a rider who hasn't got out yet, and it no longer refuses to leave at all with one who has only just sat down.
The wheel, rebuilt and doubled
Fifty metres across now, the tallest thing in the valley, visible from the camp. It used to stand on legs whose lean was applied backwards — every leg ran from one point on the sand up to a top splayed five metres clear of the axle, so the whole ride balanced on one line of contact and its foot plates sat nowhere near a foot. It stands on a proper A now, and a boarding platform reaches almost to the doorway, with a safety bar across each gondola that lifts like a level crossing while it waits at the boards and locks down the moment it turns. The gondolas are half again their old size.
Boarding, at last
Both big rides used to run — or stop — with no way to ask for a ride and no way to get off one. Each now has a button on its own platform: press it, pay with a ticket or with coins, and the button turns green while the next gondola or train comes round and stands for ten seconds. A ride is one turn or one lap, and it ends where it started with the door open — stay in and it goes round again, which is a choice rather than a trap, and needs no control inside the car for a six-year-old to find.
The restraints that were meant to stop all this were themselves scenery. The coaster's shoulder bars were hinged to close a hand's breadth in front of the seat back, which is behind the shoulders of whoever is sitting there — closing through a rider rather than onto one — and neither the coaster's door nor the wheel's bar nor a locked harness had a collision shape that actually belonged to the car, so all three could be walked straight through. All four are fixed and checked with a ray fired across the opening.
A sheep that looks like a sheep
The fleece was twenty-two scattered spheres meant to read as curls; at arm's length on a phone a curl is smaller than a pixel, so they read as lumps stuck onto an animal. It's one smooth mass now, level along the back and squared at both ends, with a narrow dark face and thin dark legs coming out of it. Measuring it turned up an older fault: every animal's solid width was computed from its proportions a second time rather than read off what was actually drawn, and the two had drifted apart — a sheep, a cow and a dog were all solid across roughly two-thirds of what a child could see, which is how a quad bike drove through the outside of a sheep and touched nothing.
Riding on a hill
A machine or an animal on a slope was held dead level on purpose, because everything used to read a mount's heading back off its own rotation and a basis with pitch and roll in it doesn't decompose into the heading that was put into it. A quad coming down a bank came out perfectly horizontal. The heading is remembered now instead of being read back, so the body is free to lie on the ground it's actually crossing.
A related sign error had every animal lifting its nose going downhill and driving its hindquarters into the slope — on a cow, nearly half a metre of animal underground, reported exactly that way. Fixed, along with the identical fault in how a rider leans on a mount, and an animal now stands as high as it needs to keep both ends clear of a steep hill rather than burying whichever end faces downhill.
Things that were wrong
- A machine or a horse left standing on a cliff, or in the water, on dismount had no way back — it stayed there for good. One found on ground it can't stand on now walks to the nearest footing when the valley loads.
- The world arrived in visible frames on a fast phone screen. Physics interpolation — needed for the camera — was also quietly re-sampling everything the game animates by hand at sixty hertz and drawing it a tick late; the camera, the animals, the mounts and everything else driven every frame now opt out of it.
- The bridge's deck could throw a rider sideways into the handrail: the height a rider is held to used to be averaged over the machine's length, and on the bridge that average dipped below the deck and the physics pushed back out through the nearest wall of it.
- The engine had a quiet gear-whine tone sitting above the exhaust that swept up and down with the throttle like a kettle; a pure tone doesn't blend with noise the way induction breath does, so it read as a whistle rather than as part of the engine.
- The trampoline's rim and the wheel's boarding rail were drawn and nothing else — a motorcycle rode straight through both.
- A tree planted on the fairground before the rule against it existed stayed there forever; anything standing on ground that now belongs to a place, the pitch, the fairground, the crossing or the signs is moved off it when the valley loads, not merely refused when new.
- A belt's yellow direction arrows stood up out of the moving walkway like fins instead of lying flat on it.
Citing
Every release is archived on Zenodo. The concept DOI 10.5281/zenodo.22965441 always resolves to the newest one; this release has a version DOI of its own.