Commit graph

1968 commits

Author SHA1 Message Date
Aikar
f16d938497 Paper 1.9.2 Update 2016-03-30 20:50:23 -04:00
Zach Brown
e96190ed9e Update CB/Spigot : Add 1.9.2 protocol
/me rolls eyes
2016-03-30 11:03:20 -05:00
Zach Brown
bb5359725b Update CB/Spigot : Add 1.9.1 protocol 2016-03-30 10:15:07 -05: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
Zach Brown
50811b1ca5 Skip dead entities in getEntity(UUID) API 2016-03-30 09:41:12 -05:00
Zach Brown
572da383b9 Merge pull request #167 from DemonWav/getentity
Add getEntity by UUID API
2016-03-30 01:30:29 -05: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
aceb2cf3b5 Update contributing information to be more accurate 2016-03-30 01:03:27 -04:00
Zach Brown
3a4b55aa5d Put this patch in the patches folder, so it's actually used 2016-03-29 13:56:19 -05:00
Zach Brown
0c7a0d7c98 Merge pull request #163 from cybertiger/region-file-cache
Sanitise RegionFileCache and make cache size configurable.
2016-03-29 11:15:30 -05:00
Zach Brown
a3b6db55c2 Merge pull request #162 from cybertiger/region-file-io-ops
Reduce IO ops opening a new region file.
2016-03-29 11:15:23 -05:00
Antony Riley
4b5902de92 Sanitise RegionFileCache and make cache size configurable. 2016-03-29 08:27:14 +03:00
Aikar
f3f0cb6bb2 Link to contributing for PR section 2016-03-29 00:07:27 -04:00
Aikar
314d1711d5 update README for PR instructions 2016-03-28 23:59:04 -04:00
Antony Riley
337de6e8af Reduce IO ops opening a new region file. 2016-03-29 06:57:26 +03:00
Zach Brown
3685425eaa Merge pull request #158 from Minefabser/fix-minecart 2016-03-28 22:41:54 -05:00
Aikar
6e496985f5 Update upstream 2016-03-28 23:19:49 -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
553319f958 Prevent Waterflow BlockFromToEvent from loading chunks
Many protection plugins would unintentionally trigger chunk loads
by calling .getToBlock() on an unloaded chunk, killing performance.

Simply skip the event call. as CraftBukkit blocks changing the block
of unloaded chunks anyways.

This keeps behavior consistent, vs inconsistent flowing based on plugin triggered loads.
2016-03-28 22:04:43 -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
0623a754d8 Add MCUtils helper
This will be used by my next commit. But trying to get the build going
since CI blew up
2016-03-28 21:01:42 -04:00
Aikar
1180a5dd87 And AddTo is a different event than RemoveFrom 2016-03-28 20:58:42 -04:00
Aikar
dab09d46bc Actually fire those events 2016-03-28 20:57:15 -04:00
Aikar
9148dbbf4a Configurable Chunk Inhabited Timer
Vanilla stores how long a chunk has been active on a server, and dynamically scales some
aspects of vanilla gameplay to this factor.

For people who want all chunks to be treated equally, you can disable the timer.
2016-03-28 20:47:46 -04:00
Aikar
b442921643 Update module urls 2016-03-28 20:38:51 -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
Aikar
56d7782945 Update upstream 2016-03-28 20:26:11 -04:00
Aikar
2e4f0cb627 Option to disable BlockPhysicsEvent for Redstone
Not sure of any reason a plugin would need to act on a Physics event
for redstone. There is a BlockRedstoneEvent that plugins can also use
for accessing redstone activity.

Defaulting this to false will provide substantial performance improvement
by saving millions of event calls on redstone heavy servers.
2016-03-28 19:57:13 -04:00
Zach Brown
35fa26813f Update upstream B/CB
Notably to limit byte array length
2016-03-28 15:21:26 -05:00
Zach Brown
51c738e817 Don't set spawn world in PlayerInitialSpawnEvent
Fixes GH-85 and GH-157
2016-03-28 13:00:44 -05:00
Zach Brown
010e7652b3 Fix player tab list API 2016-03-28 10:41:04 -05:00
Zach Brown
587aaefcc4 Update upstream B/CB/Spigot and rebuild 2016-03-27 20:48:50 -05:00
Zach Brown
4634458d72 Check async spawn chunk check, remove unused variables, GH-159 2016-03-27 20:31:23 -05:00
Fabse
2a3cfd15eb Add a workaround for bugged Minecart drop names 2016-03-28 00:52:36 +02:00
Riley Park
bba407aa46 Merge pull request #155 from DemonWav/otherBlockPosFix
Add same infi-loop fix to other identical block of code I missed earlier
2016-03-27 03:45:56 -07:00
DemonWav
4e5569e6cd Add same infi-loop fix to other identical block of code I missed earlier 2016-03-27 05:42:02 -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
Zach Brown
8c448684ad Merge pull request #152 from DemonWav/blockPosInfLoop
Prevent possible infinite loop in BlockPosition iterator
2016-03-26 22:30:04 -05:00
DemonWav
92aa154184 Prevent possible infinite loop in BlockPosition iterator 2016-03-26 21:38:36 -05:00
Zach Brown
4e19bc5653 Merge pull request #149 from Gabscap/fix-teleport
Load chunks before player teleport - Fixes #147
2016-03-26 16:17:38 -05:00
Zach Brown
c29fb9c5e2 Merge pull request #148 from meytro/patch-1
Update ISSUE_TEMPLATE.md
2016-03-26 16:17:25 -05:00
Gabscap
3ed9c2917e Load chunk before player teleport - Fixes #147 2016-03-26 18:45:15 +01:00