Commit Graph

356 Commits

Author SHA1 Message Date
Owen1212055
360006bc7f
Fix bouncy items
This reverts EAR diff to be how it is paper proper-- seems like alot of this got dropped.
2024-12-15 22:27:32 -05:00
Owen1212055
b21c0686c0
Fix broadcast sending to sender multiple times 2024-12-15 21:43:15 -05:00
Owen1212055
59a1f78750
Fix sleeping 2024-12-15 20:52:03 -05:00
Owen1212055
2e14d98ebe
Fix item dropping 2024-12-15 20:33:21 -05:00
Jake Potrebic
4912737b8d
fix issue in ServerPlayerGameMode 2024-12-15 15:20:33 -08:00
Jake Potrebic
e3b23b59f3
more runtime errors 2024-12-15 15:16:33 -08:00
Jake Potrebic
b40c4e2179
fix initial runtime errors 2024-12-15 15:07:32 -08:00
Jake Potrebic
acd43900f5
remove more imports and cleanup 2024-12-15 12:51:34 -08:00
Nassim Jahnke
6dcb4a33b6
Fix some compilation errors 2024-12-15 21:28:08 +01:00
Jake Potrebic
de10a277e2
fix a mis-applied hunk in Projectile 2024-12-15 12:09:18 -08:00
Jake Potrebic
8cca65b8ac
remove all the rest of the import hunks 2024-12-15 11:42:42 -08:00
Nassim Jahnke
b69631ba21
Readd dropped ServerScoreboard hunk 2024-12-15 14:29:01 +01:00
Nassim Jahnke
e99a9b5e4a
Remove cb null check 2024-12-15 13:05:35 +01:00
Nassim Jahnke
4c723932f6
Small fixups 2024-12-15 12:13:09 +01:00
Jake Potrebic
172a80cb66
Somehow a bunch of items were missed 2024-12-14 22:35:35 -08:00
Bjarne Koll
35afd218f5
net/minecraft/server/level 2024-12-15 06:22:17 +01:00
Jake Potrebic
0262d9a165
fix a bunch of compile issues 2024-12-14 20:15:49 -08:00
Jake Potrebic
7ac9b00916
PlayerList 2024-12-14 19:52:00 -08:00
Jake Potrebic
92aec10cc4
net.minecraft.server.rcon.thread 2024-12-14 18:40:23 -08:00
Noah van der Aa
5b17ebbd30
net/minecraft/server/dedicated 2024-12-14 23:58:10 +01:00
Jake Potrebic
93114d09f2
net.minecraft.server.commands 2024-12-14 13:42:45 -08:00
Lulu13022002
cb84eaf87a
some fixes 2024-12-14 18:22:52 +01:00
Noah van der Aa
3efd1caa64
net.minecraft.server.packs(.repository) 2024-12-14 17:39:31 +01:00
Noah van der Aa
68961d9f5e
net.minecraft.server.gui 2024-12-14 17:35:50 +01:00
Lulu13022002
bfcb0e71c9
server/network 2024-12-14 17:05:42 +01:00
Noah van der Aa
729c6e5369
Random small stuff 2024-12-14 14:31:00 +01:00
Bjarne Koll
afa25753de
Fix compile issue in MinecraftServer 2024-12-14 05:48:25 +01:00
Jake Potrebic
d064a57573
fix a bunch of imports 2024-12-13 19:24:28 -08:00
Jake Potrebic
64500a201f
net.minecraft.server 2024-12-13 19:12:33 -08:00
Nassim Jahnke
aa998246f7
More work 2024-12-13 18:40:56 +01:00
Nassim Jahnke
83b7370131
Players directory 2024-12-13 18:06:27 +01:00
Nassim Jahnke
45ddf764d9
Move patches to unapplied 2024-12-12 12:30:31 +01:00
Owen1212055
d300c94ec2 Properly resend entities
This resolves some issues which caused entities to not be resent correctly.
Entities that are interacted with need to be resent to the client, so we resend all the entity
data to the player whilst making sure not to clear dirty entries from the tracker. This makes
sure that values will be correctly updated to other players.

This also adds utilities to aid in further preventing entity desyncs.

This also also fixes the bug causing cancelling PlayerInteractEvent to cause items to continue
to be used despite being cancelled on the server.

For example, items being consumed but never finishing, shields being put up, etc.
The underlying issue of this is that the client modifies their synced data values,
and so we have to (forcibly) resend them in order for the client to reset their using item state.

See: https://github.com/PaperMC/Paper/pull/1896

== AT ==
public net.minecraft.server.level.ChunkMap$TrackedEntity serverEntity
2022-12-07 17:25:19 -05:00
Jake Potrebic
193eebecdf Tag Lifecycle Events
== AT ==
public net/minecraft/tags/TagEntry id
public net/minecraft/tags/TagEntry tag
public net/minecraft/tags/TagEntry required
2024-06-20 09:40:57 -07:00
Jake Potrebic
a1b891dd88 Registry Modification API
== AT ==
public net.minecraft.core.MappedRegistry validateWrite(Lnet/minecraft/resources/ResourceKey;)V
public net.minecraft.resources.RegistryOps lookupProvider
public net.minecraft.resources.RegistryOps$HolderLookupAdapter
2023-02-27 18:28:39 -08:00
MrPowerGamerBR
463f952cd4 Only attempt to find spawn position if there isn't a fixed spawn position set 2024-11-28 15:20:25 -03:00
Abel
7294ae3022 API to allow/disallow tick sleeping 2024-11-12 22:25:20 +01:00
Abel
b4c394a1c6 API to check if the server is sleeping 2024-11-10 16:32:34 +01:00
Gero
7acf73ce66 Call CraftPlayer#onEntityRemove for all online players 2024-11-09 22:27:58 +01:00
Bjarne Koll
66e1ce8504 Correct update cursor
Spigot uses a no longer valid ClientboundContainerSetSlotPacket with the
slot -1, which would update the carried stack in versions <=1.21.1 but
now leads to an IOOB.
1.21.2 instead introduced the ClientboundSetCursorItemPacket, which this
patch uses instead.
2024-11-01 14:58:57 +01:00
Aikar
0d8c3dc008 Block Enderpearl Travel Exploit
Players are able to use alt accounts and enderpearls to travel
long distances utilizing the pearls in unloaded chunks and loading
the chunk later when convenient.

This disables that by not saving the thrower when the chunk is unloaded.

This is mainly useful for survival servers that do not allow freeform teleporting.

Note: Currently removed as enderpearls are ticked as long as their owner is online in 1.21.2.
Might be worth to re-add once an option to disable the above vanilla mechanic is added, to
fully prevent enderpearl travel exploits.

== AT ==
public net.minecraft.world.entity.projectile.Projectile ownerUUID
2018-04-30 17:15:26 -04:00
Jason Penilla
cf7a1191a9 Allow using old ender pearl behavior
When enabled, ender pearls will not load chunks and will save to the world instead of the player.

== AT ==
public net.minecraft.world.entity.projectile.Projectile cachedOwner
2024-10-27 12:36:53 -07:00
Jason Penilla
21f51ebd74 Avoid issues with certain tasks not processing during sleep
Execute processQueue tasks during sleep: needed for console tab completions, pre join event, etc.

Upstream has set precedent that the bukkit scheduler will still tick during sleep, which avoids some problems
with plugins not accounting for the new sleep feature, but can still lead to others. Because of this we have disabled
sleep by default, which avoids the problem and makes it more obvious to check if this is the cause of issues when
enabled. We also unload chunks during sleep to prevent memory leaks caused by plugin chunk loads.
2024-10-27 14:18:28 -07:00
Riley Park
855db272b1 Bundle spark 2024-07-16 14:55:23 -07:00
Spottedleaf
29e03d0439 Add startup flag to disable gamerule limits
-DPaper.DisableGameRuleLimits=true will disable gamerule limits

== AT ==
public net.minecraft.server.level.ChunkLevel ENTITY_TICKING_LEVEL
2024-10-25 14:20:40 -07:00
Spottedleaf
7ec2cf09a3 Add proper async player disconnections
Blocking can cause performance problems
2024-10-16 06:41:32 -07:00
Nassim Jahnke
c056e2319d Fix PlayerCommandPreprocessEvent on signed commands 2024-09-21 22:01:52 +02:00
Newwind
f5e9df0862 Disable pretty printing for advancement saving
Reduces json size by about 25%
Not sure why advancements even had pretty printing enabled.
My best guess was by accident on mojang's part, especially since stats json files don't have pretty printing.
2024-09-20 14:17:37 +02:00
Tamion
2742ad6a9a Fix InventoryOpenEvent cancellation 2024-08-19 18:05:26 +02:00
Gegy
be5187c2da Fix: synchronise sending chat to client with updating message signature cache
In the case where multiple messages from different players are being processed in parallel, there was a potential race condition where the messages would be sent to the client in a different order than the message signature cache was updated. However, the cache relies on the fact that the client and server get the exact same updates in the same order. This race condition would cause the caches to become corrupted, and any future message received by the client would fail to validate.

This also applies to the last seen state of the server, which becomes inconsistent in the same way as the message signature cache and would cause any messages sent to be rejected by the server too.
2024-08-26 19:45:07 +02:00