Commit graph

845 commits

Author SHA1 Message Date
Spigot
adb44bebb1 Pass the offline/bungee uuid to PreLogin events (Closes #147)
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-04-07 00:42:16 +01:00
Spigot
96bd50d89a Add 1.7.6pre1 support.
This doesn't require any configuration changes and will support 1.7.2 / 1.7.5 etc as well.

By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-04-05 09:11:28 +11:00
Spigot
fbf54955d5 Upstream merge
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-04-03 21:12:44 +01:00
Spigot
b07d19630a Fixed mob spawners being treated as solid blocks for the orebfuscator
Mob spawners are treated as solid blocks as far as the game is concerned for lighting and other tasks but for rendering they can be seen through, therefor we special case them so that the antixray doesn't show the fake blocks around them.

By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-04-03 10:50:48 +01:00
Spigot
7733c78063 Correct patch start comment.
By: md_5 <git@md-5.net>
2014-04-02 18:05:47 +11:00
Spigot
fc70685814 Allows greater control over Tab Command Complete.
You can now specify how many letters of the command must be typed before it will be tab completed this will help deter people from just spamming round all the commands to see if there is one incorrectly set up.
0 will tab complete all commands
-1 will disable tab complete

1 will mean you have to type the first letter
2 will mean you have to the second letter... etc...

By: Ginger Geek <MailMe@GingerGeek.co.uk>
2014-04-02 18:00:58 +11:00
Spigot
c936739c09 Merge some stuff from upstream.
By: md_5 <git@md-5.net>
2014-04-02 17:54:35 +11:00
Spigot
04c83ec337 Fix TileEntities getting ticked after being queued for removal
By: FrozenBrain <carstenbamsti@googlemail.com>
2014-03-23 01:54:55 +01:00
Spigot
3c74759030 Configurable boss sound radii.
By: drXor <mcyoungsota@gmail.com>
2014-03-28 12:32:18 -04:00
Spigot
e16cd1f8c5 Replace the village window patch with one that effects all windows (Closes #143)
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-30 17:00:57 +01:00
Spigot
0ce025d157 Prevent the inevitable server lag|crashes caused by people doing a blocking operation on the main thread.
By: md_5 <git@md-5.net>
2014-03-30 09:16:12 +11:00
Spigot
968a96a1d3 Upstream: Add more expansive UUID based operations
By: md_5 <git@md-5.net>
2014-03-30 09:09:24 +11:00
Spigot
36fa69bb23 Re-add a fixed version of the "Improved Ping Sending" patch
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-28 21:54:36 +00:00
Spigot
35c52d3c87 address -> realAddress
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-27 11:53:41 +00:00
Spigot
2bcb8342f2 Fix several occurances of missed diff between the current version of mc-dev.
By: md_5 <git@md-5.net>
2014-03-27 16:01:13 +11:00
Spigot
3e379f3c2f Use the right constructor for bungeecord support
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-26 23:53:19 +00:00
Spigot
6f1cee9dd3 Remove the Improved Ping Sending patch
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-26 20:34:47 +00:00
Spigot
a4e6c2ad50 Handle case where currentTick could be negative
@Aikar is there a better way to handle this?

By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-26 15:18:11 +00:00
Spigot
71bee88b32 Make restart command ignore async checks. This is needed for the watchdog to properly restart.
By: md_5 <git@md-5.net>
2014-03-25 16:13:09 +11:00
Spigot
8274fa890a Remove async op catcher to its own class
By: md_5 <git@md-5.net>
2014-03-25 16:11:22 +11:00
Spigot
143ea9829c Upstream merge
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-24 20:36:29 +00:00
Spigot
cd765d61e7 Move part of the Watchdog patch back into the correct patch
I have no idea how I managed to mess this up

By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-24 17:51:06 +00:00
Spigot
6cdbf78b0e Fix missed diff in TileEntityHopper
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-24 12:01:26 +00:00
Spigot
9f40be7e54 Fix conflicts
By: md_5 <git@md-5.net>
2014-03-24 17:12:40 +11:00
Spigot
10de9c0a8b Re-add missed method to the Player Collision API
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-23 18:16:32 +00:00
Spigot
26df4f1c88 Cap villagers' window name to prevent client disconnects
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-23 10:54:53 +00:00
Spigot
8704cd78a5 Fix the removal of potion effects
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-23 09:49:23 +00:00
Spigot
61d5d29069 Fix some merge conflicts
By: md_5 <git@md-5.net>
2014-03-23 15:21:51 +11:00
Spigot
1dfd23fd4a Check for manually prefixed commands or commands that don't need a prefix for calling vanilla commands with command blocks
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-23 01:29:13 +00:00
Spigot
62a846538d this.t() -> this.u() - make the server actually tick!
By: md_5 <git@md-5.net>
2014-03-23 11:34:50 +11:00
Spigot
2e5240dfa2 Don't print permgen warning for java 8+
By: md_5 <git@md-5.net>
2014-03-23 11:20:02 +11:00
Spigot
b215942177 Update to 1.7.5
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-23 00:06:43 +00:00
Spigot
2bba2bc54f Re-add missing Player part of the particle API
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-20 22:29:54 +00:00
Spigot
8d921a2a4d Remove the lastChunkAccessed if it is unloaded.
This fixes an issue where a chunk would be unloaded but remain in lastChunkAccessed meaning calls on getChunkAt could return a chunk that is no longer loaded, this caused an issue where the chunk could be reloaded whilst in use reverting any block changes. This caused findEndPortal to return null even after createEndPortal which would crash the server trying to teleport to a null location.

By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-18 09:52:01 +00:00
Spigot
c3b8ba3086 Allow enchanting tables to enchant any item when plugins prompt them to.
By: drXor <mcyoungsota@gmail.com>
2014-03-15 02:28:55 -04:00
Spigot
69f21892a5 Change various "Nope!" kick messages to something more descriptive and less confusing for players.
By: drXor <mcyoungsota@gmail.com>
2014-03-15 01:32:18 -04:00
Spigot
4a813dc887 Optimize Player Lookup - #112
Optimize player lookup and various player operations. We mainly do this by keeping a map instead of iterating through all players. We also speed up the duplicate login check and a few other checks by simply checking for one matching player.

Thanks @aikar for some of the implementation

By: md_5 <git@md-5.net>
2014-03-15 14:34:26 +11:00
Spigot
ac0fd305ef Allow the potion effect caused by WitherSkulls to be cancelled along with damage cancellation (e.g. via events).
By: drXor <mcyoungsota@gmail.com>
2014-02-25 15:17:29 -04:00
Spigot
cfea560dfd Alter BungeeCord support to require BungeeCord when it is enabled.
By: md_5 <git@md-5.net>
2014-03-15 08:46:24 +11:00
Spigot
f1c7168421 Re-add the Fix ConcurrentModificationException while being idle kicked in a vehicle patch
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-12 21:26:40 +00:00
Spigot
3985d6815c Rebuild patch hashes, fix build.
By: md_5 <git@md-5.net>
2014-03-10 09:14:45 +11:00
Spigot
74b65b1d0e Strengthen entity list guard patch back up to its original level. Whilst upstream fixes attempt to fix this, they aren't fully functional and can cause the server to crash. This way we can both identify bad plugins and stop all crashes.
By: md_5 <git@md-5.net>
2014-03-10 09:04:25 +11:00
Spigot
75687b16c6 Pop guard entity list patch to top
By: md_5 <git@md-5.net>
2014-03-10 08:37:28 +11:00
Spigot
af72eb7b94 Add more spigot links
By: md_5 <git@md-5.net>
2014-03-09 14:33:30 +11:00
Spigot
2c4d0bee45 Prevent hoppers from loading chunks
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-03-07 19:56:42 +00:00
Spigot
2a98b1853e Use one PermissibleBase for all Command Blocks.
This fixes issues with too many command blocks lagging or crashing the server, as well as just increases their performance in general.

By: FrozenBrain <carstenbamsti@googlemail.com>
2014-03-02 21:18:22 +01:00
Spigot
2c24774651 Normalize spaces on when reading a chat packet
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-26 14:47:01 +00:00
Spigot
4174fc654a Update "Don't special case x move value" patch to ensure that move events are always fired, regardless if there are any "special cases"
By: md_5 <git@md-5.net>
2014-02-24 18:04:12 +11:00
Spigot
ae9daebd38 Silent Lightning API
By: drXor <mcyoungsota@gmail.com>
2014-02-23 16:20:51 -04:00
Spigot
9d7bf61c55 Update SHA1 Info
By: Zach Brown <Zbob750@live.com>
2014-02-17 20:56:13 -06:00
Spigot
c94c983b44 Fix ClearTickList to return correct value
Previously it always returned false, this fixes it to return whatever value the user has it set to.

By: Zach Brown <Zbob750@live.com>
2014-02-17 20:44:13 -06:00
Spigot
40e489fae1 Return entity-tracking field other to intended usage.
By: Dmck2b <dmck2b+github@gmail.com>
2014-02-17 12:19:44 +00:00
Spigot
03d3c973a7 Unfinalize the isDisconnected() method by bukkit.
By: hcherndon <hcherndon@gmail.com>
2014-02-15 09:23:33 +00:00
Spigot
b4a49d9437 Set lastTick to prevent first few ticks from being too quick
By: md_5 <git@md-5.net>
2014-02-13 17:34:01 +11:00
Spigot
1a47c3a3fb Make the TPS command accurate by averaging over the sample interval, not just the current tick.
By: md_5 <git@md-5.net>
2014-02-13 17:27:00 +11:00
Spigot
416ffd3506 Re-add the replace-commands feature
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-12 20:45:59 +00:00
Spigot
7073c502e9 Upstream merge
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-12 13:48:26 +00:00
Spigot
8a02a8d067 Cap Channel Registrations to 128 entries
By: md_5 <git@md-5.net>
2014-02-12 20:03:12 +11:00
Spigot
66d0e067b8 Allow Disabling Creative Item Filter
By: md_5 <git@md-5.net>
2014-02-12 18:18:07 +11:00
Spigot
b7d7dcbd85 Add support for fetching hidden players via Spigot object
By: Tux <write@imaginarycode.com>
2014-02-09 14:05:23 -05:00
Spigot
30578fed6a Fire BlockPlaceEvent for Half Slab Completion
Fixes BUKKIT-5390

By: Aikar <aikar@aikar.co>
2014-02-09 19:02:00 +11:00
Spigot
e89af399aa Add option to silence commandblock output to console: commands.silent-commandblock-console
By: md_5 <git@md-5.net>
2014-02-09 14:39:15 +11:00
Spigot
396950f89f Readd Spam Filter Exclusions patch
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-08 08:15:21 +00:00
Spigot
982909f214 Fix dispensing bone meal not having the correct data value
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-06 22:01:07 +00:00
Spigot
0995cdfc29 Hopefully fix the AntiXray this time. Thanks to @geNAZt for helping
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-05 21:40:15 +00:00
Spigot
4d2ba245d1 Revert "Fix the isLoaded check for AntiXray" Seems to causes issues still
This reverts commit fd2627af7c.

By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-05 19:55:31 +00:00
Spigot
fd2627af7c Fix the isLoaded check for AntiXray
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-02-05 09:25:41 +00:00
Spigot
051a14d29b 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.
By: md_5 <git@md-5.net>
2014-02-04 17:24:18 +11:00
Spigot
b91d7995aa Allow air as an orebfuscator block
By: md_5 <git@md-5.net>
2014-02-03 17:55:48 +11:00
Spigot
a2ea539a2c Fix nerf-spawner-mobs
By: Dmck2b <dmck2b+github@gmail.com>
2014-02-02 17:03:20 +00:00
Spigot
ca5c6d3106 Async chunk compression needs a little bit more work still, disable for now
By: md_5 <git@md-5.net>
2014-02-02 12:26:23 +11:00
Spigot
f9b31ab7b6 Refactor chunk compression to use its own thread pool in order to eliminate disconnect race conditions caused by Mojang's nasty disconnect routines.
By: md_5 <git@md-5.net>
2014-02-02 09:41:27 +11:00
Spigot
f06778df6a 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.

By: md_5 <git@md-5.net>
2014-02-01 18:14:48 +11:00
Spigot
e51f210106 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.

By: Aikar <aikar@aikar.co>
2014-01-31 10:36:58 -05:00
Spigot
d49c50289e Implement Locale Getter for Players
By: Smove <jan@lavasurvival.net>
2014-02-01 18:12:22 +11:00
Spigot
123fcc5f33 Add warning when null chunk buffers are encountered - most likely due to the orebfuscator plugin.
By: md_5 <git@md-5.net>
2014-02-01 18:07:22 +11:00
Spigot
615f117878 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

By: md_5 <git@md-5.net>
2014-02-01 17:53:32 +11:00
Spigot
2cd0029267 Use correct bitmask variable for orebfuscator
By: md_5 <git@md-5.net>
2014-02-01 10:42:59 +11:00
Spigot
99ececedb4 Upstream merge
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-01-31 20:42:29 +00:00
Spigot
e152cdbd9b Don't allow respawning offline players
By: md_5 <git@md-5.net>
2014-01-31 18:15:33 +11:00
Spigot
2c1e392d13 Sacrifice oreobfuscator performance for safety and reliability.
By: md_5 <git@md-5.net>
2014-01-31 16:07:28 +11:00
Spigot
68e9340bfd Correctly set arrows' current block
By: Thinkofdeath <thethinkofdeath@gmail.com>
2014-01-30 20:42:01 +00:00
Spigot
f9de62bfdb 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

By: md_5 <git@md-5.net>
2014-01-30 16:02:25 +11:00
Spigot
994015de83 Show full stack trace for errors during chunk caching/compression
By: md_5 <git@md-5.net>
2014-01-30 06:58:37 +11:00
Spigot
c3ff978d51 Use a crc32 of all the blocks in the chunk as our hash key. This is much more unique.
By: md_5 <git@md-5.net>
2014-01-29 12:51:20 +11:00
Spigot
5641d50681 Merge pull request #108 from Dmck2b/PermGenLink
Add more information about changing PermGen size
By: md-5 <md_5@live.com.au>
2014-01-28 16:04:00 -08:00
Spigot
87a0f66c62 Fix unit tests
By: md_5 <git@md-5.net>
2014-01-29 09:08:29 +11:00
Spigot
05f0f87d55 [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.

By: md_5 <git@md-5.net>
2014-01-29 09:04:51 +11:00
Spigot
2304886127 Add more information about changing PermGen size
By: Dmck2b <dmck2b+github@gmail.com>
2014-01-28 17:51:26 +00:00
Spigot
6fd6437d95 Use simpler iterator
By: md_5 <git@md-5.net>
2014-01-28 21:46:15 +11:00
Spigot
3f8acf3f09 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.
By: md_5 <git@md-5.net>
2014-01-28 21:45:06 +11:00
Spigot
ae3c025c4a Only 1 class is compressible, don't bother interfacing.
By: md_5 <git@md-5.net>
2014-01-28 20:50:34 +11:00
Spigot
2e56f6db27 Only create a single executor / compressor instance.
By: md_5 <git@md-5.net>
2014-01-28 20:43:57 +11:00
Spigot
43c5f52de3 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!

By: md_5 <git@md-5.net>
2014-01-28 20:36:05 +11:00
Spigot
615107d0d3 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.

By: md_5 <git@md-5.net>
2014-01-28 20:32:37 +11:00
Spigot
0c538f5fe5 Merge tick shuffling branch into master.
By: md_5 <git@md-5.net>
2014-01-27 08:40:12 +11:00
Spigot
5daa2e1c61 Revert Spigot branding.
By: md_5 <git@md-5.net>
2014-01-26 21:54:02 +11:00
Spigot
87c6f7ea4b Allow configuring of player sample size, and default the sample to 12, the same as Vanilla. This has some performance overhead, as we have to shuffle the list each time, but this is better than the server displaying as offline!
By: md_5 <git@md-5.net>
2014-01-26 21:50:53 +11:00
Spigot
3ca7ea1b9f Revert "Experimentally brand as "Spigot". This will be reverted if *any* plugin compatibility issues arise."
This reverts commit 4a7355c626.

By: md_5 <git@md-5.net>
2014-01-26 21:33:46 +11:00
Spigot
d0795c8248 Always use real player count for displayed online players.
By: md_5 <git@md-5.net>
2014-01-26 12:48:32 +11:00