Commit Graph

1167 Commits

Author SHA1 Message Date
hcherndon ede7aeb8b4 Unfinalize the isDisconnected() method by bukkit. 2014-02-15 09:23:33 +00:00
md_5 fe0461396c Disable timings off as well 2014-02-13 18:15:38 +11:00
md_5 a08d1e540d Set lastTick to prevent first few ticks from being too quick 2014-02-13 17:34:01 +11:00
md_5 d44874ea0b Make the TPS command accurate by averaging over the sample interval, not just the current tick. 2014-02-13 17:27:41 +11:00
Thinkofdeath 73fe3123f6 Re-add the replace-commands feature 2014-02-12 20:45:59 +00:00
Thinkofdeath 5284bd1a74 Upstream merge 2014-02-12 14:06:33 +00:00
md_5 5aad14d2b6 Cap Channel Registrations to 128 entries 2014-02-12 20:03:12 +11:00
md_5 7c5df6b5bb Allow Disabling Creative Item Filter 2014-02-12 18:18:07 +11:00
md-5 a17299c334 Merge pull request #119 from minecrafter/master
Add support for fetching hidden players via Spigot object
2014-02-10 08:11:06 +11:00
Tux 95653d8b2d Add support for fetching hidden players via Spigot object 2014-02-09 14:05:23 -05:00
Aikar ee9d8c7590 Fire BlockPlaceEvent for Half Slab Completion
Fixes BUKKIT-5390
2014-02-09 19:02:00 +11:00
md_5 d504751f12 Add option to silence commandblock output to console: commands.silent-commandblock-console 2014-02-09 14:39:15 +11:00
Thinkofdeath 3c5f2712e6 Readd Spam Filter Exclusions patch 2014-02-08 08:15:21 +00:00
Thinkofdeath 18c8e057b2 Fix dispensing bone meal not having the correct data value 2014-02-06 22:01:07 +00:00
Thinkofdeath 7c1dbb44a5 Hopefully fix the AntiXray this time. Thanks to @geNAZt for helping 2014-02-05 21:40:15 +00:00
Thinkofdeath 9746d9bfc6 Revert "Fix the isLoaded check for AntiXray" Seems to causes issues still
This reverts commit fc52435f5b.
2014-02-05 19:55:31 +00:00
Thinkofdeath fc52435f5b Fix the isLoaded check for AntiXray 2014-02-05 11:37:16 +00:00
md_5 170aa26ca3 You're never gonna win, are you. People want bugs as a result of increased performance fixed, but then they want more performance as a result of bugs fixed. This reverts orebfuscator back to being threaded, and thus more performant, but unsafe. 2014-02-04 17:24:18 +11:00
md_5 4e47d75136 Allow air as an orebfuscator block 2014-02-03 17:55:58 +11:00
thinkofdeath 8806f91b69 Merge pull request #115 from Dmck2b/FixSpawnerNerfer
Fix nerf-spawner-mobs not being fully functional
2014-02-02 09:07:32 -08:00
Dmck2b 0dbe0ab691 Fix nerf-spawner-mobs 2014-02-02 17:03:20 +00:00
md_5 bff5ac5d37 Async chunk compression needs a little bit more work still, disable for now 2014-02-02 12:26:23 +11:00
md_5 77fbb062d9 Refactor chunk compression to use its own thread pool in order to eliminate disconnect race conditions caused by Mojang's nasty disconnect routines. 2014-02-02 09:41:27 +11:00
md_5 fd83772302 Cap Entity Collisions
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.
2014-02-01 18:14:48 +11:00
Aikar be31d62f43 Cap Entity Collisions
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.
2014-02-01 18:13:02 +11:00
Smove b4530237fb Implement Locale Getter for Players 2014-02-01 18:12:22 +11:00
md_5 16afc3b31c Add wiki link to /timings on command 2014-02-01 18:08:42 +11:00
md_5 61a227c8c3 Add warning when null chunk buffers are encountered - most likely due to the orebfuscator plugin. 2014-02-01 18:07:22 +11:00
md_5 161e853450 In short, there isn't actually anything wrong with the async chunk compressor, it just accidentally caused console logging of errors which were previously ignored.
This commit restores that behaviour

You may be asking yourself why we are completely ignoring any errors which come this far down the pipeline.
The answer is quite simple:
Mojang did it
The default Mojang pipeline doesn't have any ChannelOutboundHandlerAdapter or similar instances, and thus nothing to handle exceptionCaught
So when a channel.write() or channel.flush() fails, the error message is actually just passed straight to the future provided.
It is then subsequently discarded, the channel closed, and no one except the user was any the wiser it actually happened!
Unfortunately for us, the default exceptionCaught in this class sends a blaring warning to the server admins indicating that it couldn't send a packet to a disconnected user!
We don't care about these warnings, if we did something wrong to disconnect the user, it is already logged in the proper location, as are broken sockets
tl;dr no need to blare warnings on each write to a broken socket
2014-02-01 17:53:32 +11:00
md_5 12358efad3 Use correct bitmask variable for orebfuscator 2014-02-01 10:44:25 +11:00
Thinkofdeath 31f53fbbbe Upstream merge 2014-01-31 20:42:29 +00:00
md_5 16ea6a1c25 Didn't update fully for some reason... 2014-01-31 21:22:40 +11:00
SpigotMC cf8a0fe75f Automatically update upstream versions. Bukkit-1.7.2-R0.2-16-ga621d16, CraftBukkit-1.7.2-R0.2-30-g88d138f 2014-01-31 05:19:28 -05:00
md_5 8decebe96e Don't allow respawning offline players 2014-01-31 18:15:33 +11:00
md_5 4864fd1c26 Sacrifice oreobfuscator performance for safety and reliability. 2014-01-31 16:07:28 +11:00
Thinkofdeath 42a026634b Correctly set arrows' current block 2014-01-30 20:42:01 +00:00
md_5 564ebde3ad Move exception logging to method body so we don't end up logging all outbound exceptions, which other plugins (cough ProtocolLib) may or may not be causing.
Also rumours this patch causes the server to break with ProtocolLib installed.
@aadnk
2014-01-30 16:02:25 +11:00
md_5 7bd5666ee2 Show full stack trace for errors during chunk caching/compression 2014-01-30 06:58:37 +11:00
md_5 a780739071 Use a crc32 of all the blocks in the chunk as our hash key. This is much more unique. 2014-01-29 12:51:20 +11:00
md-5 1bf13129a5 Merge pull request #108 from Dmck2b/PermGenLink
Add more information about changing PermGen size
2014-01-28 16:04:00 -08:00
md_5 911b500845 Fix unit tests 2014-01-29 09:08:29 +11:00
md_5 feacfb991d [Experimental] - Enable compressed bulk chunk cache.
Sort chunks a final time before sending. This gives the advantage that chunks will load as close to the player as they possibly can, and then move out, as well as increase the cache hit rate when using smaller bulk chunk limits such as the default of 5.
2014-01-29 09:04:51 +11:00
md_5 23615e1c9f Use simpler iterator 2014-01-29 08:47:29 +11:00
md_5 202b1fd11d Implement a compressed chunk cache. This still needs a lot of work to figure out a good mechanism for looking up previous chunks, however at the moment when coupled with a high bulk chunk limit, it can be effective for solving lag issues. 2014-01-29 08:47:29 +11:00
md_5 cd7bb0da14 Only 1 class is compressible, don't bother interfacing. 2014-01-29 08:38:37 +11:00
md_5 638b1724d0 Only create a single executor / compressor instance. 2014-01-29 08:38:37 +11:00
md_5 e8933c1890 Allow Configuring Chunks per Packet. This enables server owners to cram more chunks per packet, potentially leading to higher compression ratios, thus saving bandwidth and load time.
This is currently set at the Vanilla default value of 5, however initial testing seems to suggest there could be good performance / usability / bandwidth gains by setting it to its maximum value of 32768. Testers are welcome to experiment with this option, beware the placebo though!
2014-01-29 08:38:37 +11:00
md_5 82cf01b53f Implement Threaded Bulk Chunk Compression.
This offloads chunk compression to a new thread, which should help with the pauses often seen when teleporting large amounts of players.
2014-01-29 08:38:37 +11:00
Dmck2b 73d3519fca Add more information about changing PermGen size 2014-01-28 17:51:26 +00:00
thinkofdeath 72b48c77af Merge pull request #107 from brajo/master
Fix typo on /timings on message
2014-01-27 07:08:00 -08:00