CTR-NEX 4.4.0
はじめに
本パッケージは マッチメイク・ランキング・データストアなどの機能を含んだ、 CTR 向けの拡張通信ライブラリです。 CTR-NEX 3 系 からの変更点のまとめについては NEX3系からの変更点、ライブラリの変更履歴は 更新履歴 を参照してください。
注意
本ライブラリは暗号化技術を使用しています。
必要なシステム
CTR-NEX をビルドするためには、CTR-SDK がインストールされている必要があります。
動作確認環境
CTR-SDK 11.5.0
コンパイラのバージョンは SDK の動作確認環境と同じです。 最新の CTR-SDK での動作確認状況については、ダウンロード元サイトの最新情報を参照して下さい。
インストール方法
本パッケージを日本語やスペースが入らないディレクトリに展開してください。 サンプルデモをビルドするためには、以下の環境変数が設定されている必要があります。
- CTRSDK_ROOT
- CTR-SDK をインストールしたディレクトリ
- CTRNEX_ROOT
- パッケージ展開後、SetupCTR.wsf をダブルクリックで実行してください。実行したディレクトリが CTRNEX_ROOT として環境変数に設定されます。
利用方法
下記のパスをインクルードパスに設定し、nex.h をインクルードしてください。
$(CTRNEX_ROOT)include
下記のパスにあるライブラリをビルドターゲットに応じてリンクしてください。
$(CTRNEX_ROOT)libraries
NEX の各機能を利用するためにリンクする必要があるライブラリについては、サンプルデモの設定を参考にしてください。
既知の不具合
リリース後に判明した不具合などの最新情報については、開発者サポート Web サイトの「技術情報」を参照してください。
ファイルリスト
- include
- アプリケーションからインクルードするヘッダが含まれます。
- libraries
- アプリケーションからリンクするライブラリが含まれます。
- bin
- ビルドに必要なツールが含まれます。
- Sample
- サンプルデモが含まれます。
- document
- プログラミングマニュアルや API リファレンスなどのドキュメントが含まれます。
サンプルデモについて
サンプルデモ一覧は、 サンプルデモ一覧 にあります。
サンプルデモのビルド
$(CTRNEX_ROOT)/Sample で omake して下さい。
サンプルデモのビルドには lib_demo ライブラリが必要です。 lib_demo ライブラリをビルドするには、CTR_SDK と一緒に公開されているサンプルデモパッケージ SampleDemos/common で omake してください
サンプルデモの文字列表記
サンプルデモプログラムのコードでは、ワイドキャラクタ文字列を、文字列を_T()で囲むことで(例 _T(“hoge”))表現しています。
注意事項
- 複製オブジェクト機能(ユーザー DO )の利用について
- NEX P2P の複製オブジェクト機能(ユーザー DO )を使用する場合、ゲーム仕様によっては帯域の調整が必要な場合があります。マスターアップする予定がある場合は弊社窓口までご相談ください。
- ゲームサーバー利用上の注意
- ゲームサーバーにアクセスするには、ゲームサーバー ID とアクセスキーを指定する必要があります。 本パッケージに含まれるサンプルデモでは、サンプルデモ用のゲームサーバー ID とアクセスキーが指定されています。 サンプルデモ用のゲームサーバー ID とアクセスキーによってアクセスできるサーバー領域は、本ライブラリを使用している全ての開発者で共有されることにご注意下さい。 タイトル毎のゲームサーバーは OMAS で申請することで使用可能になります。
- ビルドタイプとリンクするライブラリに関して
- NEX ライブラリをリンクするときには、NEXを利用するアプリケーションのビルドタイプ (Debug, Development, Release)とリンクするNEXライブラリのビルドタイプ (noopt, verbose, release) は同一のものを使用してください。 同一でないビルドタイプを使用した場合、正常に動作しない事があります。
- インクルード時のフラグ定義に関して
- 本ライブラリのヘッダファイルをインクルードするときのフラグは、CTR-SDK 同梱のビルドシステムのフラグ設定に従ってください。 具体的には、Release ビルドのときは、 NN_BUILD_VERBOSE や NN_BUILD_DEVELOPMENT、NN_BUILD_DEBUG、NN_BUILD_NOOPT を定義してはいけません。 Development ビルドのときは、NN_BUILD_RELEASE や NN_BUILD_DEBUG、NN_BUILD_NOOPTを定義してはいけません。 また、Debug ビルドのときは、NN_BUILD_RELEASE や NN_BUILD_DEVELOPMENT を定義してはいけません。 各ビルド時のフラグ定義の詳細は CTR-SDK のビルドシステムを参照して下さい。 CTR-SDK 同梱のビルドシステムと異なるフラグ設定でビルドした場合、正常に動作しない事があります。
- ゲームサーバーの更新に関して
- クライアントのバージョンよりサーバーのバージョンが低い場合や、互換が無い場合にはゲームサーバーにログインできません。そのため、アプリケーションで使用する NEX ライブラリを更新する場合にはゲームサーバーの更新も併せて必要になります。ゲームサーバーの更新申請は OMAS から行ってください(ゲームサーバーは自動的には更新されません)。
- small ビルドの提供に関して
- 本パッケージに収録されているのは fast ビルドのライブラリのみになります。 small ビルドのライブラリが必要な場合は、弊社窓口にご相談ください。
- NetZの利用について
- NetZ に関しては、CTR ではサポートを継続させて頂きますが、今後のプラットフォームではサポートを終了します。今後、続編タイトルではない新規タイトルに関しては Pia ライブラリをご利用ください。
仕様
- スタティックイニシャライザで new が呼ばれることがある
- CTR-NEX ライブラリでは、内部で qVector<T>::reserve() を使用している個所があります。 qVector<T>::reserve() の継承元である std::vector<T>::reserve() は、関数内で _RW::__rw_throw() を呼び出しているため、スタティックイニシャライザで new が発生してしまいます。 この時、8バイトのメモリがグローバルヒープから確保され、以降増えることはありません。
権利関連の補足/注意
本ライブラリは、Quazal Technologies Inc. が開発したソフトウェアを含みます。 ただし、本ライブラリに関するサポート・問い合わせは、弊社窓口までお問い合わせ下さるようお願いいたします。
DDL.exeには、以下のOSSライブラリが含まれます。
Henry SpencerのRegExpライブラリ
This code has been derived from work by Henry Spencer.
The main changes are
1. All char variables and functions have been changed to TCHAR
counterparts
2. Added GetFindLen() & GetReplaceString() to enable search
and replace operations.
3. And of course, added the C++ Wrapper
The original copyright notice follows:
Copyright (c) 1986, 1993, 1995 by University of Toronto.
Written by Henry Spencer. Not derived from licensed software.
Permission is granted to anyone to use this software for any
purpose on any computer system, and to redistribute it in any way,
subject to the following restrictions:
1. The author is not responsible for the consequences of use of
this software, no matter how awful, even if they arise
from defects in it.
2. The origin of this software must not be misrepresented, either
by explicit claim or by omission.
3. Altered versions must be plainly marked as such, and must not
be misrepresented (by explicit claim or omission) as being
the original software.
4. This notice must not be removed or altered.