NEX はサーバー機能とクライアントの組み合わせで使用します。このため、NEX を使用して開発を行う場合には開発・運用を合わせて考える必要があります。
ここでは、NEX を使用したアプリケーションを開発するためのフローについて説明します。
NEX を使用した開発では、大きく分けて以下の 6 つのフェーズを意識する必要があります。
- 企画検討
- 開発・デバッグ
- ロットチェック
- サービスイン
- パッチのリリース
- ローカライズ版の開発
企画検討
企画検討のフェーズは、考えている企画を実現するために NEX を使用することができるか、また、どのように使用していけばよいかを考えるフェーズです。このフェーズでは未だタイトル用のゲームサーバーは用意されていません。このフェーズではサンプルデモサーバーを使用することになります。NEX のパッケージに含まれているサンプルプログラムの接続先がサンプルデモサーバーです。企画検討のための確認として NEX の各機能を使用する場合は、このサンプルデモサーバーを使用してください。
このサンプルデモサーバーは他の開発者と共有ですので、タイトル固有の秘密にすべき情報、他のタイトルに迷惑をかけるような行為については行わないでください。以下に注意すべき項目を挙げます。
- データストアに、タイトル固有の情報をアップロードしない。画面キャプチャなどもアップロードしない
- ランキングの共通データ等に、タイトル固有の情報を格納しない
- マッチメイクのゲームモードに、サンプルプログラムと同一のゲームモードを指定しない
- 連続で API を呼び続ける等、ガイドラインの API アクセス回数制限を大幅に超えるような実装はしない
- 自分が作成したデータ以外のデータをむやみに削除しない
- アプリの開発フェーズでは使用しない
NEX のサンプルプログラムをそのまま実行する場合には特に制限はありません。
開発・デバッグ
開発・デバッグフェーズは、企画検討が終わり、NEX を使用する方向性が固まったタイミングで開始されます。このフェーズではサンプルデモサーバーではなく、各タイトル毎に用意されたゲームサーバーを使用します。
タイトル毎のゲームサーバーを使用するためには、OMAS から NEX の利用申請を行う必要があります。申請方法については各窓口にお問い合わせください。
NEX の利用申請時には、どのように NEX の機能を使用するのかという情報が必要になります。詳細が決まっていない場合であってもゲームサーバーの準備は可能ですので、詳細は検討中という形で NEX の利用申請をしてください。この場合、企画が固まり次第申請内容の更新をお願いします。適切に申請されていない場合、テクニカルサポート、ロットチェック等がスムーズに進まない可能性があります。
ゲームサーバーが設置されると、OMAS からゲームサーバーのゲームサーバー ID とアクセスキーが確認できるようになります。こちらの情報を使用して各タイトル毎に用意されたゲームサーバーに接続してください。
タイトル毎のゲームサーバーは、他のタイトルからは特別な設定を行わない限り参照できませんが、物理サーバーはタイトル毎に独立しておらず相乗りしている状態ですので、高負荷をかけ続けるような運用は避けてください。
以下に注意すべき項目を挙げます
- 連続で API を呼び続ける等、ガイドラインの NEX API 呼び出し頻度制限を大幅に超え続けるような実装はしない。
※ 実験中に、一時的(数分程度)に過負荷がかかるような場合についてはこの限りではありません。
NEX ライブラリのバージョンを変更する場合、ゲームサーバーのバージョンを事前に上げておく必要があります。OMAS 申請で、NEX のバージョンを変更すると、承認後にゲームサーバー更新が実施されます。更新される時期は、承認後 3 営業日以内です。
ロットチェック
ロットチェックを開始するためには、ロットチェックで使用するゲームサーバーが設置されている必要があります。ロットチェックで使用するサーバーが設置されるためには、OMAS のフェーズが「開発中/ロットチェック受付」まで進んでいる必要があります。
サービスイン
ロットチェックが完了すると、製品用のゲームサーバーが設置されます。製品用ゲームサーバーは、設置した時点から接続可能で、発売日とは連動していません。発売日前であっても製品用ゲームサーバーに接続することができます。発売日以降でなければ正常に動作しない仕様の場合には注意してください。
パッチのリリース
パッチをリリースする場合には、パッチ適用前の ROM との間に通信互換性があるかどうかに注意してください。通信互換性が無い場合には、パッチ適用前の ROM がゲームサーバーに接続されないように、サーバー側の設定を行う必要がありますので、OMAS 申請時に「更新データ未適用時のネットワーク利用規制」と「更新データリリース時のNEXサーバ再起動」を「必要」と申請してください。
パッチリリース時に NEX のバージョンを上げる必要がある場合、ゲームサーバーのバージョンも同時に上げる必要がありますので、この場合にも、パッチ適用前の ROM がゲームサーバーに接続されないようにする必要があります。
ローカライズ版の開発
既にリリース済みのタイトルのローカライズ版をリリースする場合、特別な理由が無い限りゲームサーバーを共用します。マッチメイクの結果や、データストアのデータ、ランキングデータを各リージョン毎に分けたい場合等はカテゴリやゲームモードを分けることで対応してください。この目的でゲームサーバーをリージョン毎に分けることはできません。
ローカライズ版でパッチをリリースする場合には通信互換性や NEX バージョンの変更には注意が必要です。通信互換性を切る場合、ゲームサーバーは各リージョンで共通ですので、全リージョンのパッチを同時にリリースする必要があります。このような仕様を考えている場合には、事前にパッチのリリース担当者と相談し、可否について確認をお願いします。NEX バージョンを変更する場合についても、各リージョンのパッチを同時にリリースする必要があります。