Commit Graph
100 Commits
Author SHA1 Message Date
Shane FreederandNassim Jahnke 12356fbe77 Fix explosions calculation getting stuck (#11061)
Co-authored-by: Nassim Jahnke <nassim@njahnke.dev>
2024-07-12 08:16:03 +01:00
Shane Freeder 69258a8c33 Do not crash when an exp orb attempts to mend an unrepairable item 2024-06-23 14:04:58 +01:00
Shane Freeder 28238907c1 Revert "Fixes exception log messages getting dropped during bootstrap (#10935)" (Closes #10945)
This reverts commit 05dd6c2bec.
2024-06-21 10:05:27 +01:00
Shane Freeder 71f3228b5c Fix diff in sprint interruption option (Closes #10939) 2024-06-21 01:21:23 +01:00
Shane Freeder 3bb51e10ab Fix sending disconnect packet in phases where it doesn't exist 2024-05-30 19:05:39 +01:00
Shane Freeder 1f743f10af Fix missing debug trace 2024-05-27 18:33:34 +01:00
Shane Freeder e04d670f1d Do not re-wrap vanilla goals (#10751)
There is no need to rewrap vanilla goals when they're being reregistered,
this breaks some expectations around behavior outside of general
wasting of resources.

Resolves: #10743
2024-05-24 15:22:41 +01:00
Shane Freeder c889d48f8c Make PaperSimplePluginClassLoader show class which is not found 2024-05-18 21:17:54 +01:00
Shane Freeder 2d2eafa713 Update Adventure to 4.17.0 Release 2024-05-08 15:48:45 +01:00
Shane Freeder a8e49a12d3 default save-empty-scoreboard-teams to vanilla
The primary environmental factor which caused this feature to be implemented
is no longer much of a factor within the community
2024-05-02 09:53:43 +01:00
Shane FreederandJake Potrebic f4303373e1 Add itemName components (Resolves #10467) (#10471)
* Add itemName components (Resolves ##10467)

* improve javadocs and formatting

* rebased

---------

Co-authored-by: Jake Potrebic <jake.m.potrebic@gmail.com>
2024-04-28 18:08:59 +01:00
Shane Freeder 36fa573f48 Fix another missing book meta tag 2024-04-28 13:48:20 +01:00
Shane Freeder 4aab51d78a Fix book meta lacking resolved tag from older versions (Fixes #10470) 2024-04-28 13:15:03 +01:00
Shane Freeder 4f09300744 Restore Handle Large Packets Disconnecting Client Patch 2024-04-27 15:06:52 +01:00
Shane Freeder 0d8e6831c3 Fix StackOverflowException thrown on shutdown (Fixes #10404) (#10408)
paper previously migrated away from using executeIfPossible as this throws a
RejectedExecutionException when the server is shutting down, which is then picked
up by the Connection handler object and causes the player to be kicked without
the intended disconnection message that comes from commands such as /stop, /restart

This was fine, because previously changes made in spigot would just prevent these
packets from being executed anyways. Instead, we'll just use a marker exception
to try to detect this specific state.
2024-04-12 20:37:00 +01:00
Shane Freeder b56970d394 Allow player-list API to self un/list (#10358) 2024-04-07 01:45:43 +01:00
Shane Freeder 5efed01031 Do not copy profile data if profiles are the same (#10259) 2024-03-20 21:47:50 +00:00
Shane Freeder 5a66c3b64e Don't tick empty worlds (#9025) 2024-03-03 21:10:45 +00:00
Shane Freeder f8a84f01e2 Make debug mode print current configuration phase 2024-02-23 13:54:52 +00:00
Shane Freeder e33fdd8189 Do not access world state to see if we can see a Player
Thrown into the adventure patch because I don't see the justification of a patch existing
for something like this.
2024-02-22 16:23:15 +00:00
Shane Freeder 72004ecb99 Updated Upstream (Bukkit) (#10255)
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

Bukkit Changes:
58ce1b0f Improve compatibility of new DamageSource API
2024-02-16 22:44:38 +00:00
Shane Freeder 49feea0525 Convert average tick value in the GUI to the correct granularity 2024-01-24 16:27:32 +00:00
Shane FreederandCryptite e34d100c9c Async world data IO saving (#10171)
Co-authored-by: Cryptite <cryptite@gmail.com>
2024-01-20 21:51:15 +00:00
Shane Freeder 0f611e7b4f Fix issue with kick event causes being passed improperly 2024-01-18 19:35:56 +00:00
Shane Freeder 79599cfd22 Re-add missing vanilla safeMode arg 2023-11-25 09:49:48 +00:00
Shane Freeder 3cf895a891 Don't leave the NearbyPlayers tracker in an entirely busted state on double-add detection 2023-11-05 22:15:38 +00:00
Shane Freeder 5165228828 [ci skip] Fix module derp 2023-10-29 01:32:13 +01:00
Shane Freeder 03bd83a051 [ci skip] Fix author in last patch 2023-10-29 00:58:15 +01:00
Shane Freeder 69b2101f34 Temp fix for serialisable blockdata 2023-10-22 19:56:25 +01:00
Shane Freeder 13884a0748 Quick tweaks to logical flow of getMapData 2023-10-04 16:25:26 +01:00
Shane Freeder 3ebe415f47 Fix/update wiki (#9758) 2023-09-25 00:02:46 +01:00
Shane Freeder 1a1af91ce3 Handle new brand payload type 2023-09-24 19:48:29 +01:00
Shane Freeder 3b3cf7f532 Don't allow for supporting block checks to load chunks
I cannot test this due to lack of hardware (took 30 minutes getting paper
updated and loaded into IJ on this machine...), however, this is the easiest
patch for now. Ideally, some form of distance check would probably be added to
improve invalidation of this cache.
2023-07-05 23:13:30 +01:00
Shane Freeder 7727050285 Temp: Pre-init PlayerChunkLoaderData in order to prepopulate the BFS lookup cache because potatos (Closes #9338) 2023-06-18 13:49:22 +01:00
Shane Freeder e00471db27 Updated Upstream (Bukkit/CraftBukkit)
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

Bukkit Changes:
465c4964 PR-843: Add damage methods to FallingBlock
46ba7c9f SPIGOT-7335: Fix typo in TextDisplay#TextAlignment enum name

CraftBukkit Changes:
818582f40 PR-1169: Add damage methods to FallingBlock
15a3eac66 SPIGOT-7335: Fix typo in TextDisplay#TextAlignment enum name
f01fb4979 SPIGOT-7336: Fix typo in internal method name
2023-04-14 00:52:42 +01:00
Shane Freeder 5322e3cffb Revert "Resolve Plugin Dependency Issues, Improve PluginLoading Compat, Small Loading Issues (#9068)"
This reverts commit cfcfc9301c.
2023-04-10 11:25:04 +01:00
Shane Freeder 9df9cf9fb4 Updated Upstream (Bukkit/CraftBukkit)
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

Bukkit Changes:
de5ba402 PR-848: Mark get/setCatType methods deprecated in addition to the enum

CraftBukkit Changes:
50ee87fbc SPIGOT-7333: Correctly handle null in ColorableArmorMeta#setColor()
790be710b SPIGOT-7332: Persistent Data Container of Chunk not saving on stop or restart.
2023-04-09 23:38:03 +01:00
Shane Freeder b4b4aee3dc Updated Upstream (Bukkit/CraftBukkit)
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

Bukkit Changes:
aeb62aa3 Remove obsolete documentation from ArmorMeta#setTrim

CraftBukkit Changes:
cb6f3c028 PR-1173: Change CraftMinecartTNT to public for consistency
2023-04-09 01:13:38 +01:00
Shane FreederandOwen1212055 cec73ac951 Fix TPS command output (#9091)
* Fix TPS command output

* Cleanup + rebase

---------

Co-authored-by: Owen1212055 <23108066+Owen1212055@users.noreply.github.com>
2023-04-07 00:08:44 +01:00
Shane Freeder 9f03aa5cc0 Prevent GameEvents being fired from unloaded chunks 2023-04-06 12:42:10 +01:00
Shane Freeder 076afec362 Do not send expired keys to players on login (#9090)
This patch will prevent sending expired keys to players when logging into a server, while the client does have some grace period to prevent issues, if a key has expired beyond the grace period, connecting clients will be disconnected from the server upon join. The client should update keys before this key even expires, and a new key will be broadcasted out if we somehow actually get one.
2023-04-03 10:45:02 +01:00
Shane Freeder ee6a62f6b7 Don't use plugin-profiling to enable timings
The paper config has taken precidence over this for a long time
with 0 complaints, and now it's tripping the deprecation warning,
even if timings is disabled in the paper config.
2023-03-31 05:47:59 +01:00
Shane Freeder 19889e8a77 Temp fix for EntityType.translationKey
Upstream improperly used the enum name for looking up the vanilla entity
type to get the translation key; temp patch this until upstream fixes this,
also add some quick validation
2023-02-16 03:20:43 +00:00
Shane Freeder 0e45eeb9d2 Disable ATs from unapplied folder 2022-12-07 23:25:00 +00:00
Shane Freeder ec00900b8b Fix dumplisteners missing folder creation 2022-12-06 04:02:44 +00:00
Shane Freeder 3c0aa837c1 Fix Varint21FrameDecoder cached length buf usage 2022-11-22 17:50:31 +00:00
Shane Freeder 435cc8ebd8 Cleanup misc import from last commit 2022-11-06 22:46:23 +00:00
Shane Freeder f5e9a14a25 Prevent compass from loading chunks 2022-11-06 22:37:34 +00:00
Shane Freeder 857ece0812 Fix setting difficulity inside of API (Fixes #8533)
Vanilla moved some logic around setting the world difficulty which
was not adopted for inside of upstream properly, this addresses another
such case
2022-11-01 18:29:52 +00:00
Shane Freeder c0e803bfd2 Make CraftMinecartTNT public
adding the getHandle method causes some issues with things like ProtocolLib
due to the expectation that all classes which provide a getHandle method
are public.
2022-10-12 16:10:52 +01:00
Shane Freeder bf718e5334 [ci skip] shuffle patches and rebuild 2022-09-28 04:27:26 +01:00
Shane Freeder fb6addf9e6 Fix mangled patch 2022-09-24 05:48:42 +01:00
Shane Freeder 8e18842fbc Updated Upstream (Bukkit/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

Bukkit Changes:
c7c11188 SPIGOT-2620: Add Player#sendBlockChanges()
f63d2b44 Improve annotation test on parameters
3372e7b4 SPIGOT-1244, SPIGOT-6860, SPIGOT-6874: Various Javadoc and formatting fixes
a1e8a9ab PR-793: Ignore .checkstyle file generated by Eclipse IDE

CraftBukkit Changes:
c2c39089e SPIGOT-2620: Add Player#sendBlockChanges()
8209158db PR-1113: Ignore .checkstyle file generated by Eclipse IDE

Spigot Changes:
4aa5ead2 Rebuild patches
2022-09-24 02:38:12 +01:00
Shane Freeder eb3f66c6da Updated Upstream (Bukkit/CraftBukkit) (#8378) 2022-09-23 06:08:43 +01:00
Shane Freeder ede4468516 Make WorldCreator#keepSpawnLoaded return the WorldCreator (Fixes #8321) (#8371)
* Make WorldCreator#keepSpawnLoaded return the WorldCreator (Fixes #8321)

Thought that I fixed this before push/merge, apparently not, hence, fix
the return type and add mitigation for this.

* Fix patch/build

* Rebuild patches
2022-09-20 01:28:22 +01:00
Shane Freeder e14a2a0cce Configurable chat thread limit (#7878) 2022-09-20 01:16:23 +01:00
Shane Freeder f7b33b60b0 Use thread safe Random inside of ServerLoginPacketListenerImpl
Vanilla uses a Random instance which is not thread safe inside of the
constructor for ServerLoginPacketListenerImpl, this is an issue because
instances of that class are created on the network worker threads, which
means that there is a potential (which we have reports confirming) that
multiple users logging on could trip this
2022-08-11 14:38:45 +01:00
Shane Freeder 53885ac491 Don't manually send ClientboundPlayerPositionPacket for refreshPlayer
in 1.19, mojang made it so that teleporations validate that an awaiting pos was
set in the server when teleporting, thus we need to ensure that this is set when
sending the player pos, otherwise the player will be kicked when the client sends
back the aknowledgement
2022-08-10 15:01:39 +01:00
Shane Freeder f9f8a78753 Fix plugin update IO logic when replacing jars 2022-07-23 05:52:57 +01:00
Shane Freeder 226468f7b0 Cache Component MOTDs 2022-07-23 02:56:50 +01:00
Shane Freeder 93f19c4e41 Add a bit of extra debugging to chat order/time errors
I do wanna add some leeway to the kick, if message was sent within 30-60
seconds of the last message, assume clock drift and just ignore the kick
(send a message? just silently ignore?), but, I'm not 100% on this one
2022-07-06 05:53:16 +01:00
Shane Freeder a029f5d67c Parse MOTD as legacy sectioned string (Fixes #8036)
This is not ideal but this is how MOTDs have been parsed for years,
ensure that this is performed for all things getting the MOTD from
the server
2022-06-22 09:15:20 +01:00
Shane Freeder 348b3a541d Fix missing null check in ChunkGenerator#findNearestMapStructure 2022-06-20 15:01:29 +01:00
Shane Freeder efcee6889d [ci skip] restore jd.io 2022-06-17 18:28:38 +01:00
Shane Freeder bf6042c329 Temp: Disable javadoc.io for now 2022-06-17 08:26:11 +01:00
Shane Freeder 5e5e561112 Bump netty 2022-06-12 23:53:18 +01:00
Shane Freeder 1ef1281f21 Ensure that Log4J is shutdown when stopping the server (Fixes #7932) 2022-06-12 01:59:24 +01:00
Shane Freeder 945316dc5d Add support for Velocity forwarding v2
This is strictly not needed, however, I wanted to write this in part
to test the new forwarding logic, parsing and advertising the latest
featureset is also not exactly a bad thing
2022-06-09 14:27:06 +01:00
Shane Freeder c0a157eb9f Fix don't lookup profiles for blank names patch 2022-06-09 22:37:26 +01:00
Shane Freeder b63b1a42cf Updated Upstream (CraftBukkit)
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:
9d46b56e2 SPIGOT-7009: Stuck on "Loading terrain..." after disconnecting on respawn screen
2022-06-03 04:31:18 +01:00
Shane Freeder 655a3cf961 Updated Upstream (Bukkit/CraftBukkit) (#7776) 2022-04-30 17:27:41 +01:00
Shane Freeder 8d72e2dfb2 cleanup filtered sign text (#7777) 2022-04-30 16:49:57 +01:00
Shane Freeder 5db9697593 WorldCreator#keepSpawnLoaded (#7673) 2022-04-20 10:26:09 +01:00
Shane Freeder 2b927737c9 Ignore invalid jars inside of the updates folder (Fixes #7751)
This really needs a deeper look here, the way updates are handled is
fairly immature, but, this wasn't ever intended to be a large scale thing

Ideally, imho, we'd collect the list of update files into some form of Map,
that way we just have a reference of Name > File refs, and can filter out
cases where there are two versions of a plugin in there and warn expectidely,
but, that creates some complications, you would need to fall back to a dir
scan in the case of a plugin calling loadPlugin, but, it would at least
give us more defined behavior, as well as improve performance here vs
repeatidely trying to deserialise the plugin.yml defs for every file
in there on every load
2022-04-20 10:00:50 +01:00
Shane Freeder a072a15667 [CI-SKIP] Remove unused import from last patch 2022-04-13 09:15:28 +01:00
Shane Freeder d8d6fd17fd Prevent tile entity copies loading chunks 2022-04-13 08:27:16 +01:00
Shane Freeder c80c018a4e Buffer OOB setBlock calls
lets debug mode throw a trace in order to potentially see where
such calls are cascading from easier, but, generally, if you see one setBlock
call, you're gonna see more, and this just potentially causes a flood of logs
which can cause issues for slower terminals, etc.

We can limit the flood by just allowing one for a single gen region,
we'll also only gen a trace for the first one, I see no real pressing need
to generate more, given that that would *massively* negate this patch otherwise
2022-03-19 12:22:31 +00:00
Shane Freeder a9bcb9deed Add printPaperVersion task 2022-03-04 09:41:03 +00:00
Shane Freeder 1f42cc66e7 Revert chunk postprocessing back to 1.18.1 logic 2022-03-02 18:08:10 +00:00
Shane Freeder d694a49769 Drop unneeded desync patch
spigot no longer even fires the event for this case, so, this may
actually be a regression, not too sure here, but, as-is this patch
is dead
2022-03-02 09:44:22 +00:00
Shane Freeder 0fb6f13944 ignore excessive vel for Minecarts (Fixes #7515) 2022-02-28 15:31:41 +00:00
Shane Freeder d77d3acbc5 Mark ChatRender#render as ApiStatus.Override 2022-02-18 01:10:46 +00:00
Shane Freeder 729db1bed4 Rebuild patches
Cos, you know, pushing the correct changes the first time woulda been
overrated
2022-02-01 13:06:41 +00:00
Shane Freeder f3497a0c5c Updated Upstream (Bukkit/CraftBukkit)
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

Bukkit Changes:
5c21a63f PR-717: Add PlayerHideEntityEvent and PlayerShowEntityEvent

CraftBukkit Changes:
c26a7b54d PR-1000: Add PlayerHideEntityEvent and PlayerShowEntityEvent
2022-02-01 11:35:36 +00:00
Shane Freeder 295a45f95d Use a CHM for StructureTemplate.Pallete cache
fixes a CME due to this collection being shared across threads

This patch was in 1.16.5 for a good while and noticed somebody
getting impacted by the same thing
2022-02-01 09:47:46 +00:00
Shane Freeder 68ee3947db Fix defaults for slime-spawn-height in paper config
do note that if you happened to grab the previous build in the few minutes it
was alive, you'll want to reset your settings here

also, i
2022-01-11 02:55:05 +00:00
Shane Freeder ffa0464d81 Provide option to disable username validation (Closes #7250) (#7254) 2022-01-02 12:51:22 +00:00
Shane Freeder 52fbecf5f4 Add debug stack for removed player teleporation check 2021-12-29 15:05:23 +00:00
Shane Freeder c78111ca2c Fix migration logic for old player saving config option
This is an ode to all those times when you shoulda just gone to bed
2021-12-28 08:10:38 +00:00
Shane Freeder e185936159 Revert "#686: Fix contains for default section generating real sections"
This commit causes an NPE when getting from the config in some states,
given upstream issue and PR in the works, I have 0 inclination to debug
this

This reverts commit e4358b8217126bbcc3a38b0d17097ad5ab87c50a.
2021-12-05 15:20:52 +00:00
Shane Freeder 61ef48e0ce Revert "fix NPE from changes in e4358b82171"
This reverts commit aa3d405b36.
2021-12-05 15:10:39 +00:00
Shane Freeder 55c371884e Fix trader merchants NPE when interacting with a merchant with non-active trades 2021-12-05 03:00:10 +00:00
Shane Freeder bc04c3f9bc Prevent ContainerOpenersCounter openCount from going negative (Fixes #6865) 2021-12-04 02:50:35 +00:00
Shane Freeder e119488df5 Do not use ForkJoinPool common exector for creating client command struct (Fixes #6936) 2021-12-04 02:37:33 +00:00
Shane Freeder df36d229fc Updated Upstream (Bukkit/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

Bukkit Changes:
9115281f SPIGOT-6832: Improve Player#getPing docs

CraftBukkit Changes:
fd3478bc7 #967: Store last lava contact location for events

Spigot Changes:
dbf49382 Rebuild patches
58cb9d26 #113: Use simulationDistance for entity activation range base
2021-12-03 21:28:15 +00:00
Shane Freeder bd8e01c675 Updated Upstream (CraftBukkit)
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:
03b725233 SPIGOT-6823: Fix loading custom world in combination with superflat
359d0533a #970: Correct typo in README.md
110492932 Fix per-world worldborder command
2021-12-03 00:26:54 +00:00
Shane Freeder 16ba421c40 Update paperclip to v3.0.2 2021-12-01 09:28:22 +00:00
Shane Freeder edc8a389fc Update jline and TCA (#6829)
Co-authored-by: Jason Penilla <11360596+jpenilla@users.noreply.github.com>

updates jline to 3.21.0, and TCA to 1.3.0
2021-11-02 18:02:16 +00:00
Shane Freeder 4fe89b58d2 Upgrade gson to 2.8.8 (Closes #6370) 2021-10-19 15:32:18 +01:00
Shane Freeder 82418e3a71 create random seeds for features using SecureRandom 2021-10-19 15:25:04 +01:00