Go サーバー SDK for Amazon GameLift Servers -- データ型 - Amazon GameLift Servers

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

Go サーバー SDK for Amazon GameLift Servers -- データ型

サーバー SDK リファレンスを使用して、Amazon GameLift Servers でホスティングするマルチプレイヤーゲームを統合します。統合プロセスのガイダンスについては、「サーバー SDK を使用して、Amazon GameLift Servers をゲームサーバーに追加します。」を参照してください。

GameLiftServerAPI.go は、Go サーバー SDK アクションを定義します。

Go サーバー SDK for Amazon GameLift Servers – アクション

LogParameters

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

プロパティ

説明
LogPaths

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

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

タイプ: []string

必須: いいえ

MetricsParameters

メトリクスシステムを初期化するための設定パラメータを通信するオブジェクト。この設定は、StatsD レポート、クラッシュレポート、メトリクス処理の動作を設定するために使用されます。ゲームサーバーは、InitMetrics() の呼び出しの一部として MetricsParameters を Amazon GameLift Servers に提供します。

プロパティ

説明
StatsdHost

メトリクスレポート用の StatsD サーバーホスト (「localhost」など)。

タイプ: string

必須: はい

StatsdPort

メトリクスレポートの StatsD サーバーポート (8125 など)。

タイプ: int

必須: はい

CrashReporterHost

クラッシュ追跡とプロセスモニタリング用のクラッシュレポーターホスト。

タイプ: string

必須: はい

CrashReporterPort

クラッシュ追跡とプロセスモニタリング用のクラッシュレポーターポート。

タイプ: int

必須: はい

FlushIntervalMs

メトリクスのフラッシュ間隔はミリ秒単位です。メトリクスが StatsD に送信される頻度を制御します。

タイプ: int

必須: はい

MaxPacketSize

バイト単位のメトリクスの最大パケットサイズ。StatsD に送信される UDP パケットのサイズを制限します。

タイプ: int

必須: はい

ProcessParameters

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

プロパティ

説明
LogParameters ゲームセッション中に生成されるファイルへのディレクトリパスを持つオブジェクトです。Amazon GameLift Servers はこれらのファイルをコピーして保存し、後で参照できるようにします。

タイプ: LogParameters

必須: いいえ

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

タイプ: OnHealthCheck func() bool

必須: いいえ

OnProcessTerminate Amazon GameLift Servers がサーバープロセスを強制的にシャットダウンするために呼び出すコールバック関数です。この関数を呼び出すと、Amazon GameLift Servers はサーバープロセスがシャットダウンするまで最大 5 分間待機し、サーバープロセスがシャットダウンする前に ProcessEnding() 呼び出しで応答するのを待ちます。

タイプ: OnProcessTerminate func()

必須: はい

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

タイプ: OnStartGameSession func (model.GameSession )

必須: はい

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

タイプ: OnUpdateGameSession func (model.UpdateGameSession)

必須: いいえ

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

タイプ: int

必須: はい

UpdateGameSession

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

プロパティ 説明
GameSession 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 Servers ゲームサーバーに接続するには、アプリに IP アドレスとポート番号の両方が必要です。

タイプ: Integer

必須: いいえ

IpAddress

ゲームセッションの IP アドレス。Amazon GameLift Servers ゲームサーバーに接続するには、アプリに 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 Servers Anywhere サーバーと Amazon GameLift Servers サービス間の接続を維持するために使用される情報。この情報は、InitSDK() で新しいサーバープロセスを起動するときに使用されます。Amazon GameLift Servers マネージド EC2 インスタンスでホストされているサーバーには、空のオブジェクトを使用してください。

プロパティ 説明
WebSocketURL

Amazon GameLift Servers Anywhere コンピューティングリソース用に RegisterCompute を実行すると、GameLiftServerSdkEndpoint Amazon GameLift Servers が返されます。

タイプ: string

必須: はい

ProcessID

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

タイプ: string

必須: はい

HostID

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

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

タイプ: string

必須: はい

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

タイプ: string

必須: はい

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

タイプ: string

必須: はい

StartMatchBackfillRequest

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

プロパティ 説明
GameSessionArn

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

タイプ: String

必須: はい

MatchmakingConfigurationArn

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

タイプ: String

必須: はい

プレイヤー

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

タイプ: []model.Player

必須: はい

TicketId

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

タイプ: String

必須: いいえ

プレイヤー

マッチメーキングでプレイヤーを表すオブジェクト。マッチメーキングリクエストを開始すると、プレイヤーにはプレイヤー ID、属性、必要に応じてレイテンシーデータが含まれます。マッチが成立すると、Amazon GameLift Servers がチーム情報を追加します。

プロパティ 説明
LatencyInMS

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

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

タイプ: map[string] int

必須: いいえ

PlayerAttributes

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

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

タイプ: map[string] AttributeValue

必須: いいえ

PlayerId

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

タイプ: String

必須: いいえ

チーム

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

タイプ: String

必須: いいえ

DescribePlayerSessionsRequest

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

プロパティ 説明
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 Servers サービスに送信します。

プロパティ 説明
GameSessionArn

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

タイプ: string

必須: いいえ

MatchmakingConfigurationArn

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

タイプ: string

必須: いいえ

TicketId

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

タイプ: string

必須: いいえ

GetFleetRoleCredentialsRequest

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

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

タイプ: string

必須: はい

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

タイプ: string

必須: はい