Commit Graph

2797 Commits

Author SHA1 Message Date
Shane Freeder
853f4168f4
Remove debug
Today is going to be a long day
2020-08-25 13:30:52 +01:00
Shane Freeder
4d7ea42991
fix config option in last commit 2020-08-25 13:23:58 +01:00
Shane Freeder
74d2746308
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:30:57 +01:00
Daniel Ennis
c97ce029e9
1.16.2 Release (#4123)
PaperMC believes that 1.16.2 is now ready for general release as we fixed the main issue plagueing the 1.16.x release, the MapLike data conversion issues.

Until now, it was not safe for a server to convert a world to 1.16.2 without data conversion issues around villages and potentially other things. If you did, those MapLike errors meant something went wrong.

This is now resolved.

Big thanks to all those that helped, notably @BillyGalbreath and @Proximyst who did large parts of the update process with me.

Please as always, backup your worlds and test before updating to 1.16.2!

If you update to 1.16.2, there is no going back to an older build than this.

---------------------------------

Co-authored-by: William Blake Galbreath <Blake.Galbreath@GMail.com>
Co-authored-by: Mariell Hoversholm <proximyst@proximyst.com>
Co-authored-by: krolik-exe <69214078+krolik-exe@users.noreply.github.com>
Co-authored-by: BillyGalbreath <BillyGalbreath@users.noreply.github.com>
Co-authored-by: stonar96 <minecraft.stonar96@gmail.com>
Co-authored-by: Shane Freeder <theboyetronic@gmail.com>
Co-authored-by: Jason <jasonpenilla2@me.com>
Co-authored-by: kashike <kashike@vq.lc>
Co-authored-by: Aurora <21148213+aurorasmiles@users.noreply.github.com>
Co-authored-by: KennyTV <kennytv@t-online.de>
Co-authored-by: commandblockguy <commandblockguy1@gmail.com>
Co-authored-by: DigitalRegent <misterwener@gmail.com>
Co-authored-by: ishland <ishlandmc@yeah.net>
2020-08-24 22:40:19 -04:00
DigitalRegent
627f4b8561
Brand support 2020-08-23 05:19:14 -07:00
Zach Brown
7470c3ef69
Do not let the server load chunks from newer versions (1.16.2+)
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.
2020-08-21 19:27:25 -04:00
Matt Baxter
60a5ca6d7d
Fix regex mistake in CB NBT int deserialization (#4146)
The existing regex is too open and allows for the absence of any actual
number data, detecting an NBT entry of just the letter "i" in upper or
lower case. This causes a single-character NBT entry to be processed as
an integer ending in "i", passing an empty String to to Integer.parseInt,
triggering an exception in loading the item.

This commit forces numbers to be present prior to the ending "i"
letter.
2020-08-17 10:13:15 -07:00
MrIvanPlays
2b4ce0b370 Restore incremental player saving
This patch was dropped in 1.14 . I couldn't find it in removed so I got it from 1.13
Tested with 30-40 players and works fine with default settings.
Closes https://github.com/PaperMC/Paper/issues/4070
2020-08-11 09:55:10 -04:00
Mariell Hoversholm
b91d964b17 Restore Pathfinder Optimizations from 1.15.2
We dropped the patch in 1.16.1 update due to it being a major conflict.
This restores it.

Co-Authored-By: Aikar <aikar@aikar.co>
2020-08-06 22:55:24 -04:00
Aikar
adadf16548 Drop syncPosition on teleportation patch
I'm not sure it was really helping, and now suspecting it might be causing issues
Movement sucks
2020-08-06 22:55:24 -04:00
Aikar
6f66fa5714
Fix Light Thread causing world memory leak - Fixes #4045 2020-08-06 20:02:20 -04:00
Aikar
6742309074
Improve EntityTargetLivingEntityEvent for 1.16 mobs
CraftBukkit has a bug in their implementation and is incorrectly handling forget
Also adds more target reasons for why it forgot target.

Fixes #4042
2020-08-06 19:38:49 -04:00
Aikar
9788250b10
Clean up a lot of obfuscation helpers and impls
This fixes a bug with obfuscation helpers for attack cooldown
But every other change should stay the same.

Cleaning up a lot of helpers that pointed to already unobfuscated items.
Also adds final to many of the obfhelpers to assist with inlining.

This is pretty much a patch maintenance
2020-08-02 01:39:36 -04:00
William Blake Galbreath
58a745eba0
Fix scoreboard vanilla colors not working in chat 2020-07-31 16:20:29 +01:00
Aikar
3cf2c52d95
Improve Light Optimizations more
Hopefully fixes #4030 and hopefully fixes #4025

Use the concurrent enqueue process for all light tasks.
Restore dedicated light thread, helpful for profiling and identifying light work
as well as lets us give it a boosted thread priority
2020-07-30 22:04:56 -04:00
Mariell Hoversholm
0b33230f2d 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:
eeb1042f #491: Add support to change block's lid state

CraftBukkit Changes:
8fb65851 #660: Add support to change block's lid state
2020-07-29 16:01:09 -04:00
Aikar
960d992fd2
Further improve Chunk Light Prioritization
This is as fast as its going to get outside of making the light engine calculations it self faster.

Fixes #4022
2020-07-29 01:51:57 -04:00
Aikar
0d19e4579b
Fix deadlock issue with watchdog stopping
Fixes #4008
2020-07-28 22:22:46 -04:00
Aikar
baf1fabe9e
Updated Upstream (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

CraftBukkit Changes:
c3a22e78 SPIGOT-6032: Add best effort target events for new entities
2020-07-28 22:22:46 -04:00
Aikar
6e7dc3f81d
[Auto] Updated Upstream (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

CraftBukkit Changes:
52fd29c0d SPIGOT-6033: Bukkit.getUnsafe().getMaterial() won't match renamed block materials
2020-07-28 04:36:52 -04:00
Spottedleaf
dafc7b8f8d
Fix off by one error for scheduling block ticks (#4014)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>

Fixes #4015
2020-07-28 01:19:11 -04:00
Spottedleaf
a8ef09b82c
Tighten logic for handling target tick times in tick scheduler (#4010)
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.

Aimed at resolving #3251

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 23:05:27 -04:00
Aikar
d5ccd41393
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-27 23:01:56 -04:00
Aikar
76728529f9
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.

Fixes #3986
Fixes #4002
Fixes #3951
2020-07-27 22:54:45 -04:00
Shane Freeder
51d10c2012
Add missing strikeLighting call to World#spigot()#strikeLightningEffect 2020-07-26 12:12:19 +01:00
Spottedleaf
0cf106087d
[1.16] Do not sync load POI data (#3996)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-25 04:28:57 +01:00
Shane Freeder
188df6501e
Don't make per-player scale mob counts with the spawn range
https://github.com/PaperMC/Paper/pull/3971#issuecomment-663316000
2020-07-24 21:34:41 +01:00
Spottedleaf
55e2de5c6e
Improve per player mob spawning (#3971)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-23 14:10:46 -04:00
Prof-Bloodstone
42433c2626
Updated Upstream (Bukkit/CraftBukkit) (#3980)
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:
09f10fd9 SPIGOT-5950: Add PrepareSmithingEvent event

CraftBukkit Changes:
7c03d257 SPIGOT-6011: End Gateways do not work on Non-Main End Worlds
d492e363 SPIGOT-6015: Small Armor Stand doesn't drop items
5db13eea SPIGOT-5950: Add PrepareSmithingEvent event
2020-07-22 19:35:44 -04:00
tofipix
e5ede546a2
Fix IDE Debug JVM Flag for 1.16 (#3983) 2020-07-22 19:18:36 -04:00
Aikar
2712c68885
[Auto] 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:
f1e73b03 #525: Add contributors plugin.yml field.
ef0999fe #529: Added getRecipe() method to retrieve a Recipe by it's NamespacedKey

CraftBukkit Changes:
8b831a965 #714: Added getRecipe() method to retrieve a Recipe by it's NamespacedKey
2020-07-22 04:26:59 -04:00
Nassim
0901ffd046
Use title packet for actionbar methods (#3959) 2020-07-22 04:01:35 -04:00
Aikar
cc25ae47c0
Amend last commit to fix decompile error forgot to commit 2020-07-22 02:15:51 -04:00
Spottedleaf
f503db37c6
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 02:10:13 -04:00
William Blake Galbreath
282763b885
Fix SPIGOT-5885 Unable to disable advancements 2020-07-22 01:38:36 -04:00
William Blake Galbreath
9b93d122ec
Fix SPIGOT-5824 Bukkit world-container is not used 2020-07-22 01:29:20 -04:00
Aikar
bede4d304d
Load config files early on
also fixes the ide commodore rewrite patch version

Prep for other PR's to be updated to use these as some options need to use some values earlier
2020-07-22 01:01:01 -04:00
Mariell
dc80610ff3
Only get spawn block if it's relevant, fixes #3934 (#3942) 2020-07-19 13:58:29 +01:00
Aikar
f6b63c6cdb
[Auto] Updated Upstream (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

CraftBukkit Changes:
2361cb8a8 Increase outdated build delay to 3 weeks

Spigot Changes:
d4cbb644 Update bungeecord-chat
2020-07-18 03:57:21 -04:00
Mariell
108efeeeff
Fix zero reputation deleting villagers (#3857) 2020-07-17 13:47:04 -04:00
Aikar
7db30ebd57
Use consistent priorities for light tasks
Should fix high priority chunk loads prioritizing over urgent sync loads

Also fixes build Kenny broke! Bad Kenny.
2020-07-17 13:24:12 -04:00
Josh Roy
018d860243
Fix SPIGOT-5989 (#3920) 2020-07-17 12:49:50 -04:00
Nassim
4590995458
Fix moveToWorld worldserver reference (#3929) 2020-07-17 12:44:39 -04:00
Aikar
9c16c413ec
[Auto] Updated Upstream (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

CraftBukkit Changes:
75a2fb8e0 SPIGOT-5901: Improve multiworld support
2020-07-16 19:07:15 -04:00
Spottedleaf
45ffc2bf1a
Move range check for block placing up (#3917)
Co-authored-by: Spottedleaf <Spottedleaf@users.noreply.github.com>
2020-07-16 03:38:53 +01:00
Spottedleaf
94315dad74
Fix erroneuous entity count reporting in timings 2020-07-14 11:58:55 +01:00
Aikar
775a764eca
Thread Safe Vanilla Command permission checking
Datapacks check this on load and are built concurrently. This was breaking them badly due
to race conditions.

Plus, .canUse we want to be safe for async anyways.

Fixes #3722
2020-07-11 03:55:59 -04:00
BillyGalbreath
fa90052a82
Fix MC-125757 (#3859) 2020-07-09 20:40:37 -04:00
Aikar
071c08d77e
Only convert lore lines that actually look legacy
Spigot stored previous componenents as new ChatComponentText("legacy codes") which
this patch aimed to convert to the new format.

However, the impl ended up converting all lines.

If a plugin had a section symbol in the lore that isn't a color conversion, it would
make trigger this process every single time.

So now we will only process it if the pattern looks like the legacy bukkit format

Fixes #3869
2020-07-09 20:38:24 -04:00
Aikar
8c4787e306
Misc Improvements to Async Teleporting and Light patch
Stop light copy was missing a default in the impl.
Should of been extremely low chance of impacting anything though
as the very first copy operation would have fixed it.

Sadly this doesn't fix the issues weve been trying to fix.

Fix player async teleporting adding priority to wrong world for cross world teleports

Also improve teleporting to wait for entity ticking status before teleporting to prevent neighbors loading
2020-07-09 19:46:36 -04:00