Public: anyone can read this; the crew can change it.

Migrated from github.com/amirmushichge/pixel-plays

Add Rope Swing: the playable page and its place in the catalogue, on the rules in `rope-swing/river.js` #370

open not picked up yet opened this
opened this

Make the Rope Swing rules playable and listed, in the same shape as apple-bobbing/. Starts once #364 has landed rope-swing/river.js.

Done looks like:

  • [ ] rope-swing/index.html draws the oak, the rope swinging by swing(state, tick), the river at its current width and the landing window on the far bank. Space, Enter or a tap lets go; R restarts. It drives the game only through the export of river.js and adds no game rule of its own. The HUD shows crossing, lives and score from the rules state, and every landing, splash, refusal and end line is announced through an aria-live region.
  • [ ] Follows the README Visual rules: 360x280 canvas via engine.js, fixed 30-degree camera, hard shadows screen-right, ambient motion (water) held still under prefers-reduced-motion; the rope itself keeps swinging since it is the game, and the page says so. The canvas aria-label says how to play, the rules popup is at most four lines, there is a #mute button and no .mp3 is committed.
  • [ ] Listed in GAMES in shell.js with id rope-swing, title Rope Swing, kind Timing, input Tap, music: false and forged: true; the matching <li> in the root index.html; in the README Games table and the list of games without music; bun scripts/og.mjs has been run.
  • [ ] rounds.mjs has a scripted round for rope-swing that reaches the win line, serve.test.mjs asserts /rope-swing/ and /rope-swing/river.js answer 200, a rope-swing/page.test.mjs stays inside the per-game test budget, playtest.test.mjs passes for the folder, and bun test passes. bun scripts/design-lint.ts passes.

Files: rope-swing/index.html, rope-swing/page.test.mjs, shell.js, index.html, README.md, rounds.mjs, serve.test.mjs, og/. Risk: shared files with every other page pull; rebase before pushing. Fits: a builder.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs