Commit Graph

2190 Commits

Author SHA1 Message Date
Aikar c95273f973 Optimize Chunk Saving Memory Allocation and Compression
Minecraft ineffeciently uses OutputStreams by calling .write(int) on the stream.
For Chunks, this is a DeflaterOutputStream, which allocates a single byte EVERY write.

This is causing the server to allocate tons of new byte[1] objects.
Additionally, this is very ineffecient for the Deflate process.

By Buffering Writes the same way it already is Buffering Reads, we will
write to the stream much more effeciently.

Also a more effecient RegionFile zero'ing for new chunks to speed up
new chunk generation.
2015-09-10 15:46:28 -05:00
Zach Brown 1f41387610 Rebuild patches 2015-09-01 20:14:41 -05:00
md_5 ad15d9065d Rebuild patches. 2015-09-01 17:41:42 -05:00
Zach Brown 477b22d36c Use spigot.yml's view distance setting 2015-08-29 03:12:41 -05:00
Techcable 25a137f3a3 Lookup game profiles for users that aren't onine 2015-08-15 14:05:29 -05:00
Byteflux a16e54d332 Re-add Spigot's hopper-check feature 2015-08-13 10:36:58 -07:00
Techcable 6d0a86a9b6 Use the server usercache for player heads 2015-08-11 01:27:37 -05:00
md_5 38a38e00e6 SPIGOT-1117: Barrier blocks are transparent for xray purposes 2015-08-10 19:41:03 -05:00
Zach Brown e786f4635b [23:29:51] <Byteflux> no tacoz 4 clippeh 2015-08-08 23:33:19 -05:00
Byteflux 4021394904 Fix NPE in recheckGaps when using async lighting 2015-08-06 21:44:03 -07:00
Byteflux 4eadccd3e2 Add beds and enderchests to list of collidable blocks 2015-08-05 02:31:55 -07:00
Iceee e12f1faed1 Fix lava/water some times creating air instead of cobblestone 2015-08-04 18:24:39 -07:00
Byteflux bde7f6bbbd Temporarily use getDouble() internally for calls to getFloat() in Paper configs
getFloat() seems to have an issue with reading modified values and always
returns the default value instead. This needs further investigating, but
for now making it use getDouble() internally appears to resolve the issue.
2015-08-04 17:57:17 -07:00
Byteflux 80e87de54f Configurable TNT explosion volume 2015-08-04 17:47:57 -07:00
Byteflux 8ba82c550a Add chests and soul sand to list of types falling blocks can collide with 2015-08-04 17:25:16 -07:00
Byteflux c38e8ec349 Make the recheckGaps method async like other lighting updates 2015-08-04 15:44:54 -07:00
Byteflux eaaf2c2cf3 Optimize getCubes() 2015-08-04 15:25:37 -07:00
Zach Brown 0febdc8b44 Rebuild patches 2015-08-02 01:56:08 -05:00
Melair f08d887fbf Ensure that inactiveTick on EntityItem obeys magic values for age and pickupDelay. 2015-07-31 18:04:11 -05:00
Zach Brown f6fba00cbc Temporarily remove PlayerMicroMoveEvent implementation
Breaks the existing PlayerMoveEvent, to be re-worked soon
2015-07-30 22:47:22 -05:00
Zach Brown 0daad69443 Update for upstream NMS mapping changes 2015-07-30 22:41:53 -05:00
md_5 6a6ecc5d1d Update for latest CraftBukkit changes. 2015-07-30 22:11:20 -05:00
Zach Brown 881dfe09c2 Update PaperSpigot to 1.8.8 2015-07-27 17:26:21 -05:00
md_5 4e9d1b2b24 Update to Minecraft 1.8.8 (Pre-)Release. 2015-07-27 17:01:45 -05:00
Zach Brown fe4c7c88ac Re-add recentTps array for plugins that make bad choices 2015-07-26 15:58:37 -05:00
Zach Brown 56afbe3f71 Rebuild 2015-07-25 18:00:37 -05:00
Sudzzy f9e5f65987 Configurable container update tick rate 2015-07-23 22:06:57 -07:00
Byteflux 83aa27a29d Add javadocs to BeaconEffectEvent 2015-07-23 21:41:35 -07:00
Thinkofdeath 060c59ea95 SPIGOT-1050: Add a missing case in the disable usercache saving option 2015-07-23 18:24:16 -05:00
Byteflux 633137c1a8 Rebuild patches 2015-07-23 13:37:52 -07:00
Byteflux 7d9632e328 Add BeaconEffectEvent 2015-07-23 12:57:12 -07:00
Byteflux 16ab69f11b Fix package naming of PaperSpigot events to be consistent with Bukkit/Spigot
Right now this only affects the recently added PlayerMicroMoveEvent. I
figured this should be done to keep the events organized in the same way
Bukkit and Spigot do. This should lead to a less cluttered event package
when we do add more events.
2015-07-23 09:56:24 -07:00
Aikar d7307859fa Don't allow sendPacket once disconnect has been processed. 2015-07-23 04:38:39 -07:00
md_5 8ae7fb531a Clear Packet Queue on Disconnect 2015-07-23 04:38:32 -07:00
Adam Thomas aa255563f1 Add an as bungee method to the Bukkit ChatColor enum 2015-07-23 04:38:26 -07:00
Techcable 23f4ae7bbd Add PlayerMicroMoveEvent 2015-07-23 04:30:13 -07:00
Iceee e139db70f1 Optimize Spigot's Anti X-Ray 2015-07-23 04:24:24 -07:00
Jedediah Smith 579868e0c1 Send absolute position the first time an entity is seen 2015-07-23 04:13:26 -07:00
Zach Brown 58a75fef88 Rebuild patches 2015-07-20 20:14:39 -05:00
Byteflux 4d70f421f6 Unload client chunks + only cache whole chunk maps 2015-07-16 14:06:33 -07:00
Byteflux e3e7539232 Configurable chunk map caching 2015-07-15 16:16:27 -07:00
Byteflux b5666dd9e8 Improvements to ChunkMap caching 2015-07-15 13:31:34 -07:00
Iceee 7562f087f8 ChunkMap caching 2015-07-15 02:42:49 -07:00
Byteflux 536af803c4 Lookup neighbor chunks more efficiently in async lighting 2015-07-15 02:01:49 -07:00
Byteflux 8de3946478 Nerfed spawner mobs should use PathfinderGoalFloat to swim if available 2015-07-14 10:51:38 -07:00
Byteflux 04705fd392 Optimize item movement 2015-07-14 10:17:39 -07:00
Byteflux 4d0466c559 Configurable mob spawner tick rate 2015-07-14 10:01:28 -07:00
Byteflux 4cd1afddde Various configurable toggles
- Disable explosion knockback for players
- Disable thunder logic
- Disable ice and snow formation
- Disable mood sounds
2015-07-14 09:34:10 -07:00
Byteflux c17e209dc1 Rebuild patches 2015-07-14 08:59:57 -07:00
md_5 301396a116 Add note about BungeeCord when in offline mode.
See PR #10 for motivation.
2015-07-14 08:18:22 -07:00