NetworkedMultiplayerPeer

Inherits: PacketPeer < Reference < Object

Inherited By: MultiplayerPeerGDNative, NetworkedMultiplayerENet, WebRTCMultiplayer, WebSocketMultiplayerPeer

Una interfaz de red de alto nivel para simplificar las interacciones multijugador.

Descripción

Manages the connection to network peers. Assigns unique IDs to each client connected to the server. See also MultiplayerAPI.

Note: The high-level multiplayer API protocol is an implementation detail and isn't meant to be used by non-Godot servers. It may change without notice.

Métodos

ConnectionStatus

get_connection_status ( ) const

int

get_packet_peer ( ) const

int

get_unique_id ( ) const

void

poll ( )

void

set_target_peer ( int id )

Señales

  • connection_failed ( )

Emitido cuando falla un intento de conexión.


  • connection_succeeded ( )

Emitido cuando un intento de conexión tiene éxito.


  • peer_connected ( int id )

Emitido por el servidor cuando un cliente se conecta.


  • peer_disconnected ( int id )

Emitido por el servidor cuando un cliente se desconecta.


  • server_disconnected ( )

Emitido por los clientes cuando el servidor se desconecta.

Enumeraciones

enum TransferMode:

  • TRANSFER_MODE_UNRELIABLE = 0 --- No se reconocen los paquetes, no se hacen intentos de reenvío de los paquetes perdidos. Los paquetes pueden llegar en cualquier orden. Potencialmente más rápido que TRANSFER_MODE_UNRELIABLE_ORDERED. Utilícela para datos no críticos, y siempre considere si el orden importa.

  • TRANSFER_MODE_UNRELIABLE_ORDERED = 1 --- No se reconocen los paquetes, no se hacen intentos de reenvío de los paquetes perdidos. Los paquetes se reciben en el orden en que fueron enviados. Potencialmente más rápido que TRANSFER_MODE_RELIABLE. Se utiliza para datos no críticos o datos que estarían desactualizados si se recibieran tarde debido a un intento de reenvío de todas formas, por ejemplo, datos de movimiento y de posición.

  • TRANSFER_MODE_RELIABLE = 2 --- Los paquetes deben ser recibidos y se debe intentar reenviarlos hasta que se acuse recibo de los mismos. Los paquetes deben ser recibidos en el orden en que fueron enviados. Es el modo de transferencia más fiable, pero potencialmente el más lento debido a la sobrecarga. Se utiliza para los datos críticos que deben transmitirse y llegar en orden, por ejemplo, una capacidad que se está activando o un mensaje de chat. Considere cuidadosamente si la información es realmente crítica, y utilícela con moderación.


enum ConnectionStatus:

  • CONNECTION_DISCONNECTED = 0 --- La conexión en curso se ha desconectado.

  • CONNECTION_CONNECTING = 1 --- Un intento de conexión está en curso.

  • CONNECTION_CONNECTED = 2 --- El intento de conexión tuvo éxito.

Constantes

  • TARGET_PEER_BROADCAST = 0 --- Los paquetes se envían al servidor y luego se redistribuyen a otros pares.

  • TARGET_PEER_SERVER = 1 --- Los paquetes se envían sólo al servidor.

Descripciones de Propiedades

  • bool refuse_new_connections

Default

true

Setter

set_refuse_new_connections(value)

Getter

is_refusing_new_connections()

Si true, este NetworkedMultiplayerPeer rechaza las nuevas conexiones.


Default

0

Setter

set_transfer_mode(value)

Getter

get_transfer_mode()

La manera de enviar paquetes al target_peer. Véase TransferMode.

Descripciones de Métodos

Devuelve el estado actual de la conexión. Ver ConnectionStatus.


  • int get_packet_peer ( ) const

Devuelve el ID del NetworkedMultiplayerPeer que envió el paquete más reciente.


  • int get_unique_id ( ) const

Devuelve el ID de este NetworkedMultiplayerPeer.


  • void poll ( )

Espera hasta 1 segundo para recibir un nuevo evento de red.


  • void set_target_peer ( int id )

Establece el par al que se enviarán los paquetes.

El id puede ser uno de: TARGET_PEER_BROADCAST para enviar a todos los pares conectados, TARGET_PEER_SERVER para enviar al par que actúa como servidor, un ID de par válido para enviar a ese par específico, un ID de par negativo para enviar a todos los pares excepto a ese. Por defecto, el par objetivo es TARGET_PEER_BROADCAST.