Amazon GameLift サーバー SDK for Go: データ型
Amazon GameLift Go サーバー SDK 5.x リファレンスを使用して、Amazon GameLift でホスティングするマルチプレイヤーゲームを統合します。統合プロセスのガイダンスについては、「Amazon GameLift をゲームサーバーに追加する」を参照してください。
GameLiftServerAPI.go
は、Go サーバー SDK アクションを定義します。
Amazon GameLift サーバー SDK for Go: アクション
データ型
LogParameters
ゲームセッション中に生成されたファイルを識別するオブジェクトで、ゲームセッション終了時に Amazon GameLift でアップロードして保存します。ゲームサーバーは、ProcessReady() 呼び出しでの ProcessParameters
オブジェクトの一部として LogParameters
を Amazon GameLift に提供します。
プロパティ |
説明 |
LogPaths |
Amazon GameLift で将来のアクセスに備えて保存するゲームサーバーログファイルへのディレクトリパスのリスト。サーバープロセスは各ゲームセッション中にこれらのファイルを生成します。ファイルのパスと名前はゲームサーバーで定義し、ルートゲームビルドディレクトリに保存します。 ログパスは絶対パスである必要があります。例えば、ゲームビルドによって タイプ: 必須: いいえ |
ProcessParameters
サーバープロセスと Amazon GameLift 間の通信を記述するオブジェクト。サーバープロセスは、ProcessReady() への呼び出しとともにこの情報を Amazon GameLift に提供します。
プロパティ |
説明 |
LogParameters |
ゲームセッション中に生成されるファイルへのディレクトリパスを含むオブジェクト。Amazon GameLift は、今後アクセスできるようにファイルをコピーして保存します。 タイプ: 必須: いいえ |
OnHealthCheck |
Amazon GameLift がサーバープロセスにヘルスステータスレポートをリクエストするために呼び出すコールバック関数。Amazon GameLift は、この関数を 60 秒ごとに呼び出し、応答があるまで 60 秒待ちます。サーバープロセスは正常であれば TRUE を返し、正常でない場合は FALSE を返します。応答が返されない場合、Amazon GameLift はサーバープロセスを正常ではないと記録します。タイプ: 必須: いいえ |
OnProcessTerminate |
Amazon GameLift がサーバープロセスを強制シャットダウンするために呼び出すコールバック関数。この関数を呼び出すと、Amazon GameLift はサーバープロセスがシャットダウンするために 5 分間待ち、サーバープロセスをシャットダウンする前に ProcessEnding() 呼び出しで応答します。 タイプ: 必須: はい |
OnStartGameSession |
Amazon GameLift が更新されたゲームセッションオブジェクトを提供するために呼び出すコールバック関数。Amazon GameLift はこの関数を、更新されたマッチメーカーデータを提供するためにマッチバックフィルリクエストを処理するときに呼び出します。これは、GameSession オブジェクト、ステータス更新 (updateReason ) そして、マッチバックフィルチケット ID を渡します。タイプ: 必須: はい |
OnUpdateGameSession |
Amazon GameLift が更新されたゲームセッション情報を提供法するために呼び出すコールバック関数。Amazon GameLift はこの関数を、更新されたマッチメーカーデータを提供するためにマッチバックフィルリクエストを処理した後に呼び出します。 タイプ: 必須: いいえ |
Port |
サーバープロセスが新しいプレイヤーの接続をリスンするポート番号。値は、このゲームサーバービルドをデプロイするすべてのフリートで設定されているポート番号の範囲に含まれる必要があります。このポート番号は、ゲームセッションオブジェクトとプレイヤーセッションオブジェクトに含まれ、ゲームセッションがサーバープロセスに接続するときに使用します。 タイプ: 必須: はい |
UpdateGameSession
ゲームセッションオブジェクトの更新。これには、ゲームセッションが更新された理由と、バックフィルを使用してゲームセッション内のプレイヤーセッションを埋めるための関連するバックフィルチケット ID が含まれます。
プロパティ | 説明 |
---|---|
GameSession | GameSession オブジェクト。GameSession オブジェクトにはゲームセッションを説明するプロパティが含まれています。タイプ: 必須: はい |
UpdateReason | ゲームセッションが更新されている理由。 タイプ: 必須: はい |
BackfillTicketId | ゲームセッションの更新を試みるバックフィルチケットの ID。 タイプ: 必須: いいえ |
GameSession
ゲームセッションの詳細。
プロパティ | 説明 |
---|---|
GameSessionId |
ゲームセッションの一意の識別子。ゲームセッション Amazon リソースネーム (ARN) には タイプ: 必須: いいえ |
名前 |
ゲームセッションについて説明するラベル。 タイプ: 必須: いいえ |
FleetId |
ゲームセッションが実行されているフリートの一意の識別子。 タイプ: 必須: いいえ |
MaximumPlayerSessionCount |
ゲームセッションへのプレーヤー接続の最大数。 タイプ: 必須: いいえ |
ポート |
ゲームセッションのポート番号。Amazon GameLift ゲームサーバーに接続するには、アプリに IP アドレスとポート番号の両方が必要です。 タイプ: 必須: いいえ |
IP アドレス |
ゲームセッションの IP アドレス。Amazon GameLift ゲームサーバーに接続するには、アプリに IP アドレスとポート番号の両方が必要です。 タイプ: 必須: いいえ |
GameSessionData |
単一の文字列値としてフォーマットされたカスタムゲームセッションプロパティのセット。 タイプ: 必須: いいえ |
MatchmakerData |
ゲームセッションの作成に使用されたマッチメーキングプロセスに関する情報。JSON 構文で、文字列としてフォーマットされています。使用されたマッチメーキング設定に加えて、プレイヤー属性やチーム割り当てなど、マッチに割り当てられた全プレイヤーに関するデータが含まれます。 タイプ: 必須: いいえ |
GameProperties |
ゲームセッションのカスタムプロパティのセットで、キーと値のペアとしてフォーマットされます。これらのプロパティは、新しいゲームセッションを開始するリクエストとともに渡されます。 タイプ: 必須: いいえ |
DnsName |
ゲームセッションを実行しているインスタンスに割り当てられた DNS 識別子。値の形式は次のとおりです。
TLS 対応フリートで実行しているゲームセッションに接続する場合、IP アドレスではなく DNS 名を使用する必要があります。 タイプ: 必須: いいえ |
ServerParameters
Amazon GameLift Anywhere サーバーと Amazon GameLift サービス間の接続を維持するために使用される情報。この情報は、InitSDK() で新しいサーバープロセスを起動するときに使用されます。Amazon GameLift マネージド EC2 インスタンスでホストされているサーバーには、空のオブジェクトを使用してください。
プロパティ | 説明 |
---|---|
WebSocketURL |
Amazon GameLift Anywhere コンピューティングリソースに タイプ: 必須: はい |
ProcessID |
ゲームをホストするサーバープロセスに登録された固有の識別子。 タイプ: 必須: はい |
HostID |
新しいサーバープロセスをホストしているコンピュートリソースの一意の識別子。
タイプ: 必須: はい |
FleetID |
コンピューティングが登録されているフリートの固有識別子。詳細については、「RegisterCompute」を参照してください。 タイプ: 必須: はい |
AuthToken |
Amazon GameLift によって生成された認証トークンで、Amazon GameLift に対してサーバーを認証します。詳細については、「GetComputeAuthToken」を参照してください。 タイプ: 必須: はい |
StartMatchBackfillRequest
マッチメーキングバックフィルリクエストの作成に使用される情報。この情報は、StartMatchBackfill() 呼び出しで Amazon GameLift に伝えられます。
プロパティ | 説明 |
---|---|
GameSessionArn |
一意のゲームセッション識別子。API オペレーション タイプ: 必須: はい |
MatchmakingConfigurationArn |
このリクエストに使用されるマッチメーカーの ARN 形式の一意な識別子。元のゲームセッションののマッチメーカー ARN は、マッチメーカーデータプロパティのゲームセッションオブジェクトにあります。マッチメーカーデータの詳細については「マッチメーカーデータの処理」を参照してください。 タイプ: 必須: はい |
プレイヤー |
現在ゲームセッションに参加しているすべてのプレイヤーを表すデータのセット。マッチメーカーはこの情報を使用して、現在のプレイヤーとマッチする新しいプレイヤーを検索します。 タイプ: 必須: はい |
TicketId |
マッチメーキングまたはバックフィルリクエストチケットの一意の識別子。値を入力していない場合、Amazon GameLift によって値が生成されます。この識別子を使用してマッチバックフィルチケットのステータスを追跡したり、必要に応じてリクエストをキャンセルしたりします。 タイプ: 必須: いいえ |
プレイヤー
マッチメーキングでプレイヤーを表すオブジェクト。マッチメーキングリクエストを開始すると、プレイヤーはプレイヤー ID、属性、場合によってはレイテンシーデータを保有します。Amazon GameLift は、マッチが行われた後にチーム情報を追加します。
プロパティ | 説明 |
---|---|
LatencyInMS |
プレイヤーがロケーションに接続したときに発生するレイテンシーの量を示すミリ秒単位の値のセット。 このプロパティを使用すると、プレーヤーはリストに表示されている場所でのみマッチングされます。マッチメーカーにプレイヤーレイテンシーを評価するルールがある場合、プレイヤーはレイテンシーを報告しないとマッチングされません。 タイプ: 必須: いいえ |
PlayerAttributes |
マッチメーキングに使用するプレイヤー情報を含むキーと値のペアの集合。プレイヤー属性キーは、マッチメーキングルールセットで使用されているプレイヤー属性と一致する必要があります。 プレイヤー属性の詳細については、「AttributeValue」を参照してください。 タイプ: 必須: いいえ |
PlayerId |
プレイヤーを表す一意の識別子。 タイプ: 必須: いいえ |
Team |
マッチでプレーヤーが割り当てられるチームの名前。チーム名はマッチメーキングルールセットで定義します。 タイプ: 必須: いいえ |
DescribePlayerSessionsRequest
取得するプレイヤーセッションを指定するオブジェクト。サーバープロセスはこの情報を Amazon GameLift への DescribePlayerSessions() 呼び出しで提供します。
プロパティ | 説明 |
---|---|
GameSessionID |
一意のゲームセッション識別子。このパラメータを使用して、指定したゲームセッションのすべてのプレイヤーセッションをリクエストします。 ゲームセッション ID の形式は タイプ: 必須: いいえ |
PlayerSessionID |
プレイヤーセッションを表す一意の識別子。このパラメータを使用して、特定の 1 つのプレイヤーセッションをリクエストします。 タイプ: 必須: いいえ |
PlayerID |
プレイヤーの一意識別子。このパラメータを使用して、特定の 1 人のプレイヤーに対するすべてのプレイヤーセッションをリクエストします。「プレイヤー ID を生成する」を参照してください。 タイプ: 必須: いいえ |
PlayerSessionStatusFilter |
結果をフィルタリングするプレイヤーセッションステータス。可能なプレイヤーセッションステータスには以下が含まれます。
タイプ: 必須: いいえ |
NextToken |
結果の次のページの先頭を示すトークン。結果セットの先頭を指定するには、値を指定しないでください。プレイヤーセッション ID を提供する場合、このパラメータは無視されます。 タイプ: 必須: いいえ |
Limit |
返される結果の最大数。プレイヤーセッション ID を提供する場合、このパラメータは無視されます。 タイプ: 必須: いいえ |
StopMatchBackfillRequest
マッチメーキングバックフィルリクエストのキャンセルに使用される情報。この情報は、StopMatchBackfill() 呼び出しで Amazon GameLift サービスに伝えられます。
プロパティ | 説明 |
---|---|
GameSessionArn |
キャンセルされるリクエストの一意のゲームセッション識別子。 タイプ: 必須: いいえ |
MatchmakingConfigurationArn |
このリクエストが送信されたマッチメーカーの一意の識別子。 タイプ: 必須: いいえ |
TicketId |
キャンセルされるバックフィルリクエストチケットの一意の識別子。 タイプ: 必須: いいえ |
GetFleetRoleCredentialsRequest
AWS リソースへの制限付きアクセスをゲームサーバーにまで拡張するロール認証情報。詳細については、「Amazon GameLift の IAM サービスロールをセットアップする」を参照してください。
プロパティ | 説明 |
---|---|
RoleArn | AWS リソースへの制限付きアクセスを拡張するサービスロールの ARN。 タイプ: 必須: はい |
roleSessionName | ロール認証情報の使用を説明するセッションの名前。 タイプ: 必須: はい |