@magicworks/client-party-game 0.1.0-rc.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.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export * from './protocol';
2
+ export type { PartySocket, PartySocketFactory, PartySocketOptions, } from './socket';
3
+ export { PartyGameClient, type PartyGameClientOptions, type PartyLogger, type RoomMemory, } from './client';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAClB,OAAO,EACL,eAAe,EACf,KAAK,sBAAsB,EAC3B,KAAK,WAAW,EAChB,KAAK,UAAU,GAChB,MAAM,UAAU,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.PartyGameClient = void 0;
18
+ __exportStar(require("./protocol"), exports);
19
+ var client_1 = require("./client");
20
+ Object.defineProperty(exports, "PartyGameClient", { enumerable: true, get: function () { return client_1.PartyGameClient; } });
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,6CAA2B;AAM3B,mCAKkB;AAJhB,yGAAA,eAAe,OAAA"}
@@ -0,0 +1,407 @@
1
+ /**
2
+ * The party game wire protocol, shared by the server
3
+ * (`@magicworks/service-party-game`), the host TV (through `PartyGameClient`)
4
+ * and, by hand, the phone page the server hosts (`public/app.js`).
5
+ *
6
+ * Roles
7
+ * -----
8
+ * host - the ROXi TV app. Owns the video playback and therefore owns round
9
+ * timing. It tells the server when a round starts and ends.
10
+ * player - a phone browser. Only ever sends a join request, a ready and an
11
+ * answer.
12
+ *
13
+ * The correct answer index is sent by the host at round start and never
14
+ * leaves the server: players receive options only, and the server is the sole
15
+ * authority on who scored what.
16
+ */
17
+ export declare const MAX_PLAYERS = 20;
18
+ /**
19
+ * How long a finished party stays worth coming back to. Opening a lobby with
20
+ * the code of a room touched inside this window reopens that room - same code,
21
+ * same players, scores back to zero - so a second game needs a tap on each
22
+ * phone rather than a fresh scan and everybody's name typed again. Past it the
23
+ * room is left where it is and a new one is opened.
24
+ */
25
+ export declare const REOPEN_WINDOW_MS: number;
26
+ export declare const TOTAL_ROUNDS = 15;
27
+ export declare const MAX_NAME_LENGTH = 16;
28
+ /**
29
+ * A round starts on the TV and the phones at once: when the host has the
30
+ * round's video preloaded the server picks a start time ROUND_LEAD_MS ahead -
31
+ * long enough for the message to reach the TV - or the host's planned start,
32
+ * if later. The TV plays the video at that moment by its own clock, corrected
33
+ * against the server's with `time:ping`, and the phones get the options then.
34
+ */
35
+ export declare const ROUND_LEAD_MS = 700;
36
+ /**
37
+ * The countdown before round 1 runs on the TV and every phone at once, and only
38
+ * once everybody is there for it: starting a game asks the TV and every phone
39
+ * in the room whether it is ready (`game:prepare`), and the countdown goes out
40
+ * to all of them (`game:countdown`) once they have all said so (`game:ready`)
41
+ * - or this long after the start, so that one device that never answers cannot
42
+ * keep the rest waiting.
43
+ */
44
+ export declare const GAME_READY_TIMEOUT_MS = 10000;
45
+ /** No I, O, 0 or 1 - codes are read off a TV screen and typed on a phone. */
46
+ export declare const CODE_ALPHABET = "ABCDEFGHJKLMNPQRSTUVWXYZ23456789";
47
+ export declare const CODE_LENGTH = 6;
48
+ /**
49
+ * A room's code starts with the prefix of the server that holds it, and the
50
+ * load balancer routes on it: every connection that knows its room carries
51
+ * the code in the `c` query parameter (ROUTING_QUERY_KEY), so it reaches that
52
+ * server whichever server it would otherwise have been handed to.
53
+ */
54
+ export declare const CODE_PREFIX_LENGTH = 2;
55
+ export declare const ROUTING_QUERY_KEY = "c";
56
+ /**
57
+ * The speed test a TV times in the lobby, to pick a video rendition it can
58
+ * load quickly all game: files of random bytes on the CDN that serves the
59
+ * phone page, closer to where the videos come from than the party servers
60
+ * are. One file per size, at `speedtestPath(size)`.
61
+ */
62
+ export declare const SPEEDTEST_SIZES: readonly [number, number, number, number, number, number];
63
+ export declare function speedtestPath(size: number): string;
64
+ /** What the phone page is told about the party servers: see phonePageConfigScript. */
65
+ export interface PhonePageConfig {
66
+ /** The servers' global name: for a code from no region it knows. */
67
+ socketUrl: string;
68
+ /** Each region's own name, for the codes that region hands out (see PARTY_REGIONS). */
69
+ regionSocketUrls?: Record<string, string>;
70
+ }
71
+ /**
72
+ * The phone page's `config.js`: where its sockets go. Written when the page
73
+ * is deployed, since the party servers' names depend on where; everything
74
+ * else the page needs from the protocol is bundled into it.
75
+ */
76
+ export declare function phonePageConfigScript(config: PhonePageConfig): string;
77
+ /** The socket URL for a code, by its region. */
78
+ export declare function socketUrlForCode(code: string, config: PhonePageConfig): string;
79
+ /**
80
+ * Which region's servers hand out the codes starting with which characters.
81
+ * A room lives on one server in one region, and the party servers' global
82
+ * name is latency-routed, so a TV and a phone in the same room can be sent
83
+ * to different regions: a code says which region it belongs to, and a
84
+ * client connects for it to that region's own name. Between them the
85
+ * regions cover every first character, so any code belongs somewhere.
86
+ */
87
+ export declare const PARTY_REGIONS: Readonly<Record<string, string>>;
88
+ /** The region a code belongs to. */
89
+ export declare function regionOfCode(code: string): string | null;
90
+ /** `code` tidied up the way a phone types it, or null if it cannot be a code. */
91
+ export declare function normaliseCode(code: unknown): string | null;
92
+ /** The server prefix a code routes by. */
93
+ export declare function codePrefixOf(code: string): string;
94
+ /**
95
+ * Speed based scoring, mirroring the single player formula in GameCore:
96
+ * points scale with the time left on the clock, with a bonus for answering
97
+ * in the first half of the round.
98
+ */
99
+ export declare function scoreForAnswer(secondsLeft: number, totalRoundTime: number, modifier: number): number;
100
+ /** The TV or a phone -> server: here, set up, and ready for the countdown. */
101
+ export declare const GameEvent: {
102
+ readonly Ready: 'game:ready';
103
+ };
104
+ /** Server -> the TV and the phones */
105
+ export declare const GameMessage: {
106
+ /** Say when you are ready for the countdown (phones: straight away). */
107
+ readonly Prepare: 'game:prepare';
108
+ /** Everybody is: start the countdown now. */
109
+ readonly Countdown: 'game:countdown';
110
+ };
111
+ /** TV -> server: the server's clock, for working out the offset to it. */
112
+ export declare const TimeEvent: {
113
+ readonly Ping: 'time:ping';
114
+ };
115
+ /** Host -> server */
116
+ export declare const HostEvent: {
117
+ readonly Create: 'host:create';
118
+ readonly Start: 'host:start';
119
+ /** The round's options and answer, sent once the host's video is preloaded. */
120
+ readonly RoundStart: 'host:round-start';
121
+ readonly RoundEnd: 'host:round-end';
122
+ readonly GameEnd: 'host:game-end';
123
+ readonly Restart: 'host:restart';
124
+ /** Open, here, a room handed over by a server on its way out: see HostMessage.Move. */
125
+ readonly Adopt: 'host:adopt';
126
+ /** To the server it is leaving: the room is open again under this code. */
127
+ readonly Moved: 'host:moved';
128
+ };
129
+ /** Player -> server */
130
+ export declare const PlayerEvent: {
131
+ readonly Join: 'player:join';
132
+ readonly Ready: 'player:ready';
133
+ readonly Answer: 'player:answer';
134
+ };
135
+ /** Server -> host */
136
+ export declare const HostMessage: {
137
+ readonly Players: 'players';
138
+ readonly AllAnswered: 'round:all-answered';
139
+ readonly GameOver: 'game:over';
140
+ /** Play the round at `startAt` (server time). */
141
+ readonly RoundGo: 'round:go';
142
+ /**
143
+ * This server is on its way out and the game is over: take the room to
144
+ * another one (`host:adopt` with the token, over a connection with no room
145
+ * in its query), then say where it went (`host:moved`).
146
+ */
147
+ readonly Move: 'room:move';
148
+ };
149
+ /** Server -> player */
150
+ export declare const PlayerMessage: {
151
+ readonly State: 'state';
152
+ readonly Dropped: 'dropped';
153
+ readonly RoundStart: 'round:start';
154
+ readonly RoundResult: 'round:result';
155
+ readonly GameOver: 'game:over';
156
+ /** The party is open under another code: connect for it and rejoin as before. */
157
+ readonly Moved: 'room:moved';
158
+ /** The party is waiting for its TV, which is gone for now: try again in a while. */
159
+ readonly Parked: 'room:parked';
160
+ };
161
+ export declare const GameStatus: {
162
+ readonly Lobby: 'lobby';
163
+ readonly Playing: 'playing';
164
+ readonly Over: 'over';
165
+ };
166
+ /**
167
+ * Why a host call was refused, in its ack's `reason`.
168
+ */
169
+ export declare const HostRefusal: {
170
+ /**
171
+ * A server on its way out: it keeps the rooms it has, but opens no new ones
172
+ * (and past its drain deadline, starts no more games), so the host connects
173
+ * again without a room in its query - which the load balancer hands to a
174
+ * server still taking parties - and asks again.
175
+ */
176
+ readonly Draining: 'draining';
177
+ /** The room is open under another code, `movedTo`: ask again there. */
178
+ readonly Moved: 'moved';
179
+ /** The room is on its way to another server: ask again once it is there. */
180
+ readonly Moving: 'moving';
181
+ };
182
+ /** Why a phone's call was refused, in its ack's `reason`. */
183
+ export declare const PlayerRefusal: {
184
+ /** The room is on its way to another server: ask again in a moment, or follow room:moved. */
185
+ readonly Moving: 'moving';
186
+ };
187
+ /**
188
+ * What a host or a phone can do beyond the first version of the protocol,
189
+ * sent with `host:create` and `player:join`. A server only moves a room when
190
+ * its host and every phone in it can follow.
191
+ */
192
+ export declare const Feature: {
193
+ readonly Move: 'move';
194
+ };
195
+ export type PartyFeature = (typeof Feature)[keyof typeof Feature];
196
+ /** Enough of a room to open it again on another server. */
197
+ export interface RoomSnapshot {
198
+ code: string;
199
+ gameType: PartyGameType;
200
+ genre: string | null;
201
+ genreName: string | null;
202
+ totalRounds: number;
203
+ status: 'lobby' | 'over';
204
+ hostId: string | null;
205
+ touchedAt: number;
206
+ players: {
207
+ id: string;
208
+ name: string;
209
+ score: number;
210
+ lastGain: number;
211
+ joinedAt: number;
212
+ ready: boolean;
213
+ canMove: boolean;
214
+ }[];
215
+ }
216
+ export type PartyGameType = 'nametheartist' | 'namethesong';
217
+ export type PartyStatus = (typeof GameStatus)[keyof typeof GameStatus];
218
+ export interface PartyPlayer {
219
+ id: string;
220
+ name: string;
221
+ score: number;
222
+ rank: number;
223
+ connected: boolean;
224
+ /** Has said they are here for this game. New joiners are ready already. */
225
+ ready: boolean;
226
+ answered: boolean;
227
+ /** null until the round is scored, then true/false for this player. */
228
+ correct: boolean | null;
229
+ /** points gained in the round that was just scored */
230
+ gained: number;
231
+ }
232
+ export interface PartyRoundOption {
233
+ id: string;
234
+ label: string;
235
+ }
236
+ /** Every ack carries `ok`; a refusal says why in `error`. */
237
+ export interface Ack {
238
+ ok: boolean;
239
+ error?: string;
240
+ }
241
+ export interface HostCreateRequest {
242
+ /** A room this TV knows: re-attach to it, or with `reopen`, reopen it. */
243
+ code?: string;
244
+ /** Opening a lobby rather than re-attaching: a recent room comes back cleared. */
245
+ reopen?: boolean;
246
+ /** Which TV this is: see `PartyGameClient`'s hostId. */
247
+ hostId?: string;
248
+ gameType?: PartyGameType;
249
+ genre?: string;
250
+ /** How the TV names the genre, for the phones: `genre` is only its id. */
251
+ genreName?: string | null;
252
+ totalRounds?: number;
253
+ features?: PartyFeature[];
254
+ }
255
+ export interface PartyHostSession {
256
+ code: string;
257
+ joinUrl: string;
258
+ /** True when this lobby picked up the previous game's room and players. */
259
+ reused: boolean;
260
+ maxPlayers: number;
261
+ totalRounds: number;
262
+ status: PartyStatus;
263
+ players: PartyPlayer[];
264
+ }
265
+ export type HostCreateAck = (Ack & {
266
+ ok: true;
267
+ } & PartyHostSession) | (Ack & {
268
+ ok: false;
269
+ reason?: (typeof HostRefusal)[keyof typeof HostRefusal];
270
+ movedTo?: string;
271
+ });
272
+ export interface HostAdoptRequest {
273
+ token: string;
274
+ hostId?: string;
275
+ features?: PartyFeature[];
276
+ }
277
+ export interface HostMovedRequest {
278
+ code: string;
279
+ }
280
+ export interface RoomMoveMessage {
281
+ token: string;
282
+ }
283
+ export interface RoomMovedMessage {
284
+ code: string;
285
+ }
286
+ export interface HostStartRequest {
287
+ totalRounds?: number;
288
+ }
289
+ export interface HostStartAck extends Ack {
290
+ players?: PartyPlayer[];
291
+ totalRounds?: number;
292
+ }
293
+ export interface PartyRoundConfig {
294
+ round: number;
295
+ options: PartyRoundOption[];
296
+ correctIndex: number;
297
+ durationMs: number;
298
+ modifier: number;
299
+ /** Server time the round should not start before: when the TV will be there for it. */
300
+ notBefore?: number;
301
+ }
302
+ export interface PartyRoundResults {
303
+ round: number;
304
+ correctIndex: number;
305
+ players: PartyPlayer[];
306
+ }
307
+ export type HostRoundEndAck = Ack & Partial<PartyRoundResults>;
308
+ export interface HostGameEndAck extends Ack {
309
+ standings?: PartyPlayer[];
310
+ }
311
+ export interface HostRestartAck extends Ack {
312
+ players?: PartyPlayer[];
313
+ }
314
+ export interface TimePingAck {
315
+ now: number;
316
+ }
317
+ /** Server -> host: the roster, scores and who has answered. */
318
+ export interface PlayersMessage {
319
+ code: string;
320
+ status: PartyStatus;
321
+ players: PartyPlayer[];
322
+ }
323
+ /** When a round starts, on the server's clock. */
324
+ export interface PartyRoundGo {
325
+ round: number;
326
+ startAt: number;
327
+ /** How far past its planned start the round is starting. */
328
+ lateByMs?: number | null;
329
+ }
330
+ export interface AllAnsweredMessage {
331
+ round: number;
332
+ }
333
+ /** A round as a phone sees it: never the answer. */
334
+ export interface PlayerRound {
335
+ number: number;
336
+ totalRounds: number;
337
+ options: PartyRoundOption[];
338
+ durationMs: number;
339
+ endsAt: number;
340
+ serverTime?: number;
341
+ }
342
+ export interface PlayerLastResult {
343
+ correct: boolean;
344
+ points: number;
345
+ answerIndex: number | null;
346
+ }
347
+ /** Everything a phone needs to render itself from scratch after a reconnect. */
348
+ export interface PlayerState {
349
+ code: string;
350
+ status: PartyStatus;
351
+ gameType: PartyGameType;
352
+ genreName: string | null;
353
+ totalRounds: number;
354
+ playerId: string;
355
+ name: string;
356
+ ready: boolean;
357
+ score: number;
358
+ rank: number | null;
359
+ playerCount: number;
360
+ answered: number | null;
361
+ round: PlayerRound | null;
362
+ lastResult: PlayerLastResult | null;
363
+ standings: PartyPlayer[] | null;
364
+ }
365
+ export interface PlayerJoinRequest {
366
+ code: string;
367
+ name?: string;
368
+ /** Kept by the phone, so a rejoin keeps its score. */
369
+ playerId?: string | null;
370
+ features?: PartyFeature[];
371
+ }
372
+ export interface PlayerJoinAck extends Ack {
373
+ state?: PlayerState;
374
+ /** The party is open under this code now: join there. */
375
+ movedTo?: string;
376
+ /** The party is waiting for its TV: try again in a while. */
377
+ parked?: boolean;
378
+ reason?: (typeof PlayerRefusal)[keyof typeof PlayerRefusal];
379
+ }
380
+ export interface PlayerAnswerRequest {
381
+ index: number;
382
+ }
383
+ export interface PlayerAnswerAck extends Ack {
384
+ reason?: string;
385
+ answered: number | null;
386
+ }
387
+ export interface PlayerRoundResult {
388
+ round: number;
389
+ correctIndex: number;
390
+ correct: boolean;
391
+ answerIndex: number | null;
392
+ gained: number;
393
+ score: number;
394
+ rank: number;
395
+ playerCount: number;
396
+ }
397
+ export interface PlayerGameOver {
398
+ standings: PartyPlayer[];
399
+ gameType: PartyGameType;
400
+ genreName: string | null;
401
+ rank: number;
402
+ score: number;
403
+ }
404
+ export interface DroppedMessage {
405
+ reason: string;
406
+ }
407
+ //# sourceMappingURL=protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../src/protocol.ts"],"names":[],"mappings":"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"}