Class reference
MultiplayerPeerExtension
Inherits MultiplayerPeer
Class that can be inherited to implement custom multiplayer API networking layers via GDExtension.
Description
This class is designed to be inherited from a GDExtension plugin to implement custom networking layers for the multiplayer API (such as WebRTC). All the methods below must be implemented to have a working custom multiplayer implementation. See also MultiplayerAPI.
Methods
void _close() virtual required
Called when the multiplayer peer should be immediately closed (see MultiplayerPeer.close()).
void _disconnect_peer(int p_peer, bool p_force) virtual required
int p_peer, bool p_force) virtual requiredCalled when the connected p_peer should be forcibly disconnected (see MultiplayerPeer.disconnect_peer()).
int _get_available_packet_count() virtual required const
int _get_available_packet_count() virtual required constCalled when the available packet count is internally requested by the MultiplayerAPI.
int _get_connection_status() virtual required const
int _get_connection_status() virtual required constCalled when the connection status is requested on the MultiplayerPeer (see MultiplayerPeer.get_connection_status()).
int _get_max_packet_size() virtual required const
int _get_max_packet_size() virtual required constCalled when the maximum allowed packet size (in bytes) is requested by the MultiplayerAPI.
int _get_packet(const uint8_t ** r_buffer, int32_t* r_buffer_size) virtual
int _get_packet(const uint8_t ** r_buffer, int32_t* r_buffer_size) virtualCalled when a packet needs to be received by the MultiplayerAPI, with r_buffer_size being the size of the binary r_buffer in bytes.
int _get_packet_channel() virtual required const
int _get_packet_channel() virtual required constCalled to get the channel over which the next available packet was received. See MultiplayerPeer.get_packet_channel().
int _get_packet_mode() virtual required const
int _get_packet_mode() virtual required constCalled to get the transfer mode the remote peer used to send the next available packet. See MultiplayerPeer.get_packet_mode().
int _get_packet_peer() virtual required const
int _get_packet_peer() virtual required constCalled when the ID of the MultiplayerPeer who sent the most recent packet is requested (see MultiplayerPeer.get_packet_peer()).
PackedByteArray _get_packet_script() virtual
PackedByteArray _get_packet_script() virtualCalled when a packet needs to be received by the MultiplayerAPI, if _get_packet() isn't implemented. Use this when extending this class via GDScript.
int _get_transfer_channel() virtual required const
int _get_transfer_channel() virtual required constCalled when the transfer channel to use is read on this MultiplayerPeer (see MultiplayerPeer.transfer_channel).
int _get_transfer_mode() virtual required const
int _get_transfer_mode() virtual required constCalled when the transfer mode to use is read on this MultiplayerPeer (see MultiplayerPeer.transfer_mode).
int _get_unique_id() virtual required const
int _get_unique_id() virtual required constCalled when the unique ID of this MultiplayerPeer is requested (see MultiplayerPeer.get_unique_id()). The value must be between 1 and 2147483647.
bool _is_refusing_new_connections() virtual const
bool _is_refusing_new_connections() virtual constCalled when the "refuse new connections" status is requested on this MultiplayerPeer (see MultiplayerPeer.refuse_new_connections).
bool _is_server() virtual required const
bool _is_server() virtual required constCalled when the "is server" status is requested on the MultiplayerAPI. See MultiplayerAPI.is_server().
bool _is_server_relay_supported() virtual const
bool _is_server_relay_supported() virtual constCalled to check if the server can act as a relay in the current configuration. See MultiplayerPeer.is_server_relay_supported().
void _poll() virtual required
Called when the MultiplayerAPI is polled. See MultiplayerAPI.poll().
int _put_packet(const uint8_t* p_buffer, int p_buffer_size) virtual
int _put_packet(const uint8_t* p_buffer, int p_buffer_size) virtualCalled when a packet needs to be sent by the MultiplayerAPI, with p_buffer_size being the size of the binary p_buffer in bytes.
int _put_packet_script(PackedByteArray p_buffer) virtual
int _put_packet_script(PackedByteArray p_buffer) virtualCalled when a packet needs to be sent by the MultiplayerAPI, if _put_packet() isn't implemented. Use this when extending this class via GDScript.
void _set_refuse_new_connections(bool p_enable) virtual
bool p_enable) virtualCalled when the "refuse new connections" status is set on this MultiplayerPeer (see MultiplayerPeer.refuse_new_connections).
void _set_target_peer(int p_peer) virtual required
int p_peer) virtual requiredCalled when the target peer to use is set for this MultiplayerPeer (see MultiplayerPeer.set_target_peer()).
void _set_transfer_channel(int p_channel) virtual required
int p_channel) virtual requiredCalled when the channel to use is set for this MultiplayerPeer (see MultiplayerPeer.transfer_channel).
void _set_transfer_mode(int p_mode) virtual required
int p_mode) virtual requiredCalled when the transfer mode is set on this MultiplayerPeer (see MultiplayerPeer.transfer_mode).