3
0
Mirror von https://github.com/PaperMC/Paper.git synchronisiert 2024-11-14 20:10:05 +01:00
Commit graph

4853 Commits

Autor SHA1 Nachricht Datum
sulu5890
9a521c3f56
Update Log4J (1.15.2) (#7157)
* Update Log4j

* update log4j (again)
2021-12-19 16:10:35 -08:00
Jake Potrebic
d52a9ed0fb
fixed spawn reason for spawners (#4843) 2020-12-03 11:54:50 -08:00
Andrew Steinborn
9bc721428f
[1.15] Improve performance of matching ingredients for shapeless recipes (#4695) 2020-10-27 13:14:23 -04:00
Aikar
87de40926f
Backport some light and priority changs from 1.16 to 1.15 2020-10-11 18:45:46 -04:00
ForceUpdate1
d131395aeb
Fix distance in checkHighPriorityChunks (Fixes #4582) (#4605) 2020-10-11 18:39:53 -04:00
chickeneer
dd276c632c
MC-147729: Drop items that are extra from a crafting recipe (#1766) 2020-10-11 14:18:11 -04:00
Shane Freeder
cebec202f8
fix config option in last commit 2020-08-25 13:27:56 +01:00
Shane Freeder
a964eb39eb
Buffer joins to world
This patch buffers the number of logins which will attempt to join
the world per tick, this attempts to reduce the impact that join floods
has on the server
2020-08-25 12:45:38 +01:00
Zach Brown
f65f95ce3f
Do not let the server load chunks from newer versions
If the server attempts to load a chunk generated by a newer version of
the game, immediately stop the server to prevent data corruption.

You can override this functionality at your own peril.

This restores patch we had for older versions.
2020-08-06 20:24:26 -04:00
Aikar
1799ef1408
Apply 1.16's light optimizations to 1.15.2 too 2020-08-06 20:19:45 -04:00
Aikar
5a28de6662
Further optimize chunk light prioritization 2020-07-29 01:54:58 -04:00
Aikar
4e364423e0
Fix deadlock issue with watchdog stopping
Fixes #4008
2020-07-28 22:18:02 -04:00
Aikar
82e048ebcb
Remove ability to disable async chunks unless single core cpu
Too many people try to disable async chunks thinking its the cure
to some mysterious problem.

It is not possible to fully disable async chunks, and the portion
that this config controls is so minor in the grand scheme of things.

People are needlessly hurting their server following bad advice, so
just kill this config except for the people who might actually benefit from it.
2020-07-28 21:41:45 -04:00
Spottedleaf
b317f0dc4f
[1.15] Fix off by one error for scheduling block ticks (#4013)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-28 01:18:43 -04:00
Spottedleaf
51741a1806
[1.15] Tighten logic for handling target tick times in tick scheduler (#4011)
No longer rely on world time as plugins like to screw it up.

Add a new flag -Dpaper.ticklist-max-tick-delay= that
will automatically drop any tick entries that have a delay
exceeding the specified amount. This is only useful
for cleaning up a world that has been corrupted by
certain blocks having a huge tick delay.

Also fix an issue with some rails connecting incorrectly
that I found when testing.

Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-27 22:42:59 -04:00
Aikar
5657364b45
Fix Light Prioritization Issues
Ensures light priorities are properly processed before processing new
work, skipping the threads queue.

also stops processing work on task submission.

Also drops dead chunks light work to not waste time on work thats going to be discarded.
2020-07-27 22:40:54 -04:00
Spottedleaf
0133746291
Fix AdvancementDataPlayer leak due from quitting early in login
Move the criterion storage to the AdvancementDataPlayer object
itself, so the criterion object stores no references - and thus
needs no cleanup.

Fixes #3050
2020-07-22 01:51:26 -04:00
Spottedleaf
74231d422f
[1.15] Move range check for block placing up (#3918)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-16 03:39:18 +01:00
Wyatt Childers
48ea17fa19
Optimize the advancement data player iteration to be O(N) rather than O(N^2) 2020-07-07 01:25:53 -04:00
CDFN
be4d74d933
Fix Explosion location - Fixes #3574 2020-07-06 15:28:58 -04:00
Andrew Steinborn
31e5f66881
[1.15] Optimize NetworkManager exception handling (#3820) 2020-07-06 00:28:16 -04:00
Aikar
2248fffcdd
Clean up duplicated GameProfile Properties
We had a bug where we accidently cloned properties resulting in skulls
growing to large sizes and preventing login.

This now automatically cleans up the extra properties.
2020-07-01 03:19:33 -04:00
Aikar
49491f32d9
Fix Player Profile textures being duplicated - Fixes #3667 2020-06-28 22:11:51 -04:00
MiniDigger
3fc9899921
[1.15] Fix MobGoals#getAllGoals not actually returning all goals (#3671) 2020-06-28 15:56:59 -04:00
Andrew Steinborn
1d1c0561f2
Manually inline PooledBlockPosition#d(int, int, int) 2020-06-28 05:09:47 -04:00
Aikar
5fc45f4db0
Revert recent changes around player skulls using user cache
Fixes #3637
2020-06-28 05:03:22 -04:00
Aikar
a8ffecc741
Fix NPE and uuid lookup for player skulls
Fixes #3610
Fixes #3611
2020-06-25 04:01:28 -04:00
Aikar
ec9fa36908
1.15.2 - Updated Upstream (Bukkit/CraftBukkit)
Upstream has released updates that appears 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:
149527f7 SPIGOT-5782: Set Arrow Launched From Crossbow

CraftBukkit Changes:
be6aaf04 SPIGOT-5782: Set Arrow Launched From Crossbow
833da9c4 SPIGOT-5799: InventoryCloseEvent fires after PlayerQuitEvent
26c0084f SPIGOT-5675, SPIGOT-5798, MC-149563: Fix tracking of entities across dimensions
7f3e7c3f SPIGOT-5797: Zombie(Villagers) Instant Convert based on their lifetime
2020-06-23 20:28:43 -04:00
Jan Tuck
70df8f2716
Add PrepareGrindstoneEvent 2020-06-23 05:06:48 -04:00
Aikar
24b2f54b7b
Fix Player skulls for offline mode servers
Always use online mode for them in Profile API calls

Adds new API to profile API to let you control online mode yourself

Fixes #3594
2020-06-23 04:53:02 -04:00
Aikar
ce270e1412
Updated Upstream (Bukkit/CraftBukkit/Spigot)
Upstream has released updates that appears 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:
b2f1908c SPIGOT-5783: Add helpful info to UnknownDependencyException
e4f46260 SPIGOT-2623: Add EntityEquipment methods to get/set ItemStacks by slot.
529a9a69 SPIGOT-5751: Clarify behaviour of block drop-related API methods

CraftBukkit Changes:
8ea9b138 Remove outdated build delay.
ffc2b251 Revert "#675: Fix redirected CommandNodes sometimes not being properly redirected"
cb701f6b #675: Fix redirected CommandNodes sometimes not being properly redirected
c9d7c16b SPIGOT-2623: Add EntityEquipment methods to get/set ItemStacks by slot.
fad2494a #673: Fix Craftworld#isChunkLoaded
8637ec00 SPIGOT-5751: Made breakNaturally and getDrops returns the correct item if no argument is given

Spigot Changes:
a99063f7 Rebuild patches

Fixes #3602
2020-06-23 04:40:03 -04:00
Aikar
c4ada0e199
Fix many chunk loading issues
Fixes a few various issues with chunk ticket state

restores mojangs ticket throttle but tries to be smarter about it.
fixes a few state mismatches that needed to be handled.

Fixes fake NPC's adding player tickets when they shouldn't have been.

Improves teleport chunk loading by processing high priority on new area

Fixes #3605
Fixes #3537
Fixes #3573
2020-06-23 04:40:02 -04:00
Spottedleaf
37b244b50b
Fix not running level updates for light if no pre/post task 2020-06-23 04:09:58 -04:00
Josh Roy
e614299517
Add and implement PlayerRecipeBookClickEvent (#3351)
Co-authored-by: LordKorea <lk97798@posteo.net>
2020-06-22 23:33:08 -05:00
Mariell
9bb4e93090
Fix piston dupe patch creating ghost blocks (#3603)
The 2 flag (send change to clients) must always be set. If it is only set
when the `map.replace` call before it does something, as was suggested
on Discord, the issue will not change whatsoever.

Fixes #3593
2020-06-22 19:00:00 -04:00
PatoTheBest
e9c332ddb6
Fix NPE on TileEntitySkull (#3598)
The setGameProfile method on TileEntitySkull is annotated with the @nullable annotation,
but the skull didn't check for null profiles before attempting to retrieve cached skin.
This bug was introduced by the commit making the skull use spigot's User Cache.

Additionally, CraftMetaSkull also had the same issue with a null GameProfile, so this also
ensures it doesn't break.

The whole CraftPlayerProfile class is not null-safe, it requires a GameProfile that isn't
null so we add a Validation on the constructor, that way it is easier to catch this kind
of issue in the future.
2020-06-21 22:59:34 -04:00
Nesaak
b6a25a5356
Expose getItemStack in Arrows 2020-06-20 16:34:06 -04:00
kickash32
246af15ddc
Track Ender Dragon at current (no tick) view distance 2020-06-20 16:20:00 -04:00
Mariell Hoversholm
29a96bc1c5
Add clear reputation API 2020-06-20 16:02:28 -04:00
Aikar
ab2e8a853c
Add note to use Personal Forks and not Organization forks for PR's
Paper will routinely modify your PR for you to rebase it on latest or take care of any minor nitpicks that we can
just solve for you instead of making you go back for a trivial item.

However, if you use an Organization for the PR, this prevents Paper from doing this, and will require us to manually
merge it and close the PR instead of it being marked as the purple merged.

We much prefer to have merged PR's show as merged, so please do not use organizations repo's for PR as GitHub sadly
does not support maintainers pushing to them.

See [https://github.com/isaacs/github/issues/1681](https://github.com/isaacs/github/issues/1681)
2020-06-20 15:51:03 -04:00
ㄗㄠˋ ㄑㄧˊ
b2afcf1194
Add history file for terminal 2020-06-20 15:46:25 -04:00
Max Lee
c7e4c45f26
Add Inventory getHolder methods without creating new block snapshots (#3535) 2020-06-20 15:34:56 -04:00
Techcable
87e3c18093
Make enableTreasureMaps apply to shipwreck loot generation
Fixes #3480
Previously it only controlled whether villagers could trade treasure maps.
Now it should apply to loot generated in treasure maps.

We don't unregister treasure maps from the loot table,
since this option is per-world and the table is global.
Instead I just replaced the implementation with a NOP.
2020-06-20 15:26:38 -04:00
HeartPattern
7d256d659f
Remove useless warn logging while disconnecting
Remove useless "handleDisconnection() called twice" logging.
This warning log every time player kicked by server.
2020-06-20 15:23:02 -04:00
Spottedleaf
0d8594ae94
Fix enderdragon exp dupe
Properly track death stage when unloading/loading in the dragon
2020-06-20 15:04:50 -04:00
Spottedleaf
1cf1ebdc5d
Prevent position desync in teleporting during movement
Caused the server to revert to the player's overworld coordinates
after teleporting into the end.

Sidenote: The underlying issue is that the move call can teleport
entities and do other things like kill the entity. In the future,
to fix all exploits derieved from this usually unexpected
behaviour, we need to move all of this dangerous logic outside
of the move call and into an appropriate place in the tick method.
2020-06-20 14:59:49 -04:00
Spottedleaf
8f28f22ccf
Fix sand not dying correctly
If the falling block dies during teleportation (entity#move), then we need
to detect that by placing a check after the move.
2020-06-20 14:58:35 -04:00
Spottedleaf
96feb68ad9
Fix carpet and rail duping by pistons under same TNT duping config
This renames the config from enable tnt duping to enable piston duping

Normally we would not have a config for rails and carpet duping, but
the fix for TNT is the same fix for rails and carpet, so they are
having to be covered under that same config.
2020-06-20 14:56:08 -04:00
Spottedleaf
3e75d90810
Fix more cases of Bedrock breaking
This is still covered under the setting to re-enable this.
2020-06-20 14:54:17 -04:00
Mariell
01ce3cb0a5
Only complete from cache if ID is given (#3591)
As it stands, one can complete from the cache if no ID is given. If
there is no ID, it will throw an NPE, as ConcurrentHashMap (which is used
in UserCache) does not support null keys. This should fix any current
and future issues where exceptions are thrown just because a UUID is not
currently given on the profile due to a plugin or server bug/issue.

Fixes #3590.
2020-06-20 14:46:57 -04:00