Amazon GameLift
开发人员指南 (版本 )
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

实时服务器 客户端 API (C#) 参考:数据类型

此 C# Realtime客户端 API 参考可帮助您准备与 Amazon GameLift 队组上部署的 实时服务器 一起使用的多人游戏。有关集成过程的详细信息,请参阅 实时服务器 使用入门

ClientConfiguration

有关如何将游戏客户端连接到 Realtime 服务器的信息。

内容

ConnectionType

要使用的客户端/服务器连接类型,可以是安全的或不安全的。如果您未指定连接类型,默认值为不安全。

类型:一个 ConnectionType enum 值。

必需:否

ConnectionToken

有关请求与Realtime服务器连接的游戏客户端和/或玩家的信息。

内容

playerSessionId

当创建了一个新的玩家会话时 GameLift 发出的唯一 ID。玩家会话 ID 在 PlayerSession 对象中指定,作为对 AWS 开发工具包 Amazon GameLift API 操作 StartGameSessionPlacementCreateGameSessionDescribeGameSessionPlacementDescribePlayerSessions 的客户端调用的响应返回。

类型:字符串

必需:否

payload

连接时将传递给Realtime服务器的开发人员定义的信息。这包括可能用于自定义登录机制的任何任意数据。例如,在允许客户端连接之前,负载可提供Realtime服务器脚本要处理的身份验证信息。

类型:字节数组

必需:否

RTMessage

消息的内容和传递信息。消息必须指定目标玩家或目标组。

内容

opCode

标识游戏事件或操作(例如,玩家移动或服务器通知)的开发人员定义操作代码。消息的操作代码为所提供的数据负载提供上下文。使用 NewMessage() 创建的消息已具有操作代码集,但它可以随时进行更改。

类型:整数

必需:是

targetPlayer

标识作为所发送消息预期收件人的玩家的唯一 ID。目标可以是服务器本身(使用服务器 ID)或其他玩家(使用玩家 ID)。

类型:整数

必需:否

targetGroup

标识作为所发送消息预期收件人的组的唯一 ID。组 ID 由开发人员定义。

类型:整数

必需:否

deliveryIntent

指示使用可靠 TCP 连接还是使用快速 UDP 通道发送消息。使用NewMessage()创建的消息。

类型:DeliveryIntent 枚举

有效值:FAST | RELIABLE

必需:是

payload

消息内容。此信息根据游戏客户端基于随附操作代码处理的需要进行结构化。它可能包含游戏状态数据或者在游戏客户端之间或在游戏客户端与实时服务器之间进行通信所需的其他信息。

类型:字节数组

必需:否

DataReceivedEventArgs

通过OnDataReceived()回调提供的数据。

内容

sender

标识发起消息的实体的唯一 ID(玩家 ID 或服务器 ID)。

类型:整数

必需:是

opCode

标识游戏事件或操作(例如,玩家移动或服务器通知)的开发人员定义操作代码。消息的操作代码为所提供的数据负载提供上下文。

类型:整数

必需:是

数据

消息内容。此信息根据游戏客户端基于随附操作代码处理的需要进行结构化。它可能包含游戏状态数据或者在游戏客户端之间或在游戏客户端与实时服务器之间进行通信所需的其他信息。

类型:字节数组

必需:否

GroupMembershipEventArgs

通过OnGroupMembershipUpdated()回调提供的数据。

内容

sender

标识请求组成员资格更新的玩家的唯一 ID。

类型:整数

必需:是

opCode

标识游戏事件或操作的开发人员定义操作代码。

类型:整数

必需:是

groupId

标识作为所发送消息预期收件人的组的唯一 ID。组 ID 由开发人员定义。

类型:整数

必需:是

playerId

作为指定组当前成员的玩家 ID 列表。

类型:整数数组

必需:是

枚举

为Realtime客户端软件开发工具包定义的枚举定义如下:

ConnectionStatus
  • CONNECTED – 游戏客户端仅通过 TCP 连接连接到Realtime服务器。无论传递意图如何,所有消息都通过 TCP 发送。

  • CONNECTED_SEND_FAST – 游戏客户端通过 TCP 和 UDP 连接连接到Realtime服务器。但是,通过 UDP 接收消息的功能尚未验证;因此,发送到游戏客户端的所有消息均使用 TCP。

  • CONNECTED_SEND_AND_RECEIVE_FAST – 游戏客户端通过 TCP 和 UDP 连接连接到Realtime服务器。游戏客户端可以使用 TCP 或 UDP 发送和接收消息。

  • CONNECTING - 游戏客户端已发送连接请求,Realtime服务器正在进行处理。

  • DISCONNECTED_CLIENT_CALL – 游戏客户端与Realtime服务器断开连接以响应来自游戏客户端的Disconnect()请求。

  • DISCONNECTED – 游戏客户端因客户端断开连接调用以外的原因与Realtime服务器断开连接。

ConnectionType
  • RT_OVER_WSS_DTLS_TLS12 – 安全连接类型。

  • RT_OVER_WS_UDP_UNSECURED – 非安全连接类型。

  • RT_OVER_WEBSOCKET – 非安全连接类型。此值不再是首选。

DeliveryIntent
  • FAST – 使用 UDP 通道传递。

  • RELIABLE – 使用 TCP 连接传递。