Aikar
f051ea2ab3
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 09:43:11 -05:00
Zach Brown
a785a9460e
Skip dead entities in getEntity(UUID) API
2016-03-30 09:41:12 -05:00
Zach
6462bb4e20
Merge pull request #167 from DemonWav/getentity
...
Add getEntity by UUID API
2016-03-30 01:30:29 -05:00
DemonWav
4bf9c3c177
Add getEntity by UUID API
2016-03-30 01:20:36 -05:00
Aikar
31a482e9f0
Move Timings v2 TimingHandler to FastUtil Int map
2016-03-30 01:59:47 -04:00
Aikar
c2f872aed3
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
23467ff8d6
Update contributing information to be more accurate
2016-03-30 01:03:27 -04:00
Zach Brown
d46c56abf0
Put this patch in the patches folder, so it's actually used
2016-03-29 13:56:19 -05:00
Zach
9bebf86d50
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
19f8c428c0
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
91d9131e0c
Reduce IO ops opening a new region file.
2016-03-29 19:11:48 +03:00
Antony Riley
af65eaaa3b
Sanitise RegionFileCache and make cache size configurable.
2016-03-29 19:09:43 +03:00
Aikar
77663e58d9
Link to contributing for PR section
2016-03-29 00:07:27 -04:00
Aikar
08c9934f83
update README for PR instructions
2016-03-28 23:59:19 -04:00
Zach Brown
ebe7176b2e
Merge pull request #158 from Minefabser/fix-minecart
2016-03-28 22:41:54 -05:00
Fabse
d71444f966
Add a workaround for bugged Minecart drop names
2016-03-28 22:41:27 -05:00
Aikar
b97cbbb698
Update upstream
2016-03-28 23:19:49 -04:00
Aikar
48dff29f31
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
3d61632b53
Remove last patch, doesn't exactly do what I thought it was doing
2016-03-28 22:28:52 -04:00
Aikar
e77e65499f
Remove Invalidated Metadata
...
Bukkit was using an unimplemented method to invalidate plugin meta.
2016-03-28 22:15:23 -04:00
crast
6a54004bb4
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
c09424fd33
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:05:22 -04:00
Aikar
e90cdc3639
Remove some code from Timings v2 that was only for EMC.
2016-03-28 21:41:17 -04:00
Aikar
b99e8381ab
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
9ff01b16ab
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
fb3834f805
And AddTo is a different event than RemoveFrom
2016-03-28 20:58:42 -04:00
Aikar
53309e9172
Actually fire those events
2016-03-28 20:57:15 -04:00
Aikar
89c912061b
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
89ae312c35
Update module urls
2016-03-28 20:38:51 -04:00
Aikar
22b248d631
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
030de0f42a
Update upstream
2016-03-28 20:27:56 -04:00
Aikar
d52a49cfa1
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
ba7eade76f
Update upstream B/CB
...
Notably to limit byte array length
2016-03-28 15:21:30 -05:00
Zach Brown
0363644455
Don't set spawn world in PlayerInitialSpawnEvent
...
Fixes GH-85 and GH-157
2016-03-28 13:00:47 -05:00
Zach Brown
249e52e7a8
Fix player tab list API
2016-03-28 10:41:04 -05:00
Zach Brown
b210aa7dfe
Update upstream B/CB/Spigot and rebuild
2016-03-27 20:48:50 -05:00
Zach Brown
bf877b9a72
Check async spawn chunk check, remove unused variables, GH-159
2016-03-27 20:31:23 -05:00
kashike
b14b3b8803
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
34973fe898
Add same infi-loop fix to other identical block of code I missed earlier
2016-03-27 05:42:02 -05:00
Zach
5108183346
Merge pull request #153 from kashike/feature/slot
...
Access items by EquipmentSlot
2016-03-27 02:24:12 -05:00
Zach Brown
85ee80938b
Update upstream and rebuild
2016-03-27 01:40:17 -05:00
kashike
eeb64630cd
Access items by EquipmentSlot
2016-03-26 22:23:42 -07:00
Zach
c3b869fdf2
Merge pull request #152 from DemonWav/blockPosInfLoop
...
Prevent possible infinite loop in BlockPosition iterator
2016-03-26 22:30:04 -05:00
DemonWav
ef3d40bf2a
Prevent possible infinite loop in BlockPosition iterator
2016-03-26 22:06:33 -05:00
Zach
59363a3f3f
Merge pull request #149 from Gabscap/fix-teleport
...
Load chunks before player teleport - Fixes #147
2016-03-26 16:17:38 -05:00
Zach
b7586a8696
Merge pull request #148 from meytro/patch-1
...
Update ISSUE_TEMPLATE.md
2016-03-26 16:17:25 -05:00
Gabscap
f356b447b7
Load chunk before player teleport - Fixes #147
2016-03-26 19:05:31 +01:00
meytro
1eebebb7c5
Update ISSUE_TEMPLATE.md
...
Additional spacing to make it easier to read.
2016-03-26 14:00:59 +01:00
Zach Brown
79c54e4434
Pull in ArrowPickupItemEvent and legacy dataconverter fix from SportBukkit
2016-03-26 03:38:02 -05:00
Zach Brown
47b71ea411
Update upstream CB/Spigot
...
cc GH-146
2016-03-26 01:38:02 -05:00