Add Sequence (order-memory) minigame and wire it into Oregon Trail
Add Sequence (order-memory) minigame and wire it into Oregon Trail
#22 in Riparion/riparion-retro — merged 2026-06-11
Summary
Adds Sequence, a Simon-style order-memory minigame, to minigames-kit, and wires it into Oregon Trail's wagon-wheel, ox-leg, and snakebite catastrophes.
A short ordered run of symbols flashes one at a time; the player taps them back in the same order. It fills the "ordered procedure / working memory" skill gap none of the existing four mechanics cover. Same kit contract as the others: feature-gated module, deterministic from seed, 20 ms tick counter, plain SequenceResult (correct_prefix / length / perfect) returned via on_complete, scoring left to the host.
minigames-kit
- New
sequencemodule + feature, pure unit-tested helpers (build_sequence,lit_slot,correct_prefix), and theSequencecomponent. - Standalone
minigames-kit-sequencedemo crate +just sequencerecipe. - Glyph/button sizing adapts to the longest label so single-glyph shapes render large while word palettes (e.g.
SPLINT) still fit. The flash stage setsopacityexplicitly in both lit/gap branches (Dioxus patches style props individually — a lit style omittingopacityinherits the gap'sopacity: 0, so only the first symbol would show).
Oregon Trail
- Sequence now drives three events: wagon wheel (
jack → block → bolt → seat), ox-leg (wrap → pad → bind), snakebite (tourniquet → lance → dress). Losses graded by how much of the order was fumbled; the snakebite keeps its death-if-no-medicine gate. - The wheel was a plain stat hit; ox-leg and snakebite were on SteadyHands. Moving all three here leaves the river ford as the lone steady-hand event (
SteadyTasktrimmed toFord). - New thin screen wrapper, plus router / cover-art keys / image-key doc / engine-test updates.
Verification
cargo test: 48 kit tests + 48 oregon-trail engine tests pass (new sequence + grading + death-gate + stale-double-tap coverage).cargo clippy -- -D warningsclean; both crates build to wasm.- Real browser runs (touch viewport, fresh wasm load): the standalone demo (flawless + slip paths), and the in-game snakebite event via save-injection — rendered → played → resolved with the right stat changes (
AMMO 5000→4990,SUPPLIES 60→55) and the death gate intact.
🤖 Generated with Claude Code
Last updated 2026-06-11
Links to this note
Credits
Merged pull requests, newest first.