Commit Graph

693 Commits

Author SHA1 Message Date
Aikar
3732877c5c Rework that save cap patch and make it configurable 2016-11-04 01:55:36 -04:00
Aikar
e9542e33fd Don't process auto save if the save queue is filled
This avoids ever growing pending NBT objects which eat up memory.
2016-11-04 01:33:08 -04:00
Aikar
5fe1de30c9 Prevent Hoppers from loading chunks by double chest 2016-11-04 01:32:53 -04:00
Aikar
c15001e24d Fix faulty logic in Auto Save check - Fixes #443 2016-11-04 01:31:49 -04:00
AlphaBlend
e0f49c8788 Add EntityZapEvent 2016-10-16 23:27:02 -07:00
Zach Brown
5b6d46e4c8 Update upstream CB 2016-10-23 01:32:04 -05:00
Zach Brown
3552c9103a Revert CB's SPIGOT-1903 fix in favor of ours
Fixes GH-453
2016-10-22 15:36:19 -05:00
Zach Brown
745be9013b Remove changes to lava/water cobblestone gen
Unintended side effects in recent versions, this patch has likely
outlived its usefulness.

Closes GH-452
2016-10-21 16:08:34 -05:00
Zach Brown
4bef47531a Properly update patches for upstream merge 2016-10-21 15:42:49 -05:00
Zach Brown
2515c80051 Update upstream B/CB 2016-10-21 15:28:44 -05:00
Aikar
4708920d8d Updated Timings to better detail saves 2016-10-20 00:21:35 -04:00
Aikar
59eb1231b5 Revert "Option to hide plugins from the Query Protocol"
This already exists

This reverts commit d6a9c326c7.
2016-10-19 23:38:18 -04:00
Aikar
d6a9c326c7 Option to hide plugins from the Query Protocol 2016-10-19 23:37:14 -04:00
Zach Brown
d5ae910f82 Add option to remove corrupt tile entities
Closes GH-437
2016-10-05 16:28:17 -05:00
AlphaBlend
793dc2df52 Add hit entity to ProjectileHitEvent 2016-10-05 16:07:29 -05:00
Zach Brown
6d41d88931 Remove TE Fixer changes
Ultimately they should be unnecessary now that upstream's fix has been
in place for a while. Removing this reduces our own footprint, and gets
rid of any possible unintended behavior.
2016-10-05 15:46:44 -05:00
Aikar
c59127a587 Disable Vanilla Chunk GC in favor of Bukkits 2016-09-26 01:52:01 -04:00
Aikar
e081f311cb don't save level every tick for auto save. whoops 2016-09-26 01:50:26 -04:00
Zach Brown
dd0277fdb5 Raise bad Y auto fix to avoid gameplay issues
Per discussion here, 663fbf798e (commitcomment-19153154)
2016-09-23 17:25:21 -05:00
Aikar
731f141042 Raise string limit for packet serialization
The default limit is possible to hit with 50 page books with color codes, causing clients to disconnect.

Bump the limit up a hair to above currently seen sizes.
2016-09-21 23:56:41 -04:00
Aikar
663fbf798e Auto fix bad Y levels on player login
Bring down to a saner Y level if super high, as this can cause the server to crash
2016-09-21 23:49:27 -04:00
Aikar
59b9ad36e6 Remove FishingHook reference on Craft Entity removal
This caused some bugs chickeneer reported to me, with fishing.
2016-09-21 23:45:05 -04:00
Aikar
d330ae5050 Process NMS Data Conversion post ItemMeta on Copy
ItemMeta apply is a destructive process that expects to be the authority on
what the items NBT data is.

When CraftItemStack.asNMSCopy was called, the conversion ran, potentially setting
the converted data into the ItemStacks tag.

Then if that item had ItemMeta, it would completely undo that conversion by
erasing the NBT Tag.

On copy, run conversion post ItemMeta apply.
2016-09-21 23:42:13 -04:00
Aikar
cc1f66ce0e add a chunk registration fix
World checks and the Chunk Add logic are inconsistent on how Y > 256, < 0, is treated

Keep them consistent
2016-09-21 22:56:19 -04:00
Aikar
77825c2a60 Log chunk save failures as ERROR level 2016-09-21 22:33:09 -04:00
Aikar
6c7ea0b67a Auto Save Improvements
Makes Auto Save Rate setting configurable per-world. If the auto save rate is left -1, the global bukkit.yml value will be used.

Process auto save every tick instead of once per auto tick interval, so that chunk saves will distribute over many ticks instead of all at once.

Re-introduce a cap per tick for auto save (Spigot disabled the vanilla cap) and make it configurable.
2016-09-21 22:12:56 -04:00
Aikar
7c6d0644a2 Don't save players every tick, oops 2016-09-19 23:39:21 -04:00
Aikar
f18f712da2 Incremental Auto Saving
Process auto save every tick instead of once per auto tick interval, so that chunk saves will distribute over many ticks instead of all at once.
2016-09-19 23:31:42 -04:00
Riley Park
57569597bd Configurable flying kick messages
Closes #423
2016-09-20 00:58:32 +00:00
Zach Brown
66dc00b4dd Stop collideRule team from seeing invis 'friends'
More appropriately aligns ourself with the no team option, because the
collideRule team is only a team because it has to be, not because we want
anyone to have any sort of gameplay based relationship.

Also block any options from being set on this team to further enforce that
it is not a persistent team and should not be treated as such.
2016-09-15 16:36:57 -05:00
Zach Brown
e4251a092b Block minecart portal teleports in some instances
Mitigates GH-373
Technically a workaround rather than a true fix
2016-09-14 18:52:41 -05:00
Zach Brown
ca7a828688 Update upstrean CB/S 2016-09-11 14:55:02 -05:00
Zach Brown
4bf0ca21fe Make UseItem rate limiting stricter, configurable 2016-09-10 23:27:07 -05:00
Zach Brown
5ba385dd4c Fix patch, need to investigate build issues 2016-09-10 22:45:09 -05:00
Zach Brown
4b7796fe7c [ WHITESPACE ] 2016-09-10 22:09:14 -05:00
Zach Brown
4dcb73693a Add rate limiting to PacketPlayInUseItem as well
Also removes our toggle for Spigot's option, I doubt anyone uses it.
2016-09-10 21:42:47 -05:00
Zach Brown
b0a15ca1ea Further safety for player collision setting
Hopefully the end of similar problems
Fixes GH-415
2016-09-08 12:39:40 -05:00
Zach Brown
6dedb92652 Make collide team removal more patient, safer
Fixes GH-414
2016-09-06 12:33:47 -05:00
Zach Brown
949fc0534f Create a team as needed for disabling collisions
Fixes GH-383
2016-09-04 17:29:25 -05:00
Zach Brown
b4eceb16ec Update upstream B/CB 2016-09-04 16:59:06 -05:00
Brokkonaut
449309fc3d Fix an AIOOBE in inventory handling
Closes GH-404
2016-09-04 16:49:29 -05:00
Zach Brown
65858cf283 Merge pull request #408 from kashike/feature/health-conversion
Convert new health to a float
2016-09-04 16:05:38 -05:00
Riley Park
7a403d82a0 @Zbob750 missed a few name changes 2016-09-04 06:26:05 +00:00
Riley Park
ac750065e3 Convert new health to a float during set
Convert the new health value to a float before doing any validation logic
2016-09-01 09:54:06 +00:00
Zach Brown
2df56fa35b Revert team creation for player collision setting
Needs more work, have redone it locally but its not quite ready for
prime time.
2016-08-31 19:22:43 -05:00
Zach Brown
0ccbb356f1 Rename patch file to be more specific 2016-08-31 17:18:54 -05:00
killme
755861dfb6 Disable ticking of snow blocks 2016-08-30 16:42:17 +02:00
Zach Brown
246294d161 Make getEntity dead check more specific 2016-08-28 00:46:21 -05:00
Zach Brown
8a2d6a1790 Restore some timings functionality lost in last 2016-08-27 19:36:26 -05:00
Zach Brown
fcbbc76319 Update upstream B/CB/S
Remove two features added upstream
2016-08-27 18:41:58 -05:00
Aikar
086939fe19 Timings v2 updates for more chunk related timings (generations) 2016-08-20 00:07:26 -04:00
Alfie Cleveland
3820e163d4 Optimise BlockStateEnum 2016-08-19 01:53:36 +01:00
Zach Brown
e9de969c6f More changes to view distance API implementation
Should fix GH-381
2016-08-13 15:26:40 -05:00
Gabriele C
a4cb20da95 Introduce a setting to handle offline proxies
Servers behind a bungeecord proxy in offline mode
will now properly pull offline mode UUIDs and data
when this setting is set to false. Default is unchanged.
2016-08-12 18:08:53 -05:00
Zach Brown
58ba189a32 Send Bukkit scoreboards as well as vanilla boards
Fixes GH-384
2016-08-04 19:46:35 -05:00
Zach Brown
25f92d9a28 Re-track players that dismount from other players
Fixes GH-265
2016-07-31 16:33:25 -05:00
Zach Brown
55e3d057b8 Fix entity tracking when the player is the vehicle
Fixes GH-378
2016-07-31 15:22:25 -05:00
Zach Brown
10961ebac6 Randomly generate team names for earlier commit
[17:17] _MylesC: the biggest issue you run into is bungee not handling
2 teams with same name :(
http://i.imgur.com/jbDigxW.png
2016-07-30 18:13:56 -05:00
Zach Brown
a48b906896 Send a fake team as needed for the collision rule 2016-07-30 17:04:39 -05:00
Zach Brown
4db0ba851c Update upstream B/CB/S 2016-07-30 18:02:34 -05:00
Zach Brown
163d33a68b Default configuration changes
Disable push based hoppers by default
Set chunk unload delay to 15s by default
Neither of these changes are retroactive for old users
2016-07-28 20:57:36 -05:00
Zach Brown
2ea6b93c67 Make alternative falling block ground detection configurable
Workaround for GH-336
2016-07-28 20:54:48 -05:00
Zach Brown
023780514f More informative vehicle moved wrongly log message 2016-07-28 19:17:26 -05:00
Zach Brown
2ee4beaa3a Cleanup obfuscation helper comment format 2016-07-27 17:46:02 -05:00
Zach Brown
608d77d492 Update upstream B/CB 2016-07-26 19:30:03 -05:00
Zach Brown
96e8a799b4 Push based hoppers cleanup 2016-07-22 18:54:48 -05:00
Zach Brown
359f9ad8cf Update upstream CB 2016-07-22 17:24:30 -05:00
Zach Brown
4b8526fd6d Fix TNTPrimed head hight calculation
Fixes GH-370
2016-07-19 18:48:08 -05:00
Zach Brown
e9a21993b2 Less strict skull validation
Fixes GH-367
2016-07-18 18:07:48 -05:00
Gabscap
a589eedb2a Fix-Banner Patch: Display correct time in F3 2016-07-17 18:25:24 +02:00
Zach Brown
949044df1a Don't try and lookup profiles that have no UUID and no name
Closes GH-347
2016-07-16 20:19:25 -05:00
Zach Brown
950ad80c15 Remove use-hopper-check functionality that we restored
Our improved hopper checking system should provide a better benefit without
as many vanilla behavior issues.
2016-07-16 20:10:43 -05:00
Zach Brown
719164b4ce Update upstream B/CB/S 2016-07-15 17:36:53 -05:00
Zach Brown
aff7563c30 Update upstream B/CB/S 2016-07-12 23:22:58 -05:00
Zach Brown
b9926dcb47 Block sketchy head items and blocks 2016-07-10 10:45:05 -05:00
Zach Brown
78f5fda472 Disable delayed chunk unloads by default
While the option remains a powerful tool we recommend everyone use, 30s is
proving to be a bit much for certain gametypes and many admins are confused
that after updating they are now facing extreme loaded chunk counts.

We do recommend experienced users configure this value as needed, but we
cannot keep it as a default option given the variety of gametypes, the
potential inexperience of new users, and previous users upgrading and
now facing extreme chunk counts that offer little benefit.
2016-06-30 21:41:10 -05:00
Aikar
122f47ac1c More Upstream tacos 2016-06-30 01:38:53 -04:00
Zach Brown
b978b76443 Update upstream CB
It seems they've gotten their own workaround figured out, we'll keep our own fix for TE removal in but let them try theirs and see if it's better now.
2016-06-26 22:51:20 -05:00
Zach Brown
98c7a31d79 Stop overwriting block locations, root issue looks to be the TE fixer itself
Fixes GH-352
2016-06-26 18:38:39 -05:00
Zach Brown
afb1926947 Move setBlock tile->tile transition workaround into TE removal 2016-06-26 13:58:12 -05:00
Zach Brown
e93299df87 Update upstream CB
Doesn't change anything except puts the last commit upstream, where it belongs
because we're nice like that, or something
2016-06-25 21:34:09 -05:00
Zach Brown
e213840fce Update clients when setting blocks to air 2016-06-25 21:09:08 -05:00
Zach Brown
57cff1f17f Update to MC 1.10.2 2016-06-25 12:19:04 -05:00
Aikar
ba61e44475 Fix Old Sign Conversion
1) Sign loading code was trying to parse the JSON before the check for oldSign.
       That code could then skip the old sign converting code if it triggers a JSON parse exception.
    2) New Mojang Schematic system has Tile Entities in the new converted format, but missing the Bukkit.isConverted flag
       This causes Igloos and such to render broken signs. We fix this by ignoring sign conversion for Defined Structures
2016-06-22 22:56:57 -04:00
Aikar
faa5f1fb18 Fix Double World Add issues - Fixes #328
Vanilla will double add Spider Jockeys to the world, so ignore already added.

Also add debug if something else tries to, and abort before world gets bad state
2016-06-22 22:50:19 -04:00
Aikar
6463bc2fe2 Optimize isInvalidYLocation, getType and getBlockData
Some pretty micro optimizations, but this is the hottest method in the server....

This will drastically reduce number of operations to perform getType

the 2 previous patches was squashed into 1
2016-06-22 22:43:02 -04:00
Aikar
03553d232e Update upstream 2016-06-22 22:18:41 -04:00
Zach Brown
7253bb10ca Update upstream B/CB 2016-06-19 21:41:46 -05:00
Jadon Fowler
62af55a00c Toggleable Elytra Wall Damage
Instead of calculating the damage taken from hitting a wall, you can
disable it in the config.
2016-06-18 23:14:58 -07:00
Aikar
284e2f4856 Delay Chunk Unloads based on Player Movement
When players are moving in the world, doing things such as building or exploring,
they will commonly go back and forth in a small area. This causes a ton of chunk load
and unload activity on the edge chunks of their view distance.

A simple back and forth movement in 6 blocks could spam a chunk to thrash a
loading and unload cycle over and over again.

This is very wasteful. This system introduces a delay of inactivity on a chunk
before it actually unloads, which is maintained separately from ChunkGC.

This allows servers with smaller worlds who do less long distance exploring to stop
wasting cpu cycles on saving/unloading/reloading chunks repeatedly.
2016-06-18 23:33:57 -04:00
totokaka
cd0d4d1674 Fix issue with setting player view distance 2016-06-18 20:52:11 -05:00
Aikar
76ccb4c5f0 Remove the item from the correct hand when spawn egg depletes 2016-06-18 03:44:11 -04:00
Techcable
94a6e8cb09 Make entities look for hoppers
Cherry-pick of PR GH-319
2016-06-18 01:03:40 -05:00
Zach Brown
9127c31ed6 Fix missed case in top of nether void damage patch
General cleanup, etc.
Closes GH-343
2016-06-18 00:25:37 -05:00
Jadon Fowler
3093562782 Fix infinite loop when saving chunks
Running `/save-all flush` would start an infinite loop that prints:
    ThreadedAnvilChunkSotrage (world): All chunks are saved
2016-06-17 02:29:57 -07:00
Zach Brown
9e7853d9dd Remove timings addition that was fixed upstream 2016-06-15 17:51:30 -05:00
Zach Brown
3497f7000d Update upstreams 2016-06-15 17:43:51 -05:00
Zach Brown
03eeadc2df Update upstream B/CB
Merges fixes for SPIGOT-2404 and SPIGOT-2408 into Paper
2016-06-13 18:42:08 -05:00
Zach Brown
0aaf5eb95c Update upstream B/CB 2016-06-11 22:22:27 -05:00
Jedediah Smith
ad39344717 Resolve an ISE in MagmaBlock damage handling 2016-06-11 19:10:18 -05:00