Gamebase JavaScript SDKを使用するには、先に初期化をする必要があります。
Gamebaseを初期化する時、GamebaseConfigurationオブジェクトでGamebase設定を変更できます。
KEY | Mandatory(M) / Optional(O) | Description |
---|---|---|
appId: string | M | TOAST Project IDです。入力は必須です。 |
clientVersion: string | M | サービス中、メンテナンス、告知事項など、プレイできる状態かどうかをゲームバージョンを通して判断します。TOAST Console > Gamebase > App > Client Version > WEB のバージョンを入力してください。 |
enableDebugMode: boolean | O | Debug Modeを有効にできます。デバッグログは開発者コンソールに出力されます。 デフォルト値はfalseです。 |
uiConfiguration.enablePopup: boolean | O | [UI] システムメンテナンス、利用制裁(ban)など、ゲームユーザーがゲームをプレイできない状況の時、ポップアップなどで理由を表示する必要がある場合があります。 trueに設定すると、Gamebaseが該当状況で情報ポップアップを自動的に表示します。 デフォルト値は falseです。 false状態ではローンチ結果で情報を取得した後、独自にUIを実装してゲームをプレイできない理由を表示してください。 |
uiConfiguration.enableLaunchingStatusPopup: boolean | O | [UI] ローンチ結果に応じてログインできない状態で(主にメンテナンス状態)、Gamebaseが自動的にポップアップを表示するかどうかを変更できます。 enablePopup(true)状態でのみ動作します。 デフォルト値はtrueです。 |
uiConfiguration.enableBanPopup: boolean | O | [UI] ゲームユーザーが利用制裁を受けた状態の時、Gamebaseが自動的に利用停止理由をポップアップ表示するかどうかを変更できます。 enablePopup(true)状態でのみ動作します。 デフォルト値はtrueです。 |
displayLanguageCode: string | O | Gamebase UIで使用する言語コードです。 デフォルト値はブラウザのlanguage(navigator.language)です。 |
displayLanguageTable: json | O | Gamebase UIを表示する時に使用するテキストリソース(text resource)です。 該当値は、内蔵されている言語セットテーブルと自動的に合併されて使用されます。 toast.Gamebase.getDisplayLanguageTable() を通して、内蔵されている言語セットテーブルおよびフォーマットを確認できます。 |
var gamebaseConfiguration = {
appId: 'T0asTC1oud', // TOAST Console Project ID
clientVersion: '1.0.0', // TOAST Console Gamebase App Client Version
enableDebugMode: true, // Note: Do not turn it on in production mode.
uiConfiguration: {
enablePopup: true, // Default is false. If you want to use the Gamebase UI, please turn it on.
enableLaunchingStatusPopup: true,
enableBanPopup: true,
},
};
Gamebaseのデバッグを行うための設定です。 * true:Gamebaseのすべてのログが出力されます。 * false:警告(warning)、エラー(error)ログが出力されます。 * デフォルト値:false
デバッグ設定は、コンソールでも行うことができ、コンソールで設定された値を優先視します。 コンソールの設定方法は、下記のガイドを参照してください。
開発の参考になるシステムログを有効にするには、toast.Gamebase.setDebugMode(true)を呼び出してください。
[注意]
ゲームをリリースする時は、必ずソースコードでsetDebugMode呼び出しを削除するか、パラメータをfalseに変更する必要があります。
toast.Gamebase.initialize(gamebaseConfiguration, (launchingInfo, error) => { ... })を呼び出し、Gamebase SDKを初期化します。
function gamebaseInitialize() {
var gamebaseConfiguration = {
appId: 'T0asTC1oud', // TOAST Console Project ID
clientVersion: '1.0.0', // TOAST Console Gamebase App Client Version
enableDebugMode: true, // Note: Do not turn it on in production mode.
uiConfiguration: {
enablePopup: true, // Default is false. If you want to use the Gamebase UI, please turn it on.
enableLaunchingStatusPopup: true,
enableBanPopup: true,
},
};
toast.Gamebase.initialize(gamebaseConfiguration, function (launchingInfo, error) {
if (error) {
// 初期化に失敗すると、Gamebase SDKを利用できません。
// appId、clientVersionおよびTOASTコンソールの設定が正常に入力されているかどうか、確認してください。
console.log('Gamebase initialization failed');
console.log(error);
return;
}
const statusCode = launchingInfo.launching.status.code;
if (isPlayable(statusCode)) { // Status値は、下のLaunching Status Code表を参照してください。
// ゲームプレイ可能状態です。
console.log('Playable!');
} else {
// ゲームプレイできない状態です(メンテナンス、サービス終了など)。
console.log('Not Playable!');
}
});
var isPlayable = function(statusCode) {
if (statusCode >= 200 && statusCode < 300)
return true;
return false;
};
}
toast.Gamebase.initializeの呼び出し結果です。ローンチ状態を確認できます。
toast.Gamebase.initialize(gamebaseConfiguration, function (launchingInfo, error) {
if (error) {
console.log(error);
return;
}
var statusCode = launchingInfo.launching.status.code;
});
Status | Code | Description |
---|---|---|
IN_SERVICE | 200 | 正常サービス中 |
RECOMMEND_UPDATE | 201 | アップデート推奨 |
IN_SERVICE_BY_QA_WHITE_LIST | 202 | メンテナンス中はサービスを利用できませんが、QA端末として登録された場合は、メンテナンスに関係なくサービスに接続してテストできます。 |
IN_TEST | 203 | テスト中 |
IN_REVIEW | 204 | 審査中 |
REQUIRE_UPDATE | 300 | アップデート必須 |
BLOCKED_USER | 301 | 接続遮断に登録された端末(デバイスキー)でサービスに接続した場合です。 |
TERMINATED_SERVICE | 302 | サービス終了 |
INSPECTING_SERVICE | 303 | サービスメンテナンス中 |
INSPECTING_ALL_SERVICES | 304 | 全体サービスメンテナンス中 |
INTERNAL_SERVER_ERROR | 500 | 内部サーバーエラー |
toast.Gamebase.initialize呼び出し結果でローンチ状態を確認できます。
toast.Gamebase.initialize(gamebaseConfiguration, function (launchingInfo, error) {
if (error) {
console.log(error);
return;
}
var statusCode = launchingInfo.launching.status.code;
});
toast.Gamebase.Launching.getLaunchingInformations()
APIを利用すると、初期化後にもLaunchingInfoオブジェクトを取得できます。
[注意]
toast.Gamebase.Launching.getLaunchingInformations() APIは、リアルタイムでサーバーから情報を取得する非同期APIではありません。 2分毎にアップデートされるキャッシュ情報を返すめ、リアルタイムで現在のメンテナンス状況を判断する用途には適していません。 このような場合にはLaunching Status Codeが変更されれ時にイベントが動作するGamebaseEventHandlerを活用してください。 Game > Gamebase > Javascript SDK使用ガイド > ETC > Additional Features > Gamebase Event Handler > Observer
API
+ (LaunchingInfo)Gamebase.Launching.getLaunchingInformations();
LaunchingInfoオブジェクトにはGamebase Consoleに設定した値とゲーム状態などが含まれています。
Gamebaseローンチ情報です。
1.1 Status
Gamebase JavaScript SDK初期化設定に入力したアプリバージョンのゲーム状態情報です。
ステータスコードは下記の表を参照してください。
Status | Code | Description |
---|---|---|
IN_SERVICE | 200 | 正常サービス中 |
RECOMMEND_UPDATE | 201 | アップデート推奨 |
IN_SERVICE_BY_QA_WHITE_LIST | 202 | メンテナンス中はサービスを利用できませんが、QA端末として登録された場合はメンテナンスに関係なくサービスに接続してテストできます。 |
IN_TEST | 203 | テスト中 |
IN_REVIEW | 204 | 審査中 |
REQUIRE_UPDATE | 300 | アップデート必須 |
BLOCKED_USER | 301 | 接続遮断に登録された端末(デバイスキー)でサービスに接続した場合です。 |
TERMINATED_SERVICE | 302 | サービス終了 |
INSPECTING_SERVICE | 303 | サービスメンテナンス中 |
INSPECTING_ALL_SERVICES | 304 | 全サービスメンテナンス中 |
INTERNAL_SERVER_ERROR | 500 | 内部サーバーエラー |
1.2 App
Gamebase Consoleに登録されたアプリ情報です。
1.3 Maintenance
Gamebase Consoleに登録されたメンテナンス情報です。
1.4 Notice
Gamebase Consoleに登録された告知情報です。
Gamebaseと連携したNHN CloudサービスのappKeyです。
NHN Cloud Consoleに登録されたIAPストア情報です。
TNHN Cloud Launching Consoleでユーザーが入力した情報です。
Error | Error Code | Description |
---|---|---|
NOT_INITIALIZED | 1 | Gamebaseが初期化されていません。 |
NOT_LOGGED_IN | 2 | ログインが必要です。 |
INVALID_PARAMETER | 3 | 無効なパラメータです。 |
INVALID_JSON_FORMAT | 4 | JSONフォーマットエラーです。 |
USER_PERMISSION | 5 | 権限がありません。 |
NOT_SUPPORTED | 10 | サポートしていない機能です。 |