Commit Graph

696 Commits

Author SHA1 Message Date
TheMode
f07ab21d3e Use LocalCache for deflaters
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-25 20:29:47 +02:00
TheMode
9fe3f28497 Improve ThreadLocal performance when calling from a minestom thread
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-25 19:37:14 +02:00
TheMode
ccbbf6b512 Fix BinaryBuffer#canRead
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-21 10:17:33 +02:00
TheMode
17807f35da Add experimental PlayerConnection#sendFramedPacket
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-20 18:59:15 +02:00
TheMode
cbc87a2a68
Merge pull request #468 from Project-Cepi/relative-vec-coordinate-type-getter
Add `getCoordinateType` to RelativeVec
2021-09-19 14:37:26 +02:00
LeoDog896
7c6c583ce1 Record getter 2021-09-19 08:36:27 -04:00
LeoDog896
7cc50467e2 Update RelativeVec.java 2021-09-19 08:25:22 -04:00
TheMode
dda90a6dfe Improve chunk block getter
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-18 15:59:20 +02:00
TheMode
13c05626e2 Handle the connection exception being null
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-16 07:50:12 +02:00
TheMode
3211831073 Ensure that the viewable element can be collected
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-16 07:43:08 +02:00
TheMode
f1a1adc74f Issue fixed in GraalVM 21.3
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-16 05:08:49 +02:00
TheMode
7737d0e5b3 Cleanup MultiBlockChangePacket
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-14 08:14:14 +02:00
TheMode
2d3daf2504 Share code
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-14 07:20:58 +02:00
TheMode
983850171b Use cleaner to reuse connection buffers
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-14 02:22:58 +02:00
TheMode
2f9b649466 Reduce memory used for viewable packets
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-13 23:01:37 +02:00
TheMode
e1a3c295a2 Add dedicated PooledBuffers class
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-13 22:12:07 +02:00
TheMode
7b059d2be5 Remove redundant comments/methods
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-12 02:34:29 +02:00
TheMode
ee95015ed3 Simplify packet reading
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-11 03:39:59 +02:00
TheMode
0c5b37ed18 Optimize unnecessary chunk coordinate conversion
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-11 01:04:11 +02:00
TheMode
6355f06d53 Compression buffer has now multiple purpose
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-10 06:35:34 +02:00
TheMode
526108b896 Remove unnecessary allocation during encryption
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-09 23:15:57 +02:00
TheMode
1c719a2fd7 Make getChunkCoordinate smarter and more efficient
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-09 06:57:46 +02:00
TheMode
6ab94bb778 One less magic value
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-09 00:26:10 +02:00
TheMode
d7a116c144 Prevent buffer being resized in writeFramedPacket, it is now possible to know if a buffer couldn't be written to
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-08 22:26:18 +02:00
TheMode
f023b1bc07 Simplify writeVarIntHeader
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-08 22:23:37 +02:00
TheMode
21bac6fba4 Better name for the local deflater, add link to the packet format
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-08 20:31:13 +02:00
TheMode
e1c4a7afce Fix chunk 0 being sent multiple time
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-07 20:14:15 +02:00
TheMode
4a260b98c2 Simplify/Improve getChunksInRange
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-07 19:58:26 +02:00
TheMode
1c76fd152e Fix viewable packet when a connection has multiple pairs
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-07 04:47:33 +02:00
TheMode
adf1023e35 There is no commit here - fix compression
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-07 01:31:34 +02:00
TheMode
8f1e84ffdb Prevent framed packets from being corrupted
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-07 01:24:51 +02:00
TheMode
b2a0b91a45 Add warning in PacketUtils
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-06 13:40:11 +02:00
TheMode
8cbd6460f4 Cleanup...
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-05 03:40:30 +02:00
TheMode
026550ac07 Simplify PacketUtils
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-05 02:50:59 +02:00
TheMode
7b8277b6be Do not flip the buffer inside #write(ByteBuffer)
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-04 23:56:27 +02:00
TheMode
f717279adc Independent socket send & receive buffer size
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-04 16:43:45 +02:00
TheMode
96bfc4c6fa Add getters for chunk coordinates in Point
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-04 15:29:20 +02:00
TheMode
4b2bda15f5 Merge branch 'master' into viewable-broadcast
# Conflicts:
#	src/main/java/net/minestom/server/network/player/PlayerSocketConnection.java
2021-09-02 18:50:55 +02:00
TheMode
d4e51f562c Remove threadlocal buffer cache in ChunkDataPacket
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-02 18:44:50 +02:00
TheMode
399eb860a7 Improve performance when slow clients are connected
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-02 15:44:36 +02:00
TheMode
9bb4043571 Remove legacy weirdness
Signed-off-by: TheMode <themode@outlook.fr>
2021-09-01 11:56:09 +02:00
jglrxavpok
9f97c985aa Make javadoc build again 2021-08-28 17:09:07 +02:00
jglrxavpok
42938111d5 Allow tasks to be bound to the same thread for each run. 2021-08-26 19:50:28 +02:00
TheMode
af82bf1236 Reduce allocations for chunk packet writing 2021-08-26 10:55:56 +02:00
TheMode
024f8d36bd API cleanup 2021-08-26 10:36:31 +02:00
TheMode
73f125763c Use a lock + weak map 2021-08-25 17:25:08 +02:00
TheMode
e185bca468 Fix obvious packet corruption 2021-08-25 13:54:09 +02:00
TheMode
5e18f48a1b Cleanup 2021-08-25 10:45:35 +02:00
TheMode
2ae0c0bbcd Batch movement packets 2021-08-25 09:01:13 +02:00
TheMode
6520855418 Fix buffer offset 2021-08-24 21:21:51 +02:00