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
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