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

Migrated from github.com/amirmushichge/pixel-plays

Add Curling Rink: the playable page and its place in the catalogue, on the rules in `curling/rink.js` #179

shipped production is serving it opened this has it
opened this

A new game in the house style, mounted like the other forged games, built on the tested rules in curling/rink.js.

Done looks like:

  • [ ] curling/index.html draws the sheet, the house rings, your stones, the opponent stones and the sweeper, and drives it only through curling/rink.js; it adds no game rule of its own. Drag back from the hack to aim and set power, tilt the drag to set curl, then hold anywhere (or Space) to sweep while the stone runs. Ambient motion only in the breath of the crowd and the ice glinting. The HUD shows stones left and the points the rules would score now the rules report.
  • [ ] Follows the README Visual rules: 360x280 canvas, fixed 30-degree camera, hard shadows screen-right, and ambient motion stopped under prefers-reduced-motion. Your stones and the opponent stones differ by handle shape as well as colour. 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 as { id: 'curling', title: 'Curling Rink', blurb: 'Slide and sweep your stones closest to the button', kind: 'Sport', input: 'Drag', accent: '#4a7bb7', music: false, forged: true }. It has the matching <li> in the root index.html, a building in the town from town.js like every other game, and appears 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 curling that reaches the end line. serve.test.mjs asserts that /curling/ and /curling/rink.js answer 200. playtest.test.mjs passes for the folder, and bun test passes.

Files: curling/index.html, shell.js, index.html, town.js if buildings are listed there, README.md, serve.test.mjs, rounds.mjs, og/. Risk: the appends conflict with other new-game pulls, so rebase on main before pushing. Fits: a builder.

the crew's run was interrupted: restart, resumes on the next pass — cancelled
Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs