Commit Graph

987 Commits

Author SHA1 Message Date
md_5
7c5df6b5bb Allow Disabling Creative Item Filter 2014-02-12 18:18:07 +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
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
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
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
md_5
6bf69c66f3 Merge tick shuffling branch into master. 2014-01-27 08:40:12 +11:00
md_5
d3f7cce233 Revert Spigot branding. 2014-01-26 21:54:02 +11:00
md_5
6eefe4e38e 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! 2014-01-26 21:50:53 +11:00
md_5
ab3c5a42f7 Revert "Experimentally brand as "Spigot". This will be reverted if *any* plugin compatibility issues arise."
This reverts commit 71255cf140.
2014-01-26 21:33:46 +11:00
md_5
8e785b132f Always use real player count for displayed online players. 2014-01-26 12:48:32 +11:00
md_5
aec53a59da Initialise ping array on startup. The code to decide when to regenerate the array is a bit iffy (Mojang!), as it relies on System.nanoTime() which is not an absolute time source. 2014-01-26 12:30:38 +11:00
md_5
fa94a8a99a Adjust TPS command to start at 20tps, show * for catchup TPS, and round to 2 decimal places. 2014-01-26 12:17:55 +11:00
md_5
8832052c84 Fix Ping Player Sample to bring it back in line with Vanilla behaviour. The behaviour which Bukkit introduced recently is broken on larger servers as it introduces too many players to the list. 2014-01-26 12:14:05 +11:00
md_5
14c0d5cba9 We want to use Math.min, not max to cap displayed TPS to 20 2014-01-26 11:04:55 +11:00
md_5
71255cf140 Experimentally brand as "Spigot". This will be reverted if *any* plugin compatibility issues arise. 2014-01-26 09:17:40 +11:00
md_5
3d6f241c12 Fix double comparison issues. 2014-01-25 16:18:32 +11:00
md_5
53f2f7499c Don't allow plugins to create scoreboards async - this can crash the server. 2014-01-25 15:23:21 +11:00
brutuscat2
2f9b4a8573 TPS isn't capitalized
It makes me want to hurt someone when its written like "Tps"
2014-01-24 22:36:32 -05:00
md_5
a50a1d4c83 Implement a new TPS command which will show the average TPS over the last 1,5 and 15 minutes, using the same algorithm as the linux kernel (exponentiallialy damped moving average). 2014-01-25 14:09:21 +11:00
md_5
49f9f20d1c Add Spigot links. 2014-01-23 13:17:47 +11:00
md_5
526b404545 Move watchdog and timings code to tick method, not tick loop itself. 2014-01-22 19:23:59 +11:00
md_5
29c6c774dd Pop tick loop patch to top 2014-01-22 19:19:39 +11:00
md_5
2367cf0a3d Reapply tick loop patch. 2014-01-22 19:16:21 +11:00
Dmck2b
279df65068 Fix missing colons 2014-01-21 21:34:03 +00:00
md_5
80c8e1ac31 Don't disconnect player when we have no vanilla tab completions. 2014-01-21 15:32:54 +11:00
Thinkofdeath
d8ad596ece Don't let trees replace any block when growing 2014-01-20 20:44:11 +00:00
Dmck2b
77d030879a Allow disabling of ZombiePigmen spawning in portals 2014-01-20 20:20:14 +00:00
md_5
8f2da2ca93 Check j, not i 2014-01-20 15:42:52 +11:00
md_5
74f78b8b88 Reduce memory of hiddenPlayers map. 2014-01-20 13:50:37 +11:00
md_5
a0deef28ee Remove NextTickList processing whilst we look into an issue.
http://www.spigotmc.org/threads/lwc-locks-randomly-going-missing-after-using-1249.10505/

Catch stalling on corrupted map data / NBT arrays.
2014-01-20 13:44:41 +11:00
mikeprimm
12b6f06e81 Merge pull request #95 from SpigotMC/optimize-nextticklist
Port Optimize NextTickList processing patch for 1.7.x
2014-01-18 18:18:31 -08:00
Mike Primm
f0c97f24b8 Port Optimize NextTickList processing patch for 1.7.x 2014-01-18 13:57:03 -06:00
Thinkofdeath
027e514ebf Update chat link fix to use Bukkit's current system instead of the old one 2014-01-18 19:36:47 +00:00
Thinkofdeath
c746557f95 Support vanilla's direction tag on fireballs 2014-01-18 14:30:50 +00:00
Thinkofdeath
0fbde2862d Add /tellraw to the vanilla commands defaults 2014-01-18 13:21:13 +00:00
md_5
49ae0093db Add getRawAddress back 2014-01-17 09:46:59 +11:00
Thinkofdeath
90779a43f9 Block data values that crash the client 2014-01-15 22:13:08 +00:00
md_5
65a4f51285 Upstream merge 2014-01-15 20:28:26 +11:00
Thinkofdeath
fc5cf5a518 Move replace-commands to commands.replace-commands 2014-01-15 09:20:19 +00:00
Thinkofdeath
21656db5d1 Fix ConcurrentModificationException while being idle kicked in a vehicle 2014-01-14 20:14:36 +00:00
md_5
af480b8b95 Revert previous change to clear chunk list on the end of each tick, make it configurable instead.
Whilst the new behaviour was technically correct as it prevented the possibility of the chunk tick list actually increasing over time, it introduced a few issues, namely the fact that it slowed growth to unreasonable levels, and interfered with the values which server admins have finally tuned, and come to enjoy over the last few years.
If it is absolutely essential that growth be halted and ticking reduced as much as possible, the config option is there for power users.
If we wish to 'fix' this by default in the future, a new chunk ticking algorithm, which actually has meaningful config options should be designed.
2014-01-14 19:16:43 +11:00
md_5
0add6ac4af Tweak tab complete disabled to only disable completion of the /command section, and not any subsequent arguments to the command, such as player names or plugin provided completions. 2014-01-13 08:57:22 +11:00
md_5
83c105ef02 Remove accidentally added code 2014-01-13 08:28:17 +11:00
md_5
58dc769bb5 Replace AutoSave Mechanism
The problem here is that MinecraftServer.save(..), will attempt to sleep whilst all pending chunks are written to disk, however due to various and complicated bugs, it will wait for an incorrect amount of chunks, which may cause it to sleep for an overly long amount of time. Instead we will mimic the save-all command in its behaviour, which is both safe and performant.
2014-01-12 21:07:27 +11:00
md_5
8bfd4a8ccb Add more code to try and Debug [Mojang] Crash Reports Crashing 2014-01-12 20:56:59 +11:00
md_5
acd5d21a06 Take 2 at fixing unbreakable code 2014-01-10 15:39:36 +11:00
md_5
1220314f79 Fix ItemStack Unbreakable Code.
This code needs brackets to be compiled correctly.
2014-01-10 15:17:23 +11:00
Thinkofdeath
afe4189e46 Fix anvil collisions
This fixes the server incorrectly moving the player out of an anvil when touching it on the side. The server used the rotation of the last placed anvil instead the of the rotation of the anvil the player was touching.
2014-01-09 14:28:04 +00:00
Thinkofdeath
4ed5d54dde Allow statistics to be disabled/forced 2014-01-08 22:43:39 +00:00
md_5
1e8cb6d468 Update Client's Hand when BlockPlaceEvent Cancelled
Send a Packet103SetSlot to client when a BlockPlaceEvent is cancelled.

Fixes BUKKIT-5284

Currently, whenever a player places a block in a protected area the
equipped itemstack size on client is never updated properly since the
client thinks the block was placed. The reason this happens is because
ItemStack.matches returns true since the server does not decrement stack
size if a BlockPlaceEvent is cancelled. This causes
PlayerConnection.a(handlePlace) not to send the appropriate packet to
client which causes the bug.
2014-01-08 14:45:45 +11:00
md_5
92db88d292 Update Chest Animation when Cancelling Event
Update chest animation after cancelling InventoryOpenEvent. Fixes BUKKIT-1440

Currently if a plugin cancels an InventoryOpenEvent for vanilla chests,
the chest animation for clients is stuck in the open state since
IInventory's closeChest method is never called. To fix the issue, closeChest
is called before exiting the display GUI method.
More info can be found here
https://bukkit.atlassian.net/browse/BUKKIT-1440
2014-01-08 14:44:50 +11:00
md_5
7e43d71c76 Clear chunkTickList at the end of every tick. 2014-01-08 14:38:38 +11:00
md_5
6c0c101bff Fix orebfuscator startup message showing hide blocks instead of replace blocks 2014-01-06 11:38:59 +11:00
md_5
cd0c975a6d Fix Biome Decoration Crashes
We don't really know what affect this will have on the terrain generation, but its better than crashing and not having terrain generate at all!
2014-01-05 09:35:15 +11:00
Thinkofdeath
885ae9871e Disconnect for spam in the main thread 2014-01-03 17:33:41 +00:00
Thinkofdeath
9f71f7e3db Handle different sizes (G,K) for the PermGen warning 2013-12-28 23:54:44 +00:00
md_5
12a1363cea Revert "Use Entity.teleportTo in CraftEntity.teleport"
This reverts commit adaf7c3ae8.
2013-12-24 14:52:45 +11:00
slide23
4fd3ddc33e Add Late Bind Option
Add late-bind config option to delay binding until loading is done.
2013-12-24 10:22:53 +11:00
Andrew Krieger
adaf7c3ae8 Use Entity.teleportTo in CraftEntity.teleport
Entity.teleportTo is largely stable and correct. CraftEntity.teleport,
however, still cannot properly handle cross-world teleportation. Fix it
to defer to the better code in core Minecraft.
2013-12-24 10:18:01 +11:00
md_5
d072f55caa Revert the revert for now. 2013-12-23 21:03:39 +11:00
md_5
624acbd0c8 Increase verbosity of watchdog dumps 2013-12-23 21:01:45 +11:00
md_5
cad440b56a Revert check pending blocks patch as it (may) be causing some crash issues 2013-12-23 20:19:37 +11:00
md_5
f7086eb96d Disable connected check on setScoreboard. Mojang's semi async Netty implementation can lead to race conditions, and this exception being thrown when it really shouldn't. 2013-12-23 15:58:41 +11:00
md_5
45bbe59c15 Fix missing bitshifts 2013-12-23 15:43:33 +11:00
md_5
16467dc148 Warn if PermGen may be insufficient. Since 1.7 Mojang added a lot of new classes to their jar. This, coupled with plugins, may cause the loaded classes to exceed the default perm gem of 64mb. As such we will print a small warning advising users to set a higher PermGen if they haven't already. 2013-12-23 14:08:28 +11:00
Dan Mulloy
9272a671f7 Fix Biome Decoration Crashes 2013-12-23 11:18:44 +11:00
md_5
b32968b9a0 Add option to nerfs mobs from spawners. When this option is enabled, mobs which originate from a mob spawner will not have any AI, ie: brains. They will generally only be affected by water movement, with the exception of blazes which will still emit fireballs and float up and down.
This is disabled by default as it has a strong behavioural impact.
2013-12-22 21:02:55 +11:00
md_5
7b87ab6548 Add the getCubes patch back. Turns out the user with lockups had 23k+ entities in a single chunk. 2013-12-22 10:41:48 +11:00
md_5
6a98142bd5 Fix patch tree. 2013-12-22 10:06:06 +11:00
md_5
31c9311b07 Redo previous getCubes removal. 2013-12-22 10:05:27 +11:00
md_5
7890d0a442 Fix patches some more. 2013-12-22 10:04:44 +11:00
md_5
b47555dc7a Revert "Remove getCubes patch as under some circumstances it can loop around itself forever. For anyone wishing to reimplement this patch, the rationale behind it is quite simple, get all cubes within each chunk at the same time."
This reverts commit 06233ce472.
2013-12-22 10:03:57 +11:00
DerFlash
78bc1384a7 Save ticks lived to nbttag 2013-12-22 10:00:13 +11:00
md_5
06233ce472 Remove getCubes patch as under some circumstances it can loop around itself forever. For anyone wishing to reimplement this patch, the rationale behind it is quite simple, get all cubes within each chunk at the same time. 2013-12-22 09:59:17 +11:00
md_5
2549f4c043 Force Load Chunks for Biome Decoration. May solve some random.nextInt() crashes people have been seeing. 2013-12-21 20:08:42 +11:00
md_5
b42275d94c Fix accidentally reverted mc-dev imports. 2013-12-21 19:14:34 +11:00
md_5
1c099a713b Upstream merge, nothing major. 2013-12-21 19:13:39 +11:00
Thinkofdeath
ed2fd14801 Re-add the particle API 2013-12-20 21:37:22 +00:00
md_5
a1c8965df5 Stage BiomeDecorator so we can get line numbers to match for stack traces. 2013-12-19 17:45:12 +11:00
Thinkofdeath
ee8495a246 Allow the console to use vanilla commands 2013-12-18 11:40:35 +00:00
md_5
8278880f0f Fall back to our own URL clicking method as it works with more cases. 2013-12-18 20:41:42 +11:00
md_5
e9cb6ec3c5 Upstream merge 2013-12-18 17:48:18 +11:00
md_5
fe00a77ac8 Invert command complete check 2013-12-18 17:24:24 +11:00
md_5
4978db4332 Log Cause of Unexpected Exceptions 2013-12-18 13:39:28 +11:00
md_5
61400aa00c Fire PreLogin Events in Offline Mode 2013-12-18 13:32:30 +11:00
Thinkofdeath
eafbb2a4c1 Add VanillaCommandWrapper which allows use of vanilla commands instead of Bukkit's versions 2013-12-18 10:33:58 +11:00
frymaster
bd5e1fbba9 Remove references to chunklist
Commit c576054539790bdeb35285f62863d74b48c0782d removed the chunklist collection stored in ChunkProviderServer, however it has been partially restored in some places by 7e1ac0a77129b169704c1e222ff2deb3ab6cd2d2.  As not all references to this were restored, this has caused the chunklist and chunks collections to become out of sync, resulting in a memory leak.
2013-12-18 09:30:21 +11:00
md_5
8ebb465bf0 Revert processed disconnect change - the flag is not set as reliably as it was in previous server versions. 2013-12-18 08:44:28 +11:00
md_5
db08e84804 Use the processedDisconnect flag for disconnects. This means that we will only say the player has disconnected once the server tick look has processed them as such. Fixes some issues with players quitting during join. 2013-12-17 18:25:05 +11:00
md_5
154239b0fb Allow Bungee to pass through UUIDs. This will be added to bungee in a few days, so people get a chance to update Spigot first. 2013-12-16 22:39:18 +11:00
md_5
de92a23d18 Delay creation of serverconnection until needed so that our settings can take effect. 2013-12-16 11:47:23 +11:00
md_5
37eb6b4024 Don't box / rebox on object addition 2013-12-14 19:50:33 +11:00
md_5
0e03c0defe Add an attempt at backwards compatability for (broken) NMS plugins. Also set negative no entry values as these cannot occur.
cc @aadnk
2013-12-14 19:48:13 +11:00
md_5
7899e58d02 Merge in some stuff 2013-12-14 17:58:22 +11:00
md_5
20b8330a25 Prevent Mineshaft Structure Saving.
There is very little reason to keep track of Mineshafts as the only persistent behaviour within them is through the use of mob spawners, which are of course stored within the map itself. As such we can disable them from being saved, indefinitely, until there is reason to do so.
2013-12-13 15:22:51 +11:00
md_5
8a2de3a655 Configurable Amount of Netty Threads, defaulting to 4
This brings back the option that the Spigot version of netty saw. By default Netty will try and use cores*2 threads, however if running multiple servers on the same machine, this can be too many threads. Additionally some people have 16 core servers. If 32 Netty threads are allowed in this setup, then the lock contention, and thus blocking between threads becomes much greater, leading to decreased performance.
2013-12-13 11:59:09 +11:00
md_5
994b960bb7 *aggression 2013-12-13 11:54:00 +11:00
md_5
da809d3cf0 Allow Disabling Zombie Villager Agression.
Useful for larger servers who want a nice performance boost at the expense of a little bit of gameplay mechanic changes. I believe this brings the mechanics of zombie vs villager back in line with 1.5.
2013-12-13 11:48:56 +11:00
md_5
ce85ede2bb Optimize DataWatcher
Use primitive orientated collections, as well as more effective copies across collections.
2013-12-13 11:45:53 +11:00
md_5
704728d670 Split out the configuration of engine modes 1 and 2 to eliminate the block lag seen when mining stone or wood and using engine mode 1.
Now we maintain a new list of blocks to replace with ores in engine mode 2, to ensure that we only update when players mine blocks that are potentially not an ore. We could perhaps even elimate this slight lag from mode 2 by reducing the need for calling update(x,y,z)
2013-12-13 11:28:47 +11:00
md_5
269a2f7635 Pop anti xray patch to top 2013-12-13 11:10:33 +11:00
Thinkofdeath
5b756ab152 Fix new lines break URL matching 2013-12-11 18:09:41 +00:00
Thinkofdeath
dedbed0faf Fix Orebfuscator 2013-12-11 09:37:27 +00:00
md_5
3860a7b228 Bring bungee support back in line with what the protocol update had 2013-12-11 11:25:32 +11:00
md_5
5c14b02d79 Upstream merge 2013-12-10 09:36:28 +11:00
Thinkofdeath
206ba33be5 Fix the "Faster UUID for entities" patch (Fixes #81) 2013-12-09 16:19:26 +00:00
TheUnnamedDude
653ca13f16 Fix TNT crashing servers when breaking item frames 2013-12-09 11:37:51 +00:00
Thinkofdeath
8374c041ac Fix a possible error with links 2013-12-09 10:38:44 +00:00
md_5
74c808df0f Upstream merge 2013-12-09 18:01:02 +11:00
md_5
75344a14e9 Remove OS X Special Chars from Signs 2013-12-08 16:52:54 +11:00
md_5
b51765cc5d Fix crash caused by tnt destroying item frames 2013-12-06 20:32:13 +11:00
md_5
d8487572a0 Fix Jungle Tree Generation 2013-12-06 17:17:16 +11:00
md_5
50e8a5a766 Fix Jungle Tree Generation 2013-12-06 17:16:56 +11:00
ItsHarry
897d6a7ea5 Allow Teleportation of Vehicles and Passengers 2013-12-05 21:59:53 +01:00
md_5
83a93937f7 Fire EntityDamageByEntityEvent for ItemFrames. This allows them to be protected more effectively. 2013-12-05 18:41:50 +11:00
md_5
6ec37d4fe9 Dont let commands run async 2013-12-05 16:57:01 +11:00
md_5
a98a7ce919 Duplicate Disconnect Prevention. In 1.7 mojang removed the this.disconnected flag. We add it back to prevent users from forcibly disconnecting themselves in a short amount of time. 2013-12-05 16:33:50 +11:00
md_5
1e4407fd04 Fix broken async chat. Since Mojang introduced netty, but removed async packet handling, there are now only a few threads available to consume packets. Unfortunately we now have to maintain async chat support. In order to allow Async events to not kill these precious few threads, we do what we did in our Netty implementation, and offload these to their own, decoupled thread pool. 2013-12-05 13:57:12 +11:00
Thinkofdeath
0e1ef989f9 Fix color codes breaking urls 2013-12-04 14:41:40 +00:00
md_5
e770480d4b Fix shade fix accidentally being unmerged 2013-12-04 19:57:08 +11:00
md_5
a01054711d Take random light updates option into account before relighting a chunk on its first tick. 2013-12-03 15:51:04 +11:00
md_5
acf410d391 Address some chunk gen speed issues - see below for current reasoning.
As of 1.7, Mojang added a check to make sure that only chunks which have been lit are sent to the client. Unfortunately this interferes with our modified chunk ticking algorithm, which will only tick chunks distant from the player on a very infrequent basis. We cannot unfortunately do this lighting stage during chunk gen as it appears to put a lot more noticeable load on the server, than when it is done at play time. For now at least we will simply send all chunks, in accordance with pre 1.7 behaviour.
2013-12-03 15:43:02 +11:00
md_5
538ddc9cc4 Upstream merge 2013-12-03 15:13:39 +11:00
md_5
3190acce29 Fix Huge Mushroom Caps 2013-12-03 11:28:39 +11:00
md_5
dcb5fc4b1a [Bukkit Bug] Clear flower pots on drop so that they are not dropped twice. 2013-12-03 11:10:10 +11:00
Thinkofdeath
651dc5f9c4 Fix some chunks not being sent to the client 2013-12-02 23:44:13 +00:00
md_5
9306e0ec10 Remove spurious patch going into final repo 2013-12-03 10:19:35 +11:00
md_5
c8145fb896 Actually fix division by 0 in growth 2013-12-03 09:05:49 +11:00
md_5
31572d6c20 Update maven shade plugin so that newer maven versions (ie travis) will compile. 2013-12-03 08:21:58 +11:00
md_5
af7cb96f76 Upstream merge 2013-12-03 08:21:46 +11:00
Dmck2b
910aa42a6a Prevent crash from division by 0 in growth rates 2013-12-03 08:14:39 +11:00
Thinkofdeath
932161cd7d Fix links missing the path once clicked 2013-12-02 11:27:23 +00:00
md_5
b388fe0ca1 Fix some recipe book bugs introduced in 1.7. The full PR can be seen at Bukkit/CraftBukkit#1270 2013-12-02 17:26:11 +11:00
md_5
6a02ab857b [Bukkit Bug] Fix experience not being dropped by ores 2013-12-02 14:54:19 +11:00
md_5
cc7903bbf3 Upstream merge 2013-12-02 07:36:51 +11:00
Thinkofdeath
da6d6b1785 Fix links in chat 2013-12-01 10:49:18 +00:00
md_5
d8c4486016 Next tick list patch is causing odd speedups. Lets remove until @ammar2 or @mikeprimm can investigate. 2013-12-01 18:59:45 +11:00
md_5
341a7b2f60 More custom messages. 2013-12-01 18:40:51 +11:00
md_5
41d2c0bceb BungeeCord Support
Provides support for IP forwarding via BungeeCord.
2013-12-01 18:18:51 +11:00
md_5
b5a469f97a [Bukkit Bug] Fix packed ice generation crashing the server. 2013-12-01 17:52:29 +11:00
md_5
3395b38dfd [Bukkit Bug] Fix doors being opened by redstone. 2013-12-01 17:29:03 +11:00
md_5
fa4078a2d6 "It Compiles" - Update Spigot to Minecraft 1.7.2 proper. See below for full release notes (MUST READ).
This is a lightly tested build. You are encouraged to keep backups at all times. Please attempt to report all issues to IRC. The following features are intentionally missing from this build and will be added as soon as humanly possible.
- BungeeCord IP forwarding
- Firing of AsyncLoginEvent in offline mode
- A few custom kick / other hardcoded messages

As always this build comes with no warranty.
Thanks for your support.
~md_5
2013-12-01 17:16:56 +11:00
md_5
6ba479d591 Stage two done 2013-12-01 16:17:16 +11:00
md_5
341ec013fe Remove log formatting 2013-12-01 16:02:56 +11:00
md_5
233e23603a More stuff 2013-12-01 16:00:50 +11:00
md_5
0e6412942d Progress check 2013-12-01 15:36:32 +11:00
md_5
eb2ab6b421 Update mc-dev etc. 2013-12-01 15:14:03 +11:00
md_5
80da3f0c9b Stage 1 2013-12-01 14:40:53 +11:00
md_5
71d3b3b5ad Update orebfuscator on block update. 2013-11-27 22:01:50 +11:00
md_5
cdbe22b7c7 Update master to R2 as well. 2013-11-05 10:46:34 +11:00
md_5
f775c4dbd1 Upstream Merge 2013-10-24 21:23:24 +11:00
md_5
aabaa5c45e Configure restart message 2013-10-16 19:38:15 +11:00
md_5
f018f1d73f Arrow despawn rate is now configurable 2013-10-14 19:20:28 +11:00
md_5
d302efeeb7 Fix entity dead check in respawn API 2013-10-11 22:23:25 +11:00
md_5
39c6e1be1f Properly validate blocks in particle api 2013-10-11 10:17:09 +11:00
md_5
8d428932b4 Fix up patch tree. 2013-10-09 18:22:37 +11:00
md_5
536ed49937 Fix BrewingStands Removing NBT / Potions 2013-10-09 18:20:59 +11:00
Ammar Askar
65e0f8e01f Pull in respawn API, thanks @ninja- 2013-10-08 18:56:05 +05:00
md_5
8d12b82b81 Remove duplicate newline in report dumping 2013-10-08 16:50:05 +11:00
md_5
d5fa46f3f9 Silly git 2013-10-06 17:41:30 +11:00
md_5
9049cf8101 Better way of doing this without making plugins angry 2013-10-06 17:41:06 +11:00
md_5
f3d31bfdff Don't Special Case X Move Value 2013-10-06 17:37:54 +11:00
mrapple
5b702d6b9c Add a fix for clearing potion effects on respawn 2013-10-01 21:15:29 -05:00
md_5
46188f9d1c Catch all cases of updating with regards to falling blocks and anti xray 2013-09-30 21:55:21 +10:00
Ammar Askar
b2df4dcb6a Revert snapshot support for the time being
This reverts commit c04d3c5f80.
2013-09-28 19:57:04 +05:00
md_5
c0e1d57c02 Stupid debug stuff 2013-09-28 19:50:25 +10:00
md_5
f6d479b736 Fix stat sending 2013-09-28 18:44:19 +10:00
md_5
c04d3c5f80 Snapshot protocol for latest snapshot 2013-09-28 18:36:05 +10:00
md_5
12f7c09853 Remove update physics patch as it causes issues with physics events 2013-09-25 08:49:47 +10:00
md_5
941af38ac7 Revert "Remove metrics now to avoid issues later on. TODO: Make own metrics."
This reverts commit 00dea91d64.
2013-09-23 10:48:38 +10:00
md_5
00dea91d64 Remove metrics now to avoid issues later on. TODO: Make own metrics. 2013-09-22 19:16:15 +10:00
md_5
01c7aec9a5 Allow configuration of Item Despawn Rate 2013-09-22 19:11:09 +10:00
md_5
fb8af9e2bb Upstream merge 2013-09-21 13:39:32 +10:00
md_5
b097614299 Don't let it manually re-register a map file 2013-09-21 12:58:36 +10:00
md_5
e116075866 Allow disabling of 1.6.3 structure saving. Use with caution! 2013-09-21 12:38:20 +10:00
md_5
4edd7598b8 Fix decompile error resulting in broken TNT! 2013-09-20 16:02:42 +10:00
md_5
7509839cdf Update to CraftBukkit 1.6.4 2013-09-20 11:46:45 +10:00
md_5
9550383c78 Really update, thanks EvilTechie for the typo 2013-09-20 08:34:41 +10:00
md_5
30150fba59 Update to Minecraft 1.6.4 (protocol) - real update coming shortly. MOJANG! 2013-09-20 08:26:07 +10:00
md_5
58045e60d1 Fix custom outdated server/client messages 2013-09-19 17:59:24 +10:00
md_5
34677e38da Finish 1.6.3 - needs testing, use at own risk! 2013-09-19 17:22:55 +10:00
md_5
6822ca0570 Update to Minecraft 1.6.3 - part 1 2013-09-19 17:15:49 +10:00
BlackHole
6d4063f6ef Add event for fire arrows igniting TNT - pulls Bukkit/CraftBukkit#1203 2013-09-16 10:54:11 +10:00
Dylan Xaldin
3ab9109cdb Nerf the Zombie Lag issues in MC 1.6 - Fixes MC-17630 2013-09-14 11:03:28 +10:00
md_5
414192b8ee Update Inventory and Health for PlayerConsumeItemEvent 2013-09-14 10:16:46 +10:00
md_5
e7ca6faddb Only update Attachable's when applyPhysics is true 2013-09-14 10:11:53 +10:00
Chad Waters
753cb006cc Update Physics When Updating Attachables 2013-09-13 14:19:31 +10:00
md_5
1b854cbe28 Upstream merge + remove 3 pulled patches. 2013-09-12 10:20:02 +10:00
erocs
f4367af8f5 Re add hopper checks 2013-09-09 14:40:16 +10:00
md_5
378fc7a71f Netty 4.0.9 is out 2013-09-08 08:45:06 +10:00
md_5
89720fa208 Upstream merge. 2013-09-08 08:42:56 +10:00
Nathan Adams
5c6d64a8b7 Prevent Duplicate Handshakes 2013-09-03 11:17:26 +10:00
Ammar Askar
8875760d7f Remove Pool Login Verifier Threads patch 2013-09-02 15:41:33 +02:00
md_5
5026435e9a Manually set nodelay so we can ignore errors 2013-09-01 18:23:51 +10:00
md_5
f99330b2ae Revert "Fix issue with chunk caching patch"
This reverts commit 93d4dc070a.
2013-08-27 19:22:44 +10:00
md_5
cfc141d731 Subsequently remove hopper check option 2013-08-25 12:25:40 +10:00
md_5
102438e3e7 Revert unjustified changes to hopper behaviour. 2013-08-25 12:22:37 +10:00
md_5
faa23b94b0 Pool Login Verifier Threads
dem threads are expensive to make
2013-08-23 17:41:15 +10:00
md_5
167757be21 Ensure main thread stack is dumped 2013-08-09 20:34:05 +10:00
md_5
e36ba8dd96 Upstream merge 2013-08-07 17:16:57 +10:00
md_5
cdd3c2f4e5 Oops, fix min speed patch 2013-08-07 07:19:06 +10:00
md_5
8b99287132 Cap min speed not velocity 2013-08-06 11:19:10 +10:00
md_5
5545a5473c Cap Minimum Velcoity to 0.001. The client flips out at smaller values 2013-08-05 20:18:22 +10:00
Phillip Schichtel
b0888e8231 Update console command completion for improved thread safety 2013-08-04 20:01:08 +10:00
md_5
843c21ddf8 Upstream Merge 2013-08-04 08:51:09 +10:00
Ammar Askar
70a75c0b48 Guard entity list during ticking 2013-08-03 22:04:58 +05:00
Ammar Askar
93d4dc070a Fix issue with chunk caching patch 2013-08-03 20:34:40 +05:00
Ammar Askar
69cbbd9844 Update entity count code with World.a(Class)'s new stuff 2013-08-03 20:24:33 +05:00
md_5
7db0f5eda8 Get rid of ambiguity 2013-08-03 20:01:12 +10:00
DerFlash
edd0d42995 Add Getter for Entity Invulnerability 2013-08-03 19:54:36 +10:00
md_5
5c9d00bad4 Add task class to timings for more in depth info 2013-08-03 19:39:35 +10:00
md_5
eb882d6111 Pop latest 2 patches to top 2013-08-03 19:35:01 +10:00
agentk20
8e1879bfb5 Fully disable snooper when not required 2013-08-03 19:29:28 +10:00
md_5
5eb704605d Add Player Collision API. Thanks to @lazertester and @mrapple for the implementation. 2013-08-03 19:27:26 +10:00
md_5
f9c6a78ef4 Dump main server thread first for easier reading of the watchdog dumps and to reduce people unable to read and spamming our forums 2013-08-03 19:15:22 +10:00
md_5
401e57955a Add more async safeguards 2013-08-03 19:09:09 +10:00
md_5
de06085d4f Plug world unload memory leak. Thanks @riking for identifying the issue. 2013-08-03 19:03:14 +10:00
md_5
29b89513c5 Please don't use "null" as a spam exclusion. Guard against it anway. 2013-08-03 19:01:50 +10:00
md_5
31e1e0e950 Add outdated client / server messages to config 2013-08-03 18:59:36 +10:00
md_5
381a40a50a Upstream merge 2013-08-03 18:45:50 +10:00
md_5
5462e4c2bb Upstream merge 2013-07-30 07:27:59 +10:00
md_5
2fff7d15c5 Sigh. Back to good old fashioned whatever we had before. Can anyone recommend some xray client I can actually use to test this stuff? 2013-07-28 21:47:45 +10:00
md_5
cb44b83822 Damn I hate mode #2 2013-07-28 20:29:49 +10:00
md_5
a8269a5119 Fix engine mode 2, again 2013-07-28 15:58:10 +10:00
md_5
e5b7d37953 Fix engine mode 2 2013-07-28 08:23:08 +10:00
md_5
7e99854246 1,3 can only be expressed as an integer, not a byte! #logic 2013-07-27 11:56:56 +10:00
md_5
e6c808d887 Add new replacements config for use with anti xray mode 2 2013-07-27 11:48:43 +10:00
md_5
ea574d0315 Fix invalid username patch to disconnect correctly 2013-07-25 17:06:35 +10:00
md_5
5d31ee288a Should probably do an upstream update. 2013-07-24 19:33:10 +10:00
md_5
32eb618d1c Bump netty versions ._. 2013-07-24 17:43:12 +10:00
md_5
6139802e21 Update to Netty 4.0.3 final! 2013-07-19 19:45:54 +10:00
md_5
3e1ce88947 Update to latest CB 2013-07-19 19:35:05 +10:00
Ammar Askar
83732d4ce1 Simplify contains in LongHashSet along with some other minor tweaks 2013-07-19 13:16:32 +05:00
Ammar Askar
b1fafd6a88 Added simple entity ticking caching 2013-07-16 16:24:37 +05:00
md_5
a144cc905b [Anti XRay] Don't trigger updates on the clicked block - fixes block lag caused when mining ores quickly. 2013-07-15 14:14:45 +10:00
md_5
e881f8990f Reset default antixray blocks to remove 1 and 5, to fix block lag people have being seeing. Thanks @andrewkm for the report. 2013-07-13 11:37:21 +10:00
md_5
3005aa33e0 Add additional case for EntityDismountEvent 2013-07-11 16:59:26 +10:00
md_5
c7c08d81ae Remove CraftHorse patch since it is now covered by upstream 2013-07-11 11:33:09 +10:00
md_5
6b60db4272 Update to latest CraftBukkit and refresh all patch hashes - somehow InventoryClickEvent patch got applied twice. 2013-07-11 11:31:30 +10:00
MonsieurApple
ed79b37aaa Fix potion effects not being reset on death. Fixes
BUKKIT-4515
2013-07-11 10:28:04 +10:00
md_5
bc88549f20 Fix client crash with cannot send chat message 2013-07-10 23:46:31 +10:00
ItsHarry
d69d231845 Fixed StructureGrowEvent.getPlayer(); always returning null regardless of whether bone meal was used or not. 2013-07-10 13:48:26 +02:00
md_5
6b3632e736 Remove patch that prevents piston extend event firing twice - causes pistons to eat blocks on some occasions. Thanks Salaman and his team for debugging. 2013-07-09 13:16:16 +10:00
md_5
5a70ec4f37 PendingConnection.c() -> d() 2013-07-09 10:48:33 +10:00
md_5
9018b1d7ba Update Spigot to Minecraft 1.6.2 2013-07-09 10:31:10 +10:00
md_5
3ec60528a2 Update Packet44 to take a snapshot of attributes to prevent concurrent modification leading to bad packets or CMEs. This is a REQURIED update to get support. 2013-07-09 08:29:39 +10:00
md_5
d06a613c2f Change jar name to include 1.6.2 2013-07-08 21:38:44 +10:00
md_5
34c6423083 Minor code cleanup to snapshot protocol - nothing functional 2013-07-08 21:27:56 +10:00
md_5
14d833f8e2 Add missing packet 2013-07-08 21:19:55 +10:00
md_5
b0cbbf81cc 1.6.2 Protocol Support Enabled by Default 2013-07-08 21:17:32 +10:00
md_5
b5ee9871fb Add 1.6 Potion Effects. Thanks @bloodsplat for pointing this out. 2013-07-08 12:37:44 +10:00
md_5
0bab96762d Always call dismount events regardless of Vehicle or not 2013-07-08 09:22:29 +10:00
md_5
8674b1053d Keep CraftServer init early, but make plugins load at approx the same time they do in CraftBukkit - thanks @aadnk for wanting this 2013-07-07 09:33:34 +10:00
md_5
df2ee3e398 Replace MessageList with list, see if we can catch issues. 2013-07-07 09:05:04 +10:00
md_5
a59da621da Ensure packet hooks are called sync - thanks @aadnk for pointing this out 2013-07-07 09:02:13 +10:00
md_5
cd02250065 Did someone say console command completion? These commits were authored by @quickwango and come from Bukkit/Bukkit#868 and Bukkit/CraftBukkit#1151 2013-07-06 09:40:00 +10:00
md_5
87854c51ab Add my "fix" for EntityPersistance, I do believe that removing this check is incorrect and the result of a slight hiccup by Bukkit. 2013-07-05 21:56:07 +10:00
md_5
124d4867c7 Add Type Safety checks for............. sanity....? 2013-07-05 13:19:45 +10:00
md_5
3601ca3da5 Pull a series of CraftBukkit patches - see below for summary and credits:
Bukkit/CraftBukkit#1145 : @Zarius : Don't fire piston extend event twice
Bukkit/CraftBukkit#1174 : @millerkil : Prevent plugins causing ghost players
Bukkit/CraftBukkit#1177 : @jb-aero : Properly set ambient flag for potion effects
2013-07-05 12:22:04 +10:00
Alex Ciuba
693b2872b1 Properly Consume Bonemeal in Dispensers
Don't consume bonemeal if there is no crop in front. Fixes BUKKIT-3790
Pulls Bukkit/CraftBukkit#1172
2013-07-05 12:22:01 +10:00
Mike Primm
a7014a3eb7 Create CraftHorse Instance for EntityHorse
Handle creating instance of CraftHorse for EntityHorse instances and spawn()
Pulls Bukkit/CraftBukkit#1185
2013-07-05 12:22:01 +10:00
md_5
81aee9fec2 Prevent crash on dismount, thanks Salaman for the report! 2013-07-05 12:21:49 +10:00
md_5
bc16626761 Include only the bits of netty we need 2013-07-04 20:14:10 +10:00
md_5
26f85d2572 Update Depends
- All of these changes have been reviewed to be binary compatible and in general contract compatible with previous versions of the libraries.
2013-07-04 20:05:41 +10:00
md_5
6cca81703a Netty CR9 2013-07-04 19:58:09 +10:00
md_5
fec1763e6d Switch index length check around to prevent crashes 2013-07-04 12:11:17 +10:00
md_5
1fbd057e42 Wouldn't it be nice if the console was coloured - actually colour console messages instead of just leaving colour codes. 2013-07-04 10:12:57 +10:00
md_5
3c872410f5 Update again - git isn't as smart as he looks 2013-07-03 14:16:28 +10:00