メインコンテンツまでスキップ

AMSローカルサーバーのテスト実行 - AccelByte Multiplayer Servers (AMS) を使用した専用サーバー - (Unityモジュール)

Last updated on July 14, 2026

注釈:本資料はAI技術を用いて翻訳されています。

概要

AccelByte Multiplayer Servers (AMS) サーバーをローカルでテストするために、AccelByteはAMS Simulatorと呼ばれるシミュレーターを提供しています。このシミュレーターは、AMSのWatchdogによって行われる専用サーバー (DS) の管理と監視プロセスをシミュレートします。このAMS Simulatorを使用することで、サーバービルドをAMSにアップロードせずにAMSの実装を検証できます。

Windows専用サーバーをパッケージ化する

ゲームサーバーを実行するには、Dedicated Serverプラットフォーム向けにプロジェクトをビルドする必要があります。ここでは、サーバーをローカルでテストするためにWindowsサーバービルドをパッケージ化する方法を説明します。

  1. UnityでByte Warsを開きます。

  2. File > Build Settingsに移動します。プラットフォームとしてDedicated Serverを選択し、Switch Platformボタンをクリックします。

    AMSを使用したUnity Byte Wars専用サーバー用のWindows専用サーバーのUnityビルド設定

  3. 起動引数を使用してAGS SDKの設定を変更できるようにし、サーバーログを確認できるようにDevelopment Buildを有効にしてから、Buildをクリックします。

  4. パッケージビルドを保存するフォルダーを選択し、Select folderをクリックします。

  5. サーバーのパッケージ化が完了するまで待ちます。

専用サーバーをローカルでテスト実行する

このセクションでは、パッケージ化したゲームサーバーをローカルでテストし、AMSのライフサイクル内での状態変化を処理できるかどうかを確認します。

  1. Admin Portalにログインし、ゲームのネームスペースダッシュボードに移動します。

  2. Multiplayer > Multiplayer Servers > Download Resourceに移動します。Windows用のAMS Simulatorを見つけてダウンロードします。amssim.exeファイルがダウンロードされます。

    注記

    Download Resourceが表示されず、代わりにSetup AMS Accountが表示される場合は、AMSアカウントを設定する必要があります。これを行うには、AMSアカウントの作成リンクに関するHow-toガイドに従ってください。

  3. AMS Simulatorを実行する前に、シミュレーター用にByteWars-AMSSimという名前の新しいIAMクライアントを設定する必要があります。作成するには、サーバーとAMS CLI IAMを設定したときと同じ手順に従いますが、今回は以下の設定を使用する必要があります。

    AMS Simulator IAMクライアントを作成する際は、Create OptionsフィールドでCreate from Templateオプションを選択します。次に、Select TemplateフィールドでDedicated Server Toolsオプションを選択します。このIAMクライアントテンプレートには、AMS Simulatorを使用するために必要な権限が含まれています。

  4. AMS Simulatorをダウンロードし、IAMクライアントを作成したら、Windows PowerShellを開き、以下のコマンドを実行してAMS Simulator実行ファイルを起動し、設定ファイルを生成します。

    .\amssim.exe generate-config
  5. AMS Simulator実行ファイルと同じパスにconfig.jsonが表示されます。テキストエディタでこのファイルを開き、以下の情報を使用して設定を入力します。ClientIDClientSecretは、作成したByteWars-AMSSim IAMクライアントの情報に置き換えます。また、その他のプレースホルダー値は、ゲームのネームスペースとAGS環境に基づいて置き換えます。

    {
    "WatchdogPort": 5555,
    "AGSEnvironmentURL": "<game_namespace_id>.prod.gamingservices.accelbyte.io",
    "AGSNamespace": "<game_namespace_id>",
    "IAM": {
    "ClientID": "<ams_sim_iam_client_id>",
    "ClientSecret": "<ams_sim_iam_client_secret>"
    },
    "LocalDSHost": "127.0.0.1",
    "LocalDSPort": 7778,
    "ClaimKeys": [],
    "ServerName": "Your Local Server Name"
    }
    備考
    • WatchdogPortは、アプリが専用サーバーに接続するために使用するポートです。
    • AGSEnvironmentURLは、ローカル専用サーバーを登録したい環境のURLで、http://を含めません。
    • IAMは、前の手順で作成したAMS Simulatorを認証するために使用するClientIDClientSecretです。
    • LocalDSHostLocalDSPortは、それぞれローカル専用サーバーを実行するマシンのIPとポートで、プレイテスターがどこに接続すればよいかを認識するために使用します。
    • ClaimKeysは、セッションサービスがローカル専用サーバーをクレームするために使用するクレームキーのリストを提供します。デフォルトでは、ServerNameがクレームキーの1つとして登録されます。
    • ServerNameは、ローカル専用サーバーに付けたい名前です。デフォルトでは、クレームキーの1つとして登録され、コンピューター名を使用して自動生成されますが、任意に変更できます。
    ヒント
    • ゲームのネームスペースIDを見つけるには、Admin Portalに移動し、ゲームのネームスペースが一覧表示されているNamespaceページに移動します。次に、GAMESセクションで対象のゲームのネームスペースを見つけてgearアイコンをクリックします。新しいページでNamespace IDプロパティを見つけると、ゲームのネームスペースIDの値を確認できます。
    ヒント

    LocalDSPortについては、自分のゲームを使用している場合、サーバーが異なるポートでリスニングしている可能性があることに注意してください。デフォルトでは、Byte Warsサーバーはポート7778でリスニングします。このロジックは、ConnectionHandler.csクラス内のGetPort()関数にあります。

  6. 設定が完了したら、AMS Simulator実行ファイルを実行します。

    .\amssim.exe run

    以下はAMS Simulatorの出力です。ローカル専用サーバー用のIDフォーマットの例が提供されていることに注目してください。この例ではds_018c1f42-5eb6-7ca3-9650-a732ed75ce6aです。次の手順で必要になるので、これをコピーしてください。

    AMS simulator url  ws://0.0.0.0:5555/watchdog
    AMS simulator session id: 01hfaxxvfqhe9gkk2zesfx0b66.
    AMS simulator session log path: session\01hfaxxvfqhe9gkk2zesfx0b66.log

    Ready to accept local DS

    Start the local DS with a valid DS ID that conforms to uuid standards
    An example that can be copied and pasted is:

    ds_018c1f42-5eb6-7ca3-9650-a732ed75ce6a

    ==================================Command list=================================================
    help show the command list again
    info show AMS simulator info
    ds
    status show status of the ds
    ready explicitly set ds into ready state.
    claim claim the ds for a game session.
    drain drain the ds
    exit, quit exit ams simulator
    =============================================================================================
  7. Windows PowerShellで以下のコマンドを使用してゲームサーバー実行ファイルを実行します。前の手順のds_018c1f42-5eb6-7ca3-9650-a732ed75ce6aをローカル専用サーバーIDとして使用していることに注目してください。また、パスをサーバービルドのByteWars.exeを指すように調整してください。

    .\ByteWars.exe -log -OverrideSDKConfig "{'DsId': 'ds_018c1f42-5eb6-7ca3-9650-a732ed75ce6a'}" -watchdog_url="ws://localhost:5555/watchdog" 
    備考
    • -logはゲームサーバーのログを表示します。
    • -OverrideSDKConfigは、DsIdなどの設定パラメーターを注入するためのWindowsサーバー専用パラメーターです。
    • DsIdは、サーバー識別子を定義するためのWindows Server専用パラメーターです。AMS Simulatorが提供するサンプルIDを使用できます。この場合、ds_018c1f42-5eb6-7ca3-9650-a732ed75ce6aです。サーバーがAMSでホストされている場合、AMSが特定のサーバーIDを提供し、コマンドパラメーター値に代入します。
    • -watchdog_urlは、ゲームサーバーをAMSに接続するために使用されるURLとポートです。この例では、AMS SimulatorのデフォルトのIPとポートであるため、ws://localhost:5555/watchdogを値として使用しています。AMS Simulatorの設定はconfig.jsonで変更できます。この起動パラメーターは、専用サーバーがAMSで起動される際にAMS側で自動的に入力されることに注意してください。
  8. ゲームサーバーが実行されると、AMS SimulatorのWindows PowerShellタブに「DS Connected」というメッセージが表示され、ローカル専用サーバーがAMSに接続したことが通知されます。

    amssim> DS Connected
  9. ds statusを実行して、AMS Simulatorを使用して専用サーバーのステータスを確認します。ゲームサーバーの登録が成功すると、以下のログが表示されます。DS StateReadyに変更されていることに注目してください。

    ds status

    AMS Simulatorは以下のログを表示します。

    amssim> ds status
    ID: xxxxx
    Connected at: 2023-XX-XX 10:00:00
    Last Heartbeat: 2023-XX-XX 10:00:00
    DS State: Ready
    備考

    ダッシュボードのサイドバーメニューからMultiplayer > Multiplayer Servers > Development Servers > Local Serverを選択することで、Admin Portalからもローカル専用サーバーのステータスを確認できます。

  10. ds claimコマンドを使用して、ゲームセッションが専用サーバーをクレームする様子をシミュレートすることもできます。DS StateInSessionに変更されていることに注目してください。

    ds claim

    AMS Simulatorは以下のログを表示します。

    amssim> ds status
    ID: xxxxx
    Connected at: 2023-XX-XX 10:00:00
    Last Heartbeat: 2023-XX-XX 10:00:00
    DS State: InSession
  11. ds drainを実行することで、ゲームサーバーがドレイン状態を処理できるかどうかを確認することもできます。イベントを受信すると、ゲームサーバーはシャットダウンし、AMS Simulatorは以下のログを表示します。

    ds drain

    AMS Simulatorのログ:

    amssim> ds status
    no connected dedicated server
  12. AMS Simulatorを終了するには、以下のコマンドを実行します。

    quit