Commit graph

2155 commits

Author SHA1 Message Date
Aikar
d9971432c2 re-add timing that spigot missed 2016-05-27 22:29:09 -04:00
Aikar
e9c7cca230 Ensure chunks never load async
Force operation to main thread if it occurs async
2016-05-27 22:28:23 -04:00
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
Zach Brown
af4db4ddea [16:55:31] *mibby pokes upstream 2016-05-16 17:00:53 -05: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
Aikar
8e62fb709b Timings v2: Start methods return self for use in try-with-resources
try (Timing ignored = timing) {
  // Code to time
}
// auto stops timing, even if you return in 42 other places in the block
2016-05-15 17:34:26 -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
f623f903cd Move bad command registration workaround into SMP#dispatch
Fixes GH-274
2016-05-13 00:13:38 -05: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
Aikar
6025355569 clean up spigot working files out of our Paper folder 2016-05-12 22:11:11 -04:00
Aikar
5d952ffa7e Use a more reliable fixed width sequence for rebuild patches 2016-05-12 21:37:14 -04:00
Aikar
9bba4a53e5 Be more targetted with patch deletion 2016-05-12 21:24:19 -04:00
Zach Brown
3b4f1c9497 Merge pull request #279 from DemonWav/tmux
Add tmux support to Paper test and add test to paper command help.
2016-05-12 13:09:51 -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
DemonWav
2f8b09e1bd Add tmux support to Paper test and add test to paper command help. 2016-05-11 21:59:07 -05: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
Zach Brown
d8d75b106c Merge pull request #269 from Gabscap/fix-entity-tracker
Add null-check to "Entity Tracking Improvement"
2016-05-06 09:47:21 -05: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
22d5cbee82 Update Upstream 2016-05-04 20:10:27 -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