Commit Graph

2670 Commits

Author SHA1 Message Date
TheMode
495164d03b Use single thread by default 2021-04-26 16:27:50 +02:00
TheMode
79d936936e Merge branch 'master' into acquirable 2021-04-26 16:15:42 +02:00
TheMode
b27e1fcf94 Added beta annotations 2021-04-26 14:53:47 +02:00
TheMode
9ca09a32bf Rename AcquirableCollection acquire methods name 2021-04-26 13:23:32 +02:00
TheMode
c3f1b9159c Unchecked cast for acquirable getter 2021-04-26 12:52:02 +02:00
TheMode
ec9658e7d3 Fix shift click ghost item when click is cancelled 2021-04-26 01:35:44 +02:00
TheMode
8ba99bb931 Acquirable#async is not blocking 2021-04-25 23:28:41 +02:00
TheMode
b8b62c4ff7 Simplify Acquirable#lock 2021-04-25 23:07:31 +02:00
MrBretzel
e0dffea190
Merge pull request #4 from Minestom/master
PR 3
2021-04-25 22:49:07 +02:00
TheMode
47e7d35949 Support standalone itemstack string parsing 2021-04-25 21:42:40 +02:00
TheMode
6c3c6e1438 Put implementation detail in AcquirableImpl 2021-04-25 20:00:03 +02:00
TheMode
b47946bfed Remove Acquisition.java 2021-04-25 19:08:04 +02:00
TheMode
5e385c7c9b Fix section resize performance 2021-04-25 12:39:18 +02:00
TheMode
41d61e7df6 Added CommandSyntax#getSyntaxString 2021-04-25 10:46:10 +02:00
TheMode
b0afadf093 Override Argument#toString for all subclasses 2021-04-25 10:42:05 +02:00
TheMode
fd17a63f7c Remove debug code 2021-04-25 09:50:48 +02:00
TheMode
1f06603c5b Acquirable comment 2021-04-25 09:42:47 +02:00
TheMode
8e642b9116 Remove unnecessary synchronization 2021-04-25 09:33:52 +02:00
TheMode
2713650b23 Remove unused consumers 2021-04-25 01:46:27 +02:00
TheMode
41a0f22468 Prevent Acquired from being used after unlock 2021-04-24 21:39:39 +02:00
TheMode
9c99cb9b2e Removed unused method 2021-04-24 20:53:41 +02:00
TheMode
2577307da0 Make AcquirableCollection a simple collection wrapper 2021-04-24 20:40:23 +02:00
TheMode
2509085dc2 Rename optional to local 2021-04-24 19:56:39 +02:00
TheMode
db619243da Ensure that the opened inventory is the same before refreshing the cursor item 2021-04-24 19:25:26 +02:00
TheMode
4eaa15477b Potentially fix cursor ghost item when opening a new inventory 2021-04-24 19:14:19 +02:00
TheMode
b662e331f0 Fix shift clicks not being cancelled 2021-04-24 19:08:02 +02:00
TheMode
098a12961d Fix ghost item when cancelling inventory click 2021-04-24 19:00:30 +02:00
TheMode
34d10e57fa Reuse lock code 2021-04-24 18:30:21 +02:00
TheMode
0043cc7275 Re-added acquired to support manual locking 2021-04-24 18:25:15 +02:00
TheMode
845a8608db Simplify Acquirable, support for all objects 2021-04-24 18:14:12 +02:00
TheMode
26bd0dd43c Added Acquired 2021-04-24 17:41:33 +02:00
TheMode
0462c8f9a7 Cleanup 2021-04-24 15:15:23 +02:00
TheMode
db2550f9ab Merge branch 'master' into acquirable 2021-04-24 15:03:39 +02:00
TheMode
7d4e04bc66 Prevent potion effect filter when the list is empty 2021-04-24 15:03:27 +02:00
TheMode
99920a77ba Use stream instead of a collection for current thread entities 2021-04-24 14:59:43 +02:00
TheMode
7983362f25 ThreadProvider comment 2021-04-24 14:44:21 +02:00
TheMode
83271a00eb Merge branch 'master' into acquirable 2021-04-24 14:36:57 +02:00
TheMode
a6314abbad Improve physics performance 2021-04-24 12:41:52 +02:00
TheMode
7d1dfabc51 Fix color argument 2021-04-24 10:37:09 +02:00
TheMode
cf38103621 Merge branch 'master' into acquirable 2021-04-23 23:50:14 +02:00
TheMode
a671de1e01 Change addViewer0/removeViewer0 access to protected 2021-04-23 21:06:47 +02:00
TheMode
02ceed0563 Merge branch 'master' into acquirable 2021-04-23 17:52:41 +02:00
TheMode
e92fb1e8d5 Invalidate cache chunk packets when unloaded 2021-04-23 17:52:10 +02:00
TheMode
17409ee737 Merge branch 'master' into acquirable 2021-04-23 17:29:52 +02:00
TheMode
ef44c67204 Remove debug statements 2021-04-23 17:26:35 +02:00
TheMode
88be6fdfd8 Merge branch 'master' into acquirable 2021-04-23 16:39:55 +02:00
TheMode
84912f48b6 Fix memory leak 2021-04-23 16:38:40 +02:00
TheMode
2773a2d46c Make StackingRule an interface, support per item max size, fix double click stacking 2021-04-23 15:02:39 +02:00
TheMode
3035b3257d Rename #getBatchThread 2021-04-23 13:49:27 +02:00
TheMode
555cdb66de Fix entity memory leak, improve entity collection creation performance 2021-04-23 12:58:14 +02:00
TheMode
136ed17c0b No thread refresh for perchunk-instance thread provider 2021-04-23 12:25:23 +02:00
TheMode
cad488bb5d Override Player#getAcquirable 2021-04-23 11:51:14 +02:00
TheMode
129f720295 Merge branch 'master' into acquirable 2021-04-23 11:42:14 +02:00
TheMode
f432308197 Use long distance particle by default 2021-04-23 10:38:13 +02:00
TheMode
8e9838c6b6 Add tick scheduler to BenchmarkManager 2021-04-23 10:20:54 +02:00
TheMode
c24cc07b7c Improve efficiency of entity chunk update 2021-04-23 10:17:42 +02:00
TheMode
9a5af9514e The acquirable api is now only for entities 2021-04-23 10:01:17 +02:00
TheMode
0a837d2714 Renamed BatchThread.java 2021-04-23 09:58:52 +02:00
TheMode
defdbea29b Added entity/player consumer for inheritance 2021-04-23 08:59:40 +02:00
TheMode
370f4c2f57 Added more options inside ThreadProvider 2021-04-22 19:33:07 +02:00
TheMode
ef6f2ac5c9 Rename few methods 2021-04-22 16:59:42 +02:00
TheMode
297652c610 Remove generic Acquirable 2021-04-22 16:38:37 +02:00
TheMode
844671daab
Merge pull request #244 from Project-Cepi/nbt-hep
Compound and list ItemTags
2021-04-22 16:01:48 +02:00
LeoDog896
19e55f985e Add generic NBT 2021-04-22 09:52:51 -04:00
TheMode
4b5489dba6
Merge pull request #249 from Project-Cepi/ext-meta
Add Meta Object to Extensions
2021-04-22 12:36:58 +02:00
ALS
14ea17ce77 Try another test 2021-04-22 01:25:29 +02:00
MrBretzel
189b8fd552
Merge pull request #3 from Minestom/master
Update PR 3
2021-04-21 23:54:32 +02:00
MrBretzel
8047a203cb Possible fix a when storage location is closed an re opened 2021-04-21 23:53:47 +02:00
TheMode
09c22b4e49 ArgumentWord restrictions are case sensitive (because of brigadier) 2021-04-21 22:29:54 +02:00
TheMode
86faa435f7 Added SingleThreadProvider 2021-04-21 18:33:51 +02:00
TheMode
dba368d16f Thread count should depend on the processor count 2021-04-21 17:14:40 +02:00
TheMode
15b116a770 Remove unnecessary try-catch 2021-04-21 14:39:28 +02:00
TheMode
9660ee30fb More line ending 2021-04-21 14:35:35 +02:00
TheMode
5b1784fa39 Fix line ending 2021-04-21 14:34:16 +02:00
TheMode
8f6e0240eb added new #tryAcquire method with a return value instead of consumer 2021-04-21 14:32:42 +02:00
TheMode
72002a3d75 Wait monitoring should always be enabled 2021-04-21 11:37:53 +02:00
TheMode
224a1f57b4 #currentEntities documentation 2021-04-21 11:31:56 +02:00
TheMode
73dee1fb1a Better abstraction 2021-04-21 11:27:49 +02:00
TheMode
470cc09767 Merge branch 'master' into acquirable 2021-04-20 22:19:42 +02:00
TheMode
75da093475 Shift click code cleanup 2021-04-20 22:10:04 +02:00
TheMode
2aba4c49f6 Change stresstest to profile per-instance thread 2021-04-20 10:18:48 +02:00
themode
c91d957fe4 Merge branch 'master' into acquirable 2021-04-20 09:50:28 +02:00
TheMode
3fa89737d9 Reduce tick buffer copy overhead 2021-04-20 08:54:33 +02:00
TheMode
66513025c7 Fix thread safety with inventory click, add Internal annotation 2021-04-20 07:32:53 +02:00
TheMode
359d18e8a5 Remove unused class 2021-04-20 07:30:09 +02:00
TheMode
5390cd14f0 Simplify double click handling 2021-04-20 07:29:01 +02:00
TheMode
e9b5779b24 Simplify shift click handling, fix click processor ignoring non-air slot 2021-04-20 06:41:55 +02:00
TheMode
1daaeda63f Temporary fix for shift click 2021-04-19 20:09:42 +02:00
TheMode
d8e28ad73a Remove unnecessary volatile, fix acquisition from threads other than the tick ones 2021-04-19 15:25:19 +02:00
TheMode
321d185ffe use a ReentrantLock instead of guava monitor 2021-04-19 11:57:42 +02:00
TheMode
562927ee44 Added comment 2021-04-19 08:53:54 +02:00
TheMode
44b22ce1f1 Reduce monitor acquisition 2021-04-19 08:51:44 +02:00
TheMode
a6b1749e9e Added max refresh time 2021-04-19 08:17:00 +02:00
TheMode
1f08f5dc34 Use a parallel stream
Signed-off-by: TheMode <themode@outlook.fr>
2021-04-19 07:42:48 +02:00
TheMode
07471a8b5b Fix acquisition of newly instantiated entities 2021-04-18 17:31:50 +02:00
TheMode
e00b3a6fba Fix build 2021-04-18 16:56:17 +02:00
TheMode
bd9cab5805 Remove AcquirableImpl.java, more comment 2021-04-18 16:50:06 +02:00
TheMode
e63dbf28db Cleanup 2021-04-18 16:38:00 +02:00
TheMode
e342dd2b70 Merge branch 'master' into acquirable 2021-04-18 15:23:09 +02:00
TheMode
1dbd3078c3 Fix incremental thread refresh 2021-04-18 11:53:38 +02:00
TheMode
92f30070db Implement incremental chunk thread refresh 2021-04-18 11:28:28 +02:00
TheMode
6357eb6329 Use shared instance to do not run out of memory 2021-04-18 10:57:16 +02:00
TheMode
2df5484e1a Dynamic chunk thread change 2021-04-18 06:43:51 +02:00
TheMode
e9f13d0a82 WIP dynamic chunk thread change 2021-04-18 06:29:44 +02:00
TheMode
6b5f755bfd Allow null nbt, remove NBTUtils.loadItem 2021-04-18 04:44:16 +02:00
TheMode
cb34d34799 ArgumentItemStack cleanup 2021-04-18 04:35:11 +02:00
TheMode
1d2a647efa Fix tickBuffer refCnt 2021-04-18 03:35:41 +02:00
TheMode
2e4a443bec Use multiple instances in the demo server 2021-04-18 02:35:17 +02:00
TheMode
2c1084d97b Use hashcode 2021-04-18 02:22:35 +02:00
TheMode
7dd6aa2360 Separate PerChunkThreadProvider from PerInstanceThreadProvider, support arbitrary ThreadProvider#findThread number 2021-04-18 01:55:35 +02:00
TheMode
dd88a14b90 Remove unused class 2021-04-18 00:19:57 +02:00
TheMode
f0607f776a Remove unused class 2021-04-18 00:08:13 +02:00
TheMode
eb63681c37 better comment 2021-04-18 00:00:02 +02:00
TheMode
8123e839ec Improve acquisition performance, fix current thread lock not being occupied 2021-04-17 23:51:23 +02:00
LeoDog896
ee590e8325 Add meta 2021-04-17 15:00:52 -04:00
TheMode
23664292de Simplify acquisition, reduce overhead 2021-04-17 14:22:47 +02:00
TheMode
a5df2376cf Improve performance 2021-04-17 03:00:34 +02:00
TheMode
3b7353300d Acquisition rework 2021-04-17 02:50:33 +02:00
TheMode
8f3ee93191 Use literal as the default argument when generating a syntax 2021-04-16 21:51:33 +02:00
TheMode
be0c425dfc Merge branch 'master' into acquirable 2021-04-16 02:36:46 +02:00
TheMode
502ec22b92 Reduce synchronization overhead when writing tick buffer 2021-04-16 01:52:46 +02:00
TheMode
bc04534290 Use a while loop to detect deadlocks 2021-04-15 22:56:09 +02:00
TheMode
4f05887f32 Send time packet on login 2021-04-15 21:03:21 +02:00
Eoghanmc22
1bb5c7e89b fix deadlock 2021-04-15 14:23:18 -04:00
TheMode
2045ce5743 Override AcquirableCollection#forEach 2021-04-15 10:06:34 +02:00
TheMode
b5add32ad6 Added AcquirableCollection + waiting time monitor 2021-04-15 09:51:37 +02:00
TheMode
56cc33fcfa Merge branch 'master' into acquirable 2021-04-15 09:13:20 +02:00
TheMode
e17ce94241 Fix build for real 2021-04-15 08:21:24 +02:00
TheMode
232e4b8a28 Fix build 2021-04-15 08:10:32 +02:00
TheMode
5cb4be26ff Try to close the terminal when shutting down the server 2021-04-15 08:07:17 +02:00
TheMode
b066b6029a
Merge pull request #223 from thiccaxe/master
Add events for STATUS packets.
2021-04-15 07:10:32 +02:00
TheMode
aef05893e1 Fix high CPU usage on startup 2021-04-15 04:11:52 +02:00
TheMode
f4ee5505ca Fix tick thread not being properly terminated 2021-04-15 04:06:55 +02:00
TheMode
b3a548287a Improve thread safety 2021-04-15 03:53:18 +02:00
TheMode
2b79e91295 Add comment + todo 2021-04-15 03:38:27 +02:00
TheMode
bd3e4e2f0a Added Acquirable#currentEntities 2021-04-15 03:08:19 +02:00
TheMode
11b1bbea2e Update entities thread 2021-04-15 01:44:08 +02:00
LeoDog896
c41c202589 Deepclone and cast 2021-04-14 18:19:07 -04:00
LeoDog896
7eb13de433 Compound and list tags 2021-04-14 18:12:41 -04:00
TheMode
fec36d4706 Run thread directly 2021-04-14 22:48:13 +02:00
TheMode
73cdfed5ce Merge branch 'master' into acquirable 2021-04-14 22:29:55 +02:00
TheMode
250907df6c Return constant empty set if the chunk is not loaded 2021-04-14 22:29:38 +02:00
TheMode
7dc0387ecf Add a way to find the current threadid of a chunk 2021-04-14 22:22:46 +02:00
TheMode
79f0d97664 Cleanup tick preparation 2021-04-14 21:41:14 +02:00
TheMode
a55ea6d0c2 WIP per-chunk thread 2021-04-14 21:29:37 +02:00
TheMode
356150847e Per-chunk batch management 2021-04-14 20:32:02 +02:00
TheMode
9b8dd6e768 Merge branch 'master' into acquirable
# Conflicts:
#	src/main/java/net/minestom/server/thread/ThreadProvider.java
2021-04-14 20:13:26 +02:00
TheMode
ccab205a54 Initial acquirable API commit 2021-04-14 20:12:56 +02:00
TheMode
c1b278f4b9 Fix merge, remove unnecessary methods (for now)
Signed-off-by: TheMode <themode@outlook.fr>
2021-04-14 20:09:49 +02:00
TheMode
683a6d35fa Merge branch 'master' into tickable
# Conflicts:
#	src/main/java/net/minestom/server/entity/Entity.java
#	src/main/java/net/minestom/server/instance/DynamicChunk.java
#	src/main/java/net/minestom/server/instance/Instance.java
2021-04-14 20:06:35 +02:00