Inheritance #
- AudioServer
- CameraServer
- ClassDB
- DisplayServer
- EditorFileSystemDirectory
- EditorInterface
- EditorPaths
- EditorSelection
- EditorUndoRedoManager
- EditorVCSInterface
- Engine
- EngineDebugger
- FramebufferCacheRD
- GDExtensionManager
- Geometry2D
- Geometry3D
- IP
- Input
- InputMap
- JNISingleton
- JSONRPC
- JavaClassWrapper
- JavaScriptBridge
- MainLoop (1)
- Marshalls
- MovieWriter
- NativeMenu
- NavigationMeshGenerator
- NavigationServer2D
- NavigationServer3D
- Node (21)
- OS
- OpenXRExtensionWrapperExtension
- OpenXRInteractionProfileMetadata
- Performance
- PhysicsDirectBodyState2D (1)
- PhysicsDirectBodyState3D (1)
- PhysicsDirectSpaceState2D (1)
- PhysicsDirectSpaceState3D (1)
- PhysicsServer2D (1)
- PhysicsServer2DManager
- PhysicsServer3D (1)
- PhysicsServer3DManager
- PhysicsServer3DRendering
ServerHandler
- ProjectSettings
- RefCounted (121)
- RenderData (2)
- RenderSceneData (2)
- RenderingDevice
- RenderingServer
- ResourceLoader
- ResourceSaver
- ResourceUID
- ScriptLanguage (1)
- ShaderIncludeDB
- TextServerManager
- ThemeDB
- TileData
- Time
- TranslationServer
- TreeItem
- UndoRedo
- UniformSetCacheRD
- WorkerThreadPool
- XRServer
- XRVRS
- AESContext
- AStar2D
- AStar3D
- AStarGrid2D
- AudioEffectInstance (1)
- AudioSample
- AudioSamplePlayback
- AudioStreamPlayback (5)
- CameraFeed
- CharFXTransform
- ConfigFile
- Crypto
- DTLSServer
- DirAccess
- ENetConnection
- EditorContextMenuPlugin
- EditorDebuggerPlugin
- EditorDebuggerSession
- EditorExportPlatform (6)
- EditorExportPlugin
- EditorExportPreset
- EditorFeatureProfile
- EditorFileSystemImportFormatSupportQuery
- EditorInspectorPlugin
- EditorResourceConversionPlugin
- EditorResourcePreviewGenerator
- EditorResourceTooltipPlugin
- EditorSceneFormatImporter (4)
- EditorScenePostImport
- EditorScenePostImportPlugin
- EditorScript
- EditorTranslationParserPlugin
- EncodedObjectAsID
- EngineProfiler
- Expression
- FileAccess
- GLTFObjectModelProperty
- HMACContext
- HTTPClient
- HashingContext
- ImageFormatLoader (1)
- JavaClass
- JavaObject
- JavaScriptObject
- KinematicCollision2D
- KinematicCollision3D
- Lightmapper (1)
- MeshConvexDecompositionSettings
- MeshDataTool
- MultiplayerAPI (2)
- Mutex
- NavigationPathQueryParameters2D
- NavigationPathQueryParameters3D
- NavigationPathQueryResult2D
- NavigationPathQueryResult3D
- Node3DGizmo (1)
- OggPacketSequencePlayback
- OpenXRAPIExtension
- PCKPacker
- PackedDataContainerRef
- PacketPeer (8)
- PhysicsPointQueryParameters2D
- PhysicsPointQueryParameters3D
- PhysicsRayQueryParameters2D
- PhysicsRayQueryParameters3D
- PhysicsShapeQueryParameters2D
- PhysicsShapeQueryParameters3D
- PhysicsTestMotionParameters2D
- PhysicsTestMotionParameters3D
- PhysicsTestMotionResult2D
- PhysicsTestMotionResult3D
- RDAttachmentFormat
- RDFramebufferPass
- RDPipelineColorBlendState
- RDPipelineColorBlendStateAttachment
- RDPipelineDepthStencilState
- RDPipelineMultisampleState
- RDPipelineRasterizationState
- RDPipelineSpecializationConstant
- RDSamplerState
- RDShaderSource
- RDTextureFormat
- RDTextureView
- RDUniform
- RDVertexAttribute
- RandomNumberGenerator
- RegEx
- RegExMatch
- RenderSceneBuffers (2)
- RenderSceneBuffersConfiguration
- Resource (103)
- ResourceFormatLoader
- ResourceFormatSaver
- ResourceImporter (16)
- SceneState
- SceneTreeTimer
- Semaphore
- SkinReference
- StreamPeer (5)
- SurfaceTool
- TCPServer
- TLSOptions
- TextLine
- TextParagraph
- TextServer (1)
- Thread
- TranslationDomain
- TriangleMesh
- Tween
- Tweener (5)
- UDPServer
- UPNP
- UPNPDevice
- WeakRef
- WebRTCPeerConnection (1)
- XMLParser
- XRInterface (4)
- XRPose
- XRTracker (2)
- ZIPPacker
- ZIPReader
- ENetPacketPeer
- MultiplayerPeer (5)
- PacketPeerDTLS
- PacketPeerExtension
- PacketPeerStream
- PacketPeerUDP
- WebRTCDataChannel (1)
- WebSocketPeer
- ENetMultiplayerPeer
- MultiplayerPeerExtension
- OfflineMultiplayerPeer
- WebRTCMultiplayerPeer
- WebSocketMultiplayerPeer
Table of contents
-
virtual func _close() -> void -
virtual func _disconnect_peer(p_force: bool) -> void -
virtual const func _get_available_packet_count() -> int -
virtual const func _get_connection_status() -> intMultiplayerPeer.ConnectionStatus -
virtual const func _get_max_packet_size() -> int -
virtual func _get_packet(r_buffer_size: int32_t*) -> intError -
virtual const func _get_packet_channel() -> int -
virtual const func _get_packet_mode() -> intMultiplayerPeer.TransferMode -
virtual const func _get_packet_peer() -> int -
virtual func _get_packet_script() -> PackedByteArray -
virtual const func _get_transfer_channel() -> int -
virtual const func _get_transfer_mode() -> intMultiplayerPeer.TransferMode -
virtual const func _get_unique_id() -> int -
virtual const func _is_refusing_new_connections() -> bool -
virtual const func _is_server() -> bool -
virtual const func _is_server_relay_supported() -> bool -
virtual func _poll() -> void -
virtual func _put_packet(p_buffer_size: int) -> intError -
virtual func _put_packet_script(p_buffer: PackedByteArray) -> intError -
virtual func _set_refuse_new_connections(p_enable: bool) -> void -
virtual func _set_target_peer(p_peer: int) -> void -
virtual func _set_transfer_channel(p_channel: int) -> void -
virtual func _set_transfer_mode(p_mode: int enumMultiplayerPeer.TransferMode) -> void
MultiplayerPeerExtension #
is_refcounted, is_instantiable, core, not_builtin_classes
Class that can be inherited to implement custom multiplayer API networking layers via GDExtension.
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.
Members #
Methods #
virtual func _close() -> void#
Called when the multiplayer peer should be immediately closed (see MultiplayerPeer.close).
virtual func _disconnect_peer(p_force: bool) -> void#
Called when the connected p_peer should be forcibly disconnected (see MultiplayerPeer.disconnect_peer).
virtual const func _get_available_packet_count() -> int#
Called when the available packet count is internally requested by the MultiplayerAPI.
virtual const func _get_connection_status() -> intMultiplayerPeer.ConnectionStatus#
Called when the connection status is requested on the MultiplayerPeer (see MultiplayerPeer.get_connection_status).
virtual const func _get_max_packet_size() -> int#
Called when the maximum allowed packet size (in bytes) is requested by the MultiplayerAPI.
virtual func _get_packet(r_buffer_size: int32_t*) -> intError#
Called when a packet needs to be received by the MultiplayerAPI, with r_buffer_size being the size of the binary r_buffer in bytes.
virtual const func _get_packet_channel() -> int#
Called to get the channel over which the next available packet was received. See MultiplayerPeer.get_packet_channel.
virtual const func _get_packet_mode() -> intMultiplayerPeer.TransferMode#
Called to get the transfer mode the remote peer used to send the next available packet. See MultiplayerPeer.get_packet_mode.
virtual const func _get_packet_peer() -> int#
Called when the ID of the MultiplayerPeer who sent the most recent packet is requested (see MultiplayerPeer.get_packet_peer).
virtual func _get_packet_script() -> PackedByteArray#
Called when a packet needs to be received by the MultiplayerAPI, if _get_packet isn't implemented. Use this when extending this class via GDScript.
virtual const func _get_transfer_channel() -> int#
Called when the transfer channel to use is read on this MultiplayerPeer (see MultiplayerPeer.transfer_channel).
virtual const func _get_transfer_mode() -> intMultiplayerPeer.TransferMode#
Called when the transfer mode to use is read on this MultiplayerPeer (see MultiplayerPeer.transfer_mode).
virtual const func _get_unique_id() -> int#
Called when the unique ID of this MultiplayerPeer is requested (see MultiplayerPeer.get_unique_id). The value must be between 1 and 2147483647.
virtual const func _is_refusing_new_connections() -> bool#
Called when the "refuse new connections" status is requested on this MultiplayerPeer (see MultiplayerPeer.refuse_new_connections).
virtual const func _is_server() -> bool#
Called when the "is server" status is requested on the MultiplayerAPI. See MultiplayerAPI.is_server.
virtual const func _is_server_relay_supported() -> bool#
Called to check if the server can act as a relay in the current configuration. See MultiplayerPeer.is_server_relay_supported.
virtual func _poll() -> void#
Called when the MultiplayerAPI is polled. See MultiplayerAPI.poll.
virtual func _put_packet(p_buffer_size: int) -> intError#
Called when a packet needs to be sent by the MultiplayerAPI, with p_buffer_size being the size of the binary p_buffer in bytes.
virtual func _put_packet_script(p_buffer: PackedByteArray) -> intError#
Called when a packet needs to be sent by the MultiplayerAPI, if _put_packet isn't implemented. Use this when extending this class via GDScript.
virtual func _set_refuse_new_connections(p_enable: bool) -> void#
Called when the "refuse new connections" status is set on this MultiplayerPeer (see MultiplayerPeer.refuse_new_connections).
virtual func _set_target_peer(p_peer: int) -> void#
Called when the target peer to use is set for this MultiplayerPeer (see MultiplayerPeer.set_target_peer).
virtual func _set_transfer_channel(p_channel: int) -> void#
Called when the channel to use is set for this MultiplayerPeer (see MultiplayerPeer.transfer_channel).
virtual func _set_transfer_mode(p_mode: int enumMultiplayerPeer.TransferMode) -> void#
Called when the transfer mode is set on this MultiplayerPeer (see MultiplayerPeer.transfer_mode).