Skip to content

Commit 300231e

Browse files
committed
Fix world border speed: varlong, not varint (regressed in 1.19)
ClientboundInitializeBorderPacket and ClientboundSetBorderLerpSizePacket encode the border lerp time as a VarLong in vanilla (long lerpTime, writeVarLong/readVarLong). minecraft-data had speed correct as varlong in 1.17-1.18.2, but it regressed to varint in 1.19 and was never fixed - wrong for every version from 1.19 to 1.21.11. VarInt and VarLong encode identically below 2^28 ms (~74h), so this only breaks on long (multi-day) border interpolations, where the multi-byte VarLong mis-parses as a VarInt. Verified readVarLong/writeVarLong against the Mojang server jars for 1.19.4 and 1.21.3-1.21.9. proto.yml edited, protocol.json regenerated with npm run build.
1 parent a31412e commit 300231e

32 files changed

Lines changed: 64 additions & 64 deletions

data/pc/1.19.2/proto.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1417,7 +1417,7 @@
14171417
z: f64
14181418
oldDiameter: f64
14191419
newDiameter: f64
1420-
speed: varint
1420+
speed: varlong
14211421
portalTeleportBoundary: varint
14221422
warningBlocks: varint
14231423
warningTime: varint
@@ -1429,7 +1429,7 @@
14291429
packet_world_border_lerp_size:
14301430
oldDiameter: f64
14311431
newDiameter: f64
1432-
speed: varint
1432+
speed: varlong
14331433
packet_world_border_size:
14341434
diameter: f64
14351435
packet_world_border_warning_delay:

data/pc/1.19.2/protocol.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4745,7 +4745,7 @@
47454745
},
47464746
{
47474747
"name": "speed",
4748-
"type": "varint"
4748+
"type": "varlong"
47494749
},
47504750
{
47514751
"name": "portalTeleportBoundary",
@@ -4796,7 +4796,7 @@
47964796
},
47974797
{
47984798
"name": "speed",
4799-
"type": "varint"
4799+
"type": "varlong"
48004800
}
48014801
]
48024802
],

data/pc/1.19.3/proto.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1441,7 +1441,7 @@
14411441
z: f64
14421442
oldDiameter: f64
14431443
newDiameter: f64
1444-
speed: varint
1444+
speed: varlong
14451445
portalTeleportBoundary: varint
14461446
warningBlocks: varint
14471447
warningTime: varint
@@ -1453,7 +1453,7 @@
14531453
packet_world_border_lerp_size:
14541454
oldDiameter: f64
14551455
newDiameter: f64
1456-
speed: varint
1456+
speed: varlong
14571457
packet_world_border_size:
14581458
diameter: f64
14591459
packet_world_border_warning_delay:

data/pc/1.19.3/protocol.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4829,7 +4829,7 @@
48294829
},
48304830
{
48314831
"name": "speed",
4832-
"type": "varint"
4832+
"type": "varlong"
48334833
},
48344834
{
48354835
"name": "portalTeleportBoundary",
@@ -4880,7 +4880,7 @@
48804880
},
48814881
{
48824882
"name": "speed",
4883-
"type": "varint"
4883+
"type": "varlong"
48844884
}
48854885
]
48864886
],

data/pc/1.19.4/proto.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1506,7 +1506,7 @@
15061506
z: f64
15071507
oldDiameter: f64
15081508
newDiameter: f64
1509-
speed: varint
1509+
speed: varlong
15101510
portalTeleportBoundary: varint
15111511
warningBlocks: varint
15121512
warningTime: varint
@@ -1518,7 +1518,7 @@
15181518
packet_world_border_lerp_size:
15191519
oldDiameter: f64
15201520
newDiameter: f64
1521-
speed: varint
1521+
speed: varlong
15221522
packet_world_border_size:
15231523
diameter: f64
15241524
packet_world_border_warning_delay:

data/pc/1.19.4/protocol.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4979,7 +4979,7 @@
49794979
},
49804980
{
49814981
"name": "speed",
4982-
"type": "varint"
4982+
"type": "varlong"
49834983
},
49844984
{
49854985
"name": "portalTeleportBoundary",
@@ -5030,7 +5030,7 @@
50305030
},
50315031
{
50325032
"name": "speed",
5033-
"type": "varint"
5033+
"type": "varlong"
50345034
}
50355035
]
50365036
],

data/pc/1.19/proto.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1378,7 +1378,7 @@
13781378
z: f64
13791379
oldDiameter: f64
13801380
newDiameter: f64
1381-
speed: varint
1381+
speed: varlong
13821382
portalTeleportBoundary: varint
13831383
warningBlocks: varint
13841384
warningTime: varint
@@ -1390,7 +1390,7 @@
13901390
packet_world_border_lerp_size:
13911391
oldDiameter: f64
13921392
newDiameter: f64
1393-
speed: varint
1393+
speed: varlong
13941394
packet_world_border_size:
13951395
diameter: f64
13961396
packet_world_border_warning_delay:

data/pc/1.19/protocol.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4624,7 +4624,7 @@
46244624
},
46254625
{
46264626
"name": "speed",
4627-
"type": "varint"
4627+
"type": "varlong"
46284628
},
46294629
{
46304630
"name": "portalTeleportBoundary",
@@ -4675,7 +4675,7 @@
46754675
},
46764676
{
46774677
"name": "speed",
4678-
"type": "varint"
4678+
"type": "varlong"
46794679
}
46804680
]
46814681
],

data/pc/1.20.2/proto.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1580,7 +1580,7 @@
15801580
z: f64
15811581
oldDiameter: f64
15821582
newDiameter: f64
1583-
speed: varint
1583+
speed: varlong
15841584
portalTeleportBoundary: varint
15851585
warningBlocks: varint
15861586
warningTime: varint
@@ -1592,7 +1592,7 @@
15921592
packet_world_border_lerp_size:
15931593
oldDiameter: f64
15941594
newDiameter: f64
1595-
speed: varint
1595+
speed: varlong
15961596
packet_world_border_size:
15971597
diameter: f64
15981598
packet_world_border_warning_delay:

data/pc/1.20.2/protocol.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5198,7 +5198,7 @@
51985198
},
51995199
{
52005200
"name": "speed",
5201-
"type": "varint"
5201+
"type": "varlong"
52025202
},
52035203
{
52045204
"name": "portalTeleportBoundary",
@@ -5249,7 +5249,7 @@
52495249
},
52505250
{
52515251
"name": "speed",
5252-
"type": "varint"
5252+
"type": "varlong"
52535253
}
52545254
]
52555255
],

0 commit comments

Comments
 (0)