Commit Graph

1294 Commits

Author SHA1 Message Date
themode
014bc8b0b5 Fixed DebugUtils 2020-11-20 14:21:20 +01:00
themode
871cb993b4 Do not send packet to empty collection 2020-11-20 14:14:55 +01:00
Eoghanmc22
6fd401589c slightly optimize CommandManager 2020-11-20 08:07:09 -05:00
themode
98fe83c605 Comments for PacketUtils 2020-11-20 14:05:22 +01:00
TheMode
8c5d013990 Flush in the current thread
Signed-off-by: TheMode <themode@outlook.fr>
2020-11-20 13:48:45 +01:00
themode
f1c0c99781 Fixed TemporaryCache check 2020-11-20 11:59:58 +01:00
themode
075ff7600a Added a whole new caching system for ChunkDataPacket and UpdateLightPacket 2020-11-20 11:14:15 +01:00
themode
e453a0f9b5 Added Chunk#getLastChangeTime 2020-11-20 08:39:06 +01:00
themode
02eab844a5 Fix logging when compression is disabled (not recommended) 2020-11-20 07:55:34 +01:00
themode
9f45cf11a3 Added todo to optimize buffer allocation 2020-11-20 05:50:52 +01:00
themode
4060f8d290 Added GroupedPacketHandler to prevent rewriting the same packet multiple times 2020-11-20 05:37:13 +01:00
themode
3455c77eb7 Explain the role of each handlers 2020-11-20 04:48:33 +01:00
themode
e8ddf44c39 Stop hardcoding handler names 2020-11-20 04:36:33 +01:00
themode
153f7215b3 Write packet only once when used with PacketUtils#sendGroupedPacket 2020-11-20 03:57:05 +01:00
themode
2d7159f888 Fixed javadoc 2020-11-20 03:50:41 +01:00
themode
0739b57dd1 Server packet listener now takes a collection of player, for future network optimization 2020-11-20 03:47:29 +01:00
TheMode
a0fccca1c6
Merge pull request #69 from JesFot/master
Add code style checks
2020-11-20 02:55:33 +01:00
TheMode
60bb0fec73
Merge pull request #71 from LeoDog896/master
Add llama entity with hitbox
2020-11-20 02:55:02 +01:00
JesFot
2c18312988
Merge branch 'master' into master 2020-11-20 02:12:02 +01:00
LeoDog896
974372d2bd Merge remote-tracking branch 'upstream/master' 2020-11-19 19:55:00 -05:00
LeoDog896
66f038113f Added EntityLlama 2020-11-19 19:53:22 -05:00
themode
018786463d Replaced the channel traffic handler to GlobalChannelTrafficShapingHandler 2020-11-19 15:37:12 +01:00
themode
099a8bafdc Increase socket send buffer to 1MB 2020-11-19 08:29:34 +01:00
themode
c1e623eddc Fix unmappable character 2020-11-19 08:19:16 +01:00
TheMode
af730fb73c Decrease default synchronization time group to 50
Signed-off-by: TheMode <themode@outlook.fr>
2020-11-19 08:11:09 +01:00
themode
69a268aa9d Fixed first player teleportation when the respawn point is not 0 0 0 2020-11-19 08:05:08 +01:00
themode
828069c685 Cleanup + reduced default chunk view distance to 8 2020-11-19 07:00:41 +01:00
TheMode
fae8e30272 Reduced compression level to 3
Signed-off-by: TheMode <themode@outlook.fr>
2020-11-19 04:54:54 +01:00
Eoghanmc22
f307303758 Netty improvements 2020-11-18 20:28:56 -05:00
Eoghanmc22
618fd2b536 Begin optimizing netty. 2020-11-18 13:39:06 -05:00
themode
f30330c59b Added PlayerStartDiggingEvent warning 2020-11-18 13:22:23 +01:00
themode
408ce03cfb Made PacketDecoder more readable 2020-11-18 11:15:58 +01:00
themode
e619dd6a8e Set the default write & read limit to 75KB/s per connection 2020-11-18 11:11:21 +01:00
jglrxavpok
142b6a69a5 Post-merge fixes 2020-11-18 09:24:59 +01:00
jglrxavpok
0a4bb5ab08 Merge branch 'extensions-v2'
# Conflicts:
#	src/main/java/net/minestom/server/extensions/Extension.java
#	src/main/java/net/minestom/server/extensions/ExtensionManager.java
#	src/main/java/net/minestom/server/extras/selfmodification/MinestomRootClassLoader.java
2020-11-18 09:13:30 +01:00
themode
cdbf514918 Player#getPlayerSynchronizationTickDelay comment 2020-11-18 07:44:57 +01:00
themode
6869c834f3 Allow dynamic synchronization delay based on the number of viewers 2020-11-18 07:43:45 +01:00
themode
40d6a71697 Cleanup 2020-11-18 06:39:20 +01:00
themode
2a1a1cdcbc add method to modify and retrieve the player synchronization cooldown 2020-11-18 05:19:44 +01:00
themode
553a280993 Per instance thread is now the default, added a configurable cooldown for player position refresh 2020-11-18 05:13:49 +01:00
JësFot
d968946c44 Restore deleted empty lines 2020-11-18 00:52:33 +01:00
JësFot
ad0f02cfa9 Add checkstyle gradle plugin 2020-11-18 00:50:27 +01:00
themode
ccaf9b5c47 Reformat code 2020-11-17 15:58:36 +01:00
JësFot
3597af34f9 Add comments to attribute system 2020-11-17 15:52:20 +01:00
JesFot
b9ea934857
Changing shareWithClient defaults to `true` 2020-11-17 15:10:48 +01:00
JësFot
d738f9fddd Implement attribute instances 2020-11-17 14:59:47 +01:00
themode
089f9a30aa Comments about write/read limit of 0 2020-11-17 08:15:05 +01:00
themode
f965c5b9c9 Added write and read limit 2020-11-17 05:27:05 +01:00
themode
37a626121b Set the default thread provider thread count to PROCESSORS*2 2020-11-17 02:56:55 +01:00
themode
c755dcfb0c Prevent permanent loop for console commands 2020-11-17 02:43:20 +01:00
themode
ddaa3a6678 Prevent potential synchronization issue while removing client cache 2020-11-17 01:33:12 +01:00
themode
8b526bcabe Decrease compression level to 3 2020-11-16 17:42:37 +01:00
themode
12822c508f Cleanup 2020-11-16 17:36:31 +01:00
themode
392e702108 Improving chunk generation performance 2020-11-16 17:02:40 +01:00
themode
d4637f328b Fix server ping 2020-11-16 12:44:20 +01:00
themode
a5839ae1c8 PacketListenerManager#processServerPacket comment 2020-11-16 12:25:13 +01:00
themode
798b5d4853 Only flush during player update 2020-11-16 12:03:22 +01:00
themode
540405e796 Optimized PacketCompressor 2020-11-16 11:41:03 +01:00
themode
310733b747 Fixed stacking not working with NbtDataImpl 2020-11-16 07:40:45 +01:00
themode
3db53a798f Removed lombok dependency 2020-11-16 03:10:51 +01:00
themode
11f1a5380c Fix data file not being generated in TestLootTables 2020-11-16 00:46:46 +01:00
themode
6fbea18b41 Javadoc clarification 2020-11-16 00:04:27 +01:00
themode
a8ef335ac5 Added docs folder for GitHub Pages 2020-11-15 23:39:49 +01:00
themode
beebf18af2 Fixed the chunk generator not being executed when no populator is defined 2020-11-15 10:44:11 +01:00
themode
f1d046753c Added info about chunk potential memory leak 2020-11-15 08:33:03 +01:00
themode
2285c9622a If the garbage collector is happy, everyone is - TheMode 2020-11-15 08:03:33 +01:00
themode
47a18fc305 Created PaletteStorage#clean 2020-11-15 05:12:28 +01:00
themode
f67328c7a7 Clarify that entity ids are unique server-wide 2020-11-14 23:24:16 +01:00
themode
44fbeaa2d8 Use player respawnPosition in the SpawnPosition packet 2020-11-14 23:21:47 +01:00
themode
4353e10741 Added bungee skin/uuid forwarding 2020-11-14 23:18:52 +01:00
themode
ae8a182eb8 Read player skin from velocity 2020-11-14 22:13:01 +01:00
themode
1d1e82aeb3 Prevent infinite load screen when not teleporting the player on spawning 2020-11-14 21:45:30 +01:00
themode
ea6981c4b0 Space cleanup 2020-11-14 21:05:23 +01:00
themode
0abedd7453 Optimization to prevent permanent map lookup 2020-11-14 09:02:29 +01:00
themode
648cad85c2 Entity implements now PermissionHandler 2020-11-14 07:09:36 +01:00
themode
da94942bad Created PermissionHandler 2020-11-14 07:06:46 +01:00
themode
868f921b94 Better warning message when a packet is not fully read 2020-11-14 05:33:24 +01:00
themode
facc43e550 Added OptifineSupport for fast fix 2020-11-14 04:09:38 +01:00
themode
0d3ef8e7a3 Synchronize biome registration 2020-11-14 03:21:16 +01:00
themode
a56a9aba3e Clarification for FakePlayer#initPlayer about player registration 2020-11-14 02:30:42 +01:00
themode
597f292c16 Synchronize BlockManager registration methods 2020-11-14 01:47:25 +01:00
themode
1a8baf36f6 Prevent command override using CommandManager 2020-11-14 01:39:51 +01:00
themode
669e7ea711 Prevent important biome fields from being null 2020-11-14 01:06:04 +01:00
themode
2ea2efb5a2 Comments for packet handler getter 2020-11-14 00:26:15 +01:00
themode
6586ca39bc Added MinecraftServer#getPacketProcessor and allow to override client packet and instantiate packet instance from an id 2020-11-14 00:20:19 +01:00
themode
a1fd711b85 Created DebugUtils 2020-11-13 21:57:45 +01:00
themode
ade727cd0f Cleanup + created SingleThreadProvider 2020-11-13 19:43:22 +01:00
themode
47045252e5 PacketUtils comment 2020-11-13 09:17:53 +01:00
themode
2d009e19a7 Added KQueue support on OSX + netty version update 2020-11-13 08:39:05 +01:00
themode
1bf8c5f89b Fixed time packet being sent every tick (should be every second now) 2020-11-13 07:45:35 +01:00
themode
c60f625c55 Revamp of the packet sending code, added possibility to have listeners for outgoing packets 2020-11-13 07:43:35 +01:00
themode
3c2c7acb0b Optimize PaletteStorage operations 2020-11-13 03:57:13 +01:00
themode
0ae656c1f2 Prevent placing blocks above y=255 2020-11-13 03:51:02 +01:00
themode
72d941bc74 Prevent corrupted item stack from crashing the server 2020-11-13 03:39:00 +01:00
themode
1e30283733 Fixed palette breaking with a Y below 0 2020-11-13 03:29:09 +01:00
themode
0ab9c79a28 Prevent array resizing during server tick 2020-11-13 03:26:35 +01:00
themode
f24ae00c8f Enable packet rate limit by default with a value of 300 2020-11-13 02:07:01 +01:00
themode
a992dc1ff9 Removed confusing BinaryReader method 2020-11-13 02:02:52 +01:00
themode
02f507d5ad Server shouldn't crash/lag when receiving a string too big 2020-11-13 01:53:55 +01:00
themode
674e1079dd Added max packet size condition 2020-11-13 01:34:25 +01:00
themode
373a1cf3a7 Removed TODO 2020-11-13 00:31:04 +01:00
themode
13932a6ca3 Removed RichMessage format retention, should be done manually. + cleanup 2020-11-13 00:28:22 +01:00
themode
d3d3cc6553 Each chunk section gets its own palette, should decrease memory usage on vanilla-like worlds 2020-11-12 22:41:41 +01:00
themode
5d8b8666f2 More PaletteStorage comments 2020-11-12 08:23:37 +01:00
themode
6e77bb8358 Improved demo commands clarity 2020-11-12 03:09:36 +01:00
themode
60d01fab11 Fix main loop sleep 2020-11-12 00:56:36 +01:00
themode
041bc721c8 Cleanup UpdateManager 2020-11-12 00:18:36 +01:00
themode
46bf69c9e2 PaletteStorage comments 2020-11-11 21:44:32 +01:00
themode
1d7db5e211 Added dynamic palette resizing 2020-11-11 21:35:20 +01:00
Eoghanmc22
a7a390307c Corrected bitwise palette code and some bugs. 2020-11-11 14:28:59 -05:00
themode
babc6e35ba Fixed palette 2020-11-11 17:30:18 +01:00
themode
55cddf6b78 Added palette 2020-11-11 17:13:36 +01:00
themode
00656d96e0 Cleanup 2020-11-11 08:16:42 +01:00
themode
93bae25085 Custom blocks also use a PaletteStorage object, removed StaticChunk since memory is not an issue anymore 2020-11-11 07:29:07 +01:00
themode
4dfe01ea2f WIP PaletteStorage (only works with Bits per entry of 15) 2020-11-11 06:06:28 +01:00
themode
b6bf6a17ba Merge branch 'master' into test-palette
# Conflicts:
#	src/main/java/net/minestom/server/instance/DynamicChunk.java
2020-11-11 04:27:03 +01:00
themode
dde3430010 ArgumentRelative comment 2020-11-11 04:24:09 +01:00
themode
d520a0ebc4 Created ArgumentRelativeVec to prevent code duplication 2020-11-11 03:31:15 +01:00
themode
6cbe656b15 Added "semi-relative" location argument support 2020-11-11 02:11:28 +01:00
themode
99d27b78c4 Fixed NbtDataImpl not working in creative mode 2020-11-11 00:29:06 +01:00
themode
78bf5dda05 Comments for the relative location arguments 2020-11-10 23:31:35 +01:00
themode
ad357d70fc Added ArgumentRelativeBlockPosition, ArgumentRelativeVec3 and ArgumentRelativeVec2 2020-11-10 23:16:35 +01:00
themode
bbf9f92b52 Added bungee forwarding support 2020-11-10 21:38:08 +01:00
themode
bcee5424dc Fixed copied packets and compression using velocity forwarding 2020-11-10 21:14:24 +01:00
themode
f2e52ff463 Send an EntityMovementPacket every tick if the player did not move since the last one 2020-11-10 18:13:24 +01:00
themode
3ddca82aaa Cleanup 2 2020-11-10 08:01:27 +01:00
themode
68bb479f4a Cleanup 2020-11-10 07:42:11 +01:00
themode
c6c8f6b9d6 Usage comments for VelocityProxy 2020-11-10 00:13:57 +01:00
themode
7db94f3a65 Support for velocity modern forwarding 2020-11-09 23:48:34 +01:00
themode
247a328a09 Annotations for the advancement API 2020-11-09 18:29:30 +01:00
TheMode
826533e5ee Added some dots
Signed-off-by: TheMode <themode@outlook.fr>
2020-11-09 18:08:26 +01:00
themode
e583f21b74 Fixed client crashing when pinging with an older client 2020-11-09 03:21:18 +01:00
themode
f9035bf949 Param comments for NBTUtils#toNBT 2020-11-08 22:40:50 +01:00
themode
4412bea7b8 NBTUtils comments and contributors link in README.md 2020-11-08 20:13:24 +01:00
themode
11fc1e39bc Cleanup InstanceContainer#copy 2020-11-08 17:39:03 +01:00
themode
682c660857 Fixed javadoc 2020-11-08 15:57:00 +01:00
themode
a574c1fe2a Close the command scanner once stopped 2020-11-07 22:58:19 +01:00
themode
224626bdbd Added NbtDataImpl to support writing custom item NBT data to the client 2020-11-07 19:39:22 +01:00
themode
7bdfc93334 Added some comments about exceptions 2020-11-07 04:42:48 +01:00
themode
1d30e6e953 Use the Validator interface when possible for readability 2020-11-07 04:28:50 +01:00
themode
b2097a338d Added comments for Argument constructors 2020-11-07 03:45:25 +01:00
themode
66fc6779b6 Dynamic arguments now also have an optional dynamic restriction 2020-11-07 03:40:37 +01:00
themode
8c8ba37947 Added auto suggestion in the reload command 2020-11-06 23:35:31 +01:00
themode
cf6fbd3d34 Cleanup 2020-11-06 22:58:38 +01:00
themode
fc4501501b Fix tasks not being canceled properly + annotations 2020-11-06 22:13:52 +01:00
jglrxavpok
69f424eb6a Improve load command safety 2020-11-06 16:10:44 +01:00
jglrxavpok
d83bec4732 Let users change extension jar after unload, then load it again 2020-11-06 16:03:08 +01:00
themode
7ba1b9e174 Added additional information in InstanceContainer#cacheChunk about signaling 2020-11-05 22:53:46 +01:00
themode
73d99bf462 Made InstanceContainer#cacheChunk public 2020-11-05 22:42:03 +01:00
themode
0ee8eb7d45 Removed the instance from Chunk constructor 2020-11-05 22:37:04 +01:00