3
0
Fork 1
Commit Graph

70 Commits

Author SHA1 Message Date
聪聪 bfe43ae465 模块化方块捕获还原动作 2017-07-04 14:29:35 +08:00
聪聪 62ebe6c4e9 在放置事件取消时,对添加到玩家背包的物品进行还原 2017-06-30 16:37:49 +08:00
聪聪 2347608151 增加对OptionalForce的检查来确定是否跳过实体tick 2017-06-29 00:50:34 +08:00
xjboss 5d619b8f7e Revert "增加对OptionalForce的检查来确定是否跳过实体tick"
This reverts commit 1f7f67c56d.
2017-06-28 20:19:55 +08:00
聪聪 1f7f67c56d 增加对OptionalForce的检查来确定是否跳过实体tick 2017-06-28 09:03:10 +08:00
聪聪 05b874f281 增加对entity tick的拦截与判定 2017-06-28 08:26:41 +08:00
聪聪 467c637ca6 补丁自动格式化 2017-06-27 14:32:54 +08:00
聪聪 20c5060e12 移动null判断位置 2017-06-27 14:30:01 +08:00
聪聪 597d028218 remove repeat code,add Entity snapshot code 2017-06-25 19:09:23 +08:00
Sergey Shatunov 8d2ba00f70 Cap chunk generation to 1 chunk per tick (configurable) 2016-03-16 12:01:28 +07:00
Sergey Shatunov 5aaf6c5cbf ChunkManager implementation
ChunkManager optimize chunks handling in small and big worlds

Small worlds gets benefits with using int-object map instead long-object (in area -32768...32767 by x and z)

Large worlds gets benefits by using efficient map by Colt project, which a little (3-6%) slower in writing, but greatly faster
(400-500% from Java's HashMap and 150-180% from Trove's maps) on reading.
2016-02-10 19:17:47 +07:00
Sergey Shatunov 3b244893d9 Fix #346 2016-02-07 14:50:00 +07:00
Sergey Shatunov 7114a28fc6 Implement thread-safe, async-like and not buggy BlockUpdatesTracker
close #320
2016-02-03 10:55:26 +07:00
Sergey Shatunov 01238b890a Better handling of out of sync 2016-02-02 15:39:23 +07:00
Sergey Shatunov f9b7fa7da4 Fix #319 2016-02-02 02:21:33 +07:00
Sergey Shatunov 9a1b86730d Avoid to load chunks if block updated scheduled in unloaded chunk 2016-02-01 23:16:31 +07:00
Sergey Shatunov 12b0a52ae0 Rewrite NextTickListEntry.hashCode() to implement real hashcode, not incremental ids :)
New function is more stable and gives a good distribution of numbers with less colissions.

Fix #313
2016-02-01 16:03:58 +07:00
Sergey 8c5b2f7229 Do fully player cloning to avoid duping of items (probably related to #301) 2016-01-31 20:08:36 +07:00
Sergey 201b43272f Optimize chunk saving time by holding block updates in chunks directly (fix #299) 2016-01-31 18:53:17 +07:00
Sergey a5277c151e Fix collision of NextTickListEntry (close #289) 2016-01-31 18:39:40 +07:00
Sergey Shatunov 097252b5bf Add expermintal feature: tileEnitity list recreation each tick 2016-01-17 17:15:55 +07:00
Sergey Shatunov 25d6f61aed Autosave unmodified chunks only after 4 periods 2016-01-11 18:49:30 +07:00
Sergey Shatunov 4b705b50af Don't process dead entities during explosion 2016-01-07 00:42:54 +07:00
Sergey Shatunov eb49ce845d Make light asynchronous (close #231) 2016-01-06 01:53:42 +07:00
Sergey Shatunov 8d4b99c574 Don't sleep between chunk unloading 2016-01-05 14:56:58 +07:00
Sergey Shatunov b53d579e35 Optimize chunk saving 2016-01-05 14:55:35 +07:00
Sergey Shatunov 6911f3485a Fix for map decoration 2016-01-05 14:48:56 +07:00
Sergey Shatunov 0011dd0d9a Limit TNT detonations per world per tick 2016-01-05 14:20:01 +07:00
Sergey Shatunov f722fccdce Rollback to the state of .152 build with some critical fixes and updates 2016-01-04 12:38:37 +07:00
Prototik ed0bc9ab15 Fix #228 2015-10-25 15:56:15 +07:00
Prototik 30960fd721 Fix #222 2015-10-23 20:04:48 +07:00
Prototik d3c359b26d Fix #218, fix #217 2015-10-23 01:33:13 +07:00
Prototik ad909f2788 Return empty chunk in case of null and come back indent for ProcessingQueue, sorry! :) 2015-10-22 01:45:44 +07:00
Prototik c9caa8c770 Fix #210 2015-10-22 01:33:46 +07:00
Prototik 40ac2b7e23 Fix #209 2015-10-19 11:23:10 +07:00
Prototik 7defe0bb29 Some portion of optimizations:
* Clear outgoing packet queue after player disconnect
* Disable sleep between chunk saving
* Put 2x4096 bytes instead 2048x4 bytes for region file aligment
* Using map to search player by name instead iterating over all players
* Some tweaks for decorations (item frames, maps)
2015-10-18 23:58:28 +07:00
Prototik 0097a0744a Check for active chunks before persistent, could be faster on big maps 2015-10-15 00:09:55 +07:00
Prototik a5b10b36ab Added /kc dump command for some debug reports 2015-10-06 21:00:35 +07:00
Prototik b2e14cb247 Return loop iterating over entites on overloaded server 2015-09-06 18:54:03 +07:00
Prototik 9d56192606 Some improvements in spigot timings and fix #179 2015-09-05 23:31:58 +07:00
Prototik 923b9e81a0 First attempt to fix #141 2015-09-03 18:05:12 +07:00
Prototik 1e51ceeb31 Fix broken stop command, added /kc tps command, better integration bukkit worlds with forge worlds 2015-09-03 00:22:30 +07:00
Prototik 1bafa262d0 Fix #173 2015-09-02 15:05:54 +07:00
Prototik 497d437a37 Add list wrapper for tileentities 2015-08-29 18:21:31 +07:00
Prototik 9ba84893f3 Use iterator for entities loop 2015-08-29 17:37:03 +07:00
Prototik 4a63dcacca Transparent unloading {,tile}entities from world 2015-08-29 14:49:22 +07:00
Prototik 8c50b9899f Finally fix #67 2015-06-27 16:32:21 +07:00
Prototik 3647ee33f7 Fix #30 2015-06-22 20:44:14 +07:00
Prototik 4ebda4d899 Fix #56 2015-06-22 13:42:33 +07:00
Prototik 33633471ca Normalize patches 2015-06-08 23:18:24 +07:00