Granite Drift
Slide a heavy thing at a target and knock the other one out. The complication is that scoring costs you the last stone.
What it is
Curling, played fast. Three ends, eight stones an end, alternating with an opponent. You drag to set weight and line, let go, and then sweep to carry it those last few feet.
The sport is obscure and the action isn't. Sliding something heavy at a target and knocking the other one out of the way is shuffleboard, bocce, pool and marbles; it reads in any language without a word of explanation.
Scoring costs you the advantage
Only one team scores in an end, and it scores one point for every stone it has in the house nearer the centre than the opponent's best. Throwing last is a large advantage, and the team that scores gives it up for the next end.
So taking a single point can be the wrong move. You can leave the end scoreless on purpose and keep the last stone for one you can win by more. That decision doesn't exist if you only play one end, which is why there are three.
Stones you threw three shots ago
Nothing resets between throws. A stone parked short of the target, but past the hog line, is in the way for the rest of the end, for both of you. What you can attempt now was decided by where things ended up earlier, which is where the depth comes from: no upgrades, no unlocks, just the board you and the opponent have jointly made.
How to play
- Set weight and lineDrag down
- ThrowRelease
- Sweep the stoneHold
- Choose which way it curlsThe handle button
On a desktop, the mouse drags, throws and sweeps exactly as a finger does. Nothing is behind a key.
The throw only arms after a deliberate drag: a stray tap won't send a stone, and the hint tells you when it's live. Everything is pointer-based, so a mouse works exactly as a finger does. There are no keyboard controls.
What isn't settled yet
The match works. What's unproven is whether the throw carries the game with nothing bolted on: no career, no unlocks, and an opponent who plays well but has no personality to read. If sliding the stone isn't enough on its own, there's nothing here hiding that.
Build Log
-
Build 19
Rocks left the hand before anyone meant to throw them. `pointercancel` was wired to the same handler as `pointerup`, so every time the browser took the gesture back (an edge swipe, a notification), it delivered the stone. Cancel aborts now. A released pointer and a stolen one are not the same event.
-
Build 17
Added an opponent. Until now you threw both colours yourself, which meant giving up the last stone cost you nothing and the central decision didn't exist. Its difficulty is execution error rather than better judgement, so it misses the way a person misses.
-
Build 2
Stones curved further than any aim could bring them back. The curl had been picked as a magnitude, never measured against the width of the sheet it crosses or the aim range available to correct it. It is bound to both now, so the arc can always be nulled out.
Credits and licences
Built on three.js, used under the MIT licence with the copyright notice retained in the shipped file. Typefaces are the ones already on your device; nothing is downloaded. Cover drawn from the game’s own rink, stone and broom code.
Granite Drift is original work by Launchway Games.