Dylan K. Taylor
bc9a387b0b
Fixed merge error
2018-07-17 18:46:27 +01:00
Dylan K. Taylor
df3870a112
Merge branch 'release/3.2'
2018-07-17 18:35:43 +01:00
Dylan K. Taylor
b5dcdea6d8
Protocol changes for 1.5.0 "release"
...
what a piece of shit this version is...
2018-07-11 10:00:15 +01:00
Dylan K. Taylor
258b4f9dde
ChunkRequestTask: add docs and typehints
2018-07-07 19:35:40 +01:00
Dylan K. Taylor
78d27dc3e4
Move ChunkRequestTask to pocketmine\network\mcpe namespace
...
it has a lot to do with network and little to do with world I/O (load/save).
2018-07-07 19:34:11 +01:00
Dylan K. Taylor
b23c947060
Merge branch 'release/3.1'
2018-07-06 13:12:22 +01:00
Dylan K. Taylor
ee7c838040
LoginPacket: barf on finding extraData multiple times
...
this fixes a potential exploit where clients could append JWTs signed with their own keys to the end of the chain containing fake XUID/UUID/username which would then overwrite the legitimate ones in earlier links.
This stems from the fact that the final link of the vanilla chain contains the client's own pubkey, so the client is able to append its own data to the end of the chain.
2018-07-06 12:54:43 +01:00
Dylan K. Taylor
120eb8e362
CompressBatchedTask: move to pocketmine\network\mcpe namespace
2018-07-05 13:38:33 +01:00
Dylan K. Taylor
2907de81ad
Apply typehints to more general pocketmine\network namespace
2018-07-05 13:36:23 +01:00
Dylan K. Taylor
950465d283
as always, missed one - I blame PhpStorm
2018-07-05 13:35:04 +01:00
Dylan K. Taylor
2bba3a0805
Apply typehints to pocketmine\network\mcpe\protocol namespace
...
this is pulled from network-nuke in order to reduce the size of the diff.
2018-07-05 13:19:15 +01:00
Dylan K. Taylor
2e6afa54c2
[ci skip] typo
2018-06-12 21:20:00 +01:00
Dylan K. Taylor
e36a6dc8cc
Stop RakLib spamming the console when php.ini has a bad timezone
2018-06-12 21:18:33 +01:00
Dylan K. Taylor
05af87e1d4
Strip empty lines at the end of classes
2018-06-11 13:19:23 +01:00
Dylan K. Taylor
81957d133d
AsyncTask: Rewrite how thread-local storage works, now non-dependent on Server or ServerScheduler
...
this implementation was god-awful bad and it was entirely avoidable to make it this complicated.
This utilizes the fact that pthreads treats static properties as thread-local. AsyncTask local storage now utilizes a \SplObjectStorage stored in an AsyncTask private static field.
2018-05-29 19:41:00 +01:00
Dylan K. Taylor
3a1df1d99e
LevelSoundEventPacket: added STOP_RECORD constant
...
this isn't actually a sound and as such doesn't have a stringy ID, so the script didn't see it.
2018-05-25 17:56:05 +01:00
Dylan K. Taylor
8ccd13319c
LevelSoundEventPacket: update constants
...
now with whitespace gaps generated because apparently some are missing... ugh!
2018-05-25 17:27:31 +01:00
Dylan K. Taylor
c9ed517063
Merge branch 'release/alpha12'
2018-05-22 18:50:24 +01:00
Dylan K. Taylor
28b0f5f86a
UpdateBlockSyncedPacket: rename field
2018-05-22 18:49:41 +01:00
Dylan K. Taylor
e87e2d4e52
UpdateBlockSyncedPacket: fix field visibility
2018-05-22 18:49:41 +01:00
Dylan K. Taylor
86c27953ec
NetworkBinaryStream: bail on unknown entity data types
2018-05-22 16:44:03 +01:00
Dylan K. Taylor
c285295037
Merge branch 'release/alpha12'
2018-05-17 18:40:24 +01:00
Dylan K. Taylor
f6e71d8296
Protocol changes for 1.4.0 release
...
this is nearly the same as 1.5.0.0, except the skin packet premium boolean has been dropped.
This isn't production ready yet because the blockID table needs updating (waiting on MrARM to fix his script for that).
2018-05-17 10:36:16 +01:00
Dylan K. Taylor
b333a0e24c
PlayStatusPacket: add new constant
2018-05-17 10:33:18 +01:00
Dylan K. Taylor
5e91c05424
Server::getIp() now returns 0.0.0.0 if the IP string is empty
2018-05-10 10:25:44 +01:00
Dylan K. Taylor
68ef4b210d
Allow RakLibServer to inherit constants (PATH const is needed for exception logging)
...
this is very annoying and needs a better fix.
2018-05-09 20:08:25 +01:00
Dylan K. Taylor
72690ea7f5
RakLibInterface: start RakLibServer with PTHREADS_INHERIT_NONE
...
this is now OK since the logger colours will be initialized on the fly.
2018-05-09 20:00:09 +01:00
Dylan K. Taylor
2a0a2134d1
Server: Implemented an signal/sleep interrupt mechanism for ticking ( #2171 )
...
This allows other threads to notify the main thread to wake it up while it's sleeping between ticks, allowing reduction of processing latency.
Currently only RakLib and the CommandReader threads utilize this, but it's planned to extend it to more things in the near future.
CommandReader is now event-driven instead of poll-based - the server will not poll the CommandReader thread for messages each tick anymore.
RakLib utilizes this mechanism to get packets processed without delays to lower latency.
This now adds an extra dependency - `pocketmine/snooze` library contains the meat of the code used for this. See the Snooze repository for details.
2018-05-09 14:18:13 +01:00
Dylan K. Taylor
f497e43db3
SourceInterface: removed redundant return value from process()
2018-05-05 15:30:46 +01:00
Dylan K. Taylor
295016cbc1
DisconnectPacket: fix decoding
2018-05-02 16:56:48 +01:00
Dylan K. Taylor
a014b44b69
New PlayerActionPacket constants
...
anyone know what these are for? something to do with riptide but I didn't manage to find out what...
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
c7544c1d25
AvailableCommandsPacket: update arg types
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
eb28622823
Protocol changes for 1.5.0.0
...
this feels so strange to type... can we ditch the versioning system already?
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
68494f1c0d
CraftingDataPacket: decode chemistry recipes correctly
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
d384df1f2e
fixed some mistakes in the protocol
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
fe8102c062
Silence another stupid spam bug
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
8b15d85469
bump versions for 1.2.20.1 beta
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
db432bb024
Found some things in new packets
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
91486a23a5
some changes for 1.2.14.2 beta
2018-05-02 12:03:29 +01:00
Dylan K. Taylor
d8f4dde5f3
PlayerHotbarPacket: remove unused import
2018-05-01 14:09:17 +01:00
Dylan K. Taylor
58279d4cfe
NetworkBinaryStream: fixed not decoding items with negative IDs correctly
...
negative IDs are used for new block-items.
2018-04-11 13:01:41 +01:00
Dylan K. Taylor
08d8adae5b
fixup some ResourcePack TODOs
2018-04-07 13:09:44 +01:00
Dylan K. Taylor
8d988af7db
EntityLink: added type constants
2018-04-07 11:35:36 +01:00
Dylan K. Taylor
db5890fddb
Rename more unknown things in the protocol
2018-04-07 11:35:35 +01:00
Dylan K. Taylor
5b532fdcf5
Clean up on AddHangingEntityPacket and AddPaintingPacket
...
AddPainting is a subclass of AddHangingEntity in vanilla.
2018-04-07 11:35:35 +01:00
Dylan K. Taylor
e85fc54037
LevelSoundEventPacket: found unknown field
...
wtf mojang
2018-04-07 11:35:35 +01:00
Dylan K. Taylor
7fb237938c
EntityLink: rename unknown field
...
close #1465
2018-04-07 11:35:35 +01:00
Dylan K. Taylor
9a5f9c8586
PlayerListPacket: fixup on platformChatId stuff
2018-04-07 11:35:35 +01:00
Dylan K. Taylor
4b16be7e0b
PlayerListEntry: remove leftover TODO
2018-04-07 11:35:35 +01:00
Dylan K. Taylor
5b7b2dd0e2
Merge changes from ALPHA11 for 1.2.13
2018-04-04 11:31:39 +01:00