Commit graph

3697 commits

Author SHA1 Message Date
Zach Brown
090b025ed3 [CI-SKIP] Stop trying to standardize commit hashes
This appears to be creating more problems than its actually solving.
Oh and put my echo back in here just because I want it there.
2018-10-26 23:58:58 -04:00
Automated
3f1edcf731 [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:
e6583aca SPIGOT-4443: Scoreboard RenderType API

CraftBukkit Changes:
a835b035 SPIGOT-4443: Scoreboard RenderType API
2018-10-26 04:41:47 -04:00
Aikar
32d28bc1f3 give EAR immunity to piston pushed entities
helps keep vanilla behavior with piston elevators
2018-10-25 23:26:29 -04:00
Shane Freeder
e4a5ddd929 fix "avoid hopper searches" and make it use an obfhelper 2018-10-25 21:27:54 +01:00
Shane Freeder
66c2497101 Revert field order changes in AxisAlignedBB 2018-10-25 17:07:54 +01:00
Shane Freeder
7391c5bbbb Fix javadoc issues 2018-10-25 14:38:19 +01:00
Automated
c1af6f63d2 [Auto] Updated Upstream (Bukkit)
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:
162807b3 Remove some draft API designations
2018-10-25 06:01:38 -04:00
Automated
7b02be1ff2 [Auto] Updated Upstream (Bukkit)
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:
bc9c12c0 SPIGOT-4439: Allow minecraft:brand channel for use by plugins.
2018-10-25 05:41:45 -04:00
Zach Brown
276f49855f [CI-SKIP] Have travis ensure openjdk11 builds run 2018-10-24 16:26:47 -04:00
BillyGalbreath
f2346bfd49 Use EntityTypes for living entities (#1533) 2018-10-24 15:26:00 -05:00
Shane Freeder
b6a24ca199 [CI-SKIP] Don't run animal sniffer by default
Changes upstream moved this to a profile a while back, however,
when updating (for some unknown reason) I kept it enabled by default,
however, leaving this enabled breaks building the server in newer
versions of java, which while this wasn't a concern before, is now
an issue for users.
2018-10-24 20:19:29 +01:00
Zach Brown
a865840c0a \u0020 2018-10-24 15:05:39 -04:00
Zach Brown
fd3300bb52 Add version to watchdog early warning system
BECAUSE VERSIONING INFO
2018-10-24 15:01:17 -04:00
Zach Brown
87070e5cae Always write dimension NBT, even if we ignore it
DataPacks can use the dimension field for various things, so we should
still write this field to NBT, even if we ignore reading it ourselves.
2018-10-24 14:41:04 -04:00
Zach Brown
4bc185d0d7 Try and make zsh complain less
My turn to make "this cant possibly break" changes to the scripts.
2018-10-24 12:35:42 -04:00
Mark Vainomaa
a6fb2b44fa [CI-SKIP] Fix "grep: repetition-operator operand invalid" (#1612)
Some flavours of grep don't like '?' in their expressions (also `.*?` means "match zero or more times or maybe do not match at all" as far as I know).
2018-10-24 18:05:10 +03:00
Aikar
f4ecd3a322 Fix unloaded chunks movement setting 2018-10-24 08:38:34 -04:00
Aikar
caddaa85a6 [CI-SKIP] use cross platform strategy for sed -i
BSD sed can DIAF.
2018-10-24 01:24:17 -04:00
Aikar
c64c016957 [CI-SKIP] make rebuildPatches support BSD sed
because the world can't be a nice place where all seds are equal
2018-10-24 00:53:08 -04:00
Aikar
f827e93edf Improve default thread counts for DataFix BootStrap
Spigot capped it to 2 threads. This bumps it back up to do
maxcores -2 with a max cap of 6.

A typical 4C8T system can use 6 threads and be done in 6 seconds.

Server owners can use system property to override, but this
improves the default.
2018-10-23 23:53:13 -04:00
Aikar
f36773fd9c Use Last Access Cache for isLoaded calls
this should provide a pretty good across-the-board performance
improvement for the entire server, as it's very common for code
to check if (isLoaded(x, z)) { then do something on that chunk }

Previously, containsKey would not read or set the last access cache

By making it do get() != null, we gain the benefits of last access
and also improves thread safey for async isLoaded checks

This exact usage scenario is used in Entity movement, so that alone
saves us up to 5%~ of CPU time for Entity movement.
2018-10-23 23:50:51 -04:00
Aikar
6ca5deba8b Don't sleep after profile lookups if not needed
Mojang was sleeping even if we had no more requests to go after
the current one finished, resulting in 100ms lost per profile lookup
2018-10-23 21:14:03 -04:00
Aikar
ebeba451f2 Fix "prevent players from moving into unloaded chunks"
it used public method instead of private, and moved to world config

also improved the implementation to not use obfuscated stuff

Also removed the Fix Double chest conversion patch since its
fixed in other ways in vanilla
2018-10-23 21:13:58 -04:00
Zach Brown
0e5039cd83 Strip private area unicode characters from signs
It is not immediately clear how these characters ended up on signs in
previous versions. It is clear, however, that they now render as empty
unicode boxes in 1.13, whereas previously they rendered as invisible
characters.

When these signs are loaded in versions after this commit, these
characters from the private use area of the Unicode block will be
stripped. The sign will then be marked to ensure this conversion only
runs once.

There is a flag -DPaper.keepInvalidUnicode=true that can be used if you
do not want us to strip these characters from your signs, though I can
think of no reason to use it.

Fixes GH-1571
2018-10-23 20:59:08 -04:00
Automated
2f4572f0f4 [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:
3359cb19 MC-137353: Don't go crazy on amount of bootstrap threads needed
2018-10-23 05:40:18 -04:00
Shane Freeder
18ac1d68c0 Update for Minecraft 1.13.2 2018-10-23 00:16:21 +01:00
GreenMeanie
f20d327458 Reset players remainingAir on respawn (#1598)
As mentioned in #1597, your air level did not reset if you drown.

Now you get a full breath during respawn.
2018-10-22 15:25:48 -04:00
Gabriele C
039f9ecfd8 Add option to prevent players from moving into unloaded chunks (#1608)
Resolves #1551
2018-10-22 21:25:16 +02:00
Automated
897ae0754a [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:
a639ae44 Remove outdated build delay.
2018-10-22 15:02:10 -04:00
Aikar
af53c8c59e Remove debug text
resolves #1606
2018-10-21 19:16:54 -04:00
BillyGalbreath
71cf04c13d Fix #1604 (#1605) 2018-10-21 14:39:21 -05:00
Automated
fd43e4e3cf [CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2018-10-21 15:31:50 -04:00
Caleb Bassham
0c7c2af037 Fix NPE when setting a player's spectator target (#1596)
Fix NPE when setting a player's spectator target
2018-10-21 14:27:53 -05:00
Brokkonaut
4c9478551c Don't modify item tag if interaction is canceled (#1589)
The item tag is stored before executing the interaction and restored before handling the
resulting events. If the event was not canceled and the ItemStack is not modified in the
event, the new tag is set back to the new one afterwards. This is similar to the handling
of the item amount.

This fixes a bug where tools lose durability when the interaction is canceled and another bug
where tools become completely repaired when they should break but the interaction was canceled.
2018-10-20 16:03:35 +02:00
Riley Park
15fb6a6c01 Merge pull request #1588 from BillyGalbreath/MC93764
Fix MC-93764
2018-10-19 17:46:56 -07:00
BillyGalbreath
367d892a6e Fix MC-93764 2018-10-19 19:39:21 -05:00
Automated
927780a15f [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:
db10914a Improve minecart spawners
2018-10-19 05:31:49 -04:00
BillyGalbreath
4a5ad2e1d2 Add more Witch API (#1564) 2018-10-18 22:24:09 -05:00
Aikar
6ef36f5d24 Remove MOST Synchronization from Chunk Map
This will provide quite a major performance boost by avoiding
synchronizing on EVERY chunk lookup.

Synchronize, even without contention, incurs processor cache flushes.

Considering this is the 2nd hottest method in the code base, lets
avoid doing that...

Additionally, chunk conversion operations were occuring while
under synchronization which lead to deadlocks.

Now the conversion will occur outside of the lock, and fix
that issue, resolving #1586

Note, that the chunk map is still thread safe for get operations!

The chunk map was never intended to be modified async with our
changes, as we post to main to modify the map, however
we do still synchronize for write operations (put, remove)

We also synchronize for async get operations, ensuring that
async gets are safe.

We do not need to synchronize main thread gets as the processor
cache will be insync since the map is only updated on the main thread.

However, if someone does try to delete or put concurrently, we
will force their operation back to the main thread.
2018-10-18 22:41:23 -04:00
Aikar
8593ac6ec5 Remove useless hashes from patches
This avoids annoying conflicts as well as gets rid of diff noise
from clients preferring different hash lengths
2018-10-18 22:36:03 -04:00
Andrew Steinborn
344d299d69 Add Velocity IP forwarding support (#1557)
While Velocity supports BungeeCord-style IP forwarding, it is not secure. Users
have a lot of problems setting up firewalls or setting up plugins like IPWhitelist.
Further, the BungeeCord IP forwarding protocol still retains essentially its original
form, when there is brand new support for custom login plugin messages in 1.13.

Velocity's modern IP forwarding uses an HMAC-SHA256 code to ensure authenticity
of messages, is packed into a binary format that is smaller than BungeeCord's
forwarding, and is integrated into the Minecraft login process by using the 1.13
login plugin message packet.
2018-10-18 20:44:59 -04:00
Caleb Bassham
99cd22a793 Add events for player changing spectator target (#1498)
* Add events for player changing spectator target

- Add PlayerStartSpectatingEntityEvent
- Add PlayerStopSpectatingEntityEvent
2018-10-18 15:53:10 -05:00
Automated
5c711f1b9a [CI-SKIP] [Auto] Rebuild Patches
A recent commit has been made that caused patches to be out of order, rebuilding
2018-10-17 23:06:33 -04:00
Brokkonaut
62630cfdc6 Fire EntityCombustEvent for phantoms (#1573) 2018-10-18 05:04:21 +02:00
Aikar
ec2f1e4093 Ensure chunk neighbor counts do not get desynced
Mojang was not checking that the chunk did not overwrite, or
was successfully removed.

We're seeing odd reports in #1561 that indicates issues around
this are having problems.
2018-10-17 22:47:27 -04:00
Aikar
b3b0490651 Improvements to Timings Performance
1) Get rid of string interning. can be heavy, has been seen to cause issues for some users
2) Use ConcurrentHashMap instead of a SynchronizedMap
3) Stop use of MRUMapCache which is not thread safe for Group lookups
4) Stop using IdentityHashMap which has performance issues in Java 8
2018-10-17 21:59:35 -04:00
Aikar
82d6028aa7 MC-50319: Check other worlds for shooter of projectiles
Say a player shoots an arrow through a nether portal, the game
would lose the shooter for determining things such as Player Kills,
because the entity is in another world.

If the projectile fails to find the shooter in the current world, check
other worlds.
2018-10-17 19:30:57 -04:00
Aikar
ed7f9b32de [CI-SKIP] Fix build script for version detection
Apparently grep was being greedy even when it shouldn't.
This ensures it doesn't be too greedy.
2018-10-16 23:55:54 -04:00
BillyGalbreath
7040465881 Implement getters and setters for EntityItem owner and thrower
Closes #1526
2018-10-06 20:55:18 -05:00
Zach Brown
4a6e5b036f Fix equals case in lightning sounds 2018-10-16 21:40:32 -04:00