@genex-ai/multiplayer 0.17.6 → 0.17.9

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 (40) hide show
  1. package/PROTOCOL.md +102 -31
  2. package/README.md +35 -14
  3. package/WORLD-GLTF.md +109 -0
  4. package/WORLD-SCENE.md +135 -0
  5. package/dist/authority/fast-udp.d.ts +4 -2
  6. package/dist/authority/fast-udp.js +8 -46
  7. package/dist/authority/fast-webtransport.d.ts +26 -4
  8. package/dist/authority/fast-webtransport.js +12 -115
  9. package/dist/authority/index.d.ts +379 -41
  10. package/dist/authority/index.js +247 -47
  11. package/dist/authority/module.d.ts +2 -1
  12. package/dist/authority/module.js +1 -1
  13. package/dist/bridge-authority.d.ts +3 -2
  14. package/dist/bridge-authority.global.js +10 -9
  15. package/dist/bridge-authority.js +11 -6
  16. package/dist/bridge.global.js +5 -5
  17. package/dist/bridge.js +3 -3
  18. package/dist/chunk-2NGXXQDS.js +1916 -0
  19. package/dist/{chunk-7QVOIHJF.js → chunk-DJ2XYETS.js} +2 -2
  20. package/dist/{chunk-Y6XHXDIK.js → chunk-MQYARUGU.js} +864 -539
  21. package/dist/{chunk-K3SF5VDS.js → chunk-OD6NRSX2.js} +3 -1
  22. package/dist/{chunk-UX3F6YTV.js → chunk-TEHGMFAG.js} +1 -1
  23. package/dist/chunk-TSYEWPVO.js +44 -0
  24. package/dist/chunk-TVTVIMIH.js +675 -0
  25. package/dist/{chunk-ZSWF4VCN.js → chunk-WEMRRIHH.js} +80 -2
  26. package/dist/chunk-YWQ3ALYY.js +69 -0
  27. package/dist/{chunk-5JGRFT2N.js → chunk-ZDGSUR6E.js} +879 -1898
  28. package/dist/{fast-client-CZ41v-oB.d.ts → fast-client--A88q0kk.d.ts} +85 -4
  29. package/dist/index.js +3 -3
  30. package/dist/level-build-CbRqrYJq.d.ts +140 -0
  31. package/dist/{module-DqtFb5wA.d.ts → module-CSpXrzFc.d.ts} +151 -400
  32. package/dist/{physics-predict-49udN3a1.d.ts → physics-predict-C7ZB1gDG.d.ts} +18 -3
  33. package/dist/protocol.d.ts +90 -2
  34. package/dist/protocol.js +17 -1
  35. package/dist/shot-world-D22tqOUT.d.ts +485 -0
  36. package/dist/world-fit/index.d.ts +549 -0
  37. package/dist/world-fit/index.js +4763 -0
  38. package/dist/world-fit/three.d.ts +77 -0
  39. package/dist/world-fit/three.js +140 -0
  40. package/package.json +15 -3
@@ -1,3 +1,10 @@
1
+ import {
2
+ ClaimVerdict,
3
+ ShotWorldCost,
4
+ WorldKey,
5
+ axisToClaim,
6
+ claimToAxis
7
+ } from "../chunk-TSYEWPVO.js";
1
8
  import {
2
9
  AUTHORITY_REFUSALS_PER_REGION,
3
10
  AuthorityBody,
@@ -16,7 +23,9 @@ import {
16
23
  ContactKind,
17
24
  DEFAULT_SEAT_DRAWING,
18
25
  DrawHandoff,
19
- FastFallbackReason,
26
+ FAST_OFFER_WAIT_MS,
27
+ FastNotAsked,
28
+ FastTransport,
20
29
  HEAD_LANDING_SPEED,
21
30
  HeadHold,
22
31
  INPUT_REPEAT_MAX_MS,
@@ -27,7 +36,6 @@ import {
27
36
  ISLAND_MARGIN_METRES,
28
37
  LiftSolidsCache,
29
38
  MOTION_VIEW_TAG,
30
- MotionRecordKind,
31
39
  PHYSICS_SHAPES_MAX,
32
40
  PHYSICS_SHAPE_MAX_CHARS,
33
41
  PHYS_BUDGET_CALM_SHARE,
@@ -45,10 +53,13 @@ import {
45
53
  PhysicsPredictor,
46
54
  PredictSmoothing,
47
55
  PredictStatus,
48
- RECORD_ID_MAX_CHARS,
56
+ REJOIN,
49
57
  RIDE_CHAIN_MAX,
50
58
  RULED_SLEW,
51
59
  RULED_SNAP_TICKS,
60
+ RefusalKind,
61
+ RejoinStop,
62
+ RejoinWay,
52
63
  SEAT_DRAWINGS,
53
64
  SEAT_LIFT_MAX,
54
65
  SEAT_PAIR_EASE,
@@ -57,6 +68,7 @@ import {
57
68
  SHOVE_EASE_DONE,
58
69
  STALL_PREDICT_MS,
59
70
  STEADY_BUCKETS,
71
+ SUCCESSOR_OPEN_MS,
60
72
  SeatContacts,
61
73
  SeatWorld,
62
74
  SlideWay,
@@ -66,8 +78,6 @@ import {
66
78
  UNSTICK_SOLIDS,
67
79
  WIRE_REST_MAX,
68
80
  WIRE_ROW_STRIDE,
69
- blankEntityMotion,
70
- blankSeatEcho,
71
81
  bodyRadiusOf,
72
82
  bodyStateOf,
73
83
  capacityWalk,
@@ -76,6 +86,7 @@ import {
76
86
  carryTick,
77
87
  castWorld,
78
88
  clampedVelocity,
89
+ comesBackAfter,
79
90
  compileContactWorld,
80
91
  connectAuthority,
81
92
  consumedUse,
@@ -89,15 +100,14 @@ import {
89
100
  correctionAt,
90
101
  correctionShare,
91
102
  correctionTauMs,
103
+ createPrivateAuthority,
92
104
  decayedInput,
93
105
  declaredContacts,
94
- decodeRecord,
95
- dequantizeCode,
96
106
  drawBody,
97
- encodeRecord,
98
107
  extrapolateBody,
99
108
  extrapolationSeconds,
100
109
  farApart,
110
+ fastLineAnnouncer,
101
111
  feedWithPayback,
102
112
  forgiveRepeats,
103
113
  frameOf,
@@ -107,7 +117,6 @@ import {
107
117
  headSlab,
108
118
  headSlabs,
109
119
  headStands,
110
- heldInputs,
111
120
  impartSlot,
112
121
  impartTick,
113
122
  inLiftFrame,
@@ -119,7 +128,7 @@ import {
119
128
  inputTickSlack,
120
129
  insideFace,
121
130
  insideWorld,
122
- isFastBind,
131
+ joinPrivateAuthority,
123
132
  liftBodyKey,
124
133
  liftBodyPose,
125
134
  liftBodySpawn,
@@ -136,15 +145,14 @@ import {
136
145
  motorText,
137
146
  nextPredictSetSize,
138
147
  normalizeAuthorityRegions,
139
- openFastClient,
140
148
  parsePhysDesc,
141
149
  physDescText,
142
150
  physicsBudgetMs,
151
+ planSuccessorJoin,
143
152
  posedFor,
144
153
  posedSolids,
145
154
  propSlideNudges,
146
155
  proximityIslands,
147
- quantizeCode,
148
156
  quatMul,
149
157
  quatNormalize,
150
158
  rankAuthorityRegions,
@@ -152,7 +160,9 @@ import {
152
160
  reconcileThrough,
153
161
  reconcilerAck,
154
162
  reconcilerAckHold,
163
+ refusalKind,
155
164
  regionProbePlan,
165
+ rejoinStep,
156
166
  remoteInputWeight,
157
167
  repeatMaxTicks,
158
168
  repeatRunTicks,
@@ -196,19 +206,27 @@ import {
196
206
  throttleSteps,
197
207
  tickSolids,
198
208
  topRuleOf,
209
+ udpLine,
199
210
  unstickBody,
211
+ validSuccessorOf,
200
212
  viewOnLift,
201
213
  wasmSimdSupported,
214
+ webSocketLine,
202
215
  wireFieldsOf,
203
216
  wireRowOfExport,
204
217
  wireRowOfState,
205
218
  writeWireRow,
206
219
  yieldShares
207
- } from "../chunk-Y6XHXDIK.js";
208
- import "../chunk-UX3F6YTV.js";
220
+ } from "../chunk-MQYARUGU.js";
221
+ import "../chunk-TEHGMFAG.js";
222
+ import "../chunk-YWQ3ALYY.js";
209
223
  import {
210
224
  AcceptKind,
225
+ AuthorityJoinMethod,
226
+ AuthorityLifetime,
211
227
  AuthorityLimits,
228
+ AuthorityRoomLimits,
229
+ AuthorityTargetRefusal,
212
230
  BODY_CORRECTION_TAU_MS,
213
231
  BODY_EXTRAPOLATE_BACK_TICKS,
214
232
  BODY_EXTRAPOLATE_MAX_MS,
@@ -226,21 +244,31 @@ import {
226
244
  ContactPush,
227
245
  ContactShapeKind,
228
246
  DEFAULT_TICK_HZ,
229
- EMPTY_WORLD,
230
- EMPTY_WORLD_HASH,
247
+ FAST_ACK_EAGER_GAP_MS,
248
+ FAST_ACK_EAGER_RECORDS,
249
+ FAST_BIND_REV,
250
+ FAST_CHALLENGE_JUMP,
251
+ FAST_FRAME_GAP_MS,
231
252
  FAST_GAP_FILL_MS,
232
253
  FAST_HANDSHAKE_MS,
254
+ FAST_KEEPALIVE_BIND_MS,
255
+ FAST_KEEPALIVE_MS,
233
256
  FAST_KEY_BYTES,
234
257
  FAST_MAX_ACTIONS,
235
258
  FAST_MAX_DATAGRAM_BYTES,
236
259
  FAST_MAX_FRAGMENTS,
237
260
  FAST_MAX_RECORD_BYTES,
261
+ FAST_OPEN_ROUND_TRIPS,
238
262
  FAST_REASSEMBLY_SLOTS,
263
+ FAST_RETRY_BASE_MS,
264
+ FAST_RETRY_MAX_MS,
265
+ FAST_RETURN_PROOF,
266
+ FAST_RETURN_STABLE_MS,
239
267
  FAST_SEQ_AHEAD_MS,
240
268
  FAST_SNAPSHOT_HISTORY,
241
269
  FAST_STALL_FALLBACK_MS,
242
270
  FAST_VERSION,
243
- FIRSTPERSON_DEFAULTS,
271
+ FastFallbackReason,
244
272
  FastFault,
245
273
  FastKind,
246
274
  FastMessage,
@@ -252,15 +280,18 @@ import {
252
280
  INPUT_REDUNDANCY_MAX,
253
281
  INPUT_REDUNDANCY_MIN,
254
282
  INPUT_REDUNDANCY_MS,
283
+ INPUT_SETTLE_MS,
255
284
  InputConfigError,
256
285
  InputRepeat,
257
286
  InputUse,
287
+ LIFETIME_DEFAULT,
258
288
  LIFTS_MAX,
259
289
  LIFT_ID_MAX,
260
290
  LIFT_POINTS_MAX,
261
291
  LIFT_SPIN_MIN_PERIOD,
262
292
  LIFT_TICKS_MAX,
263
293
  LIFT_VALUE_MAX,
294
+ LifetimeConfigError,
264
295
  LiftEase,
265
296
  LiftImpart,
266
297
  LiftPathMode,
@@ -269,9 +300,8 @@ import {
269
300
  MAX_PROJECTILE_G,
270
301
  MAX_PROJECTILE_TICK,
271
302
  MAX_TICK_HZ,
272
- MoveState,
303
+ MotionRecordKind,
273
304
  NO_LIFTS,
274
- NO_POSED,
275
305
  PHYSICS_BODY_FIELDS,
276
306
  PHYSICS_CEILING_FACTOR,
277
307
  PHYSICS_CONTESTED_METRES,
@@ -287,112 +317,225 @@ import {
287
317
  PHYSICS_OVERLAP_MAX_KEYS,
288
318
  PHYSICS_PATCH_HZ,
289
319
  PHYSICS_PREDICT_MAX_ANGULAR,
320
+ PHYSICS_PREDICT_MAX_BOXES,
290
321
  PHYSICS_PREDICT_MAX_LINEAR,
322
+ PHYSICS_PREDICT_MAX_RAMPS,
291
323
  PHYSICS_PREDICT_MIN_ITERATIONS,
292
324
  PHYSICS_PRESET_LENGTH_UNITS,
293
325
  PHYSICS_REAL_LIMITS,
294
326
  PHYSICS_ROTATING_BODIES,
295
327
  PHYSICS_SCALED_LIMITS,
328
+ PHYSICS_STATIC_PIECE_BYTES,
296
329
  PHYSICS_STATIC_PREFIX,
297
330
  PHYSICS_SUBSTEPS,
298
- POSED_MAX,
299
- PRESETS,
300
- PRESET_MAX_DT_S,
301
331
  PhysEvKind,
302
332
  PhysicsConfigRange,
303
333
  PhysicsPredictRange,
304
- Preset,
334
+ RECORD_ID_MAX_CHARS,
305
335
  SHOOTER_CENTER,
306
336
  TICK_RATES,
307
- TOPDOWN_DEFAULTS,
308
337
  TickOutFault,
309
338
  TopPolicy,
310
- VEHICLE_DEFAULTS,
311
- WorldError,
312
- WorldLimits,
313
339
  acceptUplink,
314
340
  applyBody,
341
+ blankEntityMotion,
342
+ blankSeatEcho,
315
343
  checkResolvedPhysics,
316
344
  decodeFragment,
345
+ decodeRecord,
317
346
  decodeUplink,
318
- definitionOf,
319
347
  deltaBase,
320
348
  dequantizeBodyValue,
349
+ dequantizeCode,
321
350
  diffSnapshot,
322
351
  effectivePatchHz,
323
352
  emptyClientRx,
353
+ encodeRecord,
324
354
  encodeSnapshot,
325
355
  encodeUplink,
326
- firstpersonWorld,
356
+ fastRetryDelayMs,
327
357
  fromHex,
328
358
  gapFillMax,
329
- hullOps,
359
+ heldInputs,
330
360
  inputRedundancyTicks,
361
+ isFastBind,
331
362
  isLiftId,
332
363
  isPhysicsKey,
333
364
  isPhysicsKind,
334
365
  isPhysicsPatchHz,
335
- isPresetName,
336
366
  isPress,
337
367
  isProjectile,
338
368
  keyframeTicks,
369
+ matchKeyOf,
370
+ nextCodeRegion,
371
+ openFastClient,
339
372
  parseBody,
340
- pcos,
341
373
  physicsCeilingValid,
342
374
  physicsLimitsAt,
375
+ physicsLimitsForWorld,
343
376
  physicsWorldDesc,
344
- posedWorld,
377
+ physicsWorldPredicts,
378
+ planAuthorityJoin,
345
379
  presetInputRepeat,
346
- presetParamsValid,
347
380
  projectileAt,
348
- psin,
349
- psincos,
350
381
  quantizeBodyValue,
382
+ quantizeCode,
351
383
  receiveFragment,
352
384
  renderStamp,
353
385
  resolveContactConfig,
354
- resolveFirstpersonParams,
355
386
  resolveInputConfig,
387
+ resolveLifetime,
356
388
  resolveLifts,
357
389
  resolvePhysicsConfig,
358
- resolvePresetParams,
359
- resolveTopdownParams,
360
- resolveVehicleParams,
361
390
  sanitizeInput,
391
+ selectMatchWorld,
362
392
  seqAheadMax,
363
393
  serverTick,
364
394
  solverIterationsOf,
365
- stepFirstperson,
366
- stepPreset,
367
- stepTopdown,
368
- stepVehicle,
369
395
  tickInstant,
370
396
  toHex,
371
397
  uplinkFor,
372
398
  uplinkMaxBytes,
399
+ validMatchKey,
400
+ validRoomCode,
373
401
  validateInitOut,
374
402
  validateTickOut
375
- } from "../chunk-5JGRFT2N.js";
403
+ } from "../chunk-ZDGSUR6E.js";
376
404
  import {
377
405
  LeaveReason,
378
406
  MODULE_CONTRACT,
379
407
  RemotePredict,
380
408
  defineRoom
381
- } from "../chunk-K3SF5VDS.js";
382
- import "../chunk-ZSWF4VCN.js";
409
+ } from "../chunk-OD6NRSX2.js";
410
+ import {
411
+ EMPTY_WORLD,
412
+ EMPTY_WORLD_HASH,
413
+ FIRSTPERSON_DEFAULTS,
414
+ MoveState,
415
+ NO_POSED,
416
+ POSED_MAX,
417
+ PRESETS,
418
+ PRESET_MAX_DT_S,
419
+ Preset,
420
+ TOPDOWN_DEFAULTS,
421
+ TREE_KEY_RADIX,
422
+ VEHICLE_DEFAULTS,
423
+ WorldError,
424
+ WorldLimits,
425
+ definitionOf,
426
+ firstpersonWorld,
427
+ hullOps,
428
+ isPresetName,
429
+ pcos,
430
+ posedWorld,
431
+ presetParamsValid,
432
+ psin,
433
+ psincos,
434
+ resolveFirstpersonParams,
435
+ resolvePresetParams,
436
+ resolveTopdownParams,
437
+ resolveVehicleParams,
438
+ stepFirstperson,
439
+ stepPreset,
440
+ stepTopdown,
441
+ stepVehicle,
442
+ withWorldCostMeter,
443
+ worldTreeOrder
444
+ } from "../chunk-2NGXXQDS.js";
445
+ import {
446
+ AUTHORITY_ROOM_ENDED_TEXT,
447
+ AuthorityCloseCode,
448
+ authorityCloseCodeOf
449
+ } from "../chunk-WEMRRIHH.js";
450
+
451
+ // src/authority/world-cost.ts
452
+ var WorldCost = {
453
+ /** What a step may average, in weighted operations: below the least count of any world that ended a room, ten seats on a c2-standard-4
454
+ * (micro 8,192 at 5,318, one run of two: integration cw/vm1). A warning to a creator, and a coarse one: bodies are walked from seeded
455
+ * solids, so a world that holds its cost where its module really spawns seats reads low (a cell 2.5 times, dense tiles 3), and one built to
456
+ * dodge the walk reads nothing. The sandbox's mean budget and CPU limits are what protect a host. */
457
+ MAX_OPS_PER_STEP: 5e3,
458
+ /** What each kind of operation costs against a tree entry, c2-standard-4, offline: an entry 4.9 ns, an exact test 36, a wedge's sweep test
459
+ * 382. A slab's sweep test has no weight of its own: it comes with exact tests in every world measured, three to one. */
460
+ TEST_WEIGHT: 7,
461
+ WEDGE_WEIGHT: 78,
462
+ /** The seats {@link WorldCost.MAX_OPS_PER_STEP} is sized for. */
463
+ SEATS: 10,
464
+ /** Bodies walking, and the ticks each walks. */
465
+ WALKERS: 16,
466
+ TICKS: 120,
467
+ SEED: 2026,
468
+ /** The step's dt: 30 Hz, the rate most rooms run. */
469
+ DT: 1 / 30,
470
+ /** Where a body starts above the top of the solid it is dropped on. */
471
+ DROP: 1,
472
+ /** A body's chance a tick to turn, jump and duck. */
473
+ TURN_CHANCE: 0.03,
474
+ JUMP_CHANCE: 0.04,
475
+ DUCK_CHANCE: 0.05
476
+ };
477
+ var NO_CAPS = { MAX_BOXES: Number.MAX_SAFE_INTEGER, MAX_RAMPS: Number.MAX_SAFE_INTEGER };
478
+ var DIAGONAL = Math.SQRT1_2;
479
+ var HEADINGS = [[1, 0], [DIAGONAL, DIAGONAL], [0, 1], [-DIAGONAL, DIAGONAL], [-1, 0], [-DIAGONAL, -DIAGONAL], [0, -1], [DIAGONAL, -DIAGONAL]];
480
+ var JUMP_BUTTON = 1;
481
+ var DUCK_BUTTON = 2;
482
+ function lcg(seed) {
483
+ let s = seed >>> 0;
484
+ return () => {
485
+ s = Math.imul(s, 1664525) + 1013904223 >>> 0;
486
+ return s / 2 ** 32;
487
+ };
488
+ }
489
+ var boundsOf = (world) => [...world.boxes, ...world.ramps];
490
+ function worldCost(spec, preset = "firstperson", params) {
491
+ const world = firstpersonWorld(spec, { caps: NO_CAPS });
492
+ const definition = definitionOf(preset);
493
+ if (definition === void 0 || !definition.world) throw new RangeError(`${preset} steps through no world`);
494
+ const resolved = resolvePresetParams(preset, params);
495
+ const solids = boundsOf(world);
496
+ const meter = { nodes: 0, tests: 0, sweeps: 0, wedges: 0 };
497
+ const random = lcg(WorldCost.SEED);
498
+ const bodies = [];
499
+ const headings = [];
500
+ for (let k = 0; k < WorldCost.WALKERS; k++) {
501
+ const s = solids[Math.floor(random() * solids.length)];
502
+ bodies.push(s === void 0 ? { x: 0, y: 0, z: 0 } : { x: (s[0] + s[3]) / 2, y: (s[1] + s[4]) / 2, z: s[5] + WorldCost.DROP });
503
+ headings.push(Math.floor(random() * HEADINGS.length));
504
+ }
505
+ let steps = 0;
506
+ withWorldCostMeter(meter, () => {
507
+ for (let t = 0; t < WorldCost.TICKS; t++) {
508
+ for (let b = 0; b < WorldCost.WALKERS; b++) {
509
+ if (random() < WorldCost.TURN_CHANCE) headings[b] = Math.floor(random() * HEADINGS.length);
510
+ const buttons = (random() < WorldCost.JUMP_CHANCE ? JUMP_BUTTON : 0) | (random() < WorldCost.DUCK_CHANCE ? DUCK_BUTTON : 0);
511
+ const [moveX, moveY] = HEADINGS[headings[b]];
512
+ bodies[b] = definition.step(bodies[b], sanitizeInput({ moveX, moveY, yaw: 0, pitch: 0, buttons }), WorldCost.DT, resolved, world);
513
+ steps += 1;
514
+ }
515
+ }
516
+ });
517
+ const opsPerStep = Math.floor((meter.nodes + WorldCost.TEST_WEIGHT * meter.tests + WorldCost.WEDGE_WEIGHT * meter.wedges) / steps);
518
+ return { ...meter, solids: solids.length, steps, opsPerStep, accepted: opsPerStep <= WorldCost.MAX_OPS_PER_STEP };
519
+ }
383
520
  export {
384
521
  AUTHORITY_REFUSALS_PER_REGION,
522
+ AUTHORITY_ROOM_ENDED_TEXT,
385
523
  AcceptKind,
386
524
  AuthorityBody,
525
+ AuthorityCloseCode,
387
526
  AuthorityEntity,
388
527
  AuthorityInput,
528
+ AuthorityJoinMethod,
389
529
  AuthorityJoint,
530
+ AuthorityLifetime,
390
531
  AuthorityLimits,
391
532
  AuthorityPhysicsEntity,
392
533
  AuthorityPhysicsRoomState,
393
534
  AuthorityPlayer,
535
+ AuthorityRoomLimits,
394
536
  AuthorityRoomState,
395
537
  AuthorityShape,
538
+ AuthorityTargetRefusal,
396
539
  BODY_CORRECTION_TAU_MS,
397
540
  BODY_EXTRAPOLATE_BACK_TICKS,
398
541
  BODY_EXTRAPOLATE_MAX_MS,
@@ -407,6 +550,7 @@ export {
407
550
  CONTACT_TAG_MAX,
408
551
  CONTACT_VALUE_MAX,
409
552
  CONVEYOR_RATE,
553
+ ClaimVerdict,
410
554
  ContactConfigError,
411
555
  ContactDrawing,
412
556
  ContactEvent,
@@ -419,14 +563,27 @@ export {
419
563
  DrawHandoff,
420
564
  EMPTY_WORLD,
421
565
  EMPTY_WORLD_HASH,
566
+ FAST_ACK_EAGER_GAP_MS,
567
+ FAST_ACK_EAGER_RECORDS,
568
+ FAST_BIND_REV,
569
+ FAST_CHALLENGE_JUMP,
570
+ FAST_FRAME_GAP_MS,
422
571
  FAST_GAP_FILL_MS,
423
572
  FAST_HANDSHAKE_MS,
573
+ FAST_KEEPALIVE_BIND_MS,
574
+ FAST_KEEPALIVE_MS,
424
575
  FAST_KEY_BYTES,
425
576
  FAST_MAX_ACTIONS,
426
577
  FAST_MAX_DATAGRAM_BYTES,
427
578
  FAST_MAX_FRAGMENTS,
428
579
  FAST_MAX_RECORD_BYTES,
580
+ FAST_OFFER_WAIT_MS,
581
+ FAST_OPEN_ROUND_TRIPS,
429
582
  FAST_REASSEMBLY_SLOTS,
583
+ FAST_RETRY_BASE_MS,
584
+ FAST_RETRY_MAX_MS,
585
+ FAST_RETURN_PROOF,
586
+ FAST_RETURN_STABLE_MS,
430
587
  FAST_SEQ_AHEAD_MS,
431
588
  FAST_SNAPSHOT_HISTORY,
432
589
  FAST_STALL_FALLBACK_MS,
@@ -436,6 +593,8 @@ export {
436
593
  FastFault,
437
594
  FastKind,
438
595
  FastMessage,
596
+ FastNotAsked,
597
+ FastTransport,
439
598
  GuestGlobal,
440
599
  HEAD_LANDING_SPEED,
441
600
  HOST_BODY_FIELDS,
@@ -449,12 +608,14 @@ export {
449
608
  INPUT_REPEAT_MAX_MS,
450
609
  INPUT_REPEAT_RUN_MS,
451
610
  INPUT_REPEAT_STEADY,
611
+ INPUT_SETTLE_MS,
452
612
  INPUT_TICK_MOD,
453
613
  INPUT_TICK_SLACK_S,
454
614
  ISLAND_MARGIN_METRES,
455
615
  InputConfigError,
456
616
  InputRepeat,
457
617
  InputUse,
618
+ LIFETIME_DEFAULT,
458
619
  LIFTS_MAX,
459
620
  LIFT_ID_MAX,
460
621
  LIFT_POINTS_MAX,
@@ -462,6 +623,7 @@ export {
462
623
  LIFT_TICKS_MAX,
463
624
  LIFT_VALUE_MAX,
464
625
  LeaveReason,
626
+ LifetimeConfigError,
465
627
  LiftEase,
466
628
  LiftImpart,
467
629
  LiftPathMode,
@@ -492,7 +654,9 @@ export {
492
654
  PHYSICS_OVERLAP_MAX_KEYS,
493
655
  PHYSICS_PATCH_HZ,
494
656
  PHYSICS_PREDICT_MAX_ANGULAR,
657
+ PHYSICS_PREDICT_MAX_BOXES,
495
658
  PHYSICS_PREDICT_MAX_LINEAR,
659
+ PHYSICS_PREDICT_MAX_RAMPS,
496
660
  PHYSICS_PREDICT_MIN_ITERATIONS,
497
661
  PHYSICS_PRESET_LENGTH_UNITS,
498
662
  PHYSICS_REAL_LIMITS,
@@ -500,6 +664,7 @@ export {
500
664
  PHYSICS_SCALED_LIMITS,
501
665
  PHYSICS_SHAPES_MAX,
502
666
  PHYSICS_SHAPE_MAX_CHARS,
667
+ PHYSICS_STATIC_PIECE_BYTES,
503
668
  PHYSICS_STATIC_PREFIX,
504
669
  PHYSICS_SUBSTEPS,
505
670
  PHYS_BUDGET_CALM_SHARE,
@@ -525,9 +690,13 @@ export {
525
690
  PredictStatus,
526
691
  Preset,
527
692
  RECORD_ID_MAX_CHARS,
693
+ REJOIN,
528
694
  RIDE_CHAIN_MAX,
529
695
  RULED_SLEW,
530
696
  RULED_SNAP_TICKS,
697
+ RefusalKind,
698
+ RejoinStop,
699
+ RejoinWay,
531
700
  RemotePredict,
532
701
  SEAT_DRAWINGS,
533
702
  SEAT_LIFT_MAX,
@@ -538,24 +707,31 @@ export {
538
707
  SHOVE_EASE_DONE,
539
708
  STALL_PREDICT_MS,
540
709
  STEADY_BUCKETS,
710
+ SUCCESSOR_OPEN_MS,
541
711
  SeatContacts,
542
712
  SeatWorld,
713
+ ShotWorldCost,
543
714
  SlideWay,
544
715
  THROTTLE_DILATION,
545
716
  THROTTLE_LOW_INPUTS,
546
717
  THROTTLE_SEAT_LEAD,
547
718
  TICK_RATES,
548
719
  TOPDOWN_DEFAULTS,
720
+ TREE_KEY_RADIX,
549
721
  TickOutFault,
550
722
  TopPolicy,
551
723
  UNSTICK_SOLIDS,
552
724
  VEHICLE_DEFAULTS,
553
725
  WIRE_REST_MAX,
554
726
  WIRE_ROW_STRIDE,
727
+ WorldCost,
555
728
  WorldError,
729
+ WorldKey,
556
730
  WorldLimits,
557
731
  acceptUplink,
558
732
  applyBody,
733
+ authorityCloseCodeOf,
734
+ axisToClaim,
559
735
  blankEntityMotion,
560
736
  blankSeatEcho,
561
737
  bodyRadiusOf,
@@ -566,7 +742,9 @@ export {
566
742
  carryTick,
567
743
  castWorld,
568
744
  checkResolvedPhysics,
745
+ claimToAxis,
569
746
  clampedVelocity,
747
+ comesBackAfter,
570
748
  compileContactWorld,
571
749
  connectAuthority,
572
750
  consumedUse,
@@ -580,6 +758,7 @@ export {
580
758
  correctionAt,
581
759
  correctionShare,
582
760
  correctionTauMs,
761
+ createPrivateAuthority,
583
762
  decayedInput,
584
763
  declaredContacts,
585
764
  decodeFragment,
@@ -600,6 +779,8 @@ export {
600
779
  extrapolateBody,
601
780
  extrapolationSeconds,
602
781
  farApart,
782
+ fastLineAnnouncer,
783
+ fastRetryDelayMs,
603
784
  feedWithPayback,
604
785
  firstpersonWorld,
605
786
  forgiveRepeats,
@@ -634,6 +815,7 @@ export {
634
815
  isPresetName,
635
816
  isPress,
636
817
  isProjectile,
818
+ joinPrivateAuthority,
637
819
  keyframeTicks,
638
820
  liftBodyKey,
639
821
  liftBodyPose,
@@ -647,8 +829,10 @@ export {
647
829
  liftStartsOf,
648
830
  liftTopAt,
649
831
  liftUnder,
832
+ matchKeyOf,
650
833
  mayStand,
651
834
  motorText,
835
+ nextCodeRegion,
652
836
  nextPredictSetSize,
653
837
  normalizeAuthorityRegions,
654
838
  openFastClient,
@@ -659,7 +843,11 @@ export {
659
843
  physicsBudgetMs,
660
844
  physicsCeilingValid,
661
845
  physicsLimitsAt,
846
+ physicsLimitsForWorld,
662
847
  physicsWorldDesc,
848
+ physicsWorldPredicts,
849
+ planAuthorityJoin,
850
+ planSuccessorJoin,
663
851
  posedFor,
664
852
  posedSolids,
665
853
  posedWorld,
@@ -680,7 +868,9 @@ export {
680
868
  reconcileThrough,
681
869
  reconcilerAck,
682
870
  reconcilerAckHold,
871
+ refusalKind,
683
872
  regionProbePlan,
873
+ rejoinStep,
684
874
  remoteInputWeight,
685
875
  renderStamp,
686
876
  repeatMaxTicks,
@@ -690,6 +880,7 @@ export {
690
880
  resolveContactConfig,
691
881
  resolveFirstpersonParams,
692
882
  resolveInputConfig,
883
+ resolveLifetime,
693
884
  resolveLifts,
694
885
  resolvePhysicsConfig,
695
886
  resolvePresetParams,
@@ -717,6 +908,7 @@ export {
717
908
  seatTouchShare,
718
909
  seatUnderProp,
719
910
  selectAuthorityRegions,
911
+ selectMatchWorld,
720
912
  selfTestPredictCore,
721
913
  separateAround,
722
914
  separateDrawn,
@@ -743,16 +935,24 @@ export {
743
935
  tickSolids,
744
936
  toHex,
745
937
  topRuleOf,
938
+ udpLine,
746
939
  unstickBody,
747
940
  uplinkFor,
748
941
  uplinkMaxBytes,
942
+ validMatchKey,
943
+ validRoomCode,
944
+ validSuccessorOf,
749
945
  validateInitOut,
750
946
  validateTickOut,
751
947
  viewOnLift,
752
948
  wasmSimdSupported,
949
+ webSocketLine,
753
950
  wireFieldsOf,
754
951
  wireRowOfExport,
755
952
  wireRowOfState,
953
+ withWorldCostMeter,
954
+ worldCost,
955
+ worldTreeOrder,
756
956
  writeWireRow,
757
957
  yieldShares
758
958
  };
@@ -1 +1,2 @@
1
- export { D as EntityApi, E as EntityData, G as EntityInit, U as GenexRoomModule, Y as InitContext, I as InputData, J as Json, L as LeaveReason, ae as LiftsApi, ag as MODULE_CONTRACT, ah as ModuleConfig, ap as PhysicsAnswer, aq as PhysicsApi, ar as PhysicsBodyDesc, as as PhysicsBodyState, at as PhysicsBodyType, au as PhysicsColliderDesc, av as PhysicsCommandResult, aw as PhysicsCommands, a as PhysicsErrorCode, ax as PhysicsEvent, ay as PhysicsGroups, az as PhysicsHit, aA as PhysicsJointDesc, aB as PhysicsLimits, aC as PhysicsMotor, aD as PhysicsOverlap, aE as PhysicsPose, aF as PhysicsQueryFilter, aG as PhysicsRefusal, aH as PhysicsRequest, aI as PhysicsSetPoseOptions, aJ as PhysicsShape, P as PlayerInfo, aR as PresetSpec, aS as ProjectileApi, aT as ProjectileField, aU as ProjectileFlight, aV as ProjectileHit, aW as ProjectileInit, aX as Quat, i as RemotePredict, R as ResolvedModuleConfig, aY as ResolvedPhysics, aZ as RewindApi, a_ as RoomContext, T as TickHz, b7 as Vec3, bg as defineRoom } from '../module-DqtFb5wA.js';
1
+ export { w as EntityApi, E as EntityData, x as EntityInit, G as GenexRoomModule, D as InitContext, I as InputData, J as Json, L as LeaveReason, a7 as LiftsApi, a9 as MODULE_CONTRACT, aa as ModuleConfig, ad as PhysicsAnswer, ae as PhysicsApi, af as PhysicsBodyDesc, ag as PhysicsBodyState, ah as PhysicsBodyType, ai as PhysicsColliderDesc, aj as PhysicsCommandResult, ak as PhysicsCommands, a as PhysicsErrorCode, al as PhysicsEvent, am as PhysicsGroups, an as PhysicsHit, ao as PhysicsJointDesc, ap as PhysicsLimits, aq as PhysicsMotor, ar as PhysicsOverlap, as as PhysicsPose, at as PhysicsQueryFilter, au as PhysicsRefusal, av as PhysicsRequest, aw as PhysicsSetPoseOptions, ax as PhysicsShape, P as PlayerInfo, ay as PresetSpec, az as ProjectileApi, aA as ProjectileField, aB as ProjectileFlight, aC as ProjectileHit, aD as ProjectileInit, aE as Quat, f as RemotePredict, R as ResolvedModuleConfig, aF as ResolvedPhysics, aG as RewindApi, aH as RewoundPose, aI as RoomContext, aK as ShotWorldSpec, T as TickHz, aN as Vec3, aO as WorldApi, aP as WorldClaim, aQ as WorldClaimOptions, aR as WorldRayHit, aS as WorldRayOptions, aT as defineRoom } from '../module-CSpXrzFc.js';
2
+ import '../shot-world-D22tqOUT.js';
@@ -3,7 +3,7 @@ import {
3
3
  MODULE_CONTRACT,
4
4
  RemotePredict,
5
5
  defineRoom
6
- } from "../chunk-K3SF5VDS.js";
6
+ } from "../chunk-OD6NRSX2.js";
7
7
  export {
8
8
  LeaveReason,
9
9
  MODULE_CONTRACT,