quake2ts 0.0.561 → 0.0.563
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.
- package/package.json +1 -1
- package/packages/client/dist/browser/index.global.js +15 -15
- package/packages/client/dist/browser/index.global.js.map +1 -1
- package/packages/client/dist/cjs/index.cjs +273 -1
- package/packages/client/dist/cjs/index.cjs.map +1 -1
- package/packages/client/dist/esm/index.js +273 -1
- package/packages/client/dist/esm/index.js.map +1 -1
- package/packages/client/dist/tsconfig.tsbuildinfo +1 -1
- package/packages/client/dist/types/net/connection.d.ts +2 -0
- package/packages/client/dist/types/net/connection.d.ts.map +1 -1
- package/packages/server/dist/client.d.ts +51 -0
- package/packages/server/dist/client.js +100 -0
- package/packages/server/dist/dedicated.d.ts +69 -0
- package/packages/server/dist/dedicated.js +1013 -0
- package/packages/server/dist/index.cjs +27 -2
- package/packages/server/dist/index.d.ts +7 -161
- package/packages/server/dist/index.js +26 -2
- package/packages/server/dist/net/nodeWsDriver.d.ts +16 -0
- package/packages/server/dist/net/nodeWsDriver.js +122 -0
- package/packages/server/dist/protocol/player.d.ts +23 -0
- package/packages/server/dist/protocol/player.js +137 -0
- package/packages/server/dist/protocol/write.d.ts +7 -0
- package/packages/server/dist/protocol/write.js +167 -0
- package/packages/server/dist/protocol.d.ts +17 -0
- package/packages/server/dist/protocol.js +71 -0
- package/packages/server/dist/server.d.ts +50 -0
- package/packages/server/dist/server.js +12 -0
- package/packages/server/dist/server.test.d.ts +1 -0
- package/packages/server/dist/server.test.js +69 -0
- package/packages/server/dist/transport.d.ts +7 -0
- package/packages/server/dist/transport.js +1 -0
- package/packages/server/dist/transports/websocket.d.ts +11 -0
- package/packages/server/dist/transports/websocket.js +38 -0
- package/packages/test-utils/dist/index.cjs +1610 -1188
- package/packages/test-utils/dist/index.cjs.map +1 -1
- package/packages/test-utils/dist/index.d.cts +326 -132
- package/packages/test-utils/dist/index.d.ts +326 -132
- package/packages/test-utils/dist/index.js +1596 -1189
- package/packages/test-utils/dist/index.js.map +1 -1
- package/packages/server/dist/index.d.cts +0 -161
|
@@ -11482,6 +11482,271 @@ var RenderFx = /* @__PURE__ */ ((RenderFx22) => {
|
|
|
11482
11482
|
RenderFx22[RenderFx22["Flashlight"] = 2097152] = "Flashlight";
|
|
11483
11483
|
return RenderFx22;
|
|
11484
11484
|
})(RenderFx || {});
|
|
11485
|
+
var crc_table = [
|
|
11486
|
+
0,
|
|
11487
|
+
145,
|
|
11488
|
+
227,
|
|
11489
|
+
114,
|
|
11490
|
+
7,
|
|
11491
|
+
150,
|
|
11492
|
+
228,
|
|
11493
|
+
117,
|
|
11494
|
+
14,
|
|
11495
|
+
159,
|
|
11496
|
+
237,
|
|
11497
|
+
124,
|
|
11498
|
+
9,
|
|
11499
|
+
152,
|
|
11500
|
+
234,
|
|
11501
|
+
123,
|
|
11502
|
+
28,
|
|
11503
|
+
141,
|
|
11504
|
+
255,
|
|
11505
|
+
110,
|
|
11506
|
+
27,
|
|
11507
|
+
138,
|
|
11508
|
+
248,
|
|
11509
|
+
105,
|
|
11510
|
+
18,
|
|
11511
|
+
131,
|
|
11512
|
+
241,
|
|
11513
|
+
96,
|
|
11514
|
+
21,
|
|
11515
|
+
132,
|
|
11516
|
+
246,
|
|
11517
|
+
103,
|
|
11518
|
+
56,
|
|
11519
|
+
169,
|
|
11520
|
+
219,
|
|
11521
|
+
74,
|
|
11522
|
+
63,
|
|
11523
|
+
174,
|
|
11524
|
+
220,
|
|
11525
|
+
77,
|
|
11526
|
+
54,
|
|
11527
|
+
167,
|
|
11528
|
+
213,
|
|
11529
|
+
68,
|
|
11530
|
+
49,
|
|
11531
|
+
160,
|
|
11532
|
+
210,
|
|
11533
|
+
67,
|
|
11534
|
+
36,
|
|
11535
|
+
181,
|
|
11536
|
+
199,
|
|
11537
|
+
86,
|
|
11538
|
+
35,
|
|
11539
|
+
178,
|
|
11540
|
+
192,
|
|
11541
|
+
81,
|
|
11542
|
+
42,
|
|
11543
|
+
187,
|
|
11544
|
+
201,
|
|
11545
|
+
88,
|
|
11546
|
+
45,
|
|
11547
|
+
188,
|
|
11548
|
+
206,
|
|
11549
|
+
95,
|
|
11550
|
+
112,
|
|
11551
|
+
225,
|
|
11552
|
+
147,
|
|
11553
|
+
2,
|
|
11554
|
+
119,
|
|
11555
|
+
230,
|
|
11556
|
+
148,
|
|
11557
|
+
5,
|
|
11558
|
+
126,
|
|
11559
|
+
239,
|
|
11560
|
+
157,
|
|
11561
|
+
12,
|
|
11562
|
+
121,
|
|
11563
|
+
232,
|
|
11564
|
+
154,
|
|
11565
|
+
11,
|
|
11566
|
+
108,
|
|
11567
|
+
253,
|
|
11568
|
+
143,
|
|
11569
|
+
30,
|
|
11570
|
+
107,
|
|
11571
|
+
250,
|
|
11572
|
+
136,
|
|
11573
|
+
25,
|
|
11574
|
+
98,
|
|
11575
|
+
243,
|
|
11576
|
+
129,
|
|
11577
|
+
16,
|
|
11578
|
+
101,
|
|
11579
|
+
244,
|
|
11580
|
+
134,
|
|
11581
|
+
23,
|
|
11582
|
+
72,
|
|
11583
|
+
217,
|
|
11584
|
+
171,
|
|
11585
|
+
58,
|
|
11586
|
+
79,
|
|
11587
|
+
222,
|
|
11588
|
+
172,
|
|
11589
|
+
61,
|
|
11590
|
+
70,
|
|
11591
|
+
215,
|
|
11592
|
+
165,
|
|
11593
|
+
52,
|
|
11594
|
+
65,
|
|
11595
|
+
208,
|
|
11596
|
+
162,
|
|
11597
|
+
51,
|
|
11598
|
+
84,
|
|
11599
|
+
197,
|
|
11600
|
+
183,
|
|
11601
|
+
38,
|
|
11602
|
+
83,
|
|
11603
|
+
194,
|
|
11604
|
+
176,
|
|
11605
|
+
33,
|
|
11606
|
+
90,
|
|
11607
|
+
203,
|
|
11608
|
+
185,
|
|
11609
|
+
40,
|
|
11610
|
+
93,
|
|
11611
|
+
204,
|
|
11612
|
+
190,
|
|
11613
|
+
47,
|
|
11614
|
+
224,
|
|
11615
|
+
113,
|
|
11616
|
+
3,
|
|
11617
|
+
146,
|
|
11618
|
+
231,
|
|
11619
|
+
118,
|
|
11620
|
+
4,
|
|
11621
|
+
149,
|
|
11622
|
+
238,
|
|
11623
|
+
127,
|
|
11624
|
+
13,
|
|
11625
|
+
156,
|
|
11626
|
+
233,
|
|
11627
|
+
120,
|
|
11628
|
+
10,
|
|
11629
|
+
155,
|
|
11630
|
+
252,
|
|
11631
|
+
109,
|
|
11632
|
+
31,
|
|
11633
|
+
142,
|
|
11634
|
+
251,
|
|
11635
|
+
106,
|
|
11636
|
+
24,
|
|
11637
|
+
137,
|
|
11638
|
+
242,
|
|
11639
|
+
99,
|
|
11640
|
+
17,
|
|
11641
|
+
128,
|
|
11642
|
+
245,
|
|
11643
|
+
100,
|
|
11644
|
+
22,
|
|
11645
|
+
135,
|
|
11646
|
+
216,
|
|
11647
|
+
73,
|
|
11648
|
+
59,
|
|
11649
|
+
170,
|
|
11650
|
+
223,
|
|
11651
|
+
78,
|
|
11652
|
+
60,
|
|
11653
|
+
173,
|
|
11654
|
+
214,
|
|
11655
|
+
71,
|
|
11656
|
+
53,
|
|
11657
|
+
164,
|
|
11658
|
+
209,
|
|
11659
|
+
64,
|
|
11660
|
+
50,
|
|
11661
|
+
163,
|
|
11662
|
+
196,
|
|
11663
|
+
85,
|
|
11664
|
+
39,
|
|
11665
|
+
182,
|
|
11666
|
+
195,
|
|
11667
|
+
82,
|
|
11668
|
+
32,
|
|
11669
|
+
177,
|
|
11670
|
+
202,
|
|
11671
|
+
91,
|
|
11672
|
+
41,
|
|
11673
|
+
184,
|
|
11674
|
+
205,
|
|
11675
|
+
92,
|
|
11676
|
+
46,
|
|
11677
|
+
191,
|
|
11678
|
+
144,
|
|
11679
|
+
1,
|
|
11680
|
+
115,
|
|
11681
|
+
226,
|
|
11682
|
+
151,
|
|
11683
|
+
6,
|
|
11684
|
+
116,
|
|
11685
|
+
229,
|
|
11686
|
+
158,
|
|
11687
|
+
15,
|
|
11688
|
+
125,
|
|
11689
|
+
236,
|
|
11690
|
+
153,
|
|
11691
|
+
8,
|
|
11692
|
+
122,
|
|
11693
|
+
235,
|
|
11694
|
+
140,
|
|
11695
|
+
29,
|
|
11696
|
+
111,
|
|
11697
|
+
254,
|
|
11698
|
+
139,
|
|
11699
|
+
26,
|
|
11700
|
+
104,
|
|
11701
|
+
249,
|
|
11702
|
+
130,
|
|
11703
|
+
19,
|
|
11704
|
+
97,
|
|
11705
|
+
240,
|
|
11706
|
+
133,
|
|
11707
|
+
20,
|
|
11708
|
+
102,
|
|
11709
|
+
247,
|
|
11710
|
+
168,
|
|
11711
|
+
57,
|
|
11712
|
+
75,
|
|
11713
|
+
218,
|
|
11714
|
+
175,
|
|
11715
|
+
62,
|
|
11716
|
+
76,
|
|
11717
|
+
221,
|
|
11718
|
+
166,
|
|
11719
|
+
55,
|
|
11720
|
+
69,
|
|
11721
|
+
212,
|
|
11722
|
+
161,
|
|
11723
|
+
48,
|
|
11724
|
+
66,
|
|
11725
|
+
211,
|
|
11726
|
+
180,
|
|
11727
|
+
37,
|
|
11728
|
+
86,
|
|
11729
|
+
199,
|
|
11730
|
+
179,
|
|
11731
|
+
34,
|
|
11732
|
+
80,
|
|
11733
|
+
193,
|
|
11734
|
+
186,
|
|
11735
|
+
43,
|
|
11736
|
+
89,
|
|
11737
|
+
200,
|
|
11738
|
+
189,
|
|
11739
|
+
44,
|
|
11740
|
+
94,
|
|
11741
|
+
207
|
|
11742
|
+
];
|
|
11743
|
+
function crc8(data) {
|
|
11744
|
+
let crc = 0;
|
|
11745
|
+
for (let i = 0; i < data.length; i++) {
|
|
11746
|
+
crc = crc_table[(crc ^ data[i]) & 255];
|
|
11747
|
+
}
|
|
11748
|
+
return crc;
|
|
11749
|
+
}
|
|
11485
11750
|
var EntityEffects = /* @__PURE__ */ ((EntityEffects2) => {
|
|
11486
11751
|
EntityEffects2[EntityEffects2["Rotate"] = 4] = "Rotate";
|
|
11487
11752
|
EntityEffects2[EntityEffects2["Gib"] = 8] = "Gib";
|
|
@@ -16273,6 +16538,9 @@ var MultiplayerConnection = class {
|
|
|
16273
16538
|
// Ping calculation
|
|
16274
16539
|
this.lastPingTime = 0;
|
|
16275
16540
|
this.currentPing = 0;
|
|
16541
|
+
// Frame CRC
|
|
16542
|
+
this.frameCRCs = /* @__PURE__ */ new Map();
|
|
16543
|
+
this.currentPacketCRC = 0;
|
|
16276
16544
|
this.driver = new BrowserWebSocketNetDriver();
|
|
16277
16545
|
this.options = options;
|
|
16278
16546
|
this.netchan = options.netchan ?? new NetChan();
|
|
@@ -16333,6 +16601,7 @@ var MultiplayerConnection = class {
|
|
|
16333
16601
|
this.commandHistory = [];
|
|
16334
16602
|
this.latestServerFrame = 0;
|
|
16335
16603
|
this.parser = null;
|
|
16604
|
+
this.frameCRCs.clear();
|
|
16336
16605
|
}
|
|
16337
16606
|
setState(newState) {
|
|
16338
16607
|
if (this.state !== newState) {
|
|
@@ -16360,7 +16629,8 @@ var MultiplayerConnection = class {
|
|
|
16360
16629
|
}
|
|
16361
16630
|
const writer = new BinaryWriter2();
|
|
16362
16631
|
writer.writeByte(ClientCommand.move);
|
|
16363
|
-
|
|
16632
|
+
const checksum = this.frameCRCs.get(this.latestServerFrame) || 0;
|
|
16633
|
+
writer.writeByte(checksum);
|
|
16364
16634
|
writer.writeLong(this.latestServerFrame);
|
|
16365
16635
|
writeUserCommand(writer, commandWithFrame);
|
|
16366
16636
|
const packet = this.netchan.transmit(writer.getData());
|
|
@@ -16381,6 +16651,7 @@ var MultiplayerConnection = class {
|
|
|
16381
16651
|
if (this.demoRecorder && this.demoRecorder.getIsRecording()) {
|
|
16382
16652
|
this.demoRecorder.recordMessage(processedData);
|
|
16383
16653
|
}
|
|
16654
|
+
this.currentPacketCRC = crc8(processedData);
|
|
16384
16655
|
const stream = new BinaryStream2(processedData.buffer);
|
|
16385
16656
|
this.parser = new NetworkMessageParser(stream, this);
|
|
16386
16657
|
this.parser.parseMessage();
|
|
@@ -16464,6 +16735,7 @@ var MultiplayerConnection = class {
|
|
|
16464
16735
|
if (frame.serverFrame > this.latestServerFrame) {
|
|
16465
16736
|
this.latestServerFrame = frame.serverFrame;
|
|
16466
16737
|
}
|
|
16738
|
+
this.frameCRCs.set(frame.serverFrame, this.currentPacketCRC);
|
|
16467
16739
|
const packetEntities = frame.packetEntities;
|
|
16468
16740
|
if (!packetEntities.delta) {
|
|
16469
16741
|
this.entities.clear();
|