495fdbd19f
Move block and network namespaces away from PluginManager->callEvent()
...
the original step that wasn't supposed to cause conflicts, caused messy conflicts... so I might as well do this part too
2018-10-05 18:22:49 +01:00
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
2c6205e3f3
Added new events for network interface handling, close #1232 ( #1250 )
...
Added
- NetworkInterfaceRegisterEvent (cancellable)
- NetworkInterfaceUnregisterEvent
- NetworkInterfaceCrashEvent
2017-09-06 11:22:10 +01:00
ae3a8a5493
Added capability to unblock addresses without a restart
2017-08-14 14:12:06 +01:00
dbb92096e4
More typehints, documentation fixes and static analysis cleanup
2017-07-15 12:12:06 +01:00
30df0c2418
Refactor a bunch of network-related things for easier auto-generation of protocol stuff
2017-07-12 16:32:39 +01:00
ec079b68a6
Fixed missing packet registrations
2017-06-25 17:36:12 +01:00
ecfcf49984
Added basic encode/decode for gamerules data and added GameRulesChangedPacket
...
needed it for tests
Squashed:
oops
PhpStorm you asshole
2017-06-25 15:43:08 +01:00
51b0673b4b
Bite the bullet and enable strict types on everything
2017-06-07 12:53:16 +01:00
4cd97a7c7a
Fixed UpdateAttributesPacket not being registered for reading
2017-06-05 14:14:50 +01:00
69f64dd802
BossEventPacket
...
lots of stuff doesn't work (not implemented in MCPE, bug, or are we doing something wrong???)
2017-05-13 17:33:56 +01:00
e47c7ea55f
A bunch of really dirty hacks to get 1.1.0.0 working
...
Mojang: once again, what the hell have you done.
2017-04-01 19:18:15 +01:00
bb79684480
Merge branch 'api3/network' into api3/network_mcpe-1.0.5
2017-03-25 21:31:48 +00:00
6ba4a8fe5c
Moved batch packet handling into BatchPacket->handle(), fixed data packet receive timings to include MCPE packet decode time
2017-03-20 10:26:53 +00:00
36cda5de61
Merge branch 'api3/network' into api3/network_mcpe-1.0.5
2017-03-19 21:54:14 +00:00
9c350dbe47
Fixed DataPacketReceiveEvent, fixed packet receive timings, gave Player->handleDataPacket() a new use
2017-03-19 21:50:09 +00:00
6f1b12b021
Added new 1.0.5 packets
2017-03-11 19:58:32 +00:00
08cd944e5d
Merge branch 'master' into api3/network
2017-03-09 18:12:37 +00:00
7b5e5832cb
Added UpdateTradePacket
2017-03-09 17:55:25 +00:00
adb7df212c
Let the parent caller catch this so we get encapsulated packet hexdumps
2017-03-08 20:29:22 +00:00
9e92a350e3
ClientboundMapItemDataPacket
2017-03-08 20:29:15 +00:00
9b47aed0ab
Added MapInfoRequestPacket
2017-03-08 20:29:13 +00:00
55598ba703
Moaaaar resource packets
2017-03-08 20:29:13 +00:00
e008a3cd5e
Added handling for unknown packets
2017-03-08 20:29:03 +00:00
d0faf3df91
Added S2C and C2S handshake packet classes and stub handlers
...
TODO: implement encryption
Add boilerplate reset() for C2S packet encode
This crap really needs fixing
2017-03-08 20:28:52 +00:00
56990eb28b
MCPE protocol gets its own namespace
2017-03-08 20:28:39 +00:00
477cb77002
Exploded Player->handleDataPacket() into 70+ methods
2017-03-08 20:28:20 +00:00
8bf3b6bbea
Added ShowCreditsPacket
2017-03-02 11:04:51 +00:00
eb13cec5d0
Added new packets
2017-03-02 11:04:51 +00:00
38937fc4cc
Added TransferPacket
...
TYSM MOJANG
2017-02-01 12:59:01 +00:00
ad0553fbf8
Bump to API 3.0.0-ALPHA2 - READ DESCRIPTION!
...
Refactored level\format\generic\GenericChunk -> level\format\Chunk.
Re-added support for async chunk sending
Refactored most Level IO into new namespaces for more organisation
Removed LevelDB loader completely (will be re-added at a later date)
2017-01-06 17:13:45 +00:00
598e7aac8f
More PhpStorm inspections, import cleanup
2017-01-04 14:55:11 +00:00
cc9736314e
Protocol update for 1.0.0.1
...
Added PlayerFallPacket
2016-12-08 12:34:31 +00:00
fb74d93e00
Protocol changes for 1.0.0.0
2016-12-02 13:20:52 +00:00
b198f287db
Add AvailableCommands and CommandStep packet shells
2016-10-27 10:55:03 +01:00
b1df4728d3
BatchPacket payload checks, fix crashes when older versions try to join
2016-10-27 10:55:03 +01:00
7cd7a7fbf6
Spawn working on new build. TODO: Resource packs.
2016-10-27 10:55:02 +01:00
39ffc28f2a
Auto-generated data for 0.15.90.8 (not functionalyet)
2016-10-27 10:55:01 +01:00
86ed0f1397
Updated existing packets and added new ones
2016-10-27 10:55:01 +01:00
dd0c5efb56
Initial spawn on 0.16
2016-10-27 10:55:00 +01:00
58ff381557
PhpStorm automated formatting ( #11 )
...
* PhpStorm reformatting
* Tuned PhpStorm reformatting
* Improved ItemIds and BlockIds formatting
* Tuned more PhpStorm reformatting
* Improved string concatenation
2016-10-03 19:05:48 +08:00
6fc435da0e
Imports rearrangement
2016-10-03 00:43:46 +08:00
5f26c21b9f
Remove unused RemovePlayerPacket
2016-10-01 21:39:05 +01:00
5485b63e6e
Added ChangeDimensionPacket
2016-09-30 19:19:58 +01:00
ef8227a074
Bump version to 0.15.0.0 and protocol changes
2016-06-15 23:59:35 +02:00
e11b76318c
fixing chunk sending
2016-02-27 16:35:38 +01:00
bc3dca4736
Support for 0.14.0.1
2016-01-26 22:01:35 +01:00
a2734f6dc0
Merged master into php7 to support 0.13.1
2016-01-22 17:36:45 +01:00
c803dd8e69
skins fixed and added SetPlayerGameTypePacket
2015-11-26 00:47:58 +01:00
2ea81710ad
Bump protocol and fixed packets for 0.13.0
2015-11-23 21:01:02 +01:00