Commit graph

36 commits

Author SHA1 Message Date
Nassim Jahnke
2c2dadf75b More more more more work 2024-12-03 20:34:55 +01:00
Nassim Jahnke
3a8f9e0b6e Start update, apply API patches 2024-12-03 17:58:41 +01:00
Noah van der Aa
5af7b3afbb Correctly clear explosion density cache(#11541) 2024-10-31 22:30:18 +01:00
Nassim Jahnke
eb6f344912 Remove timings impl 2024-10-27 18:11:15 +01:00
Noah van der Aa
d523c6211b MOOOOORE 2024-10-23 23:12:09 +02:00
Noah van der Aa
510057a8ad okaaay let's go 2024-10-22 18:23:19 +02:00
Bjarne Koll
f65939c6bd Remove wall-time / unused skip tick protection (#11412)
Spigot still maintains some partial implementation of "tick skipping", a
practice in which the MinecraftServer.currentTick field is updated not
by an increment of one per actual tick, but instead set to
System.currentTimeMillis() / 50. This behaviour means that the tracked
tick may "skip" a tick value in case a previous tick took more than the
expected 50ms.

To compensate for this in important paths, spigot/craftbukkit
implements "wall-time". Instead of incrementing/decrementing ticks on
block entities/entities by one for each call to their tick() method,
they instead increment/decrement important values, like
an ItemEntity's age or pickupDelay, by the difference of
`currentTick - lastTick`, where `lastTick` is the value of
`currentTick` during the last tick() call.

These "fixes" however do not play nicely with minecraft's simulation
distance as entities/block entities implementing the above behaviour
would "catch up" their values when moving from a non-ticking chunk to a
ticking one as their `lastTick` value remains stuck on the last tick in
a ticking chunk and hence lead to a large "catch up" once ticked again.

Paper completely removes the "tick skipping" behaviour (See patch
"Further-improve-server-tick-loop"), making the above precautions
completely unnecessary, which also rids paper of the previous described
incompatibility with non-ticking chunks.
2024-09-19 16:36:07 +02:00
Jake Potrebic
a0f4d303eb 788/1053 2024-06-13 18:30:23 -07:00
Jake Potrebic
0ef31547a1 Finish API patches 2024-06-13 08:45:43 -07:00
Noah van der Aa
3ea4a03fbc more more work (757) 2024-04-24 22:32:38 +02:00
Jake Potrebic
47ee5579ff Begin update to 1.20.5 2024-04-23 10:02:08 -07:00
Lulu13022002
f7e469eb2e [ci skip] Cleanup events (#10202) 2024-02-01 10:15:57 +01:00
Nassim Jahnke
88d3d87993 [ci skip] Add more patch identifying comments 2024-01-23 14:34:17 +01:00
Nassim Jahnke
e433c8696b [ci skip] Move some disruptive patches back 2024-01-23 12:06:27 +01:00
Nassim Jahnke
db4ed47134 [ci skip] Add more identifying patch comments 2024-01-21 13:56:22 +01:00
Nassim Jahnke
ec3867cd12 [ci skip] Add more identifying patch comments 2024-01-18 18:52:00 +01:00
Owen1212055
0087658702 Patches!!! MORE 2023-12-06 11:21:56 -05:00
Nassim Jahnke
46f4547805 Prepare for 1.20.3 dev 2023-12-05 18:20:55 +01:00
Noah van der Aa
2b7e17a127 more more more more more more more more more work 2023-09-22 17:24:59 +02:00
Noah van der Aa
524eeedaa8 So it begins... 2023-09-21 19:18:04 +02:00
Jake Potrebic
aa5e9d1d49 Updated Upstream (Bukkit/CraftBukkit/Spigot) (#9301) 2023-06-12 16:51:45 -07:00
Owen1212055
f328e1ae26 vine boom sound 2023-06-08 04:47:19 -04:00
Nassim Jahnke
1bda3d4d2a Start working on 1.20 2023-06-07 18:24:39 +02:00
Nassim Jahnke
b5f8080674 More more more more more more more more patches 2023-03-14 22:10:53 +01:00
Nassim Jahnke
08ab8edb76 Start working on 1.19.4 2023-03-14 18:11:24 +01:00
Nassim Jahnke
580e157417 More patchidy patched patch patches 2022-12-07 22:57:15 +01:00
Nassim Jahnke
b7dd55ce72 API patches 2022-12-07 17:46:46 +01:00
willkroboth
28f9b1a3cb Add method isTickingWorlds to Bukkit (#8316)
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>

Also, restores un/loading worlds mid tick. This will not be officially supported API contract that such a routine is safe, and these restrictions may be restored in the future.
2022-09-24 01:19:05 -04:00
Shane Freeder
fb6addf9e6 Fix mangled patch 2022-09-24 05:48:42 +01:00
Nassim Jahnke
4c6f66a6a3 Updated Upstream (CraftBukkit/Spigot)
Upstream has released updates that appear to apply and compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing

CraftBukkit Changes:
ead719a65 SPIGOT-7136: Cancelling PlayerInteractEntityEvent with the Allay desyncs
8468e167e SPIGOT-7137: StructureGrowEvent isFromBonemeal and getPlayer have incorrect values
d45057c59 SPIGOT-7089: Crash when command blocks attempt to load worlds

Spigot Changes:
450dcaa8 Rebuild patches
2022-08-14 10:03:13 +02:00
Nassim Jahnke
2f8a665549 More more more more more more more work 2022-07-27 23:50:05 +02:00
Nassim Jahnke
858aabab7c Move patches over, start with first few 2022-07-27 20:52:03 +02:00
Noah van der Aa
d652ff68f2 Don't allow world unloading while ticking worlds (fixes #8080) (#8081) 2022-07-01 18:14:50 +02:00
Nassim Jahnke
dcb23664a3 More more more more more more more more more more more patches 2022-06-08 15:36:56 +02:00
Nassim Jahnke
1148687a8d Prepare for 1.19 dev 2022-06-07 18:52:56 +02:00
Jake Potrebic
7acc5223e6 throw exception if worlds are created while being ticked (#7653) 2022-06-04 14:48:24 -07:00