From the team

Development notes

Feature launches, physics changes, fixes, and decisions from the Curling Ice team. Newest entries first.

Shots Catalogue — in-game shot library

We launched the in-game Shots Catalogue: a browseable library of all 14 named shot types available in Curling Ice, accessible directly from the practice screen.

Each entry shows a shot diagram, a difficulty rating, a plain-English description of what the shot is, and a Practice button that loads a pre-configured stone layout for that shot type and scores your attempt out of 10.

  • 4 draw types: button, back 4, come-around, freeze
  • 3 guard placements: near, far, center
  • 2 raise variants: straight and angle raise
  • 5 takeout types: control, normal, nose hit, hit-and-roll, peel

The web version of the catalogue is at shots-catalog.html with diagrams and descriptions for each shot — useful for players who want a reference outside the app.

Double takeout — collision chain improvements

Multi-stone collisions — particularly double takeouts where a shooter contacts two stones in rapid succession — were occasionally producing incorrect momentum transfer in the second collision. The secondary stone was receiving a velocity delta that didn't account for the shooter's post-first-contact state correctly.

We added a collision deduplication set to the physics substep loop and tightened the CCD (continuous collision detection) solver ordering. A stone now correctly passes its updated velocity into every subsequent collision within the same substep, rather than reading stale pre-frame values.

Technical detail

The root cause was that the collision response for stone A → stone B updated A's velocity, but stone B's mass was not being factored into the impulse calculation when B subsequently contacted stone C within the same frame. The fix processes each collision pair once per substep and flushes the contact list before the next substep begins. The solver runs 3 iterations per substep to resolve multi-body pileups.

Tutorial graduation — module completion ceremony

The tutorial system now has a proper graduation ceremony when a player completes a module. Previously, finishing a module just silently incremented the level counter — there was no moment of acknowledgment that you'd actually learned something.

Completing a module now triggers a brief confetti animation and a completion card before unlocking the next module. The player's best score is saved per module. Tutorial levels are stored server-side for signed-in users, with a local cache for offline play and a pending-sync queue that uploads progress the next time the device is online.

The tutorial has 9 modules, covering: the sheet layout, delivery mechanics, in-turn and out-turn, sweeping, draw shots, guards, raises, takeouts, and basic end strategy. Each module ends with a scored practice throw.

More entries will appear here.
Follow @curlingice for updates between posts.