@rydr/game-sdk 3.22.0 → 3.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/README.md +21 -4
  2. package/dist/client/PlatformClient.d.ts +73 -7
  3. package/dist/client/PlatformClient.d.ts.map +1 -1
  4. package/dist/client/PlatformClient.js +68 -8
  5. package/dist/client/PlatformClient.js.map +1 -1
  6. package/dist/host/PlatformHost.d.ts +27 -2
  7. package/dist/host/PlatformHost.d.ts.map +1 -1
  8. package/dist/host/PlatformHost.js +19 -0
  9. package/dist/host/PlatformHost.js.map +1 -1
  10. package/dist/nav/README.md +70 -0
  11. package/dist/nav/index.d.ts +18 -0
  12. package/dist/nav/index.d.ts.map +1 -0
  13. package/dist/nav/index.js +17 -0
  14. package/dist/nav/index.js.map +1 -0
  15. package/dist/nav/spatial-nav.d.ts +101 -0
  16. package/dist/nav/spatial-nav.d.ts.map +1 -0
  17. package/dist/nav/spatial-nav.js +295 -0
  18. package/dist/nav/spatial-nav.js.map +1 -0
  19. package/dist/protocol/boards.d.ts +3 -0
  20. package/dist/protocol/boards.d.ts.map +1 -1
  21. package/dist/protocol/boards.js.map +1 -1
  22. package/dist/protocol/buttons.d.ts +45 -0
  23. package/dist/protocol/buttons.d.ts.map +1 -1
  24. package/dist/protocol/buttons.js +6 -0
  25. package/dist/protocol/buttons.js.map +1 -1
  26. package/dist/protocol/capabilities.d.ts +2 -1
  27. package/dist/protocol/capabilities.d.ts.map +1 -1
  28. package/dist/protocol/capabilities.js.map +1 -1
  29. package/dist/protocol/guards.d.ts.map +1 -1
  30. package/dist/protocol/guards.js +1 -0
  31. package/dist/protocol/guards.js.map +1 -1
  32. package/dist/protocol/haptics.d.ts +47 -0
  33. package/dist/protocol/haptics.d.ts.map +1 -0
  34. package/dist/protocol/haptics.js +27 -0
  35. package/dist/protocol/haptics.js.map +1 -0
  36. package/dist/protocol/identity.d.ts +2 -2
  37. package/dist/protocol/identity.d.ts.map +1 -1
  38. package/dist/protocol/index.d.ts +1 -0
  39. package/dist/protocol/index.d.ts.map +1 -1
  40. package/dist/protocol/index.js +1 -0
  41. package/dist/protocol/index.js.map +1 -1
  42. package/dist/protocol/messages.d.ts +64 -4
  43. package/dist/protocol/messages.d.ts.map +1 -1
  44. package/dist/protocol/version.d.ts +2 -2
  45. package/dist/protocol/version.d.ts.map +1 -1
  46. package/dist/protocol/version.js +31 -5
  47. package/dist/protocol/version.js.map +1 -1
  48. package/package.json +6 -2
package/README.md CHANGED
@@ -186,6 +186,11 @@ session.onButton(({ name, edge }) => { if (edge === "down") confirm(name); });
186
186
  // Continuous actions (steer, hold-to-brake, charge) — poll held-state in your game loop:
187
187
  const dx = (session.isDown("RIGHT") ? 1 : 0) - (session.isDown("LEFT") ? 1 : 0);
188
188
  const anyHeld = session.buttonsDown().length > 0;
189
+
190
+ // Analog (hall-effect triggers / joysticks) — poll the value in your game loop:
191
+ const throttle = session.axis("RT"); // 0..1 (0 on a plain, non-hall trigger until pressed)
192
+ const move = session.stick("LSTICK"); // { x, y, magnitude, angle }, radially deadzoned
193
+ player.x += move.x * speed; // smooth on hall sticks, clean 8-way on a d-pad
189
194
  ```
190
195
 
191
196
  - **Do NOT** add `window.addEventListener("keydown"/"keyup")`, read `e.key`/`e.code`/`keyCode`,
@@ -196,12 +201,24 @@ const anyHeld = session.buttonsDown().length > 0;
196
201
  delivered per-frame and per-focus. `onButton`/`isDown`/`buttonsDown` are immune to all of that:
197
202
  the SDK normalises **keyboard, phone, and Zwift Play** into one stream and delivers it whether
198
203
  the shell or the game canvas holds focus.
199
- - **Canonical names:** `UP`/`DOWN`/`LEFT`/`RIGHT` + face buttons `A`/`B`/`Y`/`Z`. House
200
- convention: `A` = confirm/primary, `Z` = back/cancel; `B`/`Y` are contextual. Show the actual
201
- glyph in prompts; never hard-code a device. (Phones expose at least the `A`/`Z` pair don't
202
- require `B`/`Y` for a flow that must work everywhere.)
204
+ - **Canonical names:** `UP`/`DOWN`/`LEFT`/`RIGHT` + face buttons `A`/`B`/`Y`/`Z` + shoulder
205
+ triggers `LT`/`RT`. House convention: `A` = confirm/primary, `Z` = back/cancel; `B`/`Y` and
206
+ `LT`/`RT` are contextual (no built-in meaning). Show the actual glyph in prompts; never hard-code a
207
+ device. (Phones expose at least the `A`/`Z` pair, and not every controller has `LT`/`RT` — don't
208
+ require them for a flow that must work everywhere.)
203
209
  - **Edges are real holds:** a held button emits exactly one `down` and one `up`. For "is it held
204
210
  right now?" use `isDown`/`buttonsDown` rather than tracking edges yourself.
211
+ - **Analog is opt-in and additive:** when a controller has **hall-effect** sensors, read the
212
+ continuous position with `session.axis(name)` — `LT`/`RT` give `0..1`, sticks `LX`/`LY`/`RX`/`RY`
213
+ give `-1..1` (right/up = +1). For a joystick prefer `session.stick("LSTICK" | "RSTICK")`, which
214
+ applies the correct **radial** deadzone and returns `{ x, y, magnitude, angle }`. Pick by need:
215
+ `stick()` for 2D movement/aim, `axis()` for a single trigger, `isDown`/`onButton` for ON/OFF. The
216
+ digital and analog streams run in **parallel** — `isDown("LT")` and `axis("LT")` both work, so a
217
+ game uses either or both. And `axis()`/`stick()` are **always readable**: on a plain, non-hall
218
+ controller the value is quantized to the endpoints (a trigger snaps `0`/`1`, a d-pad snaps
219
+ `-1`/`0`/`+1`), so you never branch on "does this controller have hall?" — it rests at `0` until a
220
+ sample arrives. The **keyboard emulates axes too** (for local dev): the trigger keys drive `LT`/`RT`
221
+ and the arrow keys the left stick, so `axis()`/`stick()` work without a controller.
205
222
  - **The only legitimate exception is a non-gameplay authoring tool** — an admin-gated **world /
206
223
  level editor** or a dev-only showcase page that runs outside the rider flow. There, raw keyboard
207
224
  (Ctrl+Z, arrows to nudge, Delete) is the correct desktop UX. *Gameplay* never uses it.
@@ -1,6 +1,7 @@
1
1
  import { type Capability } from "../protocol/capabilities.js";
2
2
  import type { ScopedIdentity } from "../protocol/identity.js";
3
- import type { ButtonName, ButtonEdge } from "../protocol/buttons.js";
3
+ import type { ButtonName, ButtonEdge, AxisName, StickName } from "../protocol/buttons.js";
4
+ import type { HapticEffect } from "../protocol/haptics.js";
4
5
  import type { BoardDefinition, LeaderboardPage, RankResult, ScoreSubmission, SubmitScoreResult, AdminSeedEntry } from "../protocol/boards.js";
5
6
  import type { GameDoc } from "../protocol/gamedata.js";
6
7
  import type { CoreWorld } from "../protocol/worlds.js";
@@ -19,6 +20,23 @@ export interface ButtonEvent {
19
20
  */
20
21
  repeat: boolean;
21
22
  }
23
+ /** A joystick position, returned by `session.stick(name)` — the two raw axes composed with a
24
+ * radial deadzone. `x`/`y` are in `[-1, 1]` (right/up = +1), `magnitude` in `[0, 1]`. */
25
+ export interface StickVector {
26
+ /** Horizontal component after deadzone, `[-1, 1]` (right = +1). */
27
+ x: number;
28
+ /** Vertical component after deadzone, `[-1, 1]` (up = +1). */
29
+ y: number;
30
+ /** Length of the (deadzoned) vector, clamped to `[0, 1]`. 0 when inside the deadzone. */
31
+ magnitude: number;
32
+ /** Direction in radians via `atan2(y, x)` — 0 = right, +π/2 = up. 0 when inside the deadzone. */
33
+ angle: number;
34
+ }
35
+ /** Options for `session.stick(name, opts)`. */
36
+ export interface StickOptions {
37
+ /** Radial deadzone radius in `[0, 1)`; magnitudes below it read as centred. Default `0.1`. */
38
+ deadzone?: number;
39
+ }
22
40
  /** Options for `onButton`. */
23
41
  export interface OnButtonOptions {
24
42
  /**
@@ -409,6 +427,19 @@ export interface PlatformSession {
409
427
  * `setPowerBar(false)`). `false` is for gameplay, never for editors.
410
428
  */
411
429
  setMenu(state: boolean | "hidden"): void;
430
+ /**
431
+ * Report whether the rider is in **active gameplay** or navigating a **menu** (picker,
432
+ * results, leaderboard, pause screen, etc.). The shell uses this to ease trainer resistance
433
+ * whenever the rider isn't racing — so you keep spinning comfortably while browsing — and
434
+ * restores full resistance the instant you go back to `"playing"`. The game never sets a
435
+ * resistance value; it only declares state.
436
+ *
437
+ * - `"playing"` (default if never called) — active gameplay; full rider resistance.
438
+ * - `"menu"` — any non-racing screen; the shell eases resistance.
439
+ *
440
+ * Call it wherever you already switch between menu and play (typically alongside `setMenu`).
441
+ */
442
+ setActivity(state: "playing" | "menu"): void;
412
443
  /** Ask the shell to exit the game (back to the launcher). */
413
444
  requestExit(): void;
414
445
  /** Ask the shell to surface its hardware (reconnect) UI. */
@@ -418,12 +449,19 @@ export interface PlatformSession {
418
449
  /**
419
450
  * Subscribe to controller button edges (`down`/`up`). Returns an unsubscribe fn.
420
451
  *
421
- * This is the ONLY way a game should read inputtogether with `isDown`/`buttonsDown`. Do not
422
- * attach your own `keydown`/`keyup` listeners, read `e.key`/`e.code`, poll `getGamepads()`, or
423
- * open a custom phone bridge: the SDK normalises keyboard, phone, and Zwift Play into this one
424
- * stream and delivers it whether the shell or the game canvas holds focus (raw DOM key events
425
- * silently break across iframe focus). Raw keyboard is acceptable ONLY in non-gameplay authoring
426
- * tools (an admin-gated world/level editor), never in gameplay.
452
+ * **Which input API do I use?** Read input *only* through the session never attach your own
453
+ * `keydown`/`keyup` listeners, read `e.key`/`e.code`, poll `getGamepads()`, or open a custom phone
454
+ * bridge (that bypasses the canonical vocabulary and breaks across iframe focus; raw keyboard is
455
+ * acceptable ONLY in non-gameplay authoring tools). Then pick by what you're reading:
456
+ * - **Discrete press** (menu confirm, fire, jump) `onButton` react to the `down`/`up` edge.
457
+ * - **Held button** (hold-to-brake, digital steer) → `isDown(name)` / `buttonsDown()` poll each frame.
458
+ * - **Analog trigger** (throttle, brake pressure) → `axis("LT"|"RT")` — `0..1`, poll each frame.
459
+ * - **Joystick** (2D move/aim) → `stick("LSTICK"|"RSTICK")` — deadzoned `{x, y, magnitude, angle}`.
460
+ *
461
+ * The digital (`onButton`/`isDown`) and analog (`axis`/`stick`) streams run in parallel — the same
462
+ * trigger is readable both ways (`isDown("LT")` and `axis("LT")`), so use whichever fits, or both.
463
+ * The SDK normalises keyboard, phone, and Zwift Play into these streams and delivers them whether
464
+ * the shell or the game canvas holds focus (raw DOM key events silently break across iframe focus).
427
465
  *
428
466
  * By default a held button fires ONE `down` (device re-emits are swallowed) — right for menus
429
467
  * and discrete actions. Pass `{ repeats: true }` to also receive re-emits (`e.repeat === true`)
@@ -438,6 +476,34 @@ export interface PlatformSession {
438
476
  isDown(name: ButtonName): boolean;
439
477
  /** Snapshot of every button currently held. */
440
478
  buttonsDown(): ButtonName[];
479
+ /**
480
+ * Current analog value of a controller axis — a hall-effect trigger or joystick position.
481
+ * `LT`/`RT` read `0..1` (0 = released); stick axes `LX`/`LY`/`RX`/`RY` read `-1..1` (right/up = +1,
482
+ * centre 0). Raw (not deadzoned) — for a joystick prefer `stick()`, which deadzones for you.
483
+ *
484
+ * Always readable: on a plain (non-hall) controller the value is quantized to the endpoints
485
+ * (`0`/`1`, `-1`/`0`/`+1`) rather than continuous, so you never need to check whether the hardware
486
+ * has hall sensors. The digital `input.button` edges keep firing in parallel — use `isDown("LT")`
487
+ * for ON/OFF, `axis("LT")` for the travel, or both. Poll this in your game loop. `0` until the
488
+ * first sample (also the resting value), so a game never receiving axes simply reads `0`.
489
+ */
490
+ axis(name: AxisName): number;
491
+ /**
492
+ * Read a joystick as a 2D vector with a **radial** deadzone applied — the correct way to consume a
493
+ * stick for movement/aim (per-axis deadzoning gives a square deadzone and fast diagonals). Composes
494
+ * the stick's two axes (`"LSTICK"` → `LX`/`LY`, `"RSTICK"` → `RX`/`RY`) into `{ x, y, magnitude,
495
+ * angle }`. Because axes are always populated, this returns a smooth vector on hall hardware and a
496
+ * clean 8-way vector on a d-pad — one code path. Default deadzone `0.1`; override via `opts`.
497
+ */
498
+ stick(name: StickName, opts?: StickOptions): StickVector;
499
+ /**
500
+ * Rumble the connected controller. Pass a named effect (`vibrate("hit")`) or a custom
501
+ * `{ pattern, intensity }` (`vibrate({ pattern: [100, 50, 100], intensity: 1 })`). The shell
502
+ * owns the per-device waveform. Best-effort and fire-and-forget: it silently does nothing when
503
+ * no capable controller is connected, when the browser can't vibrate (e.g. Safari), or when the
504
+ * game lacks the `buttons` capability. Never gate a required flow on a buzz being felt.
505
+ */
506
+ vibrate(effect: HapticEffect): void;
441
507
  /** Subscribe to shell-driven pause. Returns an unsubscribe fn. */
442
508
  onPause(cb: () => void): () => void;
443
509
  /** Subscribe to shell-driven resume. Returns an unsubscribe fn. */
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformClient.d.ts","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformClient.d.ts","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"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"}
@@ -58,6 +58,10 @@ export function connectToPlatform(options) {
58
58
  // guarantees a matching `up` for every `down` (incl. a stuck-key backstop),
59
59
  // so this stays in sync without a separate wire message.
60
60
  const heldButtons = new Set();
61
+ // Latest analog axis value per axis (hall-effect triggers/joysticks), from `rydr/input.axis`.
62
+ // Latest-wins, like held-button state; unset axes read 0 (resting). Parallel to `heldButtons` —
63
+ // the digital edge stream is unaffected.
64
+ const axisValues = new Map();
61
65
  // The single feed into the button pipeline. A `down` for an already-held button is either a
62
66
  // duplicate of the SAME first press arriving from BOTH input paths — the shell relay
63
67
  // (`rydr/input.button`, while the shell window has focus) and the iframe-local keyboard
@@ -265,6 +269,10 @@ export function connectToPlatform(options) {
265
269
  case "rydr/input.button":
266
270
  applyButton(msg.name, msg.edge, msg.repeat ?? false);
267
271
  break;
272
+ case "rydr/input.axis":
273
+ // Latest-wins analog value; the digital edge (if any) arrives separately as input.button.
274
+ axisValues.set(msg.name, msg.value);
275
+ break;
268
276
  case "rydr/audio.setMaster":
269
277
  // Shell-owned master level: every live SoundBank in this iframe scales its master
270
278
  // gain by it (see @rydr/game-sdk/sounds platform-master). No game code required.
@@ -385,6 +393,18 @@ export function connectToPlatform(options) {
385
393
  // and keyboard now works regardless of which window holds focus. Gated on the `buttons`
386
394
  // capability, same as the relayed path.
387
395
  const kbDown = new Set();
396
+ // Keyboard analog emulation: keep the axis values in sync with keyboard-held buttons so
397
+ // `session.axis()` / `session.stick()` work on the keyboard for local dev — quantized to the
398
+ // endpoints (a real hall controller sends continuous values over the wire instead). Triggers map
399
+ // to their own axis; the arrow / d-pad keys drive the LEFT stick (opposite keys cancel, so
400
+ // LEFT+RIGHT reads 0). Derived from `kbDown` (keyboard-only held state), so a relayed controller's
401
+ // own `input.axis` samples are the authority whenever one is actually in use.
402
+ const syncKeyboardAxes = () => {
403
+ axisValues.set("LT", kbDown.has("LT") ? 1 : 0);
404
+ axisValues.set("RT", kbDown.has("RT") ? 1 : 0);
405
+ axisValues.set("LX", (kbDown.has("RIGHT") ? 1 : 0) - (kbDown.has("LEFT") ? 1 : 0));
406
+ axisValues.set("LY", (kbDown.has("UP") ? 1 : 0) - (kbDown.has("DOWN") ? 1 : 0));
407
+ };
388
408
  // A game canvas has no text fields, but admin editors mounted as guests (the song and
389
409
  // voice-over editors) do. When a keystroke is destined for a focused editable element, it
390
410
  // belongs to that field — NOT the controller — so we must not map it or `preventDefault` it.
@@ -402,22 +422,42 @@ export function connectToPlatform(options) {
402
422
  return; // let focused inputs keep their keys
403
423
  if (e.repeat)
404
424
  return; // OS auto-repeat → a held key is still one `down`
405
- // Master game-audio volumeR = up, F = down. Shell-owned and UNGATED (independent of the
406
- // `buttons` capability, like `audio.setMaster`): we only forward the intent to the shell, which
407
- // steps + persists the level and echoes it back via `audio.setMaster`. This mirrors the shell's
408
- // own window handler for the same keys — needed because a focused game iframe receives these
409
- // keystrokes itself, so the shell window never sees them. The two paths are mutually exclusive
410
- // per keystroke (only the focused window gets the event), so volume never double-steps.
411
- if (e.key === "r" || e.key === "R") {
425
+ // Shell-owned rider keys volume, trainer resistance, and the platform menu. All are UNGATED
426
+ // (independent of the `buttons` capability, like `audio.setMaster`): we only forward the intent
427
+ // to the shell, which owns the state (steps + persists volume/resistance, toggles the menu
428
+ // overlay). These mirror the shell's own window handlers for the same keys — needed because a
429
+ // focused game iframe receives these keystrokes itself, so the shell window never sees them. The
430
+ // two paths are mutually exclusive per keystroke (only the focused window gets the event), so
431
+ // nothing double-steps.
432
+ //
433
+ // Master game-audio volume — T = up, G = down.
434
+ if (e.key === "t" || e.key === "T") {
412
435
  e.preventDefault();
413
436
  post({ rydr: true, type: "rydr/audio.adjustMaster", direction: 1 });
414
437
  return;
415
438
  }
416
- if (e.key === "f" || e.key === "F") {
439
+ if (e.key === "g" || e.key === "G") {
417
440
  e.preventDefault();
418
441
  post({ rydr: true, type: "rydr/audio.adjustMaster", direction: -1 });
419
442
  return;
420
443
  }
444
+ // Trainer resistance — W = down (−), X = up (+).
445
+ if (e.key === "w" || e.key === "W") {
446
+ e.preventDefault();
447
+ post({ rydr: true, type: "rydr/trainer.adjustResistance", direction: -1 });
448
+ return;
449
+ }
450
+ if (e.key === "x" || e.key === "X") {
451
+ e.preventDefault();
452
+ post({ rydr: true, type: "rydr/trainer.adjustResistance", direction: 1 });
453
+ return;
454
+ }
455
+ // Platform menu overlay (the hamburger) — M toggles it open/closed.
456
+ if (e.key === "m" || e.key === "M") {
457
+ e.preventDefault();
458
+ post({ rydr: true, type: "rydr/menu.toggle" });
459
+ return;
460
+ }
421
461
  if (!grantedCapabilities.includes("buttons"))
422
462
  return;
423
463
  const name = KEY_TO_BUTTON[e.key];
@@ -426,6 +466,7 @@ export function connectToPlatform(options) {
426
466
  e.preventDefault(); // stop arrow/space from scrolling the page
427
467
  kbDown.add(name);
428
468
  applyButton(name, "down");
469
+ syncKeyboardAxes();
429
470
  };
430
471
  const onKeyUp = (e) => {
431
472
  // NOT guarded on editable target (unlike onKeyDown): keyup never types a character or calls
@@ -439,6 +480,7 @@ export function connectToPlatform(options) {
439
480
  return;
440
481
  kbDown.delete(name);
441
482
  applyButton(name, "up");
483
+ syncKeyboardAxes();
442
484
  };
443
485
  // Focus can leave the iframe before a matching `keyup` arrives (Alt-Tab, click outside, tab
444
486
  // switch) — release every keyboard-held button so none stick down. Mirrors the shell's own
@@ -447,6 +489,7 @@ export function connectToPlatform(options) {
447
489
  for (const name of kbDown)
448
490
  applyButton(name, "up");
449
491
  kbDown.clear();
492
+ syncKeyboardAxes();
450
493
  };
451
494
  const onVisibility = () => {
452
495
  if (document.visibilityState === "hidden")
@@ -717,6 +760,7 @@ export function connectToPlatform(options) {
717
760
  },
718
761
  setPowerBar: (visible) => post({ rydr: true, type: "rydr/ui.setPowerBar", visible }),
719
762
  setMenu: (state) => post({ rydr: true, type: "rydr/ui.setMenu", visible: state === true, hidden: state === "hidden" }),
763
+ setActivity: (state) => post({ rydr: true, type: "rydr/activity.set", state }),
720
764
  requestExit: () => post({ rydr: true, type: "rydr/exitRequest" }),
721
765
  requestHardwareModal: () => post({ rydr: true, type: "rydr/ui.requestHardwareModal" }),
722
766
  reportError: (message) => post({ rydr: true, type: "rydr/error", message }),
@@ -727,6 +771,22 @@ export function connectToPlatform(options) {
727
771
  },
728
772
  isDown: (name) => heldButtons.has(name),
729
773
  buttonsDown: () => [...heldButtons],
774
+ axis: (name) => axisValues.get(name) ?? 0,
775
+ stick: (name, opts) => {
776
+ const [xName, yName] = name === "LSTICK" ? ["LX", "LY"] : ["RX", "RY"];
777
+ const rawX = axisValues.get(xName) ?? 0;
778
+ const rawY = axisValues.get(yName) ?? 0;
779
+ const dead = opts?.deadzone ?? 0.1;
780
+ const rawMag = Math.hypot(rawX, rawY);
781
+ // Radial deadzone: inside → centred; outside → rescale so magnitude ramps 0→1 across the
782
+ // remaining travel (no per-axis deadzone, which would give a square zone + fast diagonals).
783
+ if (rawMag <= dead || rawMag === 0)
784
+ return { x: 0, y: 0, magnitude: 0, angle: 0 };
785
+ const scaled = Math.min((rawMag - dead) / (1 - dead), 1);
786
+ const scale = scaled / rawMag; // maps the raw vector to the rescaled, clamped magnitude
787
+ return { x: rawX * scale, y: rawY * scale, magnitude: scaled, angle: Math.atan2(rawY, rawX) };
788
+ },
789
+ vibrate: (effect) => post({ rydr: true, type: "rydr/haptics.vibrate", effect }),
730
790
  onPause: (cb) => {
731
791
  pauseListeners.add(cb);
732
792
  return () => pauseListeners.delete(cb);
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformClient.js","sourceRoot":"","sources":["../../src/client/PlatformClient.ts"],"names":[],"mappings":"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"}
@@ -10,7 +10,8 @@
10
10
  */
11
11
  import type { Capability } from "../protocol/capabilities.js";
12
12
  import type { ScopedIdentity } from "../protocol/identity.js";
13
- import type { ButtonName, ButtonEdge } from "../protocol/buttons.js";
13
+ import type { ButtonName, ButtonEdge, AxisName } from "../protocol/buttons.js";
14
+ import type { HapticEffect } from "../protocol/haptics.js";
14
15
  import type { BoardDefinition, LeaderboardPage, RankResult, ScoreSubmission, SubmitScoreResult, AdminSeedEntry } from "../protocol/boards.js";
15
16
  import type { GameDataScope, GameDoc } from "../protocol/gamedata.js";
16
17
  import type { CoreWorld } from "../protocol/worlds.js";
@@ -120,11 +121,26 @@ export interface PlatformHostOptions {
120
121
  * `false` → immersive play (hamburger stays for exit); `"hidden"` → full takeover, remove the
121
122
  * hamburger entirely (an editor/authoring tool). See `PlatformClient.setMenu`. */
122
123
  onMenuRequest?(state: boolean | "hidden"): void;
124
+ /** The game reported its activity state — `"playing"` (active gameplay) vs `"menu"` (any
125
+ * non-racing screen). The shell uses it to ease trainer resistance when the rider isn't
126
+ * racing. Default (never sent) is `"playing"`. See `PlatformClient.setActivity`. */
127
+ onActivityChange?(state: "playing" | "menu"): void;
123
128
  onRequestHardwareModal?(): void;
124
- /** The game forwarded a rider volume key (R/F) captured inside the focused iframe — step the
129
+ /** The game forwarded a rider volume key (T/G) captured inside the focused iframe — step the
125
130
  * shell-owned master audio level one notch in `direction` (+1 up / -1 down), then echo the new
126
131
  * level back with `setMasterVolume`. See `rydr/audio.adjustMaster`. */
127
132
  onAdjustMasterVolume?(direction: 1 | -1): void;
133
+ /** The game asked to rumble the connected controller with a haptic `effect` (a named effect or a
134
+ * custom `{ pattern, intensity }`). Best-effort: no-op if no capable controller is connected or
135
+ * the browser can't vibrate. Only invoked when the game holds the `buttons` capability. */
136
+ onVibrate?(effect: HapticEffect): void;
137
+ /** The game forwarded a rider resistance key (W/X) captured inside the focused iframe — step the
138
+ * trainer resistance one notch in `direction` (+1 harder / -1 easier). See
139
+ * `rydr/trainer.adjustResistance`. */
140
+ onAdjustResistance?(direction: 1 | -1): void;
141
+ /** The game forwarded the rider's menu key (M) captured inside the focused iframe — toggle the
142
+ * in-game platform menu overlay open/closed. See `rydr/menu.toggle`. */
143
+ onToggleMenu?(): void;
128
144
  onError?(message: string): void;
129
145
  /** The game requested a leaderboard page; fetch and return it. */
130
146
  onGetLeaderboard?(boardId: string, opts: {
@@ -270,6 +286,15 @@ export interface PlatformHost {
270
286
  * press) so they don't multi-fire. Omit `repeat` for `up` and for genuine presses.
271
287
  */
272
288
  sendButton(name: ButtonName, edge: ButtonEdge, repeat?: boolean): void;
289
+ /**
290
+ * Push an analog controller AXIS sample to the game (if it was granted `buttons`) — a hall-effect
291
+ * trigger or joystick position. `value` should be normalised: `LT`/`RT` to `[0, 1]`, stick axes
292
+ * (`LX`/`LY`/`RX`/`RY`) to `[-1, 1]` (right/up = +1), raw (not deadzoned). Call this for every
293
+ * controller — send the endpoints (`0`/`1`, `-1`/`0`/`+1`) for plain digital hardware and the
294
+ * continuous value for hall — so the game's `session.axis()` always reads a usable value. Keep
295
+ * calling `sendButton` for the digital edge in parallel; the shell owns the on/off threshold.
296
+ */
297
+ sendAxis(name: AxisName, value: number): void;
273
298
  /** Push updated controller-connected state to the game (if it was granted `buttons`), e.g. when
274
299
  * a Zwift Play/gamepad/phone connects or drops mid-session. */
275
300
  sendInputStatus(controllerConnected: boolean): void;
@@ -1 +1 @@
1
- {"version":3,"file":"PlatformHost.d.ts","sourceRoot":"","sources":["../../src/host/PlatformHost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlatformHost.d.ts","sourceRoot":"","sources":["../../src/host/PlatformHost.ts"],"names":[],"mappings":"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"}