Commit Graph

1440 Commits

Author SHA1 Message Date
Aikar 5302850894
Merge branch 'master' into pre/1.13
* master:
  Fix bug in last patch
  Ensure chunks are always loaded on hard position sets
  Improve Watchdog Early Warning Feature - Closes #1319
  Allow disabling armour stand ticking
2018-08-16 18:25:44 -04:00
Aikar 6e2711d666
Fix bug in last patch 2018-08-16 17:52:24 -04:00
Aikar 0645364ee5
Ensure chunks are always loaded on hard position sets
Player Movement, Entity Creation and Teleportation move
entities with a very "You are here, no debate" change, making
the server register them as there, regardless if that chunk was
loaded or not.

It appears possible that with hack clients and lag, a player
may be able to move fast enough to move into an unloaded
chunk and get into a buggy state.

To prevent this, we will ensure a chunk is always loaded,
guaranteeing that the entity will be properly registered
into its new home comfortably.

Closes #1316
2018-08-16 17:46:38 -04:00
Aikar dc428860cf
Improve Watchdog Early Warning Feature - Closes #1319
1) Don't kick in until server has started (the full crash will still kick in before full start)
2) Delay reporting until 10 seconds, then print every 5
3) Make the intervals configurable
4) Make it able to be disabled by setting every interval to <= 0
2018-08-16 17:30:26 -04:00
Aikar 0e7932315b
Fix NPE Potential in CraftBanner - Fixes #1337, #1336 2018-08-15 08:47:34 -04:00
kashike edb9d18aed Allow disabling armour stand ticking 2018-08-15 01:29:41 -07:00
Aikar 3bc40e491f
Fix NPE in CraftBanner due to null world, potentially other things fixed
Banners only load color if the world is set. I don't know why...

For some reason, the world was not set on these, so it was changing behavior.

So if we want an accurate clone, world needs to be set.
2018-08-15 01:21:10 -04:00
Aikar 36e6c991af
Ability to get Tile Entities from chunks without snapshots
Also make Timings use said new feature and not create snapshots on it reading data
2018-08-15 01:20:40 -04:00
Aikar 1d2b2da49e
[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:
dde07e23 Update docs for Enderman carrying methods

CraftBukkit Changes:
452a1738 SPIGOT-4271: Fix API error when enderman are not carrying a block
2018-08-14 18:59:40 -04:00
Shane Freeder 466e43b16d
Merge branch 'master' into pre/1.13 2018-08-14 16:26:01 +01:00
chickeneer bd1d0bf426 Add a force option to the ParticleBuilder API (#1322)
Particle packets contain a boolean which marks the particle to either force or show normal to the receiver.
Spigot has been sending all particles with the force boolean which overrides client particle settings.

Related changes in this commit;
- Add a force option to the ParticleBuilder API, which defaults to true to keep spigot consistent with existing api.
- Add a new spawnParticle method to support this mode as a parameter. Of course kept existing api methods the same so as to not break them.

Let me know if changes are needed.
2018-08-14 01:42:31 -04:00
Aikar 49aa3c4e2d
Fix NPE in AnvilDamageEvent - Closes #1331 2018-08-13 22:39:50 -04:00
Aikar d285e05dd8
[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:
4a241086 SPIGOT-4261: Missing turtle / phantom spawn egg meta
2018-08-13 04:29:35 -04:00
Aikar 716ca620b1
Improve Watchdog Early Warning Feature - Closes #1319
1) Don't kick in until server has started (the full crash will still kick in before full start)
2) Delay reporting until 10 seconds, then print every 5
3) Make the intervals configurable
4) Make it able to be disabled by setting every interval to <= 0
2018-08-12 13:27:23 -04:00
Aikar 3a70bed5f4
Updated Upstream (Bukkit/CraftBukkit) for LootTable API
I have tested that the Replenishing Feature still works as expected.
Lootable API's that now have Bukkit equivalents are now deprecated.

Bukkit Changes:
f0f33981 SPIGOT-1936: LootTable API

CraftBukkit Changes:
c0df4b82 SPIGOT-1936: LootTable API
2018-08-12 13:11:13 -04:00
Aikar f8ecb526e7
Fix queue patch 2018-08-12 02:36:46 -04:00
Aikar 3830baeb96
Merge branch 'master' into pre/1.13
* master:
  Use a Queue for Queueing Commands
2018-08-12 02:34:54 -04:00
Aikar 2900e7fa79
Use a Queue for Queueing Commands
Lists are bad as Queues mmmkay.
2018-08-12 02:34:34 -04:00
Aikar 646ddfd6f9
Restore portal fix 2018-08-12 02:14:31 -04:00
Aikar 4bb44d2fcb
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:
c23d391f Update documentation of BlockPhysicsEvent
14fcd896 SPIGOT-4258: Add Player.updateCommands method

CraftBukkit Changes:
15da7067 SPIGOT-4258: Add Player.updateCommands method

Spigot Changes:
2b0e71c7 Rebuild patches
2018-08-12 02:08:09 -04:00
prplz 8ad4c1e475 Fix PortalCreateEvent again (#1324) 2018-08-11 19:18:30 -04:00
Aikar e665cd9936
[CI-SKIP] Fix duplicate getServer() method in DedicatedPlayerList
This causes CraftServer to show as an error state and other files too..

It's driving me nuts.
2018-08-11 13:48:31 -04:00
prplz 895a4dcafc
Fix custom permissions reloading (#1325) 2018-08-11 09:39:53 -04:00
Aikar 5d42c9c99d
Merge remote-tracking branch 'origin/master' into pre/1.13
* origin/master:
  Use ConcurrentHashMap in JsonList & Optimize (#471) (#1309)
2018-08-11 09:35:11 -04:00
egg82 6ef9abeec2 Use ConcurrentHashMap in JsonList & Optimize (#471) (#1309)
* [CI-SKIP] add .editorconfig for base code style settings

* * Created patch 0349 (fixes #471)

* * Made requested modifications

* * Made requested modifications (x2)

* * Made recommended changes (x3)

* * Moved ConcurrentMap return values to Map as no functions specific to ConcurrentMap were used (backing map is still ConcurrentMap)
* Removed ConcurrentMap import
2018-08-11 08:46:46 -04:00
prplz 57798530bf Fix custom permissions reloading (#1325) 2018-08-11 08:45:38 -04:00
Aikar c93d1f53be Detect and repair corrupt Region Files - Closes #1317
If the file has partial data written but not the full 8192 bytes,
then the server will be unable to load that region file...

I don't know why mojang only checks for 4096, when anything less than 8192 is a crash.

But to be safe, it will attempt to back up the file.
2018-08-11 00:55:42 -04:00
Aikar 6666adc92c don't try to load protochunks, we don't save them
no reason to try to load them when we don't save them!
2018-08-11 00:12:25 -04:00
Aikar f835a91d15
Updated Upstream (Bukkit/CraftBukkit), deprecate SentientNPC API
Upstream has added the equivalent of our SentientNPC API, with exception to the EnderDragon.

We've added Mob to the EnderDragon, and our SentientNPC API should behave the same.

Vex#getOwner has been deprecated and a replacement Vex#getSummoner has been added using Mob.

However, since 1.13 is not production ready, SentientNPC API is subject for removal in 1.13.1 since
1.13 API is not compatible with 1.12.

Please move to the Mob interface ASAP.

This update has not been tested by PaperMC and as with ANY update, please do your own testing

Bukkit Changes:
c5ab54d8 Expand GameRule API
ab9a606c Improve entity hierarchy by adding Mob interface.

CraftBukkit Changes:
29e75648 Expand GameRule API
50e6858b Improve entity hierarchy by adding Mob interface.
0e1d79b4 Correct error in previous patch
2018-08-10 22:20:59 -04:00
Shane Freeder c2c18b2b7f
Don't reset current tick based on system time 2018-08-10 15:27:42 +01:00
Aikar aca003c22a
Fix JDK compiler issue, apparently eclipse compiles this ambiguityo 2018-08-09 22:50:05 -04:00
Shane Freeder 3ac743124e
re: Fixup improve tick loop patch 2018-08-09 14:14:17 +01:00
Shane Freeder 71490b2325
Fixup improve tick loop patch 2018-08-09 14:02:10 +01:00
Zach Brown 1ed5531ace
Rebuild merged patch file 2018-08-08 16:06:18 -05:00
Zach Brown 6d1c301a42
Merge branch 'master' into pre/1.13 2018-08-08 16:03:09 -05:00
miclebrick b369e70970
Add 5 second short dumps to watchdog (#1314) 2018-08-08 15:58:02 -05:00
Aikar 4bff819890
[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:
53d3ac0a SPIGOT-4238: Sometimes buckets are leaky client side when empty event is cancelled
2018-08-07 10:56:06 -04:00
Aikar 85bfc4508a
[CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2018-08-07 10:51:42 -04:00
BillyGalbreath dd17f98e61 [1.13] Hand for bucket events (#1300)
This adds the `getHand()` method to the `PlayerBucketEvent`s
2018-08-07 10:44:44 -04:00
Aikar 72083fd891
[Auto] Updated Upstream (CraftBukkit)
upcommit

CraftBukkit Changes:
200b2398 SPIGOT-4233: Fix some missing handled NBT tags
2018-08-06 06:19:26 -04:00
Brokkonaut d5eb80049c [1.13] Skull block profile api (#1308)
Adds #1307
2018-08-06 01:24:55 -04:00
Aikar 05466e3b47
[Auto] Update Upstream
Upstream has released updates that appear to apply compile correctly.
This update has not been tested by PaperMC and as with ANY update, please do your own testing.

Bukkit Changes:
d2834556 SPIGOT-4219: Event for PigZombies angering.

CraftBukkit Changes:
a9c796f1 SPIGOT-4184: Fix furnaces not matching Vanilla smelt or animations
195f071e SPIGOT-4219: Event for PigZombies angering.
5e3082c7 SPIGOT-4230: Improve legacy block types
2018-08-05 19:46:43 -04:00
Aikar a4e7bdb306
[Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2018-08-05 18:55:03 -04:00
BillyGalbreath adcd0c1505 SkeletonHorse Additions (#1283) 2018-08-04 21:12:41 -04:00
Aikar 7abf02b17c
Fix client rendering skulls from same user
See: https://github.com/PaperMC/Paper/issues/1304

Changes the UUID sent to client to be based on either
the texture payload, or random.

This allows the client to render multiple skull textures from the same user,
for when different skins were used when skull was made.

Closes #1304
2018-08-04 20:42:27 -04:00
Aikar 716db7fb5e
[CI-SKIP] Re-add getBukkitEntity methods to child classes
Helps with development to not need to cast as much...

No clue why upstream makes some of the decisions they do....
2018-08-04 17:03:53 -04:00
Aikar e2bc726301
Merge branch 'master' into pre/1.13
* master:
  Undo a mistaken chunk registration change - Closes #1302
2018-08-04 13:00:26 -04:00
Aikar 28caff2299
Undo a mistaken chunk registration change - Closes #1302
I misinterpreted some code as a risk of entity loss, but now
after deeper study, I see how that code was used more and why
it was adding entities to chunks that they shouldn't have been
in during a world transfer process.
2018-08-04 12:53:38 -04:00
Aikar 3cc52119fa
Merge branch 'master' into pre/1.13
* master:
  Fix ItemStack.removeEnchantment returning wrong value
2018-08-04 01:22:57 -04:00
Aikar b78002eeba
Fix ItemStack.removeEnchantment returning wrong value 2018-08-04 01:13:10 -04:00