Commit message (Collapse) | Author | Age | Lines | |
---|---|---|---|---|
* | Fix EmptyChunk's not sending to the Client correctly. Fixes BUKKIT-2206 | feildmaster | 2012-08-23 | -0/+8 |
| | ||||
* | Use constant Player for EnderPearls | feildmaster | 2012-08-22 | -9/+9 |
| | | | | Also make sure players are online before proceeding to each event | |||
* | Fix entities not having valid "isValid" states. Addresses BUKKIT-2366 | feildmaster | 2012-08-22 | -1/+3 |
| | ||||
* | Fix instances where Signs have null lines. Addresses BUKKIT-684 | V10lator | 2012-08-21 | -0/+3 |
| | ||||
* | Use standard format function to format logs. Addresses BUKKIT-2246 | EdGruberman | 2012-08-21 | -2/+2 |
| | | | | Also fix "excess" Log Levels. | |||
* | Use a dynamic pool size for the iterator cache | Travis Watkins | 2012-08-20 | -0/+2 |
| | | | | | | | | Many codepaths only end up with one iterator being used at a time and most of the rest only get up to two being used so using a static pool of three is wasteful. This also allows us to efficiently handle cases that exceed 3 iterators in use. Overall this dramatically increases the hit rate and results in less iterators being created. | |||
* | Check unload queue so we don't accidentally leave a chunk loaded | Travis Watkins | 2012-08-19 | -1/+2 |
| | ||||
* | [Bleeding] Stub out MethodProfiler class | Mike Primm | 2012-08-19 | -123/+8 |
| | | | | | Instead of trying to track down every place this class is used we can simply stub out the entire class so it has no extra overhead. | |||
* | [Bleeding] Strip out unused HashSet in IntHashMap | Mike Primm | 2012-08-19 | -3/+3 |
| | ||||
* | [Bleeding] Cache packet ID instead of doing lookups each time it is needed | Mike Primm | 2012-08-19 | -3/+7 |
| | ||||
* | [Bleeding] Remove redundant chunkList from ChunkProviderServer | Mike Primm | 2012-08-19 | -5/+2 |
| | | | | | | This ArrayList duplicates part of the functionality of the much more efficient chunk map so can be removed as the map can be used in the few places this was needed. | |||
* | Add LongObjectHashMap and LongHashSet | Travis Watkins | 2012-08-19 | -47/+27 |
| | | | | | | | | | | | | | | | Replace uses of LongHashtable and LongHashset with new implementations. Remove EntryBase, LongBaseHashtable, LongHashset, and LongHashtable as they are no longer used. LongObjectHashMap does not use Entry or EntryBase classes internally for storage so has much lower object churn and greater performance. LongHashSet is not as much of performance win for our use case but for general use is up to seventeen times faster than the old implementation and is in fact faster than alternatives from "high performance" java libraries. This is being added so that if someone tries to use it in the future in a place unrelated to its current use they don't accidentally end up with something slower than the Java collections HashSet implementation. | |||
* | Use TrigMath in hotspots | Travis Watkins | 2012-08-19 | -5/+14 |
| | | | | | Use our implementation of atan2 in AI routines as profiling shows these are hotspots and (for these cases) our implementation is much faster. | |||
* | [Bleeding] Change Vec3DPool to a stack based pool | Mike Primm | 2012-08-19 | -10/+61 |
| | | | | | | | Avoid overhead of using an ArrayList and resizing it. Also allows for reuse of objects in the pool during the same tick by explicitly releasing them back to the pool. This allows for much better cache performance as well as reduced cache footprint. | |||
* | Optimize entity AI goal selector | Travis Watkins | 2012-08-19 | -24/+31 |
| | | | | | | | | | | | Remove redundant ArrayList to avoid excessive object creation and CPU overhead, the entries are added to the list then immediately iterated through to run so just run them directly. Swap order of some conditionals to perform the more efficient check first as if it fails the list lookup will not be executed. Remove profiling hooks including some rather expensive calls to getSimpleName. | |||
* | Add iterator cache to UnsafeList and use it in hotspots | Travis Watkins | 2012-08-19 | -6/+11 |
| | | | | | Adds a specialized iterator for the list and a pool of iterators to avoid object churn. Also optimizes the clear() method to reduce object creation. | |||
* | [Bleeding] Optimize chunk loading | Mike Primm | 2012-08-19 | -0/+57 |
| | | | | | | | | ChunkSection.e() is called once per chunk section loaded and is quite expensive (about 20% of CPU time for loading the chunk). This changes the logic to add a fast path when extended block data is not being used and reorganizes the loops for more optimal array traversal. Overall this saves about 20-30% CPU time in this method. | |||
* | Add files from mc-dev for diff visibility | Mike Primm | 2012-08-19 | -0/+728 |
| | ||||
* | Fix issues with chunk saving. Fixes BUKKIT-2158, BUKKIT-2018 and BUKKIT-2229 | Mike Primm | 2012-08-19 | -4/+28 |
| | ||||
* | Add more detailed CrashReport for CraftBukkit. Addresses BUKKIT-2319 | Wesley Wolfe | 2012-08-17 | -0/+1 |
| | ||||
* | Add CrashReport for diff visiblity | Wesley Wolfe | 2012-08-17 | -0/+160 |
| | ||||
* | Don't extend pistons until data is set. Fixes BUKKIT-2153 | John Driscoll | 2012-08-17 | -2/+6 |
| | ||||
* | Removed unneeded mc-dev imports. Fixes BUKKIT-682 | Wesley Wolfe | 2012-08-17 | -637/+0 |
| | ||||
* | Call PlayerQuitEvent in correct location. Fixes BUKKIT-2193 | Travis Watkins | 2012-08-15 | -8/+7 |
| | ||||
* | Enable hardcore support. Fixes BUKKIT-2259 | feildmaster | 2012-08-12 | -1/+1 |
| | | | | | | | - Hardcore requires a newly generated world - You will be banned if you die in a hardcore world - You will NOT be banned if you die in a non-vanilla world - Your "heart container" will not change without logging back in. (Vanilla bug) | |||
* | Fix "block update packet" not being sent to the correct world. Fixes BUKKIT-2023 | feildmaster | 2012-08-12 | -1/+2 |
| | ||||
* | Implement player speed API. Addresses BUKKIT-2205 | Wesley Wolfe | 2012-08-10 | -2/+2 |
| | ||||
* | Add PlayerAbilities for diff visibility | Wesley Wolfe | 2012-08-09 | -0/+54 |
| | ||||
* | Implement BlockBreakEvent block experience. Adds BUKKIT-2033 | feildmaster | 2012-08-08 | -3/+73 |
| | ||||
* | Add BlockMobSpawner and BlockOre for diff visibility | feildmaster | 2012-08-08 | -0/+89 |
| | ||||
* | Change socket traffic class try-catch. Fixes BUKKIT-2093 | Wesley Wolfe | 2012-08-08 | -9/+4 |
| | ||||
* | Restore port to the hostname. Fixes BUKKIT-2124 | Wesley Wolfe | 2012-08-08 | -2/+2 |
| | ||||
* | Re-add support for full chunk saving so the server save-alls on stop. Fixes ↵ | EvilSeph | 2012-08-08 | -1/+3 |
| | | | | BUKKIT-2158 | |||
* | Make periodic chunk saving less aggressive and fixed double player data ↵ | EvilSeph | 2012-08-07 | -5/+1 |
| | | | | saving. Fixes BUKKIT-1994 and fixes BUKKIT-2144 | |||
* | Tripwire isn't redstone, only fire interact events. | Travis Watkins | 2012-08-06 | -5/+0 |
| | ||||
* | Don't force chunks to load again, causes chunk leaks with multiworld. | Travis Watkins | 2012-08-06 | -1/+1 |
| | ||||
* | Pistons no longer extend before they are pistons. Fixes BUKKIT-1999 | Wesley Wolfe | 2012-08-06 | -1/+1 |
| | ||||
* | Fix dispenser removing data from items. Fixes BUKKIT-2045 | feildmaster | 2012-08-06 | -2/+3 |
| | ||||
* | Don't rotate ShapedRecipes. Fixes BUKKIT-1334 | THDigi | 2012-08-06 | -4/+4 |
| | | | | ShapedRecipe's getShape() always returns a 90deg rotated shape of the original shape, this commit fixes it. | |||
* | Fix "moved too quickly" detection. | Travis Watkins | 2012-08-05 | -16/+9 |
| | ||||
* | Fire events for tripwire and hooks. | Travis Watkins | 2012-08-05 | -0/+51 |
| | ||||
* | Add BlockTripwire and BlockTripwireHook from mc-dev for diff visibility. | Travis Watkins | 2012-08-05 | -0/+436 |
| | ||||
* | Fire EntityDeathEvent for pigs. Fixes BUKKIT-2100 | Travis Watkins | 2012-08-05 | -3/+8 |
| | ||||
* | Fix Vec3DPool; don't pool objects indefinitely or O(n^2) clear() | Wesley Wolfe | 2012-08-05 | -6/+10 |
| | ||||
* | Add Vec3DPool for diff visibility | Wesley Wolfe | 2012-08-05 | -0/+53 |
| | ||||
* | Cease execution if block is AIR. Fixes BUKKIT-2104 | Wesley Wolfe | 2012-08-05 | -6/+1 |
| | ||||
* | Don't use Packet56 and clear client cache on world changes. | Travis Watkins | 2012-08-05 | -1/+9 |
| | ||||
* | Fixed PlayerManager ConcurrentModificationExceptions. Fixes BUKKIT-1972 | Wesley Wolfe | 2012-08-04 | -3/+7 |
| | ||||
* | Fix bounding box pool to use a dynamic cache size | Wesley Wolfe | 2012-08-04 | -6/+11 |
| | | | | | Also changed insane array copy routine. This should reduce server lag spikes that occur periodically. | |||
* | Add AABBPool for diff visibility | Wesley Wolfe | 2012-08-04 | -0/+53 |
| |