Amazon GameLift サーバー SDK (Go) リファレンス: データ型 - Amazon GameLift

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon GameLift サーバー SDK (Go) リファレンス: データ型

この Amazon GameLift Go サーバー SDK リファレンスを使用すると、Amazon で使用するマルチプレイヤーゲームを準備するのに役立ちます GameLift。統合プロセスの詳細については、「Amazon GameLift をゲームサーバーに追加する」を参照してください。

LogParameters

ゲームセッション中に生成されたファイルを識別 GameLift し、ゲームセッションの終了後に Amazon がアップロードして保存するオブジェクト。ゲームサーバーはLogParametersProcessReady()呼び出しのProcessParametersオブジェクト GameLift の一部として Amazon に を提供します。

プロパティ

説明
LogPaths

Amazon が将来のアクセスのために GameLift 保存するゲームサーバーログファイルへのディレクトリパスのリスト。サーバープロセスは各ゲームセッション中にこれらのファイルを生成します。ファイルのパスと名前はゲームサーバーで定義し、ルートゲームビルドディレクトリに保存します。

ログパスは絶対パスである必要があります。例えば、ゲームビルドによって MyGame\sessionLogs\ などのパスに保存されるゲームセッションログの場合、パスは c:\game\MyGame\sessionLogs (Windows インスタンスの場合) となります。

タイプ: []string

必須: いいえ

ProcessParameters

サーバープロセスと Amazon 間の通信を記述するオブジェクト GameLift。サーバープロセスは、 への呼び出し GameLift でこの情報を Amazon に提供しますProcessReady()

プロパティ

説明
LogParameters ゲームセッション中に生成されるファイルへのディレクトリパスを含むオブジェクト。Amazon は、将来のアクセスに備えてファイル GameLift をコピーして保存します。

タイプ: LogParameters

必須: いいえ

OnHealthCheck サーバープロセスにヘルスステータスレポートをリクエストするために Amazon が GameLift 呼び出すコールバック関数。Amazon はこの関数を 60 秒ごとに GameLift 呼び出し、応答を 60 秒待機します。サーバープロセスは正常であれば TRUE を返し、正常でない場合は FALSE を返します。レスポンスが返されない場合、Amazon はサーバープロセスを正常でないものとして GameLift 記録します。

タイプ: OnHealthCheck func() bool

必須: いいえ

OnProcessTerminate サーバープロセスを強制シャットダウンするために Amazon が GameLift 呼び出すコールバック関数。この関数を呼び出した後、Amazon はサーバープロセスがシャットダウンするまで 5 分 GameLift 待ってからProcessEnding()、サーバープロセスをシャットダウンします。

タイプ: OnProcessTerminate func()

必須: はい

OnStartGameSession 更新されたゲームセッションオブジェクトをサーバープロセスに渡すために Amazon が GameLift 呼び出すコールバック関数。Amazon は、マッチバックフィルリクエストが更新されたマッチメーカーデータを提供するために処理されたときに、この関数を GameLift 呼び出します。GameSession オブジェクト、ステータス更新 (updateReason)、マッチバックフィルチケット ID を渡します。

タイプ: OnStartGameSession func (model.GameSession )

必須: はい

OnUpdateGameSession 更新されたゲームセッション情報をサーバープロセスに渡すために Amazon が GameLift 呼び出すコールバック関数。Amazon は、マッチバックフィルリクエストを処理した後にこの関数を GameLift 呼び出して、更新されたマッチメーカーデータを提供します。

タイプ: OnUpdateGameSession func (model.UpdateGameSession)

必須: いいえ

Port サーバープロセスが新しいプレイヤーの接続をリスンするポート番号。値は、このゲームサーバービルドをデプロイするすべてのフリートで設定されているポート番号の範囲に含まれる必要があります。このポート番号は、ゲームセッションオブジェクトとプレイヤーセッションオブジェクトに含まれ、ゲームセッションがサーバープロセスに接続するときに使用します。

タイプ: int

必須: はい

UpdateGameSession

ゲームセッションオブジェクトの更新。これには、ゲームセッションが更新された理由と、バックフィルを使用してゲームセッション内のプレイヤーセッションを埋めるための関連するバックフィルチケット ID が含まれます。

プロパティ 説明
GameSession Amazon GameLift API で定義されるGameSessionオブジェクト。GameSession オブジェクトにはゲームセッションを説明するプロパティが含まれています。

タイプ: GameSession GameSession()

必須: はい

UpdateReason ゲームセッションが更新されている理由。

タイプ: UpdateReason UpdateReason()

必須: はい

BackfillTicketId ゲームセッションの更新を試みるバックフィルチケットの ID。

タイプ: String

必須: いいえ

GameSession

ゲームセッションの詳細。

プロパティ 説明
GameSessionId

ゲームセッションの一意の識別子。ゲームセッション Amazon リソースネーム (ARN) には arn:aws:gamelift:<region>::gamesession/<fleet ID>/<custom ID string or idempotency token> 形式があります。

タイプ: String

必須: いいえ

名前

ゲームセッションについて説明するラベル。

タイプ: String

必須: いいえ

FleetId

ゲームセッションが実行されているフリートの一意の識別子。

タイプ: String

必須: いいえ

MaximumPlayerSessionCount

ゲームセッションへのプレーヤー接続の最大数。

タイプ: Integer

必須: いいえ

ポート

ゲームセッションのポート番号。Amazon GameLift ゲームサーバーに接続するには、アプリに IP アドレスとポート番号の両方が必要です。

タイプ: Integer

必須: いいえ

IpAddress

ゲームセッションの IP アドレス。Amazon GameLift ゲームサーバーに接続するには、アプリに IP アドレスとポート番号の両方が必要です。

タイプ: String

必須: いいえ

GameSessionData

単一の文字列値としてフォーマットされたカスタムゲームセッションプロパティのセット。

タイプ: String

必須: いいえ

MatchmakerData

ゲームセッションの作成に使用されたマッチメーキングプロセスに関する情報。JSON 構文で、文字列としてフォーマットされています。使用されたマッチメーキング設定に加えて、プレイヤー属性やチーム割り当てなど、マッチに割り当てられた全プレイヤーに関するデータが含まれます。

タイプ: String

必須: いいえ

GameProperties

ゲームセッションのカスタムプロパティのセットで、キーと値のペアとしてフォーマットされます。これらのプロパティは、新しいゲームセッションを開始するリクエストとともに渡されます。

タイプ: map[string] string

必須: いいえ

DnsName

ゲームセッションを実行しているインスタンスに割り当てられた DNS 識別子。値の形式は次のとおりです。

  • TLS 対応フリート: <unique identifier>.<region identifier>.amazongamelift.com

  • TLS 対応でないフリート: ec2-<unique identifier>.compute.amazonaws.com

TLS 対応フリートで実行しているゲームセッションに接続する場合、IP アドレスではなく DNS 名を使用する必要があります。

タイプ: String

必須: いいえ

ServerParameters

Amazon GameLift Anywhere サーバーと Amazon GameLift サービス間の接続を維持するために使用される情報。この情報は、InitSDK() で新しいサーバープロセスを起動するときに使用されます。Amazon GameLift マネージド EC2 インスタンスでホストされているサーバーの場合は、空の オブジェクトを使用します。

プロパティ 説明
WebSocketURL

GameLiftServerSdkEndpoint Amazon は GameLift Anywhere、Amazon コンピューティングリソースRegisterComputeに対して を GameLift 返す。

タイプ: string

必須: はい

ProcessID

ゲームをホストするサーバープロセスに登録された固有の識別子。

タイプ: string

必須: はい

HostID

新しいサーバープロセスをホストしているコンピュートリソースの一意の識別子。

HostID はコンピューティングを登録したときに使用される ComputeName です。詳細については、「」を参照してくださいRegisterCompute

タイプ: string

必須: はい

FleetID コンピューティングが登録されているフリートの固有識別子。詳細については、「」を参照してくださいRegisterCompute

タイプ: string

必須: はい

AuthToken Amazon が生成し、Amazon に対してサーバーを認証 GameLift する認証トークン GameLift。詳細については、「」を参照してくださいGetComputeAuthToken

タイプ: string

必須: はい

StartMatchBackfillRequest

マッチメーキングバックフィルリクエストの作成に使用される情報。ゲームサーバーは、この情報を StartMatchBackfill()呼び出し GameLift で Amazon に伝えます。

プロパティ 説明
GameSessionArn

一意のゲームセッション識別子。API オペレーション GetGameSessionId は ARN 形式の識別子を返します。

タイプ: String

必須: はい

MatchmakingConfigurationArn

このリクエストに使用されるマッチメーカーの ARN 形式の一意な識別子。元のゲームセッションののマッチメーカー ARN は、マッチメーカーデータプロパティのゲームセッションオブジェクトにあります。マッチメーカーデータの詳細については「マッチメーカーデータの処理」を参照してください。

タイプ: String

必須: はい

プレイヤー

現在ゲームセッションに参加しているすべてのプレイヤーを表すデータのセット。マッチメーカーはこの情報を使用して、現在のプレイヤーとマッチする新しいプレイヤーを検索します。

タイプ: []model.Player

必須: はい

TicketId

マッチメーキングまたはバックフィルリクエストチケットの一意の識別子。値を指定しない場合、Amazon は値 GameLift を生成します。この識別子を使用してマッチバックフィルチケットのステータスを追跡したり、必要に応じてリクエストをキャンセルしたりします。

タイプ: String

必須: いいえ

プレイヤー

マッチメーキングでプレイヤーを表すオブジェクト。マッチメーキングリクエストを開始すると、プレイヤーはプレイヤー ID、属性、場合によってはレイテンシーデータを保有します。Amazon は、マッチング後にチーム情報 GameLift を追加します。

プロパティ 説明
LatencyInMS

プレイヤーがロケーションに接続したときに発生するレイテンシーの量を示すミリ秒単位の値のセット。

このプロパティを使用すると、プレーヤーはリストに表示されている場所でのみマッチングされます。マッチメーカーにプレイヤーレイテンシーを評価するルールがある場合、プレイヤーはレイテンシーを報告しないとマッチングされません。

タイプ: map[string] int

必須: いいえ

PlayerAttributes

マッチメーキングに使用するプレイヤー情報を含むキーと値のペアの集合。プレイヤー属性キーは、マッチメーキングルールセット PlayerAttributes で使用される と一致する必要があります。

プレイヤー属性の詳細については、「」を参照してくださいAttributeValue

タイプ: map[string] AttributeValue

必須: いいえ

PlayerId

プレイヤーを表す一意の識別子。

タイプ: String

必須: いいえ

Team

マッチでプレーヤーが割り当てられるチームの名前。チーム名はマッチメーキングルールセットで定義します。

タイプ: String

必須: いいえ

DescribePlayerSessionsRequest

取得するプレイヤーセッションを指定するオブジェクト。サーバープロセスは、Amazon へのDescribePlayerSessions()呼び出しでこの情報を提供します GameLift。

プロパティ 説明
GameSessionID

一意のゲームセッション識別子。このパラメータを使用して、指定したゲームセッションのすべてのプレイヤーセッションをリクエストします。

ゲームセッション ID の形式は arn:aws:gamelift:<region>::gamesession/fleet-<fleet ID>/<ID string> です。GameSessionID はカスタム ID 文字列または生成された文字列です。

タイプ: String

必須: いいえ

PlayerSessionID

プレイヤーセッションを表す一意の識別子。このパラメータを使用して、特定の 1 つのプレイヤーセッションをリクエストします。

タイプ: String

必須: いいえ

PlayerID

プレイヤーの一意識別子。このパラメータを使用して、特定の 1 人のプレイヤーに対するすべてのプレイヤーセッションをリクエストします。プレイヤー ID を生成する を参照してください。

タイプ: String

必須: いいえ

PlayerSessionStatusFilter

結果をフィルタリングするプレイヤーセッションステータス。可能なプレイヤーセッションステータスには以下が含まれます。

  • RESERVED – プレイヤーセッションリクエストは受領されましたが、プレイヤーはサーバープロセスに接続していないか、または検証はまだ行われていません。

  • ACTIVE – プレイヤーはサーバープロセスによって検証され、接続されています。

  • COMPLETED – プレイヤー接続は削除されました。

  • TIMEDOUT – プレイヤーセッションリクエストは受領されましたが、タイムアウト制限 (60 秒) 内でのプレイヤーの接続や検証は行われていません。

タイプ: String

必須: いいえ

NextToken

結果の次のページの先頭を示すトークン。結果セットの先頭を指定するには、値を指定しないでください。プレイヤーセッション ID を提供する場合、このパラメータは無視されます。

タイプ: String

必須: いいえ

Limit

返される結果の最大数。プレイヤーセッション ID を提供する場合、このパラメータは無視されます。

タイプ: int

必須: いいえ

StopMatchBackfillRequest

マッチメーキングバックフィルリクエストのキャンセルに使用される情報。ゲームサーバーは、この情報を StopMatchBackfill()呼び出しで Amazon GameLift サービスに伝えます。

プロパティ 説明
GameSessionArn

キャンセルされるリクエストの一意のゲームセッション識別子。

タイプ: string

必須: いいえ

MatchmakingConfigurationArn

このリクエストが送信されたマッチメーカーの一意の識別子。

タイプ: string

必須: いいえ

TicketId

キャンセルされるバックフィルリクエストチケットの一意の識別子。

タイプ: string

必須: いいえ

GetFleetRoleCredentialsRequest

AWS リソースへの制限付きアクセスをゲームサーバーにまで拡張するロール認証情報。詳細については、「Amazon の IAM サービスロールを設定する GameLift」を参照してください。

プロパティ 説明
RoleArn AWS リソースへの制限付きアクセスを拡張するサービスロールの ARN。

タイプ: string

必須: はい

RoleSessionName ロール認証情報の使用を説明するセッションの名前。

タイプ: string

必須: はい