Commit graph

133 commits

Author SHA1 Message Date
Aikar
869b06ea1e Timings v2 cleanups - potential overflow fix and fix bad hostnames
if hostname is invalid on system, just use a static string

also cleans up visibility of a lot of code, hopefully will help jvm optimize more.
2016-06-30 01:31:00 -04:00
Zach Brown
de4a16ead0 Update upstream B/CB/S 2016-06-26 14:13:00 -05:00
Zach Brown
57cff1f17f Update to MC 1.10.2 2016-06-25 12:19:04 -05:00
Aikar
997285e344 Update Entity AddTo|RemoveFrom World events to be EntityEvents 2016-06-24 00:16:46 -04:00
DemonWav
1114f55d45 Add repo to handle the bungee-cord chat dependency 2016-06-23 00:32:41 -05:00
Zach Brown
9b192b2708 Update to Minecraft 1.10 2016-06-08 22:57:14 -05:00
Aikar
8e62fb709b Timings v2: Start methods return self for use in try-with-resources
try (Timing ignored = timing) {
  // Code to time
}
// auto stops timing, even if you return in 42 other places in the block
2016-05-15 17:34:26 -04:00
Zach Brown
f623f903cd Move bad command registration workaround into SMP#dispatch
Fixes GH-274
2016-05-13 00:13:38 -05:00
Aikar
34fcd8ccc2 Paper 1.9.4 Update 2016-05-11 22:07:46 -04:00
Aikar
3da6be053f LootTable API & Replenishable Lootables Feature
Provides an API to control the loot table for an object.
Also provides a feature that any Lootable Inventory (Chests in Structures)
can automatically replenish after a given time.

This feature is good for long term worlds so that newer players
do not suffer with "Every chest has been looted"

API and Event added to control the Auto Replenish feature for players.
2016-05-01 23:54:08 -04:00
Aikar
3b3f85f88f Try to determine plugin name on bad plugin command registration 2016-04-30 12:53:20 -04:00
Zach Brown
81f624837f Timings v2: Plugins don't always register commands properly
*mumbles*
2016-04-30 00:09:29 -05:00
Riley Park
9d57423ba3 Merge pull request #230 from kashike/feature/arrow-pickup
Arrow pickup rule API
2016-04-25 13:27:51 -07:00
Aikar
71db253321 update upstream 2016-04-23 22:41:46 -04:00
Zach Brown
36394d5284 Update upstream Spigot and rebuild 2016-04-22 22:20:34 -05:00
Zach Brown
1ed12cfca6 Fix EntityDismountEvent and VehicleExitEvent cancellation
Perhaps "workaround" would be the better term
2016-04-22 15:45:22 -05:00
Riley Park
a1de1619c6 Arrow pickup rule API 2016-04-22 00:07:16 -07:00
Zach Brown
ebff483051 EntityHealthRegain isFastRegen API 2016-04-22 01:48:49 -05:00
Zach Brown
dea3485028 Remove non-zero BlockIterator block and Loading chunks earlier in player TP patches
Allowing only non-zero BlockIterators breaks an API contract explicitly allowing them
(*eyeroll*)

And loading chunks earlier in the TP patch did not resolve the original issue, and now
that it is resolved, shouldn't actually provide any tangible benefits
2016-04-18 09:40:58 -05:00
Spottedleaf
949de05c01 Also fix javadocs in the Server interface 2016-04-17 13:35:31 -05:00
Spottedleaf
903001bbea Fix silly Javadocs in Bukkit.broadcast 2016-04-16 09:23:37 -07:00
Zach Brown
92d86e55ed Merge pull request #205 from kashike/feature/handshake
Add handshake event
2016-04-13 23:10:34 -05:00
Riley Park
30175bcf9d Add handshake event to allow plugins to handle client handshaking logic themselves 2016-04-13 20:23:07 -07:00
Zach Brown
567224a84c Update bungeecord chat API graduations 2016-04-13 22:18:46 -05:00
Zach Brown
1aa718c217 Only allow non-zero value maxDistances for BlockIterators
Prevents them from iterating infinitely and hanging the server
2016-04-12 23:08:55 -05:00
Zach Brown
f54aa3ca2c Update upstreams 2016-04-11 10:30:12 -05:00
Zach Brown
d79fcf72fa Use 'Paper' for our config file in timings 2016-04-05 23:27:53 -05:00
Aikar
092d08f15c Update Timings to use Region based chunk reporting
This will drastically reduce file size on large servers and help
avoid the parser failing to load the report.

This will also reduce memory usage of timings data.
2016-04-05 01:20:25 -04:00
Riley Park
67ec2cd957 Add PlayerUseUnknownEntityEvent 2016-04-02 18:10:38 -07:00
Aikar
1ac9958e8b Move fastutil from a patch file to a library, and improve EAR 2016-04-01 00:18:18 -04:00
Aikar
f16d938497 Paper 1.9.2 Update 2016-03-30 20:50:23 -04:00
Aikar
fb94038453 Use FastUtil Long/Int HashMap's
For DataWatcher, swap out plain Integer key HashMap for a Int2ObjectOpenHashMap
For ChunkProviderServer, swap out CB's custom LongHashMap with Long2ObjectOpenHashMap

These collections are super fast as seen
http://java-performance.info/hashmap-overview-jdk-fastutil-goldman-sachs-hppc-koloboke-trove-january-2015/
2016-03-30 02:10:27 -04:00
DemonWav
443a949bac Add getEntity by UUID API 2016-03-30 01:20:36 -05:00
Aikar
e007d80c16 Move Timings v2 TimingHandler to FastUtil Int map 2016-03-30 01:59:47 -04:00
Aikar
092dbc4bea Add Minimal FastUtil int/long collections.
Importing the full library would double the jar size... its way too large.
So lets just import the basic int/long based collections to then use
to improve performance on these kind of collections.
2016-03-30 01:57:56 -04:00
Aikar
88ef71592b Remove, not invalidate, Metadata on reload
Objects loaded over different class loaders are not the same. Nasty dragons lie here.

Also clean up the previous patch to no longer butcher imports.
2016-03-28 22:43:05 -04:00
Aikar
7d7810721e Remove last patch, doesn't exactly do what I thought it was doing 2016-03-28 22:28:52 -04:00
Aikar
a3d5c47c8a Remove Invalidated Metadata
Bukkit was using an unimplemented method to invalidate plugin meta.
2016-03-28 22:15:23 -04:00
crast
97c1f9402f Reduce thread synchronization in MetadataStoreBase
Use ConcurrentHashMap to allow thread-safe access methods and very
limited synchronized portions to allow much higher concurrency in
MetadataStore as well as far less locking, especially on reads
2016-03-28 22:10:01 -04:00
Aikar
7c38e54a9d Remove some code from Timings v2 that was only for EMC. 2016-03-28 21:41:17 -04:00
Aikar
2b55c92307 EntityPathfindEvent
Fires when an Entity decides to start moving to a location.

This is not the same as a move event. This only fires when an entity chooses
to start moving to a location, and allows cancelling that pathfind.

Additionally, only get is supported for now. Unsure if changing target location
is safe to do.
2016-03-28 21:24:45 -04:00
Aikar
a661a1737f Entity AddTo/RemoveFrom World Events
These events will give plugins a reliable way to track every entity that is added
or removed from a world, so that one may always ensure they are in a desired state.
2016-03-28 20:33:10 -04:00
Zach Brown
587aaefcc4 Update upstream B/CB/Spigot and rebuild 2016-03-27 20:48:50 -05:00
Zach Brown
8ec0ce4b89 Merge pull request #153 from kashike/feature/slot
Access items by EquipmentSlot
2016-03-27 02:24:12 -05:00
Zach Brown
1109dc8d70 Update upstream and rebuild 2016-03-27 01:38:58 -05:00
Riley Park
d880c248bf Access items by EquipmentSlot 2016-03-26 22:23:42 -07:00
Byteflux
bcc957e753 Add Entity Origin API
This replaces the TNT and Falling Block Source Location API with a more
general purpose API that works with all entities.
2016-03-25 02:02:35 -07:00
Aikar
4646f9b68f Allow command line arg to allow normal reload 2016-03-21 21:56:52 -04:00
Aikar
a3cc380333 Make /reload require typing confirm to actually reload 2016-03-21 21:40:29 -04:00
willies952002
7178332f2a Add Bukkit#reloadPermissions()
Fix issues with Paper build #544
2016-03-21 21:29:41 -04:00