Commit graph

522 commits

Author SHA1 Message Date
Zach Brown
ff2c1ee38e Update upstreams 2016-05-27 21:22:18 -05:00
Aikar
cac7bbc139 Remove unneeded mob spawn cap patch - Fixes #235
I misread the code and thought the code kept looping until the mob spawn cap was hit.

Upon furthur review, this is not true, so this patch doesn't do anything sane.
2016-05-27 21:35:28 -04:00
Aikar
45aa7db5c4 Update Upstream 2016-05-25 12:37:17 -04:00
Martin Panzer
bd2fb5d530 Optimize Redstone torch list removal 2016-05-24 20:08:40 -05:00
Zach Brown
50277c2ceb Remove comment and fix build }}}}} 2016-05-22 21:20:15 -05:00
Zach Brown
4e74c43218 Re-add some method synchronization and move to a SingleThreadedExecutor in MCUtils 2016-05-22 21:14:17 -05:00
Zach Brown
87366c4f4d Temporarily remove synchronization from UserCache optimizations
In regards to GH-301
2016-05-22 21:07:40 -05:00
Zach Brown
5f6f6c6321 Update old TNT cannon mechanics patch to 1.9.4
Behavior may be buggy or otherwise broken, testing with the option is needed.
`fix-cannons` has been removed in favor of `enable-old-tnt-cannon-behaviors`
2016-05-22 20:26:15 -05:00
Zach Brown
32ea7542d2 Update upstream CB
Closes GH-303
2016-05-21 22:07:14 -05:00
Zach Brown
143ab568d4 Update B/CB/S
Closes GH-288
2016-05-20 17:32:50 -05:00
Aikar
8bee892ded Avoid blocking on Network Manager creation
Fixes #294

Use a pending list to handle new connections so that the netty threads
do not block waiting for the main thread to finish ticking
2016-05-16 23:21:26 -04:00
Aikar
c623104ffa MC-99914 - ensure EntityItem loads before EntityPotion 2016-05-16 22:54:48 -04:00
Aikar
4bead5b898 bump the default maxMobSpawns default to 250, and add support for unlimited
Use -1 to represent vanilla/unlimited.
Updated PaperWorldConfig to also update the individual worlds limit if it was set
to the new default value.

Should hopefully help #235
2016-05-16 22:07:12 -04:00
Aikar
478f246490 Optimize UserCache / Thread Safe
Because Techable keeps complaining about how this isn't thread safe,
easier to do this than replace the entire thing.

Additionally, move Saving of the User cache to be done async, incase
the user never changed the default setting for Spigot's save on stop only.
2016-05-16 21:14:28 -04:00
Aikar
1a5414bc4e Add Async Helper method to MCUtil 2016-05-16 20:50:09 -04:00
Aikar
e4c179e827 Refactor Lighting Queue System
may help #284

Cleans up the lighting queue system, reducing diff and improving implementation.

We no longer stop chunk unloads due to lighting updates, and instead simply flush the lighting queue.
The cost of forcing the chunk (and its neighbors!) to stay loaded waiting for its
lighting work to finish is much greater than simply taking the hit and doing the work.

This change also helps reduce the diff and avoid bugs with missed diffs by removing
duplicated logic.

Also switches to a more effecient data structure (ArrayDeque instead of LinkedList) for the queue itself.
2016-05-15 18:48:39 -04:00
Zach Brown
b9c321ff21 TileEntityLootable can call processRefill with a null player
Seems specific to EntityMinecartChest
Fixes GH-290
2016-05-15 01:41:36 -05:00
Aikar
0c78971552 More cases of avoiding marking active for chunks, to stop potential leaks 2016-05-13 22:27:20 -04:00
Aikar
016dca3390 Bring back an EAR optimization from 1.9.2 2016-05-13 01:39:03 -04:00
Aikar
b6d0dd32c6 Fix chunk leak issue with queued light updates 2016-05-13 01:34:37 -04:00
Zach Brown
f30c245be2 Make watchdoge disabler its own patch file
Change implementation, smaller diff, less NPE
2016-05-12 23:04:49 -05:00
BlackHole
b2087ca1af Override BlockPosition.MutableBlockPosition.isValidLocation()
Fixes GH-281
2016-05-12 12:56:48 -05:00
Aikar
4e3d8a41ee Fix T/TE removal list bug
Thanks @Cat6363
2016-05-12 08:55:35 -04:00
Aikar
1850ae22cf unmark chunk as unloading when unload is cancelled
no obviousy bugs caused by this at the moment, but we may need to clean up process to be like
how I use to have it before vanilla did it, and we shouldn't leave this boolean in an invalid state.
2016-05-12 02:07:39 -04:00
Aikar
a1916005e1 Fix chunk unload leak issues due to neighbor updates 2016-05-12 01:55:53 -04:00
Aikar
34fcd8ccc2 Paper 1.9.4 Update 2016-05-11 22:07:46 -04:00
Zach Brown
324bde1f10 Make beacons force secondary potion effect application
Fixes GH-273
Missed case from earlier fix 29dccccac4
2016-05-08 15:33:53 -05:00
Aikar
68f8205a32 Don't save empty scoreboard teams to scoreboard.dat - Fixes #244
While I can't think of any reason to do this except some REALLY weird workflow, I still added a config
to let you save them incase someone runs into issues.
2016-05-07 23:39:22 -04:00
Aikar
e7be15b884 fix bug with lootable API
was returning the NMS instance of objects instead of the Bukkit API objects
2016-05-07 21:16:38 -04:00
Gabscap
b9cdcf1d68 Add null-check to "Entity Tracking Improvement" 2016-05-06 16:09:52 +02:00
Zach Brown
b6da0fdf02 Move this somewhere sane 2016-05-05 20:18:20 -05:00
Zach Brown
da5cd0a63e Revert "Add debug property to disable the watchdog"
This reverts commit d1c470756f962801e7d3bc19bee9440f33a4706e.
2016-05-05 20:10:32 -05:00
Zach Brown
139c4ccf0d Add debug property to disable the watchdog
Use at your own risk, we will not waste our time with support
if your server times out and you cant put 2+2 together to
figure out that its because you killed the watchdoge
2016-05-05 20:02:38 -05:00
Aikar
5c5c2b0a22 Fix hopper suck in patch bug
was checking for ItemStack's instead of EntityItem
2016-05-05 20:22:01 -04:00
Aikar
2570184ba1 Implement getNMSWorld on EntityMinecartContainer
Was missed because the class is abstract and nothing implementing the class was imported in Paper
2016-05-04 20:33:16 -04:00
Aikar
37eafdba1b Entity Tracking Improvements
If any part of a Vehicle/Passenger relationship is visible to a player,
send all passenger/vehicles to the player in the chain.
2016-05-04 20:10:22 -04:00
Aikar
7947dd83ae Do not load chunks for pathfinding 2016-05-04 19:53:33 -04:00
Aikar
3da6be053f LootTable API & Replenishable Lootables Feature
Provides an API to control the loot table for an object.
Also provides a feature that any Lootable Inventory (Chests in Structures)
can automatically replenish after a given time.

This feature is good for long term worlds so that newer players
do not suffer with "Every chest has been looted"

API and Event added to control the Auto Replenish feature for players.
2016-05-01 23:54:08 -04:00
Aikar
496b49861c Rename a Timings class and split up Tracker timings 2016-04-29 21:23:40 -04:00
Aikar
b1e4588ae7 Improve Maps (in item frames) performance and bug fixes
Maps used a modified version of rendering to support plugin controlled
imaging on maps. The Craft Map Renderer is much slower than Vanilla,
causing maps in item frames to cause a noticeable hit on server performance.

This updates the map system to not use the Craft system if we detect that no
custom renderers are in use, defaulting to the much simpler Vanilla system.

Additionally, numerous issues to player position tracking on maps has been fixed.
2016-04-29 20:04:12 -04:00
Aikar
156b1cc524 comment out the other update call instead
otherwise might break stuff
2016-04-27 22:22:35 -04:00
Aikar
1652bda38d Improve Minecraft Hopper Performance
Removes unnecessary extra calls to .update() that are very expensive
Also reset cooldown each hopper tick that a hopper is full.
2016-04-27 22:15:57 -04:00
willies952002
4d7ed88be2 Reimplement PlayerEditBookEvent 2016-04-26 23:00:23 -04:00
Riley Park
f7f0155c11 Add ability to disable, and to set min/max next tick delay, of frosted_ice. Resolves #172 2016-04-21 23:54:34 -07:00
Riley Park
9d57423ba3 Merge pull request #230 from kashike/feature/arrow-pickup
Arrow pickup rule API
2016-04-25 13:27:51 -07:00
Zach Brown
c2407019bf SPIGOT-1401: Fix dispenser/dropper/furnace placement being different from SP 2016-04-24 19:56:04 -05:00
Aikar
8b2f631d9b Fix Player View Distance API corrupting Chunk Sending - Fixes #207
The Player View Distance patch has been screwing with the configured world view distance.

The world a player was created in would set the players view distance, which would be locked to that distance.

Then switching worlds would not give you an updated view distance.

This then caused issues with what view distance the player should have in the chunk map and did not send chunks to the client correctly during movement.

This patch has now been changed to use a -1 default for "default" and will not override view distance until someone has actually used the API to change it.
2016-04-23 21:39:22 -04:00
Aikar
b91603c782 remove potentially bad check 2016-04-23 13:10:55 -04:00
Aikar
73c44798c5 Fix a vanilla bug thats likely causing the mob spawn issues 2016-04-23 12:27:46 -04:00
Aikar
2a2540e76c improve the jackass test 2016-04-23 11:57:39 -04:00