Commit graph

1090 commits

Author SHA1 Message Date
BillyGalbreath
222aac9769 PlayerAttemptPickupItemEvent additions 2017-11-10 22:49:53 -05:00
Shane Freeder
c1e786e5b0 Merge pull request '#925' from Brokkonaut/NoAttackSoundsFromVanishedPlayers
Send attack SoundEffects only to players who can see the attacker
2017-11-08 16:27:17 +00:00
Shane Freeder
6d76e5b46a Update B/CB/S 2017-11-08 16:13:57 +00:00
Shane Freeder
ef87e1e584 Revert maven-surefire to prevent a build regression
In some environments, the 2.20.1 version of the maven surefire plugin
can cause builds to fail due to changes in surefire in how it detects
that the forked JVM used for testing is still alive or not.
2017-11-06 23:58:32 +00:00
Shane Freeder
9fd1b06aa8 allow nerfed mobs to jump again
Entity AI tasks are initialized earlier in recent versions
of MC, this means that the fromMobSpawner has not been set
at the point where AI tasks are initilazed and so the goalFloat
will never be populated.

To rectify this, we can rely on the entity tick checking if
the mob is from a spawner each tick, and just initialize the
field should the paper option be enabled. This saves us from
having to modify the call chain in order to pass the fact that
it was created by a mobSpawner earlier.
2017-10-31 15:13:55 +00:00
Brokkonaut
2509fce30a Send attack SoundEffects only to players who can see the attacker 2017-10-31 03:29:53 +01:00
Shane Freeder
cfb274d3af rectify Configurable Cartographer Treasure Maps patch 2017-10-30 13:06:35 +00:00
Brokkonaut
56763aad0d Replace HashSet with fastutil's ObjectOpenHashSet in HashTreeSet
HashSet sometimes uses compareTo() instead of equals() and this breaks the comparison of net.minecraft.server.NextTickListEntry (the only place where HashTreeSet is used).

In this cases duplicate entries could be added to the HashSet of HashTreeSet, because NextTickListEntry.compareTo() does not return 0, even if NextTickListEntry.equals() returns true.

ObjectOpenHashSet never uses compareTo(), so the inconsistencies of NextTickListEntry cause no problems.

Fixes https://github.com/PaperMC/Paper/issues/588
2017-10-20 04:43:02 +02:00
Shane Freeder
c738f996e8 Update B/CB/S 2017-10-29 15:19:21 +00:00
Shane Freeder
16e823a55d Don't send keepalive logger message if we've already disconnected 2017-10-17 21:40:53 +01:00
Riley Park
2d0e7faeb1 Merge pull request #914 from Minecrell/expose-client-protocol-host
Expose client protocol version and virtual host
2017-10-17 11:03:58 -07:00
Shane Freeder
b1fa92a5e4 allow keepalive to wait longer for a client response
and also provide a bit more information in the server
logs so we can work out what is going on.
2017-10-15 14:00:42 +01:00
Zach Brown
689fdea2c7 Add command for listing entities in a world
Port of 303a775fc3

Will display a list of all entities in a world, as well as which chunks
they are in. Hopefully, this will make tracking down chunks with lots of
entities easier.

Only real change from the forge version is that instead of dimension
IDs, we accept world names in the form of a string.

/paper entity list - Lists all entities in the player's current world
/paper entity list minecraft:zombie - Lists all zombies in the player's
current world

/paper entity list * world_nether - Lists all entities in the nether
/paper entity list minecraft:ghast world_nether - Lists all ghasts in
the nether
2017-10-15 17:43:16 -04:00
Shane Freeder
0e26fc4fbb Update CB 2017-10-13 22:07:48 +01:00
Minecrell
90e48db51c Expose client protocol version and virtual host 2017-10-10 18:45:43 +02:00
Shane Freeder
e813ac8f9f Remove lighting patches from spigot that cause more harm than good.
This commit removes two patches from spigot:
please review the patch messages for more information, however;

"Allow Disabling of Random Lighting Updates" potentially leaves chunk light maps in an invalid state, with
how often the server looks at these anyways, this patch really serves a questionable nature, the work is
going to be done, only it's being delayed and allowing the light map to be left in a potentially outdated
state.

"Fix some chunks not being sent to the client" sends chunks before their lighting has been calculated, this
means that the client will recieve chunks before they lighting has been calculated which can cause rendering
artifacts. The original issue around this patch appears to have already been fixed years ago.
2017-10-04 07:02:04 +01:00
Shane Freeder
45c25c868e Update B/CB 2017-10-09 10:15:17 +01:00
Shane Freeder
f618803d57 Revert keepalive back to 15 seconds 2017-10-09 09:49:12 +01:00
Shane Freeder
d649f90be0 Update CB/S 2017-10-07 09:57:38 +01:00
stonar96
3a9f17bc4b Anti Xray v2 (#858) 2017-10-05 14:38:21 +01:00
Shane Freeder
4632195902 Fix patch message (off the main thread!)
Don't tired and push!
2017-10-06 04:27:26 +01:00
Shane Freeder
f23cfe77fe rectify comment derp somebody just to point out 2017-10-05 03:39:51 +01:00
Shane Freeder
58a24b5aaf handle PacketPlayInKeepAlive async
In 1.12.2, Mojang moved the processing of PacketPlayInKeepAlive off the main
thread, while entirely correct for the server, this causes issues with
plugins which are expecting the PlayerQuitEvent on the main thread.

In order to counteract some bad behavior, we will post handling of the
disconnection to the main thread, but leave the actual processing of the packet
on the main thread.
2017-10-05 02:25:41 +01:00
Shane Freeder
2727dfbafc Update craftbukkit 2017-10-01 01:57:01 +01:00
Zach Brown
91e639e718 Update documentation around PlayerJumpEvent 2017-09-29 14:58:24 -04:00
Zach Brown
563ee0f840 Fix build 2017-09-28 18:54:38 -04:00
Zach Brown
6e9bfd7ac6 Patch files need headers, weird isn't it 2017-09-28 18:43:36 -04:00
Zach Brown
12bf7a15ad Add PlayerJumpEvent 2017-09-28 17:38:17 -04:00
Shane Freeder
4a6a473a13 Update metrics to support java 9
http://openjdk.java.net/jeps/223
Java decided to change their versioning scheme and in doing so modified the
java.version system property to return $major[.$minor][.$secuity][-ea], as
opposed to 1.$major.0_$identifier we can handle pre-9 by checking if the "major"
is equal to "1", otherwise, 9+

of course, it really wouldn't be all that simple if they didn't add a quirk, now would it.
valid strings for the major may potentially include values such as -ea to deannotate a pre release
2017-09-26 05:58:52 +01:00
Minecrell
c4553b3936 Disable logger prefix for various plugins bypassing the plugin logger
Some plugins bypass the plugin logger and add the plugin prefix
manually to the log message. Since they use other logger names
(e.g. qualified class names) these would now also appear in the
log. Disable the logger prefix for these plugins so the messages
show up correctly.
2017-09-22 09:47:01 +02:00
Minecrell
a64c8c70da Allow plugins to use SLF4J for logging
SLF4J is a commonly used abstraction for various logging frameworks
such as java.util.logging (JUL) or Log4j. Currently, plugins are
required to do all their logging using the provided JUL logger.
This is annoying for plugins that target multiple platforms or when
using libraries that log messages using SLF4J.

Expose SLF4J as optional logging API for plugins, so they can use
it without having to shade it in the plugin and going through
several layers of logging abstraction.
2017-09-21 16:34:36 +02:00
Minecrell
57d987e936 Handle plugin prefixes in Log4j configuration 2017-09-21 16:18:30 +02:00
Minecrell
8556beee8c Use Log4j IOStreams to redirect System.out/err to logger
Log4j2 provides an optimized implementation of PrintStream that
redirects its output to a logger. Use it instead of a custom
implementation for minor performance improvements and some fixes.

With the old implementation, each call to System.print()
results in a separate line, even though it should not result in
a line break. Log4j's implementation handles it correctly.
2017-09-18 12:07:47 +02:00
Minecrell
03891a7fe5 Update TerminalConsoleAppender to 1.0.0 (updates JLine)
Fixes #879
2017-09-23 19:57:16 +02:00
Riley Park
041250dfb9 Avoid NPE in AdvancementDataWorld thanks to Spigot being dumb 2017-09-21 07:01:40 -07:00
Zach Brown
7be477c2cc Update upstream CB
Fixes GH-887
2017-09-18 22:01:43 -04:00
Aikar
68b6b07086 World can be null for sign conversion, fixes #886 2017-09-18 21:03:45 -04:00
Riley Park
d5dcfbc32d Avoid NPE during CraftBlockEntityState load 2017-09-18 13:39:40 -07:00
Shane Freeder
5ce5ef1c9f Update to 1.12.2, May the Tacos be with you 2017-09-18 12:04:01 +01:00
Shane Freeder
9f7b45a945 Update CB, refactor 0229-Fix-this-stupid-bullshit
Refactored 0229-Fix-this-stupid-bullshit in order to prevent merge conflicts
when spigot decides to update the timer and to provide some form of hint in the
console/log on startup.
2017-09-15 15:37:05 +01:00
Zach Brown
fe190b78a1 Fix race condition with chunks, dead tile entities
Fixes PaperMC/Paper#883 same issue as MinecraftForge/MinecraftForge#4386

A more detailed anaylsis of what is probably going on, courtesy of
@bs2609 and the MCForge Issue Tracker is:

When a chunk is unloaded, the entities and tile entities it contains are
marked for removal. The actual removal (from the world) occurs later,
when the world ticks its entities.
Conversely, when a chunk is loaded, it generally adds its entities to
the world promptly, without queuing.

Here's the normal sequence of events:

Chunk unloaded
Old entities removed
Chunk loaded
New entities added

However, what can happen:

Chunk unloaded
Chunk loaded
New entities added
Old entities removed

This occurs when an unloaded chunk is reloaded before its corresponding
entities have been removed.
2017-09-11 22:21:57 -04:00
Zach Brown
4424c3dec9 Rebuild patches 2017-09-06 22:59:08 -04:00
Shane Freeder
ada06c9e99 Rebuild patches 2017-09-03 01:09:35 +01:00
BillyGalbreath
8fc7933953 LivingEntity#setKiller 2017-08-24 15:18:41 -04:00
Riley Park
cc7b5ac739 Allow specifying a custom "authentication servers down" kick message
Thanks to @phenomax in #855
2017-08-17 16:13:22 -07:00
Shane Freeder
7fc4d26c3f Update CB 2017-08-16 16:47:06 +01:00
Shane Freeder
a6eb798352 Update S 2017-08-12 22:32:01 +01:00
Zach Brown
7a01df109a Merge pull request #853 from Brokkonaut/dragon-egg-falling
I forgot the // Paper comment
2017-08-11 21:39:54 -05:00
Brokkonaut
db39b99f26 I forgot the // Paper comment 2017-08-12 02:23:35 +02:00
Zach Brown
73f04c4828 Don't let Player#getLocale return null
Thanks for reporting @MatrixTunnel
2017-08-11 18:16:00 -05:00
Zach Brown
e70452db81 Remove null values in TileEntity tick list
Because who wouldn't want to tick a null tile entity right?
Fixes GH-851
2017-08-11 17:59:44 -05:00
Shane Freeder
4bf6691021 Update CB 2017-08-11 12:02:53 +01:00
Brokkonaut
3c154072d3 MC-94186 Fix dragon egg falling in lazy chunks
Fixes falling dragon eggs in lazy chunks fall to the block below the last empty block and replacing that block with them.

See also https://bugs.mojang.com/browse/MC-94186
2017-08-11 03:32:07 +02:00
Zach Brown
b8cda19a77 Fix MC-117075: TE Unload Lag Spike
PaperMC port of https://github.com/MinecraftForge/MinecraftForge/pull/4281
2017-08-09 18:11:57 -05:00
Shane Freeder
fbeadaefff Update CB (#846) 2017-08-09 19:44:28 +01:00
BillyGalbreath
19afa58c90 Ocelot despawns should honor nametags and leash (#821) 2017-08-07 22:26:44 -05:00
BillyGalbreath
568f82f3f8 Reset spawner timer when spawner event is cancelled (#819) 2017-08-07 22:25:59 -05:00
chickeneer
0e9f94b07a Fix Nether Portal Creation on cancelled event
Spigot is manipulating the Travel Agents canCreatePortal, but forgot to reset it on cancel

This causes nether portals to not be generated if the event is ever cancelled
2017-08-07 23:08:50 -04:00
Aikar
64b2b87256 Upstream update 2017-08-07 23:05:16 -04:00
DemonWav
2b47debe1e Fix this stupid bullshit 2017-08-06 17:18:20 -05:00
Shane Freeder
23d7d25afe fix construction order in CraftBanner 2017-08-06 16:36:48 +01:00
Shane Freeder
2c4293b0f6 Update B/CB/S 2017-08-05 23:36:47 +01:00
Zach Brown
04e2290f72 Update upstream CB 2017-08-04 22:10:30 -05:00
Minecrell
b0f800f0e2 Update JLine to 3.4.0. Fixes #736 2017-08-04 09:15:09 +02:00
BlackHole
01d1cc351b Update to 1.12.1 2017-08-03 16:36:06 +02:00
Aikar
489fda430a Update Upstream 2017-07-30 18:41:08 -04:00
Shane Freeder
fe649493e3 Update B/CB 2017-07-28 14:45:16 +01:00
Aikar
b4131ee68f Further refine logic 2017-07-28 00:04:01 -04:00
Aikar
8ff15ca2af ProfileWhitelistVerifyEvent
Fires when the server is validating if a player is whitelisted.

Allows you to do dynamic whitelisting and change of kick message
2017-07-27 23:39:31 -04:00
Zach Brown
60d5c10c1c There is no reason to continue if we DC a player during shutdown
Thanks Ice
2017-07-27 21:38:25 -05:00
Aikar
8d26bacb73 Fix a bug in recipe books that prevented them from working as they should 2017-07-27 03:13:13 -04:00
Aikar
89ff242bd4 Remove use of FastUtil for unload queue, very bad performance 2017-07-27 00:25:13 -04:00
Aikar
337e7791a6 Resolves GH-806: Respect saving disabled before unloading all chunks in a world
This behavior causes a save to occur even though saving was supposed to be turned off.

It's triggered when Hell/End worlds are empty of players.
2017-07-27 00:09:24 -04:00
Aikar
5495450456 Add getI18NDisplayName API
Gets the Display name as seen in the Client.
Currently the server only supports the English language. To override this,
You must replace the language file embedded in the server jar.
2017-07-26 23:44:09 -04:00
Aikar
5617a28291 Implement ensureServerConversions API
This will take a Bukkit ItemStack and run it through any conversions a server process would perform on it,
to ensure it meets latest minecraft expectations.
2017-07-26 23:40:49 -04:00
Aikar
cab448bd32 Improve the Saddle API for Horses
Not all horses with Saddles have armor. This lets us break up the horses with saddles
and access their saddle state separately from an interface shared with Armor.
2017-07-26 23:31:58 -04:00
Shane Freeder
cdcfbbe285 Add missing coverages for getTileEntity in order to attempt to avoid exeptions when calling getTileEntity (#797) 2017-07-27 04:11:09 +01:00
willies952002
e021202107 Allow Changing of Player Sample in ServerListPingEvent 2017-07-20 18:59:51 -04:00
Zach Brown
160d1ee3f1 JDK-8176055: Fix heap dumps on Java 8u141+
In Java 8u141 (1.8.0_141-b15) and newer, the
com.sun.management.HotSpotDiagnostic::dumpHeap API has changed and now
requires all heap dumps to end with the .hprof file extension.

Before this change, servers running 8u141 would be unable to perform a
heap dump.

For more information, please see the official release notes of Java 8
Update 141, linked below.
http://www.oracle.com/technetwork/java/javase/8u141-relnotes-3720385.html
2017-07-26 20:28:56 -05:00
Aikar
4265551308 Upstream update 2017-07-26 21:12:40 -04:00
Zach Brown
b7336e0204 Update upstream CB 2017-07-24 06:47:43 -05:00
Zach Brown
9115bf4ca0 Update upstream CB 2017-07-22 20:16:06 -05:00
Aikar
ca512353fc Remove last patch, didn't resolve issue. 2017-07-16 20:59:39 -04:00
Aikar
892fca2c4c SPIGOT-3427: Recalculate ConsoleSender permissions after plugins have loaded
Resolves a really weird race condition where the console sender could lose permission to execute
commands defined in plugin.yml with default=op
2017-07-16 20:41:30 -04:00
Aikar
a289bd5949 Update upstream (memory leak fix) 2017-07-16 20:36:27 -04:00
Zach Brown
8bc0a37de6 Port Sponge's heap dump command feature to Paper
To dump the server heap, run the following command:
`/paper heap`

This is added with the intent that it is useful for administrators and
developers to more easily identify and resolve memory leaks. Both by examining
these dumps themselves and by more easily allowing them to send them to
knowledgable parties.

This is a nearly line-for-line port of the same Sponge feature. So all
credit for the idea and implementation belongs to the that team.

Specifically the following commits:
be08be04b0
5e10a1b795
2017-07-15 18:59:18 -05:00
Zach Brown
91fbee7d15 Clear plugin metadata only after onDisable()
Fixes GH-776
2017-07-15 14:38:16 -05:00
Aikar
3ecd084ba8 Fix Anvil Level sync to client
763827668e

Was done incorrectly and is now causing level desyncs to client.

Always send current level to the client, and instead make setWindowProperty set the level.
2017-07-11 23:23:17 -04:00
Shane Freeder
43d46feb48 Update B/CB 2017-07-10 14:04:41 +01:00
Shane Freeder
b1c4f49c7a Update C 2017-07-09 10:56:36 +01:00
BillyGalbreath
99f530c937 Add Entity#fromMobSpawner API
Merges and closes GH-752
2017-07-09 01:38:30 -05:00
Shane Freeder
6e57283e32 Fix javadoc warnings 2017-07-03 16:38:49 +01:00
Zach Brown
65daf84cdb Block player logins during server shutdown
Adds GH-765
2017-07-02 21:37:56 -05:00
Aikar
61bbe8c3b3 Update upstream 2017-06-30 18:13:06 -05:00
Aikar
46e300045a Update upstream 2017-06-25 20:26:00 -04:00
Zach Brown
3f5b488720 Update upstream B/CB 2017-06-25 18:00:32 -05:00
Minecrell
39235e607d Avoid using System.out for colored messages. Fixes #757
Messages written to System.out are automatically redirected to the
root logger by CraftBukkit. However, before the messages reach the
logger, they are encoded and later decoded again using the standard
system encoding.

On some systems (e.g. FreeBSD), the standard system encoding is
US-ASCII by default, which doesn't support the section sign (§) that
is used for the color codes. Consequently, they will never reach
the formatter that translates them into ANSI escape codes.

There is no reason to write these messages to System.out - it just
adds additional overhead and the encoding problems. We can just log
the messages directly with the root logger.
2017-06-21 10:46:18 +02:00
Aikar
104b4ec3ae Fix Lootable bug 2017-06-20 18:59:18 -04:00
Aikar
285746c465 update upstream 2017-06-20 18:53:55 -04:00
Zach Brown
1c208bf05b Update upstream CB/S 2017-06-18 20:36:55 -05:00
Aikar
43e2c9c48c Profile Lookup Events
Adds a Pre Lookup Event and a Post Lookup Event so that plugins may prefill in profile data, and cache the responses from
profiles that had to be looked up.
2017-06-17 17:15:25 -04:00
sweepyoface
5d51c00fac Add UnknownCommandEvent (#746) 2017-06-17 20:53:31 -04:00
Aikar
60177fdfaf Shoulder Entities Release API
Let's you eject the Parrot naturally and get the newly spawned Parrot.
2017-06-17 15:20:25 -04:00
Zach Brown
7b4fe3ed73 Update upstream CB 2017-06-17 14:18:29 -05:00
Minecrell
e26d8346bd Continue reading from console input after EOT
There is usually no reason to stop reading from the console, so
preventing console input after EOT can be extremely confusing.

To prevent this, we can simply ignore the exception thrown by
JLine and continue reading normally.
2017-06-14 09:31:44 +02:00
Minecrell
98b036eab0 Remove unneeded WINDOWS_COMPAT ConsoleAppender
It was originally added in Bukkit/CraftBukkit@6aafe7c5a1 as a
workaround for BUKKIT-4956 to fix console output on Windows.

I believe the original issue was related to LOG4J2-965 and fixed
in apache/logging-log4j2@d04659c. Minecraft 1.12 finally updated
the Log4J version so this issue is no longer present.

Console output is still working fine on Windows after removing this.
2017-06-13 10:10:22 +02:00
Zach Brown
964e06c9a5 Update upstream B/CB/S 2017-06-12 22:28:09 -05:00
Zach Brown
cd7f5199e8 Renumber patches, fix conflicts, update for 1.12 2017-06-11 20:02:57 -05:00
BillyGalbreath
a86bd09bb7 PlayerAttemptPickupItemEvent (#732) 2017-06-11 19:46:11 -05:00
BillyGalbreath
899f4969c1 PlayerPickupItemEvent#setFlyAtPlayer (#683)
* PlayerPickupItemEvent#setFlyAtPlayer
2017-06-11 19:43:59 -05:00
BillyGalbreath
e91f3880b7 EntityPickupItemEvent (#679)
EntityPickupItemEvent
2017-06-11 19:42:01 -05:00
BillyGalbreath
d1f99dde16 Item#canEntityPickup (#680)
Item#canEntityPickup
2017-06-11 19:40:42 -05:00
Shane Freeder
451ff56710 Provide a configurable option to disable creeper lingering effect spawns 2017-06-11 21:13:59 +01:00
Zach Brown
bdd63e020c Merge pull request #728 from Minecrell/terminalconsoleappender
Improve console implementation
2017-06-11 15:12:27 -05:00
Zach Brown
e3dd2d2df2 Update upstream CB/S 2017-06-11 12:03:07 -05:00
Minecrell
e0aa38d35e Improve console implementation
Rewrite console improvements (console colors, tab completion,
persistent input line, ...) using JLine 3.x and TerminalConsoleAppender.

New features:
  - Support console colors for Vanilla commands
  - Add console colors for warnings and errors
  - Server can now be turned off safely using CTRL + C. JLine catches
    the signal and the implementation shuts down the server cleanly.
  - Support console colors and persistent input line when running in
    IntelliJ IDEA

Other changes:
  - Update JLine to 3.3.1 (from 2.12.1)
  - Server starts 1-2 seconds faster thanks to optimizations in Log4j
    configuration
2017-06-09 19:05:12 +02:00
Riley Park
991082d2a2 Add configuration option to prevent player names from being suggested 2017-06-09 07:29:59 -07:00
Aikar
e68554e5c6 Update upstream 2017-06-09 08:29:44 -04:00
Shane Freeder
1ee4b36a97 Re: Actually exit the JVM after stopping the server when /restart is ran 2017-06-09 01:46:54 +01:00
Shane Freeder
36c0415d72 Do not relocate fastutil 2017-06-08 19:07:00 +01:00
Shane Freeder
8bb457e352 Update Paper to MC 1.12 2017-06-08 15:16:51 +01:00
Zach Brown
74ffc20767 Update upstream B/CB 2017-06-02 23:41:05 -05:00
Shane Freeder
9cf2e3b3dc Update to 1.12-pre6 2017-05-31 09:04:52 +01:00
Zach Brown
9534f437f4 Add more info, triggers to watchdog velocity warn
Adds entity name to exception message
Checks that the velocity to be set is NaN
2017-05-28 00:06:26 -05:00
Zach Brown
81159a37d4 Update upstream B/CB/S 2017-05-27 23:25:17 -05:00
Zach Brown
914c16f3b2 Bump outdated build notification back out to norm
Merge outdated notification patch into existing branding patch
2017-05-26 22:46:27 -05:00
Zach Brown
16113437c6 Update upstream B/S 2017-05-23 17:11:28 -05:00
Zach Brown
b39f2133a1 Update Paper to MC 1.12-pre5 2017-05-20 23:41:39 -05:00
Zach Brown
8fb32efc40 Merge branch 'master' into pre/1.12 2017-05-18 18:43:21 -05:00
Shane Freeder
1695252805 Actually exit the JVM after stopping the server when /restart is ran 2017-05-18 21:15:47 +01:00
Zach Brown
43a4d24ea0 Merge branch 'master' into pre/1.12 2017-05-17 17:52:45 -05:00
Shane Freeder
0377b7b862 Workaround a jansi bug with Windows
Update Paperclip too while we're here
2017-05-17 17:51:42 -05:00
Zach Brown
d4441c91ef Add an option to make parrots stick to shoulders
When enabled, Parrots will not fly off of a player's shoulder everytime
they change Y level, touch water, sneeze, etc.
Instead, a player must toggle shift to "shake" the parrots off.
2017-05-16 21:34:47 -05:00
Zach Brown
f7d8aa4188 Update upstream B/CB/S 2017-05-15 11:25:20 -05:00
Zach Brown
b75e22ccb2 Merge branch 'master' into pre/1.12 2017-05-15 10:57:42 -05:00
Zach Brown
22910b09c3 Switch 1.12-pre2 to its own version checks
Fix stream formatting issue that had been bugging me
2017-05-15 10:28:28 -05:00
Zach Brown
ab4ae72fd5 Update to MC 1.12-pre2 2017-05-14 13:05:01 -05:00
Shane Freeder
f3bc708389 Allow the watchdog to try sanely stopping the server 2017-05-14 14:49:56 +01:00
Zach Brown
2c33c8b106 Update upstream CB 2017-05-13 20:37:46 -05:00
Zach Brown
c480f39ff9 Add system property to disable book size limits 2017-05-13 20:26:19 -05:00
Zach Brown
54e5a2e4da Publicly execute the main thread at dawn
GH-684

Better handles most true deadlock situations
2017-05-13 05:51:09 -05:00
Zach Brown
302f743310 Properly handle async calls to restart the server
GH-681
2017-05-12 23:49:59 -05:00
Zach Brown
26d7646a75 Update upstream B/CB/S 2017-05-04 18:08:52 -05:00
Zach Brown
d3f692b39b Raise book max title length to 32 2017-04-29 20:43:14 -05:00
Zach Brown
64b19558b6 Remove last bit of chunk exists region file fix
CraftBukkit removed their implementation that caused this issue,
switching to Mojang's implementation which doesn't appear to share it. I
already removed the important bit in the last upstream merge, this is
just unused and unnecessary now. So we remove it.
2017-04-29 05:27:31 -05:00
Zach Brown
2671b8b308 Update upstream B/CB/S 2017-04-28 19:25:52 -05:00
Zach Brown
6645aa1301 Fix patch conflict with upstream 2017-04-22 17:49:47 -05:00
Zach Brown
2aca63ddef Update upstream CB/S 2017-04-22 17:41:28 -05:00
Shane Freeder
4200b785dc Remove Ignore invalid Marker Icon ID's in maps
Spigot has patched this issue inside MapIcon, meaning that we no longer need to maintain this patch; Spigots patch also fixes #668 in that it will verify the length of the array, as well as protect against a negative type value being fetched from the array. Only real change is that Spigots patch returns a MapIcon.Type.PLAYER, instead of the RED_MARKER as originally PR'd by Aikar.
2017-04-22 15:32:06 +01:00
Shane Freeder
24f6670a17 Use lastIndexOf in Metrics class to futureproof
Because who's going to remember to change that line...
2017-04-22 02:37:58 -05:00
Zach Brown
22e2858fee Update bStats implementation 2017-04-22 01:16:45 -05:00
Zach Brown
0d1f8be81d Update upstream B/CB 2017-04-21 23:42:59 -05:00
Zach Brown
17a3117d38 Merge pull request #663 from electronicboy/player-death-passenger-bug
Call stopRiding() on a Players death
2017-04-21 18:06:53 -05:00
Zach Brown
90927cd654 Update upstream B/CB 2017-04-20 08:22:08 -05:00
Shane Freeder
a4036ed3cb Call stopRiding() on a Players death
Currently, when a player dies they are not automatically ejected from the entity they are riding, which allows
for the ridden entity to affect the players location on respawn (we're still riding it for a part of a tick), as well as allows a dupe to occur with the ridden entity teleporting to the new world with the player
2017-04-18 15:08:27 +01:00
Zach Brown
515506c3ce Update upstream B/CB/S
Closes GH-658
2017-04-16 17:12:01 -05:00
Zach Brown
9aba83bfdc Update upstream CB/S 2017-04-10 22:11:26 -05:00
Riley Park
965f78b3af Fix NFE caused by attempting to read an EMPTY ItemStack
Thanks @gabizou
2017-04-09 23:50:46 -07:00
Zach Brown
66a6db73e0 Update upstream B/CB 2017-03-31 23:24:42 -05:00
Zach Brown
bc4e080971 Update upstream CB 2017-03-30 18:26:00 -05:00
Zach Brown
b6fe136d35 Switch metrics impl to use thread executor service 2017-03-26 18:29:38 -05:00
Zach Brown
4340ef97ca Switch to a bStats based Metrics system 2017-03-25 00:22:02 -05:00
Zach Brown
1471ac1b64 Merge pull request #628 from willies952002/feature/reloadCommands
Don't Display Success Message on Alias Reload Fail
2017-03-24 22:34:13 -05:00
Zach Brown
de6a101264 Update upstream B/CB/S
Adds /paper command for reloading the paper config.
Closes GH-639

Per-world config logging has been removed in favor of all or nothing
logging for all paper settings. I don't believe it was used enough to
warrant maintaining. If this is not the case it should be possible to
re-add it.
2017-03-24 22:18:58 -05:00
Zach Brown
eb4870b509 Remove unnecessary blocking of chest minecarts
This is already covered by recent changes.
Closes GH-373
2017-03-19 16:17:24 -05:00
Zach Brown
b73556fc5c Update upstream B/CB 2017-03-18 21:01:13 -05:00
Shane Freeder
4a48c0504f Ensure that the world of a dead entity is not changed in a portal 2017-03-19 01:33:26 +00:00
Shane Freeder
33b8a43e4a Only set the location of the newly spawned entity 2017-03-17 13:17:52 +00:00
Zach Brown
5916c653b6 Just make sure an entity's exit is set properly
Don't re-add, it's redundant and you end up with inconsistent
inconsistencies inconsistently
2017-03-17 00:50:43 -05:00
Zach Brown
0b19d62632 Make sure the entity is still added to the world 2017-03-17 00:04:34 -05:00
Shane Freeder
4a940edbe8 Fix a duplicate alive entity on second world 2017-03-16 22:31:53 -05:00
Zach Brown
a69434f9d1 Update upstream B/CB/S
Closes GH-631
2017-03-15 09:32:50 -05:00
willies952002
cb08e8ae4c Don't Display Success Message on Alias Reload Fail
Also add "commands" to Tab Completion
Note: This required a signature change to Bukkit#reloadCommandAliases() so that it returns a boolean based on if the command aliases reloaded or not.
2017-03-12 13:19:04 -04:00
chickeneer
0c8c9b087a Fix tick loop bug - Fixes #624
We were not calculating time after the sleep ,resulting in wrong
calculations. This caused us to go 100ms, 0ms, 100ms, 0 ms repeatedly.
2017-03-10 03:01:46 -05:00
Zach Brown
252bca6deb Alter furnace cookTime based on total cook time
Fixes GH-613
2017-03-02 20:57:20 -06:00
Zach Brown
f17c296756 Do not let ArmorStands drown under water 2017-02-18 19:34:46 -06:00
Zach Brown
12310fa5f3 Update upstream B/CB/S 2017-02-17 20:03:38 -06:00
Zach Brown
3e91cc60e4 Update upstream B/CB/S 2017-02-10 18:12:58 -06:00
Brokkonaut
75618c5da8 Make chunk unload targetSize more aggressive
Re: GH-597
2017-02-08 15:11:43 -06:00
Zach Brown
3f2569f79f Disable Spigot's chunk unload queue throttling
Seems to be causing more problems than it's solving
Closes GH-597
2017-02-07 16:59:12 -06:00
Zach Brown
e741a89374 Update upstream CB, reduce version cache time
Closes GH-602
2017-02-07 16:29:26 -06:00
Aikar
7daac312a5 Shame on you Mojang
Someone wrote some horrible code that throws a world accessing task
onto the HTTP DOWNLOADER Thread Pool, for an activity that is not even
heavy enough to warrant async operation.

This then triggers async chunk loads!

What in the hell were you thinking?
2017-02-05 19:19:35 -05:00
Aikar
c5851f632a Remove CraftScheduler Async Task Debugger
I have not once ever seen this system help debug a crash.
One report of a suspected memory leak with the system.

This adds additional overhead to asynchronous task dispatching
2017-02-05 00:13:28 -05:00
Aikar
36ce1b950a Add more timings to Scheduler and other improvements 2017-02-05 00:13:16 -05:00
Aikar
8246be5c3d More improvements to Timings, RCON now is no longer blocking!
Finally made timings accept "Callback style" reports, so plugins
can listen for when the report is done.

Added new Util interfaces, MessageCommandSender and BufferedCommandSender

This restores and improves using RCON to generate timings reports
2017-02-04 22:47:39 -05:00
Zach Brown
e3b3799b67 Update upstream S 2017-02-04 03:59:44 -06:00
Zach Brown
789bb0b834 Update upstream CB
Closes GH-596
2017-02-01 22:48:16 -06:00
Zach Brown
a3cc3e37bd Update upstream S 2017-01-30 22:33:54 -06:00
Zach Brown
013c024ca2 Update upstream CB 2017-01-28 17:36:03 -06:00
Zach Brown
65a99a06a8 Update upstream B/CB/S 2017-01-25 22:27:42 -06:00
Zach Brown
21a724147a Do not allow a zero max height in BiomeJungle
Fixes GH-592

Thanks to the forge team who noticed this issue long ago
2017-01-23 15:11:07 -06:00
Aikar
9e81fe5059 Cap Entity Collisions - Resolves #577
Limit a single entity to colliding a max of configurable times per tick.
This will alleviate issues where living entities are hoarded in 1x1 pens

This is not tied to the maxEntityCramming rule. Cramming will still apply
just as it does in Vanilla, but entity pushing logic will be capped.

You can set this to 0 to disable collisions.
2017-01-22 18:24:14 -05:00
Zach Brown
bff3f5cccd Yank import from last 2017-01-21 17:12:25 -06:00
Zach Brown
4cce8f0cda Expose WorldBorder@isInBounds(Location) check 2017-01-21 17:06:28 -06:00
Aikar
03263ff5df Remove the Vanilla Method Profiler
Spigot rebrought this back after it was removed for years due to the performance hit.

It is unknown if the JIT will optimize it out as effeciently with how it was
added, so we do not want any risk of performance degredation.

Paper has a proper Timings system that makes the Vanilla Method profiler obsolete and inferior.
2017-01-21 02:02:52 -05:00
Zach Brown
51072f8241 Fixup patch file 2017-01-20 09:12:47 -06:00
BillyGalbreath
5d4b4bd35d Add fromBottle flag to Experience Orbs (#584)
* Add fromBottle flag to Experience Orbs
2017-01-20 09:01:53 -06:00
Zach Brown
b0348aea3e Update upstream B/CB/S 2017-01-20 05:21:44 -06:00
Zach Brown
f37dddfe3e Merge pull request #582 from prplz/player-count
Add World.getPlayerCount
2017-01-14 16:07:01 -06:00
Zach Brown
26f60ea587 Now I am become Death, the destroyer of newlines 2017-01-14 02:12:59 -06:00