AMS設定のセットアップ - AccelByte Multiplayer Servers (AMS) を使用した専用サーバー - (Unityモジュール)
注釈:本資料はAI技術を用いて翻訳されています。
概要
IAMクライアントは、AccelByte Gaming Services (AGS) の特定のリソースに権限を付与するために使用されます。ゲームの専用サーバーがAccelByte Multiplayer Servers (AMS) と通信できるようにするには、正しいIAMクライアント権限を設定し、プロジェクトにインストールされたAGS Game SDKを設定して、ゲームのAMS機能を有効にする必要があります。
サーバーIAMクライアントの作成
サーバーのアイデンティティおよびアクセス管理 (IAM) クライアントは、ゲームサーバーに権限を付与するIAMクライアントです。ゲームサーバーがAMSと通信できるようにするには、十分な権限が必要です。
- AGS Shared Cloud
- AGS Private Cloud
-
Admin Portalにログインし、ゲームネームスペースダッシュボードに移動します。
-
Game Setup > Games and Apps > IAM Clients に移動し、Create IAM Clients をクリックします。
-
新しいページで、以下の設定を使用して新しいサーバーIAMクライアントを作成します。
- Create Options: 新しいIAMクライアントを作成するための利用可能なオプション。テンプレートから新しいIAMクライアントを作成するには、Create from Template オプションを選択します。
- Select Template: 新しいIAMクライアントを作成するためのテンプレート。新しいサーバーIAMクライアントを作成するには、Dedicated Server オプションを選択します。このオプションは、ゲームサーバーに必要な権限を付与します。
- Client Name: IAMクライアントの名前。ByteWars-GameServer に設定します。
- Client Type: IAMクライアントの機密性。サーバーIAMクライアントは秘密である必要があるため、Confidential に設定します。
- Secret: IAMクライアントのシークレットまたはパスワード。独自のシークレットを使用するか、Generate ボタンをクリックしてランダムなシークレットを生成できます。必ずコピーしてください。
- Redirect URI: IAMクライアント認証が成功した後にリダイレクトするために使用されるURI。
http://127.0.0.1に設定します。
warningSecret は、IAMクライアントを作成した後は再度表示されません。次のステップに進む前に、必ずコピーして保存してください。
-
Permissions タブで、以下の権限があることを確認します。これらの権限により、サーバーはゲームセッションの管理、統計の更新、プレイヤー情報の読み取り、AMS設定の管理が可能になります。
Resource Permission AMS > Dedicated Server Create, Read, Update, Delete IAM > Users Read Session > Game Session Create, Read Statistics > User’s Statistics Value Create, Read, Update -
Create をクリックしてサーバーIAMクライアントを作成します。作成が完了すると、セットアップは完了です。
-
Admin Portalにログインし、ゲームネームスペースダッシュボードに移動します。
-
Game Setup > Games and Apps > IAM Clients に移動し、Create New をクリックします。
-
新しいウィンドウで、以下の設定を使用して新しいサーバーIAMクライアントを作成します。
- Client Type: IAMクライアントの機密性。サーバーIAMクライアントは秘密である必要があるため、Confidential に設定します。
- Secret: IAMクライアントのシークレットまたはパスワード。独自のシークレットを使用するか、Generate Client Secret ボタンをクリックしてランダムなシークレットを生成できます。
- Client Name: IAMクライアントの名前。ByteWars-GameServer に設定します。
- Redirect URI: IAMクライアント認証が成功した後にリダイレクトするために使用されるURI。
https://127.0.0.1に設定します。
warningSecret は、IAMクライアントを作成した後は再度表示されません。次のステップに進む前に、必ずコピーして保存してください。
-
Create をクリックしてサーバーIAMクライアントを作成します。その後、新しいIAMクライアント情報が画面に表示されます。
-
Permissions タブに移動し、Add をクリックします。以下の権限を1つずつ追加します。これらの権限により、サーバーはゲームセッションの管理、統計の更新、プレイヤー情報の読み取り、AMS設定の管理が可能になります。
Resource Permission NAMESPACE:{namespace}:SESSION:GAMECreate, Read ADMIN:NAMESPACE:{namespace}:SESSION:GAMEUpdate NAMESPACE:{namespace}:MATCHMAKING:BACKFILLCreate, Read, Update, Delete ADMIN:NAMESPACE:{namespace}:STATITEMCreate, Read, Update ADMIN:NAMESPACE:{namespace}:USERRead -
これで、サーバーIAMクライアントのセットアップは完了です。
AMS CLI IAMクライアントの作成
AMS コマンドラインインターフェース (CLI) IAMクライアントは、サーバーをAMSにアップロードするための権限を付与するIAMクライアントです。
- AGS Shared Cloud
- AGS Private Cloud
-
Admin Portalにログインし、ゲームネームスペースダッシュボードに移動します。
-
Game Setup > Games and Apps > IAM Clients に移動し、Create IAM Clients をクリックします。
-
新しいページで、以下の設定を使用して新しいAMS CLI IAMクライアントを作成します。
- Create Options: 新しいIAMクライアントを作成するための利用可能なオプション。テンプレートから新しいIAMクライアントを作成するには、Create from Template オプションを選択します。
- Select Template: 新しいIAMクライアントを作成するためのテンプレート。新しいAMS CLI IAMクライアントを作成するには、Dedicated Server Tools オプションを選択します。このオプションは、AMS CLIを実行するために必要な権限を付与します。
- Client Name: IAMクライアントの名前。ByteWars-AMSCLI に設定します。
- Client Type: IAMクライアントの機密性。AMS CLI IAMクライアントは秘密である必要があるため、Confidential に設定します。
- Secret: IAMクライアントのシークレットまたはパスワード。独自のシークレットを使用するか、Generate ボタンをクリックしてランダムなシークレットを生成できます。必ずコピーしてください。
- Redirect URI: IAMクライアント認証が成功した後にリダイレクトするために使用されるURI。
http://127.0.0.1に設定します。
warningSecret は、IAMクライアントを作成した後は再度表示されません。次のステップに進む前に、必ずコピーして保存してください。
-
Permissions タブで、この権限があることを確認します。この権限により、AMS CLIを使用してサーバーイメージをAMSにアップロードできます。
Resource Permission AMS > Dedicated Server Toolkit Create, Read, Update -
Create をクリックしてAMS CLI IAMクライアントを作成すると、セットアップは完了です。
-
Admin Portalにログインし、ゲームネームスペースダッシュボードに移動します。
-
Game Setup > Games and Apps > IAM Clients に移動し、Create New をクリックします。
-
新しいウィンドウで、以下の設定を使用して新しいAMS CLI IAMクライアントを作成します。
- Client Type: IAMクライアントの機密性。AMS CLI IAMクライアントは秘密である必要があるため、Confidential に設定します。
- Secret: IAMクライアントのシークレットまたはパスワード。独自のシークレットを使用するか、Generate Client Secret ボタンをクリックしてランダムなシークレットを生成できます。
- Client Name: IAMクライアントの名前。ByteWars-AMSCLI に設定します。
- Redirect URI: IAMクライアント認証が成功した後にリダイレクトするために使用されるURI。
https://127.0.0.1に設定します。
warningSecret は、IAMクライアントを作成した後は再度表示されません。次のステップに進む前に、必ずコピーして保存してください。
-
Create をクリックしてAMS CLI IAMクライアントを作成します。その後、新しいIAMクライアント情報が画面に表示されます。
-
Permissions タブに移動し、Add をクリックします。次に、以下の権限を追加します。この権限により、AMS CLIを使用してサーバーイメージをAMSにアップロードできます。
Resource Permission AMS:UPLOAD Create, Update -
これで、AMS CLI IAMクライアントのセットアップは完了です。
Server SDKの設定
Admin PortalでサーバーIAMクライアントを設定したら、ゲームプロジェクトでServer SDKを設定する必要があります。
-
UnityでByte Warsを開きます。
-
Resourcesフォルダに、AccelByteServerSDKConfig.jsonという名前の新しいJSONファイルを作成します。以下のコードをコピーしてファイルに貼り付けます。次に、値を自分の認証情報に置き換えます。- AGS Shared Cloud
- AGS Private Cloud
{
"Default": {
"Namespace": "<game_namespace_id>",
"PublisherNamespace": "",
"BaseUrl": "https://<game_namespace_id>.prod.gamingservices.accelbyte.io",
"RedirectUri": "http://127.0.0.1"
}
}備考- Namespace は、ゲームネームスペースのネームスペースIDです。
- BaseUrl は、ゲームネームスペースIDとAdmin Portal環境を組み合わせたベースURLです。
{
"Default": {
"Namespace": "<game_namespace_id>",
"PublisherNamespace": "accelbyte",
"BaseUrl": "https://<studio_name>.accelbyte.io",
"RedirectUri": "http://127.0.0.1"
}
}備考- Namespace は、ゲームネームスペースのネームスペースIDです。
- PublisherNamespace は、パブリッシャーネームスペースのパブリッシャーIDです。デフォルト値は
accelbyteです。 - BaseUrl は、Admin Portal環境のURLです。
ヒント-
ゲームネームスペースIDを見つけるには、Admin Portalに移動し、ゲームネームスペースがリストされている Namespace ページに移動します。次に、GAMES セクションでゲームネームスペースを見つけ、歯車 アイコンをクリックします。新しいページで、Namespace ID プロパティを見つけると、ゲームネームスペースIDの値を確認できます。
-
同様に、パブリッシャーネームスペースIDを見つけるには、Admin Portalに移動し、ゲームネームスペースがリストされている Namespace ページに移動します。次に、PUBLISHER セクションでパブリッシャーネームスペースを見つけ、歯車 アイコンをクリックします。新しいページで、Namespace ID プロパティを見つけると、パブリッシャーネームスペースIDの値を確認できます。
-
Resourcesフォルダに、AccelByteServerSDKOAuthConfig.jsonという名前の別のJSONファイルを作成します。次に、以下のコードをコピーしてファイルに貼り付け、値を自分の認証情報に置き換えます。{
"Default": {
"ClientId": "<server_iam_client_id>",
"ClientSecret": "<server_iam_client_secret>"
}
}備考- ClientId は、ランダムに生成され、サーバーIAMクライアントを一意に識別するために使用されます。
- ClientSecret は、サーバーIAMクライアントのシークレット (パスワード) です。
-
ファイルを保存すると、Server SDKの設定は完了です。
AGS Game SDKでAMSを有効にする
このセクションでは、プロジェクトにインストールされたAGS Game SDKでAMSを有効にして、ゲームサーバーがAMS機能を使用し、AMSと通信する権限を得られるようにします。次のいずれかの方法を使用できます。
将来的には、AMSはAGS Game SDKでデフォルトで有効になります。
- From Config File
- From Unity Editor
-
任意のテキストエディタで
AccelByteServerSDKConfig.jsonファイルを開きます。 -
AGS Game SDKでAMSを有効にするには、以下のように
AccelByteServerSDKConfig.jsonファイルにEnableAmsServerQos設定を追加して有効にします。{
"Default": {
...
"EnableAmsServerQos": true
}
} -
ファイルを保存して設定を有効にします。
-
Unity EditorでByte Warsを開きます。
-
ツールバーから、AccelByte > Edit Server Settings に移動します。
-
AccelByte Server Config ウィンドウで、Service URL Configs を展開し、Use AMS QoS Server URL を有効にして、AGS Game SDKでAMSをアクティブにします。
-
完了したら、Save ボタンをクリックして設定を保存します。
Starter Modeを有効にする
モジュールの残りの部分を進めるには、Starter Modeを有効にする必要があります。これを行うには、Unityでプロジェクトを開きます。Projectウィンドウから、Assets\Resources\Modules\MultiplayerDSEssentials\MultiplayerDSEssentialsAssetConfig.asset を開き、Inspectorで Is Starter Active 設定を有効にします。この設定により、チュートリアルを進めるために使用するスターターファイルが有効になります。