RakNet server implementation written in PHP
SendReliabilityLayer
will now retransmit packets unacked for longer than 2 seconds.
SendReliabilityLayer
is now aware of, and respects, the remote reliable window.
$reliableWindowSize
has been added to SendReliabilityLayer::__construct()
, with a default of 512
(matching the official RakNet default as seen here).SendReliabilityLayer
no longer drops the resend queue under any circumstances.
512
packets) anyway.This release is mostly the same as 0.15.x. Despite what the version may suggest, this is not a complete RakNet implementation. Staying on 0.x for so long was a mistake that needed to be corrected.
This release modernizes the code to PHP 8.0 standards, and improves some internal structure to open the gates for future extension. No significant changes have been made, and the API is mostly the same as 0.14.
raklib\generic\Session
raklib\server\Session
is replaced by a much smaller raklib\server\ServerSession
- it inherits most of its logic from generic\Session
client\ClientSocket
and server\ServerSocket
with different functionality for each use caseisTemporal
renamed to isTemporary
wherever appropriateDisconnectReason
constants. All disconnect APIs now use these instead of hardcoded string messages.tools/scan.php
to scan for servers on a given broadcast addresstools/proxy.php
to set up a simple tunnel between a client and server (useful for getting a Windows Minecraft client onto a WSL BDS instance)ReceiveReliabilityLayer
when processing reliable-ordered packets.Server->__construct()
now checks that the passed MTU size is bigger than Session::MIN_MTU_SIZE
.