ゲームクライアントの開発

Strix Cloudはオンラインゲームのサーバー側クラウドソリューションです。別途開発したゲームクライアントと組み合わせて使用します。STRIXでは、簡単に使えるSDKをゲームエンジンのプラグインとして提供しており、ゲームのオンライン機能を容易に開発できます。

STRIXのSDKはゲームエンジン別に提供しています。各SDKを使ったオンラインゲームクライアントの開発については、以下のドキュメントをご覧ください。

ゲームクライアントと共有する情報

Strix Cloudによって自動的に割り当てられる設定値のうちのいくつかは、ゲームクライアントと共有する必要があります。通常、これらの情報はStrix Cloudのアプリケーションダッシュボードで値を確認し、開発中にゲームクライアントに埋め込むことになります。

具体的には、アプリケーションIDマスターホスト名をゲームクライアントと共有する必要があります。

Application ID and master host name on the information view

アプリケーションID

アプリケーションIDは、Strix Cloudでアプリケーションを定義したときに自動的に割り当たる文字列です。アプリケーション名とは異なります。STRIXのSDKとSTRIXサーバーは、アプリケーションIDを用いて自分が正しい相手と通信していることを確認します。

  • アプリケーションIDは、アプリケーションダッシュボード詳細情報画面で確認できます。

  • Strix Unity SDKでは、初期化の際に、StrixNetworkシングルトンのapplicationIdプロパティにアプリケーションIDを設定します。

    または、StrixConnectUIプレハブを使用するなら、そのStrixConnectPanelオブジェクトのStrixConnectGUIスクリプトのApplicaionIdプロパティに設定します。

  • Unreal SDKでは、初期化の際に、Initialize Strix Networkブループリント関数またはInitialize Strix Network With Http Access Tokenブループリント関数のApplication Id引数にアプリケーションIDを設定します。

  • アプリケーションIDはクライアントに埋め込むことになりますが、これが外部に流出しないように十分注意してください。

マスターホスト名

クラスターを作成すると、自動的にマスターサーバーが追加されますが、マスターホスト名はその際に自動的にマスターサーバーに割り当てられたDNSホスト名です。STRIXのSDKは、マスターホスト名を使ってマスターサーバーに接続します。

  • 各クラスターのマスターホスト名は、アプリケーションダッシュボードサーバー数画面で確認できます。また、詳細情報画面で確認することもできます。

  • Strix Unity SDKでは、StrixNetworkシングルトンのConnectMasterServer()メソッドを呼び出す際に、host引数にマスターホスト名を指定します。

    または、StrixConnectUIプレハブを使用するなら、そのStrixConnectPanelオブジェクトのStrixConnectGUIスクリプトのHostプロパティに設定します。

    なお、通信プロトコルとしてWSS (セキュアWebSocket) を使用する場合は、ConnectMasterServerのhostやStrixConnectGUIのHostにマスターホスト名単独ではなく、「wss://<マスターホスト名>:9122」のようなURL形式の文字列を指定します。

  • Unreal SDKでは、Connect To Master Serverブループリント関数を呼び出す際に、Host引数にマスターホスト名を指定します。

注釈

SDKがマスターサーバーに接続する際には、マスターホスト名に加えてポート番号も必要です。Strix Cloudでは、マスターサーバーのポート番号は通信プロトコルが何であっても9122です。

注釈

アプリケーションIDとマスターホスト名は、アプリケーションを作成した際とクラスターを作成した際に、Strix Cloudが自動的に割り当てます。これらの値をユーザーが変更することはできません。また、アプリケーションやクラスターを削除してしまうと、同内容で再度アプリケーションやクラスターを作成しても、これらの値は同じになりません。

開発がある程度進んだ時点でアプリケーションIDやマスターホスト名が変わると、ゲームクライアントに新しい値を埋め込み直さなければならなくなります。不用意にアプリケーションやクラスターを削除してしまわないよう注意してください。

注釈

次期バージョンの開発とリリース済みバージョンの運用が同時進行する場合には、開発用サーバー環境と実サービス用サーバー環境を分離して並行運用するというニーズがあると思います。その場合、開発環境と実サービス環境のアプリケーションIDとマスターホスト名の両方をクライアントに埋め込んでおき、何らかの方法で切り替えることをお勧めします。