- 印刷する
- PDF
Game Report SDKとMethod
- 印刷する
- PDF
Classic/VPC環境で利用できます。
Game Reportサービスを使用するための分析・ログ収集プラットフォーム技術に関連するSDKを提供します。
この活動には、以下のような下位作業が含まれます。
- Think Coreゲーム分析サービス
- Lib Coreゲームログ提供サービス
UnrealまたはUnity 3Dエンジンを使用する場合、iOS/Android開発環境を別途構成する必要はありません。
基本用語
Game Report SDKの構成時に知っておくべき用語とその説明は以下のとおりです。
用語 | 説明 |
---|---|
コンテンツ | - ゲーム内で実行される楽しさの要素 - PVP、一般ステージ、レイド |
Partner | - コンテンツを実行する際に同伴して一緒に実行するゲームのリソース - 例:ペット、友達、ドローン |
Wear | - 着用または所持できるすべてのアイテム - 例:武器、鎧、靴、イヤリングなど |
Item | - ゲーム内で使われるすべてのゲームリソース - 武器、衣類、強化に使われるアイテム、服用できるアイテム、アイテムスキルなど、財貨を除くすべてのアイテム |
Enemy | - ゲームコンテンツ内で味方でないすべての対戦相手 - 例:ペット、モンスター、ドローン、PVPの相手、レイドボスなど |
Skill | - ゲームコンテンツで使われるキャラクターやパートナーの能力 - RPG:キャラクター、ペット、友達、ドローンなどが使用する能力 - PANG:キャラクターが持つスキル |
開発環境の構成
SDKのダウンロード
開発環境の構成に必要なSDKファイルは、Service Centerでダウンロードできます。詳細内容は、Service CenterのSDKのダウンロードをご参照ください。
UNREAL
プラグインのインストールと設定
Unrealエンジンエディタにプラグインをインストールして設定する方法は、以下のとおりです。
- Unrealエンジンエディタを実行し、プラグインをインストールするプロジェクトのPluginsフォルダを開きます。
- ダウンロードしたSDKの「Unreal」フォルダにあるSDKファイルをPluginsフォルダにコピーして圧縮を展開します。
- Unrealエンジンエディタを再実行し、セッティング > プラグイン > プロジェクト > Otherを順にクリックします。
- StorageCoreSDKPluginの有効化チェックボックスを選択し、Unrealエンジンエディタを再実行します。
SDKの初期化
アプリを初めて実行する場合、ブループリントなどを使用してSDKを初期化する必要があります。
また、StorageCoreSdkに直接アクセスしてC++コードでSDKを初期化することもできます。
ブループリントでSDKを初期化する方法は以下のとおりです。
- ブループリントを実行します。
- 以下の表を参考にして基本情報を入力し、初期化します。
入力すべき基本情報は以下のとおりです。
Name | Value | 説明 |
---|---|---|
Server IP | String | NCP API URL - https://storagecore.gamereport.naverncp.com |
Auth Key | String | API使用認証キー - Service Center > 当該ゲームの設定ページにある認証キーを入力 - 集計のための必須項目 |
Game Version | String | ゲームバージョン - 集計のための必須項目 |
Channel Code | String | チャネルコード - ゲームストアのチャネル情報を入力 - 集計のための必須項目 |
Channel ID | String | チャネルID - 会員登録したユーザーのメールアドレスを入力 |
- Stringは、特殊文字を含めて100字以内で入力します。
- Member ID(アカウントID)とNick Name(ハンドルネーム)は、ゲームのユーザー情報に応じて別途設定する必要があります。
- 「ProGuard」を使用する場合、以下のようにSDKの例外処理を行う必要があります。
- ProGuardファイルの保存場所:ゲームプロジェクト\Build\Android\proguard-project.txt
- 例外処理コマンド
keep class com.coresight.storagecoresdk.** { *; } dontwarn com.coresight.storagecoresdk.**
Unity3D
プラグインのインストールと設定
- Unity 3Dを実行し、プラグインをインストールするプロジェクトを開きます。
- UnityメニューでAssets > Import Package > Custom Packageをクリックします。
- ダウンロードしたSDKの「Unity」フォルダにあるStorageCoreUnityPlugin.unitypackageファイルを選択し、[Import] ボタンをクリックします。
- 最初のScene HierarchyにPlugin/StorageCoreManager.prefabをドラッグ&ドロップします。
- StorageCoreManager GameObjectを選択し、Inspector画面で以下の表を参考にして基本使用環境を設定します。
入力すべき基本情報は以下のとおりです。
Name | Value | 説明 |
---|---|---|
Server IP | String | NCP API URL - https://storagecore.gamereport.naverncp.com |
Auth Key | String | API使用認証キー - Service Center > 当該ゲームの設定ページにある認証キーを入力 - 集計のための必須項目 |
Game Version | String | ゲームバージョン - 集計のための必須項目 |
Channel Code | String | チャネルコード - ゲームストアのチャネル情報を入力 - 集計のための必須項目 |
Channel ID | String | チャネルID - 会員登録したユーザーのメールアドレスを入力 |
- Member ID(アカウントID)とNick Name(ハンドルネーム)は、ゲームのユーザー情報に応じて別途設定する必要があります。
- StorageCoreSampleフォルダ内のSample.sceneでサンプルプロジェクトを確認できます。
Name | 説明 |
---|---|
Sample.scene | Game Report SDKの使用例 |
TestGUI.cs | データ送信に関するサンプルソース(Methodの詳細のSDK詳細ガイド項目参照) |
- 「ProGuard」を使用する場合、以下のようにSDKの例外処理を行う必要があります。
- ProGuardファイルの保存場所:Assets/Plugins/Android/proguard-user.txt
- 例外処理コマンド
keep class com.coresight.storagecoresdk.** { *; } dontwarn com.coresight.storagecoresdk.**
- 「Custom Gradle Template」を使用する場合、以下のように内容を追加する必要があります。
- mainTemplate.gradleファイルの保存場所:Assets/Plugins/Android/mainTemplate.gradle
- 追加すべき内容
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) …………… // 以下のimplementationのみ追加してください。 implementation 'com.android.installreferrer:installreferrer:1.0' ……………. **DEPS** }
iOS Native
プラグインのインストールと設定
- ダウンロードしたSDKの「iOS」フォルダにあるStorageCoreSdk.frameworkとstrip-frameworks.shをXcodeプロジェクトファイル(.xcodeproj)があるフォルダへコピーします。
- Xcodeプロジェクト設定メニューで、以下の方法でStorageCoreSdk.frameworkとstrip-frameworks.shを設定します。
- StorageCoreSdk.frameworkのインストール
- Xcodeプロジェクト設定メニューでGeneralをクリックし、「Embedded Binaries」領域にある**+**ボタンをクリックします。
- Add Otherボタンをクリックし、プロジェクトフォルダにコピーした「StorageCoreSdk.framework」を追加します。
- 「Embedded Binaries」領域に「StorageCoreSdk.framework」が追加されているか確認します。
SystemConfiguration.frameworkのインストール
「StorageCoreSdk.framework」をインストールするのと同じ方法でXcodeプロジェクト設定でGeneralをクリックし、「Linked Frameworks and Libraries」領域に「SystemConfiguration.framework」を追加します。strip-frameworks.shの設定
提供されるStorage Core SDK Frameworkは、DeviceとSimulatorの両方で利用できるFAT形式で、ビルド時にstripプロセスが必要となります。
stripプロセスのために、提供されるシェルスクリプトをPost Buildに設定してください。
- Xcodeプロトコル設定でBuild Phasesをクリックします。
- 左上にある**+**ボタンをクリックし、New Run Script Phaseを選択してRun Scriptを追加します。
- 追加されたRun Scriptに、以下の表を参考にしてプロジェクトフォルダへコピーしたstrip-frameworks.shを実行するスクリプトを作成します。
入力すべき基本情報は以下のとおりです。
Name | Value | 説明 |
---|---|---|
Server IP | String | NCP API URL - https://storagecore.gamereport.naverncp.com |
Auth Key | String | API使用認証キー - Service Center > 当該ゲームの設定ページにある認証キーを入力 - 集計のための必須項目 |
Game Version | String | ゲームバージョン - 集計のための必須項目 |
Channel Code | String | チャネルコード - ゲームストアのチャネル情報を入力 - 集計のための必須項目 |
Channel ID | String | チャネルID - 会員登録したユーザーのメールアドレスを入力 |
- Stringは、特殊文字を含めて100字以内で入力します。
- Member ID(アカウントID)とNick Name(ハンドルネーム)は、ゲームのユーザー情報に応じて別途設定する必要があります。
SDKの初期化
アプリを初めて実行する場合、SDKを初期化する必要があります。
- ライブラリを使用するには、以下のようにimportコマンドでヘッダファイルを持ってきます。
#import <StorageCoreSdk/StorageCoreManager.h>
- ViewController.m > viewDidLoad関数で、以下のようにinitSDK関数を呼び出します。
[StorageCoreManager initSDK:@"https://storagecore.gamereport.naverncp.com" authKey:@"YWtoaWw6YWtoaWw=" gameVersion:@"1.0" channelCode:@"GOOGLE" channelID:@"media_account@gmail.com" memberID:@"testuserid01" charID:@"TestCharID" nickName:@"testnickname01"];
Cocos2d-x
Cocos2d-xは、iOS/AndroidライブラリをベースにCocos2d-x Wrapperを利用して動作します。Cocos2d-xを使用するには、先にiOSまたはAndroidの開発環境を構成してください。
プラグインのインストールと設定
- WrapperソースコードのコピーのためにダウンロードしたSDKの「Cocos2d-x」フォルダにある「StorageCoreSdk.zip」圧縮ファイルを展開し、StorageCoreSdkフォルダをCocos2d-xプロジェクトファイルフォルダ/Classesへコピーします。
- Cocos2d-xプロジェクトフォルダ/Classes/StorageCoreSdkフォルダをドラッグしてXcodeまたはVisual Studioプロジェクトに追加し、以下の表を参考にして基本使用環境を設定します。
入力すべき基本情報は以下のとおりです。
Name | Value | 説明 |
---|---|---|
Server IP | String | NCP API URL - https://storagecore.gamereport.naverncp.com |
Auth Key | String | API使用認証キー - Service Center > 当該ゲームの設定ページにある認証キーを入力 - 集計のための必須項目 |
Game Version | String | ゲームバージョン - 集計のための必須項目 |
Channel Code | String | チャネルコード - ゲームストアのチャネル情報を入力 - 集計のための必須項目 |
Channel ID | String | チャネルID - 会員登録したユーザーのメールアドレスを入力 |
- Stringは、特殊文字を含めて100字以内で入力します。
- Member ID(アカウントID)とNick Name(ハンドルネーム)は、ゲームのユーザー情報に応じて別途設定する必要があります。
SDKの初期化
アプリを初めて実行する場合、SDKを初期化する必要があります。
ライブラリを使用するには、以下のようにincludeコマンドでヘッダファイルを含めてください。
#include "StorageCoreWrapper.h"
最初に実行するSceneのinit関数で、以下のようにinitSDK関数を呼び出します。
StorageCoreWrapper::initSDK("https://storagecore.gamereport.naverncp.com", "YWtoaWw6YWtoaWw=", "1.0", "GOOGLE", "media_account@gmail.com", "testuserid01", "TestCharID", "testnickname01");
Android Native
プラグインのインストールと設定
ダウンロードしたSDKの「Android」フォルダにあるStorageCoreSdk.jarとgson-2.8.4.jarをAndroid Studioプロジェクトフォルダ/app/libsへコピーします。
dependenciesを設定するには、build.gradleに以下のように設定します。
dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) implementation files('libs/gson-2.8.4.jar') implementation files('libs/StorageCoreSdk.jar') implementation 'com.android.installreferrer:installreferrer:1.0' }
AndroidManifest.xmlに対し、以下の表を参考にして基本使用環境を設定します。
- パーミッションの追加
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.INTERNET" />
入力すべき基本情報は以下のとおりです。
Name | Value | 説明 |
---|---|---|
Server IP | String | NCP API URL - https://storagecore.gamereport.naverncp.com |
Auth Key | String | API使用認証キー - Service Center > 当該ゲームの設定ページにある認証キーを入力 - 集計のための必須項目 |
Game Version | String | ゲームバージョン - 集計のための必須項目 |
Channel Code | String | チャネルコード - ゲームストアのチャネル情報を入力 - 集計のための必須項目 |
Channel ID | String | チャネルID - 会員登録したユーザーのメールアドレスを入力 |
- Stringは、特殊文字を含めて100字以内で入力します。
- Member ID(アカウントID)とNick Name(ハンドルネーム)は、ゲームのユーザー情報に応じて別途設定する必要があります。
SDKの初期化
アプリを初めて実行する場合、SDKを初期化する必要があります。
ライブラリを使用するには、以下のようにimportコマンドでファイルを持ってきます。
import com.coresight.storagecoresdk.StorageCoreManager; import com.coresight.storagecoresdk.StorageCoreApi; import com.coresight.storagecoresdk.Models.Enums.*;
MainActivity > onCreate関数で、以下のようにinitSDK関数を呼び出します。
StorageCoreManager.initSDK(this, "https://storagecore.gamereport.naverncp.com", "YWtoaWw6YWtoaWw=", "1.0", "GOOGLE", "media_account@gmail.com", "testuserid01", "TestCharID", "testnickname01");
SDK Methodの概要
クラス
- public class StorageCoreManager
- ゲームログをCoresight StorageCoreで送信
StorageCoreApiコンストラクタ
- データ送信のための基本コンストラクタ
- 基本情報をパラメータにしてオブジェクトを作成
Syntax
StorageCoreApi(string Url, string AuthKey, string TargetVer, string ChannelCode, string ChannelID, string MemberID, string CharID, string NickName).
// Example
m_api = new StorageCoreApi(serverIp, authKey, gameVersion, channelCode, channelID, memberID, charID, nickName);
Parameters
Parameter Name | 説明 |
---|---|
Url | Rest API URL情報 |
AuthKey | Rest API認証のための認証キー |
TargetVer | ゲームアプリのバージョン |
ChannelCode | ゲームサービスチャネルのチャネルコード - 例:iOS、Android OS、ONE Storeなどのストア名 |
ChannelID | 特定のチャネル会社(Apple Store、Google Play Store、ONE Store)などでユーザーが会員登録時に入力したID情報 |
MemberID | ゲームで発行される会員ID - 会員IDは、会員別に一意性のあるコード - 空白文字やNULLデータが入っている場合、集計から除外 - 空白、タブ、改行文字が入っている場合、それらを除外してから集計 |
CharID | ゲームで発行されるキャラクターID - 1つの会員コードに対して複数発行できるが、現在接続中のキャラクターIDを指す - 空白文字やNULLデータが入っている場合、集計から除外 - 空白、タブ、改行文字が入っている場合、それらを除外してから集計 |
NickName | 会員またはキャラクターに対応するハンドルネーム |
SDK Methodのサマリー
SetAccountLevel
- ユーザーのレベルが成長する際に呼び出してキャラクターのレベル情報を更新
注意事項キャラクターレベルの変更ではなく、アカウントレベルの変更を意味します。1つのアカウントで複数のキャラクターを使用する場合、ResourceChangeInfoを利用して変更します。ただし、アカウントとキャラクターが1対1マッピングの場合は使用しても構いません。
public void SetAccountLevel(int AccountLevel) /* SampleCode */ // 50レベルに設定 StorageCoreManager.GetInstance().GetApi().SetAccountLevel(50);
SetCharacterID
- ゲーム中にユーザーが使用しているキャラクターを、保有中の他のキャラクターに変更
public void SetCharacterID(string CharacterID) /* SampleCode */ // 使用するキャラクターを「7777777」に変更 StorageCoreManager.GetInstance().GetApi().SetCharacterID("77777777");
SetMemberID
- ユーザーの会員ID設定
- 最初のGame Report Instance作成時に、コンストラクタを通じてMemberIDを入れられない場合に使用
- 例) ゲームの初実行時にMemberIDがない場合、Game ReportのinstanceをEmptyに設定し、アカウント発行後にMemberIDを設定
注意事項MemberIDはユーザー別に固有でなければなりません。そうでないと、指標が不正確になる可能性があります。
public void SetMemberID(string MemberID) /* SampleCode */ // アカウントIDを「MID0000007」に設定 StorageCoreManager.GetInstance().GetApi().SetMemberID("MID0000007");
SetNickName
- ユーザーのNickName設定
- 例) ゲームの初実行時にハンドルネームがない場合、EmptyでGame Report Instanceしてアカウント発行後にNickNameを設定
- ハンドルネームクーポンを使用してハンドルネームを変更する際に使用
public void SetNickName(string NickName) /* SampleCode */ // ハンドルネームを「サノス」に設定 StorageCoreManager.GetInstance().GetApi().SetNickName("サノス");
- ユーザーのNickName設定
SetChannelID
- ゲームアプリのインストール時に使用したチャネル会社(Apple Store、Google Play Store、ONE Store)などで発行するID情報を設定
- ゲームサービスチャネルのIDを変更する際に使用してChannelIDを更新
public void SetChannelID(string ChannelID) /* SampleCode */ // チャネルIDを「0000001234567」に設定 StorageCoreManager.GetInstance().GetApi().SetChannelID("0000001234567");
SetChannelCode
- ストアの名前であるゲームサービスチャネルコードを設定
- 例) iOS、AOS、ONE Storeなどのストア名を設定
public void SetChannelCode(string ChannelCode) /* SampleCode */ // チャネルコードを「GOOGLE」に設定します。 StorageCoreManager.GetInstance().GetApi().SetChannelCode("GOOGLE");
- ストアの名前であるゲームサービスチャネルコードを設定
GetInstance
- StorageCoreManagerオブジェクトを初期化
ConnectInfos Log
- ユーザーのゲームログイン・ログアウトログを送信して成果を分析
- ユーザーのゲームコンテンツ(ステージ、ダンジョン、PVP、ショップなど)への進入・離脱ログを送信して成果を分析
ContentActInfos
- ユーザーのゲームコンテンツ実行完了時点に様々なログを送信し、コンテンツの難易度、ゲームリソースのバランス、ゲームユーザーが感じる困難を分析
- 含まれている情報
- コンテンツ実行中に一緒にコンテンツを実行したゲームリソース
- コンテンツ実行中に使用されたアイテム
- コンテンツ実行中に使用されたスキル
- コンテンツ実行中に着用した装備
- コンテンツ実行中に退治(Kill)した敵
Method Return 説明 ClearPartnersInfo void パートナー情報を保存するためにリストを初期化 AddPartnersInfo void パートナー情報を追加 GetPartnersInfo List<PartnersInfo> パートナー情報を照会 ClearWearItemInfos void WearItem情報を保存するためにリストを初期化 AddWearItemInfos void WearItemデータを追加 GetWearItemInfos List<WearItemInfo> WearItemデータを照会 ClearSkillInfos void スキル情報を保存するためにスキルリストを初期化 AddSkillInfos void キャラクターが使用するスキルをスキルリストに追加 GetSkillInfos List<SkillInfo> 保存されたスキルリストを照会 ClearItemInfos void アイテム情報を保存するためにリストを初期化 AddItemInfos void アイテム情報を追加 GetItemInfos List<ItemInfo> 保存されたアイテムリストを照会 ClearEnemyInfos void コンテンツで対戦した相手情報を保存するためにリストを初期化 AddEnemyInfos void コンテンツで対戦した相手情報を追加 GetEnemyInfos List<EnemyInfo> AddEnemyInfosを通じて保存したEnemyInfo情報を照会 AdPerformInfos
- ゲーム実行時に、ゲームアプリでのバナー表示情報とバナークリックログを送信してユーザーの反応を分析
- ユーザーが参加した様々なキャンペーン(イベント)ログを送信してゲームユーザーの参加率を分析
Method Return 説明 ClearJoinContents void パートナー情報を保存するためにリストを初期化 AddJoinContents void パートナー情報を追加 FileDownloadInfos
- ゲームのアップデート中にダウンロードまたはインストールするファイルログを送信し、ダウンロードやインストール中に発生する問題を分析
InstallInfos
- ゲームの初実行とゲームアカウント作成ログを送信し、サービス中のゲームを分析
注意事項InstallInfosログはゲームログ分析の基準となるログで、送信しない場合、様々な分析に制約が発生することがあります。
FriendshipInfos
- ゲームで発生する友達関係に対するログを送信し、ログを利用してゲーム内の友達関係を検索
参考情報FriendshipInfosログは、分析されないログです。必要な場合、ログ検索機能を利用して確認できます。
ItemChangeInfos
ユーザーが様々なゲームアイテムを獲得・消費した直後にログを送信し、アイテムのバランス、ゲーム企画に対するユーザーの反応を分析
ゲーム内で使用する有料、無料アイテムをいずれも分析
含まれている情報
- アイテム数量変化の目的
- それぞれのアイテム数量変化の経路
- 一度の行為で獲得・消費した複数のアイテム
様々なItemChangeInfos情報の累積転送のためにオブジェクトを設定
Method Return 説明 ClearItemChangeInfoList void アイテム変更履歴を保存するためのリスト初期化 AddItemChangeInfoList void アイテム変更履歴の追加 GetItemChangeInfoList List<ItemChangeInfo> AddItemChangeInfoListを通じて保存したアイテム変更リストを返す ItemChangeInfosに含まれるItemsInfoオブジェクト情報を設定
Method Return 説明 ClearItemChangeInfos void 保存したアイテム数量変化(獲得・消費)情報を初期化 AddItemChangeInfos void アイテムの獲得・消費時の、そのアイテムの詳細情報を追加 GetItemChangeInfos List<ItemsInfo> AddItemChangeInfosを通じて追加したアイテム変化(獲得・消費)情報を返す
VMoneyChangeInfos
- ゲーム内で使用されるすべての財貨数量変化(獲得・消費)ログを送信し、ゲーム財貨のフローを分析
参考情報ゲーム内で、財貨だけでなく財貨に類似した形を持つゲームリソースも分析できます。
様々なVMoneyChangeInfos情報の累積転送のためにオブジェクトを設定
Method Return 説明 ClearVMoneyChangeInfoList void 保存した財貨数量変化(獲得・消費)情報を初期化 AddVMoneyChangeInfoList void 財貨数量変化(獲得・消費)情報を追加 GetVMoneyChangeInfoList List<VMoneyChangeInfo> AddVMoneyChangeInfoListを通じて追加した財貨変更(獲得・消費)履歴情報を返す
ResourceChangeInfos
- ゲーム内で使用されるアイテムの特性変化ログを送信し、ゲームコンテンツのバランス、アイテムのバランス、コンテンツとアイテムの関連、ゲーム企画に対するユーザーの反応を分析
BuyInfos
- 現金/カード/クーポン/商品券購入などの購入ログを送信して売上を分析
- 売上分析により、売上ユーザーを分析、アイテムを分析、アイテム間の関係を分析
String項目は、100字以内で指定する必要があります。
SDK Methodの詳細
InstallInfos
ゲームの初実行とゲームアカウント作成ログを送信し、サービス中のゲームのインストールやアカウント作成状況を分析
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ゲームのインストール後にゲームアプリを初めて実行した直後にログを送信 | Y | - RU - NRU - Retention (再訪問ユーザー) - Revisit (再訪問) - リアルタイム流入 - 新規会員状況 - 流入関連指標 - リセマラ関連指標 - インストール関連指標 |
最初にアカウントを作成した直後にログを送信 | Y | - RU - NRU - Retention (再訪問ユーザー) - Revisit (再訪問) - リアルタイム流入 - 新規会員状況 - 流入関連指標 - リセマラ関連指標 - インストール関連指標 |
分析に必要な基本情報であるため、ほとんどの指標を確認するには、ログを送信する必要があります。
- アカウント作成と同時にキャラクターが作成される構造の場合、キャラクター作成ログはItemChangeInfosの ChangeType.INITで別途保存する必要があります。
- ゲームアプリの初回実行時にエラーが発生した場合は、エラーコードまたはエラーメッセージを一緒に送信します。
Enumerationsコンテンツ
- InstallType
ゲームアプリのインストール関連のログを送信する際に、インストールやアカウント作成に対する区分を指定
Name | Value | 説明 |
---|---|---|
INSTALL | 0 | インストール - Apple Store、Google Play Storeでゲームをインストールした後、ゲームの初実行(初回実行)時点で設定します。 |
ACCOUNT | 1 | ゲーム実行後のアカウント作成(会員登録とアカウント作成)時点で設定します。 |
- キャラクター作成ログは、ItemChangeInfosのChangeType.INITで別途保存する必要があります。
- 1つのアカウントに1つのキャラクターというゲームの場合、アカウントの作成完了時にキャラクターの作成ログも一緒に残すと、正確な指標測定が可能になります。
- アカウント作成完了時にConnectInfosのログインログも一緒に残すと、正確な指標測定が可能になります。
- ResultType
ゲームインストール(ゲームリソースファイルパッチ)の成否を指定
Name | Value | 説明 |
---|---|---|
NON | 0 | ゲームアプリのインストール(ゲームリソースファイルパッチ)の成否なし |
SUCCESS | 1 | ゲームアプリのインストール(ゲームリソースファイルパッチ)に成功 |
FAIL | 2 | ゲームアプリのインストール(ゲームリソースファイルパッチ)に失敗 |
Methodの説明
string InstallInfos(InstallType AppInstallType, string ReferrerURL, string APPVersion, StateType DeviceInstallStateType, ResultType DeviceInstallResult, string InstallErrorMessage, string PushToken)
Parameter Name | Data Type | 説明 | |
---|---|---|---|
AppInstallType | InstallType | アプリのインストール・アンインストールを区分・集計するための必須項目 | |
ReferrerURL | string | ストアに来る前に、どのサイトに滞在したのか確認する情報を集計するための必須項目 | |
APPVersion | string | ゲームのバージョン情報を集計するための必須項目 | |
DeviceInstallStateType | StateType | ゲームアプリのインストール(ゲームリソースファイルパッチ)プロセス過程に関する情報 | |
DeviceInstallResult | ResultType | ゲームアプリのインストール(ゲームリソースファイルパッチ)結果に関する情報 | |
InstallErrorMessage | string | ゲームアプリのインストール(初回実行)時に発生するエラーメッセージ情報 | |
PushToken | string | プッシュ送信のための個人プッシュトークン情報 | |
Return(呼び出し結果) | |||
- | - | 返す値なし |
サンプルソース
// ゲームインストール後にゲームを初回実行する際、インストールログを残す(必須)
StorageCoreManager.GetInstance ().GetApi ().InstallInfos (InstallType.INSTALL, StorageCoreManager.GetReferrerName(), "APPVersion", StateType.FINISH, ResultType.SUCCESS, "InstallErrorMessage", "");
// アカウント作成ログを残す(必須)
StorageCoreManager.GetInstance ().GetApi ().InstallInfos (InstallType.ACCOUNT, StorageCoreManager.GetReferrerName(), "APPVersion", StateType.FINISH, ResultType.SUCCESS, "InstallErrorMessage", "");
// ゲームログイン(必須 / ConnectInfosを通じて残せる情報で、ConnectInfosで確認)
StorageCoreManager.GetInstance().GetApi().ConnectInfos(ConnectType.APP, "Login", FlowType.IN);
// キャラクター作成プロセス
// インスタンスオブジェクト作成(必須 / ItemChangeInfosを通じて残せる情報で、ItemChangeInfosで確認)
StorageCoreManager scManager = StorageCoreManager.GetInstance();
// アイテムデータの保存前にデータarrayを初期化
scManager.ClearItemChangeInfos ();
// キャラクター作成情報を入れる
// アカウント作成後にキャラクター作成ログを残す
scManager.AddItemChangeInfoList(FlowType.IN, ChangeType.INIT, "ChangeDetail1", "ContentName", "ContentCode", scManager.GetItemChangeInfos());
FileDownloadInfos
ゲームアプリを追加インストール(ゲームリソースファイルパッチ)する際にダウンロードログを送信し、ダウンロードエラー発生時に検索してエラーを確認
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ファイルのダウンロード時点ごとにログを送信 | N | 分析指標なし、ログ検索を通じて確認 |
ダウンロード中に通信障害によりファイルが転送できなかった場合にログを送信 | N | 分析指標なし、ログ検索を通じて確認 |
ダウンロード対象のファイルが存在しない場合に(エラーコードを含む)ログを送信 | N | 分析指標なし、ログ検索を通じて確認 |
- ゲームリソースファイルを1つダウンロードするたびに送信します。
- 送信されたFileDownloadログは、LIBCOREで検索機能を利用して確認できます。
Enumerations
- MethodType/Enum
ユーザーがゲームのリソースファイルを受け取る際の転送方式を指定
Name | Value | 説明 |
---|---|---|
DATA | 0 | データ通信によるダウンロード |
WIFI | 1 | Wi-Fiによるダウンロード |
Methodの説明
string FileDownloadInfos(string FileName, int FileSeq, string FileVersion, string ErrorMessage)
Parameter Name | Data Type | 説明 | |
---|---|---|---|
FileName | string | ダウンロードするファイル名 | |
FileSeq | int | ファイルダウンロードの順序 | |
FileVersion | string | ファイルバージョン | |
ErrorMessage | string | エラーメッセージ | |
Return(呼び出し結果) | |||
– | string | 転送の成否に対する結果値 |
サンプルソース
//ダウンロードの順序が1番目であるファイル「{FileName}」をダウンロード中に「ErrorMessage」エラーが発生し、そのダウンロードログを保存
StorageCoreManager.GetInstance ().GetApi ().FileDownloadInfos ("hero1.png", 1, "0.1.0", "ErrorMessage");
StorageCoreManager.GetInstance ().GetApi ().FileDownloadInfos ("contents1.json", 2, "FileVersion", "ErrorMessage");
StorageCoreManager.GetInstance ().GetApi ().FileDownloadInfos ("item_bs.csv", 3, "FileVersion", "ErrorMessage");
BuyInfos
現金/カード/プレゼントする/商品券で購入したログを送信し、ゲームの売上を詳しく分析
- 売上分析(初購入・再購入の割合)
- 売上分析(アイテムまたはレベル別)
- 購入状況分析(購入ユーザーの追加アイテム購入状況)
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
クレジットカードでアイテムを購入する場合、ログを送信 | N | - 総売上高 - 初購入 - 再購入 - ARPU - ARPPU - BU - リアルタイム売上 - アイテム・ゲーム時間の関連分析 - アイテム売上 - レベル売上 - アイテム関連分析 - 決済・非決済関連の分析指標 |
商品券でアイテムを購入する場合、ログを送信 | N | |
携帯電話決済でアイテムを購入する場合、ログを送信 | Y | |
銀行振込で購入する場合、ログを送信 | Y | |
様々なペイ(kakao pay、NAVER payなど)で購入する場合、ログを送信 | Y | |
マイレージポイントで購入する場合、ログを送信 | Y |
必ずチャネル会社の購入完了を確認した後にログを送信してください。
決済の完了後にアイテムが支給されたら、ItemChangeInfosログも送信する必要があります。
Enumerationsコンテンツ
- PurchaseType
ユーザーが有料アイテムを購入または獲得するゲームリソースの種類を指定
Name | Value | 説明 |
---|---|---|
CHARGE | 0 | 現金キャッシュをチャージ |
BONUS | 1 | ボーナスキャッシュをチャージ (例:イベント当選の報酬として支給されるキャッシュやクーポンによるチャージ) |
CASHPRESENT | 2 | 他のユーザーにキャッシュをプレゼント |
PURCHARSE | 3 | アイテムを購入 |
ITEMPRESENT | 4 | 他のユーザーにアイテムをプレゼント |
- CurrencyType
有料アイテム購入時の決済金額の通貨種類を指定
Name | Value | 説明 |
---|---|---|
KRW | 0 | 韓国ウォン |
CNY | 1 | 中国人民元 |
HKD | 2 | 香港ドル |
TWD | 3 | 台湾ニュードル |
EUR | 4 | ユーロ |
USD | 5 | アメリカ・ドル |
GBP | 6 | イギリス・ポンド |
AUD | 7 | オーストラリア・ドル |
JPY | 8 | 日本円 |
RUB | 9 | ロシア・ルーブル |
AED | 10 | エミラティ・ディルハム |
AFN | 11 | アフガニスタン・アフガニ |
ALL | 12 | アルバニア・レク |
AMD | 13 | アルメニア・ドラム |
ANG | 14 | オランダ領アンティル・ギルダー |
AOA | 15 | アンゴラ・クワンザ |
ARS | 16 | アルゼンチン・ペソ |
AWG | 17 | アルバ・フロリン |
AZN | 18 | アゼルバイジャン・マナト |
BAM | 19 | ボスニア・ヘルツェゴビナ・兌換マルク |
BBD | 20 | バルバドス・ドル |
BDT | 21 | バングラデシュ・タカ |
BGN | 22 | ブルガリア・レフ |
BHD | 23 | バーレーン・ディナール |
BIF | 24 | ブルンジ・フラン |
BMD | 25 | バミューダ・ドル |
BND | 26 | ブルネイ・ドル |
BOB | 27 | ボリビア・ボリビアーノ |
BRL | 28 | ブラジル・レアル |
BSD | 29 | バハマ・ドル |
BTC | 30 | Bitcoin |
BTN | 31 | ブータン・ニュルタム |
BWP | 32 | ボツワナ・プラ |
BYN | 33 | 新ベラルーシ・ルーブル |
BYR | 34 | ベラルーシ・ルーブル |
BZD | 35 | ベリーズ・ドル |
CAD | 36 | カナダ・ドル |
CDF | 37 | コンゴ・フラン |
CHF | 38 | スイス・フラン |
CLF | 39 | チリ・UF(Unidad de Fomento) |
CLP | 40 | チリ・ペソ |
CNH | 41 | Chinese Yuan (Offshore) |
COP | 42 | コロンビア・ペソ |
CRC | 43 | コスタリカ・コロン |
CUC | 44 | キューバ・兌換ペソ |
CUP | 45 | キューバ・ペソ |
CVE | 46 | カーボベルデ・エスクード |
CZK | 47 | チェコ・コルナ |
DJF | 48 | ジブチ・フラン |
DKK | 49 | デンマーク・クローネ |
DOP | 50 | ドミニカ共和国・ペソ |
DZD | 51 | アルジェリア・ディナール |
EEK | 52 | エストニア・クローン |
EGP | 53 | エジプト・ポンド |
ERN | 54 | エリトリア・ナクファ |
ETB | 55 | エチオピア・ブル |
FJD | 56 | フィジー・ドル |
FKP | 57 | フォークランド諸島・ポンド |
GEL | 58 | ジョージア・ラリ |
GGP | 59 | Guernsey Pound |
GHS | 60 | ガーナ・セディ |
GIP | 61 | ジブラルタル・ポンド |
GMD | 62 | ガンビア・ダラシ |
GNF | 63 | ギニア・フラン |
GTQ | 64 | グアテマラ・ケツァル |
GYD | 65 | ガイアナ・ドル |
HNL | 66 | ホンジュラス・レンピラ |
HRK | 67 | クロアチア・クーナ |
HTG | 68 | ハイチ・グールド |
HUF | 69 | ハンガリー・フォリント |
IDR | 70 | インドネシア・ルピア |
ILS | 71 | イスラエル・シェケル |
IMP | 72 | Manx pound |
INR | 73 | インド・ルピー |
IQD | 74 | イラク・ディナール |
IRR | 75 | イラン・リアル |
ISK | 76 | アイスランド・クローナ |
JEP | 77 | Jersey Pound |
JMD | 78 | ジャマイカ・ドル |
JOD | 79 | ヨルダン・ディナール |
KES | 80 | ケニア・シリング |
KGS | 81 | キルギス・ソム |
KHR | 82 | カンボジア・リエル |
KMF | 83 | コモロ・フラン |
KPW | 84 | 朝鮮民主主義人民共和国・ウォン |
KWD | 85 | クウェート・ディナール |
KYD | 86 | ケイマン諸島・ドル |
KZT | 87 | カザフスタン・テンゲ |
LAK | 88 | ラオス・キープ |
LBP | 89 | リビア・ポンド |
LKR | 90 | スリランカ・ルピー |
LRD | 91 | リベリア・ドル |
LSL | 92 | レソト・ロチ |
LYD | 93 | リビア・ディナール |
MAD | 94 | モロッコ・ディルハム |
MDL | 95 | モルドバ・レウ |
MGA | 96 | マダガスカル・アリアリ |
MKD | 97 | マケドニア・ディナール |
MMK | 98 | ミャンマー・チャット |
MNT | 99 | モンゴル・トゥグルグ |
MOP | 100 | マカオ・パタカ |
MRO | 101 | モーリタニア・ウギア |
MRU | 102 | Mauritanian Ouguiya |
MTL | 103 | Maltese Lira |
MUR | 104 | モーリシャス・ルピー |
MVR | 105 | モルディブ・ルフィア |
MWK | 106 | マラウイ・クワチャ |
MXN | 107 | メキシコ・ペソ |
MYR | 108 | マレーシア・リンギット |
MZN | 109 | モザンビーク・メティカル |
NAD | 110 | ナミビア・ドル |
NGN | 111 | ナイジェリア・ナイラ |
NIO | 112 | ニカラグア・コルドバ |
NOK | 113 | ノルウェー・クローネ |
NPR | 114 | ネパール・ルピー |
NZD | 115 | ニュージーランド・ドル |
OMR | 116 | オマーン・リアル |
PAB | 117 | パナマ・バルボア |
PEN | 118 | ペルー・ヌエボ・ソル |
PGK | 119 | パプアニューギニア・キナ |
PHP | 120 | フィリピン・ペソ |
PKR | 121 | パキスタン・ルピー |
PLN | 122 | ポーランド・ズウォティ |
PYG | 123 | パラグアイ・グアラニー |
QAR | 124 | カタール・リヤル |
RON | 125 | ルーマニア・レウ |
RSD | 126 | セルビア・ディナール |
RWF | 127 | ルワンダ・フラン |
SAR | 128 | サウジアラビア・リヤル |
SBD | 129 | ソロモン諸島・ドル |
SCR | 130 | セーシェル・ルピー |
SDG | 131 | スーダン・ポンド |
SEK | 132 | スウェーデン・クローナ |
SGD | 133 | シンガポール・ドル |
SHP | 134 | セントヘレナ・ポンド |
SLL | 135 | シエラレオネ・レオン |
SOS | 136 | ソマリア・シリング |
SRD | 137 | スリナム・ドル |
SSP | 138 | 南スーダン・ポンド |
STD | 139 | サントメ・ドブラ |
STN | 140 | Sao Tome and Principe Dobra |
SVC | 141 | エルサルバドル・コロン |
SYP | 142 | シリア・ポンド |
SZL | 143 | スワジランド・リランゲニ |
THB | 144 | タイ・バーツ |
TJS | 145 | タジキスタン・ソモニ |
TMT | 146 | トルクメニスタン・マナト |
TND | 147 | チュニジア・ディナール |
TOP | 148 | トンガ・パアンガ |
TRY | 149 | トルコ・リラ |
TTD | 150 | トリニダード・トバゴ・ドル |
TZS | 151 | タンザニア・シリング |
UAH | 152 | ウクライナ・フリヴニャ |
UGX | 153 | ウガンダ・シリング |
UYU | 154 | ウルグアイ・ペソ |
UZS | 155 | ウズベキスタン・スム |
VEF | 156 | ボリバル・フエルテ |
VND | 157 | ベトナム・ドン |
VUV | 158 | バヌアツ・バツ |
WST | 159 | サモア・タラ |
XAF | 160 | CFAフラン(BEAC) |
XAG | 161 | 銀(1トロイオンス) |
XAU | 162 | 金(1トロイオンス) |
XCD | 163 | 東カリブ・ドル |
XDR | 164 | 特別引出権 |
XOF | 165 | CFAフラン(BCEAO) |
XPD | 166 | パラジウム(1トロイオンス) |
XPF | 167 | CFPフラン |
XPT | 168 | 白金(1トロイオンス) |
YER | 169 | イエメン・リアル |
ZAR | 170 | 南アフリカ・ランド |
ZMK | 171 | ザンビア・クワチャ |
ZMW | 172 | ザンビア・クワチャ |
- PayToolCode
有料アイテム購入時の決済手段を指定
Name | Value | 説明 |
---|---|---|
CARD | 0 | クレジットカード決済 |
MOBILE | 1 | 携帯電話決済 |
SENDCASH | 2 | 銀行振込(通帳なし)またはPAY決済 |
CASH | 3 | マイレージまたは媒体社のキャッシュ |
GIFTCARD | 4 | 商品券決済 |
- ResultType
有料アイテムの購入結果を指定
Name | Value | 説明 |
---|---|---|
TRY | 0 | 決済の実行 |
SUCCESS | 1 | 決済完了で成功 |
FAIL | 2 | 決済完了だが失敗 |
Methodの説明
BuyInfos(string OrderNO, string GoodsCode, PurchaseType PayPurchaseType, string ItemCode, string ItemName, int Amount, CurrencyType CurrencyCode, float TotalPrice, ToolCodeType PayToolCode, DateTime Sdate, DateTime Edate, string ReceiveMemberID, int Balance, ResultType PayResultType, string PayResultMessage)
Parameter Name | Data Type | 説明 | |
---|---|---|---|
OrderNO | string | ストアから受け取った注文番号 問題発生時にストアの決済情報と照合するKey | |
GoodsCode | string | ストアが認識する商品コード | |
PayPurchaseType | PurchaseType | 獲得するゲームリソースの種類 | |
ItemCode | string | ゲーム内部の商品コード・イベント参加キーの値 必須 – 集計のための必須項目 | |
ItemName | string | ゲーム商品の名前 必須 – 集計のための必須項目 | |
Amount | int | 購入数量 必須 – 集計のための必須項目 | |
CurrencyCode | CurrencyType | 決済した金額の通貨の種類 必須 – 集計のための必須項目 | |
TotalPrice | float | 総購入金額(小数点以下を表示可能) 必須 – 集計のための必須項目 | |
PayToolCode | PayToolCodeType | 決済手段 | |
Sdate | DateTime | 期間限定アイテム・ボーナスキャッシュの場合、開始時間 | |
Edate | DateTime | 期間限定アイテム・ボーナスキャッシュの場合、終了時間 | |
ReceiveMemberID | String | ゲームで発行されるアカウントID | |
Balance | Int | 購入イベント完了後のキャッシュ残高または数量 | |
PayResultType | ResultType | 結果値の区分 必須 – 集計のための必須項目 | |
PayResultMessage | string | 決済メッセージ 成功・失敗メッセージまたはコード | |
Return(呼び出し結果) | |||
– | string | ログ保存後の結果値 |
サンプルソース
//アイテム購入日時変数を宣言
System.DateTime today = System.DateTime.Now;
//購入ログを送信
StorageCoreManager.GetInstance().GetApi().BuyInfos("OrderNO", "GoodsCode" ,PurchaseType.PURCHARSE, "ItemCode", "ItemName", 100, CurrencyType.USD, 100.99, ToolCodeType.CARD, today, today.AddDays(10), "ReceiveMemberID", 100, ResultType.SUCCESS, "PayResultMessage");
ContentActInfos
ゲーム内でユーザーのゲームコンテンツ実行ログを送信し、コンテンツの難易度、キャラクターのバランス、アイテムのバランスなどを分析
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ゲーム内で一般ステージを完了した直後(成否を問わず)にログを送信 | N | - レベルクリア所要時間 - コンテンツの実行/成功/失敗回数 - リアルタイムプレイステージ - ミッションとステージのサマリー情報 - 失敗原因の分析 - ミッション分析 |
ゲーム内でギルド戦を完了した直後にログを送信 | N | |
ゲーム内で親善戦を完了した直後にログを送信 | Y | |
ゲーム内でミッションコンテンツを完了した直後にログを送信 | Y | |
ゲーム内で攻城戦コンテンツを完了した直後にログを送信 | Y | |
ゲーム内でPVP、PVE、PVMPなどのコンテンツを完了した直後にログを送信 | Y | |
ゲーム内でイベントクエストを完了した直後にログを送信 | Y |
必ず決済が完了する時点でログを送信してください。
MMORPGジャンルでは、1つのモンスターを退治した後にログを送信することをお勧めします。
Enumerationsコンテンツ
- StageType
ゲーム内でユーザーが実行するコンテンツの種類を指定
Name | Value | 説明 |
---|---|---|
STAGE | 0 | コンテンツが一般ステージの場合に指定 |
GUILD | 1 | コンテンツがギルド戦の場合に指定 |
FRIENDSHIP | 2 | コンテンツが親善戦の場合に指定 |
MISSION | 3 | コンテンツがゲーム内ミッションの場合に指定 |
PVE | 4 | コンテンツがPVE(レイドまたはボス戦)の場合に指定 |
PVP | 5 | コンテンツがPVPの場合に指定 |
PVMP | 6 | コンテンツが乱闘または複数のユーザーを相手にする場合に指定 |
QUEST | 7 | コンテンツがクエストの場合に指定 |
SIEGE | 8 | コンテンツが攻城戦の場合に指定 |
EVENTSTAGE | 9 | コンテンツがイベントステージの場合に指定 |
- AutoType
ユーザーがコンテンツを実行する際に使用したゲーム実行方法を指定
Name | Value | 説明 |
---|---|---|
AUTO | 0 | ステージを自動で実行 |
MANUAL | 1 | ステージを手動で実行 |
- ResultType
ユーザーがゲームコンテンツを実行した結果を指定
Name | Value | 説明 |
---|---|---|
NON | 0 | ステージの結果を成功または失敗と判断できない場合に指定 |
SUCCESS | 1 | 成功の場合に指定 |
FAIL | 2 | 失敗の場合に指定 |
- PartnerType
コンテンツを一緒に実行したパートナーまたはゲームリソース(友達、ペット、ギルド員)の種類を指定
Name | Value | 説明 |
---|---|---|
MYSELF | 0 | 自分が保有するキャラクターの場合に指定 |
MAINMYSELF | 1 | 自分のメインキャラクターの場合に指定 |
FRIEND | 2 | パートナーが友達の場合に指定 |
GUILD | 3 | パートナーがギルド員の場合に指定 |
PET | 4 | パートナーがペットの場合に指定 |
RANDOM | 5 | パートナーがランダムに指定された場合に指定 |
ETC | 6 | その他 |
Params Data Class
- PartnersInfo
ユーザーがゲームコンテンツ実行時に一緒に実行した(サポートした)ゲームパートナー(友達(キャラクター)/ギルド員/ペット/カード)の詳細情報を保存
Data Member | DataType | 説明 |
---|---|---|
PartnerType | PartnerType | パートナーの種類 |
MemberID | string | 会員番号(シリアル番号) |
PartnerID | string | パートナーキャラクター(ギルド員/ペット/カード)のシリアル番号 |
PartnerCharUQCode | string | パートナーキャラクター(ギルド員/ペット/カード)の固有番号 |
PartnerLevel | int | パートナーキャラクター(ギルド員/ペット/カード)のレベル |
PartnerHP | int | コンテンツ完了時点のパートナーキャラクター(ギルド員/ペット/カード)のHP |
PartnerMP | int | コンテンツ完了時点のパートナーキャラクター(ギルド員/ペット/カード)のMP |
- WearItemInfo
ユーザーがゲームコンテンツ実行時に着用(装着)したアイテム情報を保存
着用または装着したアイテム(武器、装身具、衣類など)
Data Member | DataType | 説明 |
---|---|---|
PartnerID | string | アイテムを使用したパートナーのID |
ItemCode | string | 着用したアイテムのコード |
ItemName | string | 着用したアイテムの名前 |
ItemLevel | int | 着用したアイテムのレベル(0を入れる) |
ItemGrade | string | 着用したアイテムの等級 |
ItemDeckCode | string | 着用したアイテムに適用されたデッキコード |
ItemDeckName | string | 着用したアイテムに適用されたデッキ名 |
- SkillInfo
ユーザーがゲームコンテンツ実行時に使用したキャラクタースキル情報を、使用したスキル順に保存
Data Member | DataType | 説明 |
---|---|---|
PartnerID | string | スキルを使用したパートナーのID |
SkillName | string | 使用したスキルの名前 |
SkillDamage | int | 使用したスキルがモンスターまたは相手キャラクターに与えたダメージ |
SkillType | string | 使用したスキルの攻撃形式(物理、魔法、治癒) |
SkillDuration | int | 使用したスキルの持続時間 |
- ItemInfo
ゲーム内でコンテンツ実行時に使用したアイテム情報を、使用したアイテム順に保存
Data Member | DataType | 説明 |
---|---|---|
PartnerID | string | アイテムを使用したパートナーのID |
ItemName | string | 使用したアイテム名 |
ItemAmount | int | 使用したアイテム数 |
ItemDuration | int | 使用したアイテムの持続時間 |
- EnemyInfo
ゲーム内でコンテンツ実行中に退治したゲームリソース(モンスター、ペット、PVPの相手キャラクター、ボスモンスター)情報を保存
Data Member | DataType | 説明 |
---|---|---|
PartnerID | string | 敵を退治したパートナーのID |
EnemyID | string | 退治したキャラクターのID(PVP、PVMP)またはモンスターのID |
EnemyLevel | int | 退治したキャラクター、ユーザーレベルのINT レベルがない場合は0 |
EnemyAttack | int | 退治したキャラクター / ユーザー攻撃力のINT 攻撃力がない場合は0 |
EnemyDefense | int | 退治したモンスター / キャラクターの防御力 防御力がない場合は0 |
EnemyStamina | int | 退治したモンスター / キャラクターの体力 体力がない場合は0 |
Methodの説明
// PartnersInfoの内容を初期化
public void ClearPartnersInfo()
Parameter Name | Data Type | 説明 | |
---|---|---|---|
– | – | – | |
Return(呼び出し結果) | |||
– | void | 返す値なし |
// List<PartnersInfo>にパートナー情報を1つずつ追加
public void AddPartnersInfo(string MemberID, string PartnerCharUQCode, int PartnerHP, string PartnerID, int PartnerLevel, int PartnerMP, PartnerType PartnerType)
Parameter Name | Data Type | 説明 |
---|---|---|
MemberID | String | 会員番号 |
PartnerCharUQCode | String | 友達(キャラクター)/ギルド員/ペット/カードを使用するキャラクターの固有番号 |
PartnerHP | int | 友達(キャラクター)/ギルド員/ペット/カードのHP |
PartnerID | String | 友達(キャラクター)/ギルド員/ペット/カードのID |
PartnerLevel | int | 友達(キャラクター)/ギルド員/ペット/カードのレベル |
PartnerMP | int | 友達(キャラクター)/ギルド員/ペット/カードのMP |
StagePartnersInfo | PartnerType | パートナーの種類 集計のための必須項目 |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// AddPartnersInfoを通じて追加した装着パートナー情報履歴を照会
public List<PartnersInfo> GetPartnersInfo()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
PartnersInfos | List<PartnersInfo> | リストに保存されたパートナー情報 |
// WearItemInfoの内容を初期化
public void ClearWearItemInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<WearItemInfo>に装着アイテムを1つずつ追加
public void AddWearItemInfos(string PartnerID, string ItemCode, string ItemDeckCode, string ItemDeckName, string ItemGrade, int ItemLevel, string ItemName)
Parameter Name | Data Type | 説明 |
---|---|---|
PartnerID | string | アイテムを使用したパートナーのID |
ItemCode | string | 着用したアイテムのコード |
ItemDeckCode | string | 着用したアイテムに適用されたデッキコード |
ItemDeckName | string | 着用したアイテムに適用されたデッキ名 |
ItemGrade | string | 着用したアイテムの等級 |
ItemLevel | int | 着用したアイテムのレベル(0を入れる) |
ItemName | string | 着用したアイテムの名前 |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// AddWearItemInfosを通じて追加した装着アイテム履歴を照会
public List<WearItemInfo> GetWearItemInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | List<WearItemInfo> | リストに保存された着用装備に関する情報 |
// SkillInfosの内容を初期化
public void ClearSkillInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<SkillInfo>に、コンテンツ実行時に使用したスキルを1つずつ追加
public void AddSkillInfos(string PartnerID, int SkillDamage, int SkillDuration, string SkillName, string SkillType)
Parameter Name | Data Type | 説明 |
---|---|---|
PartnerID | string | スキルを使用したパートナーのID |
SkillDamage | int | 使用したスキルがモンスターまたは相手キャラクターに与えたダメージ |
SkillDuration | int | 使用したスキルの持続時間 |
SkillName | string | 使用したスキルの名前 |
SkillType | string | 使用したスキルの攻撃形式(物理、魔法、治癒) |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// AddSkillInfosを通じて追加した使用スキル履歴を照会
public List<SkillInfo> GetSkillInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
SkillInfos | List<SkillInfo> | リストに保存された、使用したスキル情報 |
// ItemInfoの内容を初期化
public void ClearItemInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<ItemInfo>に、コンテンツ実行時に使用したアイテムを1つずつ追加
public void AddItemInfos(string PartnerID, int ItemAmount, int ItemDuration, string ItemName)
Parameter Name | Data Type | 説明 |
---|---|---|
PartnerID | string | アイテムを使用したパートナーのID |
ItemAmount | int | 使用したアイテム数 |
ItemDuration | int | 使用したアイテムの持続時間 |
ItemName | string | 使用したアイテム名 |
Return(呼び出し結果) | ||
- | void | 返す値なし |
// AddItemInfosを通じて追加した使用スキル履歴を照会
public List<ItemInfo> GetItemInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | List<ItemInfo> | リストに保存された使用アイテム情報 |
// List<EnemyInfo>の内容を初期化
public void ClearEnemyInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<EnemyInfo>にコンテンツ実行中に退治したゲームリソース(モンスター、ペット、PVPの相手キャラクター、ボスモンスター)を1つずつ追加
public void AddEnemyInfos(string PartnerID, int EnemyAttack,int EnemyDefense,string EnemyID,int EnemyLevel,int EnemyStamina)
Parameter Name | Data Type | 説明 |
---|---|---|
PartnerID | string | 敵を退治したパートナーのID |
EnemyAttack | int | 退治したキャラクター / ユーザー攻撃力のINT 攻撃力がない場合は0 |
EnemyDefense | int | 退治したモンスター / キャラクターの防御力 防御力がない場合は0 |
EnemyID | string | 退治したキャラクターのID(PVP、PVMP)またはモンスターのID |
EnemyLevel | int | 退治したキャラクター、ユーザーレベルのINT レベルがない場合は0 |
EnemyStamina | int | 退治したモンスター / キャラクターの体力 体力がない場合は0 |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// AddEnemyInfosを通じて保存した対戦相手情報を返す
public List<EnemyInfo> GetEnemyInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | List<EnemyInfo> | リストに保存された対戦相手情報 |
// ゲーム内でのユーザーのゲームコンテンツ実行ログを送信
public void ContentActInfos(StageType ContentActStageType, string StageName, AutoType IsAuto, string StageGrade, string StageResultGrade, int StagePlayTime, ResultType StageResult, IEnumerable<PartnersInfo> StagePartnersInfo, int RemainHP, int RemainMP, IEnumerable<WearItemInfo> WearItemInfo, IEnumerable<SkillInfo> UseSkillInfo, IEnumerable<ItemInfo> UseItemInfo, int EnemyKill, IEnumerable<EnemyInfo> EnemyKillInfo)
Parameter Name | Data Type | 説明 |
---|---|---|
StageType | StageType | アクセス基準を設定(ゲームまたはコンテンツ) - 集計のための必須項目 |
StageName | String | 実行したコンテンツ名 - StageNameは、難易度を含むステージ固有の名前をロード - StageTypeやStageGradeが異なる場合でも、コンテンツ名は必ず一意性のある名前を指定しないと正確な分析はできない - 例:ステージ名、難易度、Stage1_2、HardStage2_4 - 集計のための必須項目 |
IsAuto | AutoType | ゲームコンテンツの実行方法 |
StageGrade | String | ゲームコンテンツ開始前の予想等級 - ステージ開始前にゲームが判断するステージの等級 - 集計のための必須項目 |
StageResultGrade | String | ゲームコンテンツ完了後の結果等級 - ステージ成功時は成功等級段階を入力 - 例:StageResult(SUCCESS) – 「星3つ等級」 - ステージ失敗時は失敗理由を入力 - 例:StageResult(FAIL) – 「ポーション不足で死亡」 - テキストベースでグループ化されるため、名称の標準化が必要 - 集計のための必須項目 |
StagePlayTime | int | ゲーム内コンテンツ実行時間(単位:秒) - 集計のための必須項目 |
StageResult | ResultType | ゲームコンテンツ完了後の結果 -集計のための必須項目 |
StagePartnersInfo | List<partnersinfo> | コンテンツ実行時に一緒に実行した(サポートした)ゲームパートナー情報 |
RemainHP | int | ゲームコンテンツ完了後の残存HP |
RemainMP | int | ゲームコンテンツ完了後の残存MP |
WearItemInfo | List<WearItemInfo> | ゲームコンテンツ時に着用(装着)したアイテム情報 |
UseSkillInfo | List<SkillInfo> | ゲームコンテンツ実行時に使用したキャラクタースキル情報 |
UseItemInfo | List<ItemInfo> | ゲームコンテンツ実行時に使用したアイテム情報 |
EnemyKill | int | ゲームコンテンツ実行中に退治したゲームリソース(モンスター、ペット、PVPの相手キャラクター、ボスモンスター)の数 |
EnemyKillInfo | List<EnemyInfo< | ゲームコンテンツ実行中に退治したゲームリソース(モンスター、ペット、PVPの相手キャラクター、ボスモンスター)の情報 |
Return(呼び出し結果) | ||
– | string | インターネットリソースのレスポンスを返す |
サンプルソース
- ステージの実行ログ
// オブジェクトを初期化
StorageCoreManager scManager = StorageCoreManager.GetInstance();
// パートナー情報を初期化
scManager.ClearPartnersInfo();
// パートナーの追加1
scManager.AddPartnersInfo("1000", "2",100,"1001",10,50, PartnerType.ETC);
// パートナーの追加2
scManager.AddPartnersInfo("1001", "3", 105, "1002", 11, 55, PartnerType.ETC);
// 着用装備を追加するための初期化
scManager.ClearWearItemInfos();
// 着用装備の追加1
scManager.AddWearItemInfos(“PartnerID”, "1","1","1","A",1,"Helmet");
// 着用装備の追加2
scManager.AddWearItemInfos(“PartnerID”, "2", "1","1", "B", 1, "Shield");
// 使用したスキルを追加するための初期化
scManager.ClearSkillInfos();
// ステージで使用したスキルの追加1
scManager.AddSkillInfos(“PartnerID”, 100, 10,"Fire Ball","Magic");
// ステージで使用したスキルの追加2
scManager.AddSkillInfos(“PartnerID”, 50, 5, "ICE Ball", "Magic");
// ステージで使用したアイテム情報を追加するための初期化
scManager.ClearItemInfos();
// ステージで使用したアイテムの追加1
scManager.AddItemInfos(“PartnerID”, 10,4,"Potion");
// ステージで使用したアイテムの追加2
scManager.AddItemInfos(“PartnerID”, 1, 5, "Mana Potion");
// ステージで退治したモンスターまたはキャラクターの情報を追加するための初期化
scManager.ClearEnemyInfos();
// ステージで退治したモンスターまたはキャラクター情報の追加1
scManager.AddEnemyInfos(“PartnerID”, 40, 10, "1001", 2, 10);
// ステージで退治したモンスターまたはキャラクター情報の追加2
scManager.AddEnemyInfos(“PartnerID”, 50, 20, "1002", 3, 20);
// コンテンツ実行ログを送信
scManager.GetApi().ContentActInfos(StageType.STAGE, "StageName01", AutoType.AUTO, "StageGrade", "StageResultGrade", 100, ResultType.SUCCESS, scManager.GetPartnersInfo(), 100, 100, scManager.GetWearItemInfos(), scManager.GetSkillInfos(), scManager.GetItemInfos(), 10, scManager.GetEnemyInfos());
ResourceChangeInfos
ゲームで使用される様々なリソースの定性的な(能力値)変化ログを送信してゲームリソースのバランスを分析
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
アカウント - アカウントの成長(レベルアップ、等級アップ)によるアカウントの定性的な変化発生時にログを送信 | Y | - 強化の実行/成功/失敗の回数 - レベル別のレベルクリア所要時間 - リアルタイムアイテム強化 - ゲームアイテム強化分析 |
キャラクター - アカウントの成長(レベルアップ、等級アップ)によるアカウントの定性的な変化発生時にログを送信 | Y | |
アイテム / ペット(武器、防具、装身具、宝石、スキル) - アカウントの成長(レベルアップ、等級アップ)によるアカウントの定性的な変化発生時にログを送信 | Y | |
アカウントまたはキャラクターがアイテム・ペットなどのリソースを着用または解除する際にログを送信 | Y |
- ゲーム内で定性的な(能力値)変化が生じるすべてのゲームリソース(リソース、アカウント、アイテム、キャラクター、ペットなど)の追跡を行えます。
- ゲームリソース変化における成功・失敗の確率を分析できます。
- ゲームリソース変化を活用するユーザー分析が行えます。また、追加でのログ検索を通じてアイテム能力値に応じてコンテンツ難易度を調整できます。
Enumerationsコンテンツ
- ObjectType
変化の主体を指定
例:ペットの強化、武器の変化、武器ソケットの変化、衣類の強化、ドローンの強化
Name | Value | 説明 |
---|---|---|
ACCOUNT | 0 | アカウントの変化 |
CHAR | 1 | キャラクターの変化 |
CARD | 2 | カードの変化 |
ITEM | 3 | アイテムの変化 |
PET | 4 | ペットの変化 |
- ChangeStateType
アカウント、キャラクター、カード、ゲーム主体における定性的変化を区分して指定
Name | Value | 説明 |
---|---|---|
GRADE | 0 | 等級アップ |
LEVEL | 1 | レベルアップ |
COMPOSE | 2 | 合成 |
TRANSCENDENCE | 3 | 超越 |
ENHANCING | 4 | 特性強化 |
DISASSEMBLE | 5 | 分解 |
OPTION | 6 | オプション変更 |
NUMBERS | 7 | 数値変更 |
SKILL | 8 | スキル変更 |
ETC | 9 | その他の変更 |
INSTALL | 10 | 装備装着 |
- ResultType
アカウント、キャラクター、カード、ゲーム主体における定性的変化作業の成否を指定
Name | Value | 説明 |
---|---|---|
TRY | 0 | 実行(必須ではない) |
SUCCESS | 1 | 成功 |
FAIL | 2 | 失敗 |
NON | 3 | 成功・失敗がない場合は「NON」 |
Methodの説明
様々なリソースの定性的な(能力値)変化ログを送信
public void ResourceChangeInfos(ObjectType ChangeObjectType, string UniqueCode, long SeqCode, string Name, string TargetUniqueCode, string TargetSeqCode, string TargetName, ChangeActType ResourceChangeStateType, string BeforeLevel, string AfterLevel, string BeforeLevelDesc, string AfterLevelDesc, ResultType ChangeResultType, string MoneyCode, string MoneyName, int MoneyAmount)
Parameter Name | Data Type | 説明 |
---|---|---|
ChangeObjectType | ObjectType | アカウント、キャラクター、ペットなど変化したリソースオブジェクトを区分 - 集計のための必須項目 |
UniqueCode | string | 変化したリソースの固有コード - 集計のための必須項目 |
SeqCode | long | 変化したリソースのシリアル番号 |
Name | string | 変化したリソース名 - 集計のための必須項目 |
TargetUniqueCode | string | 装備またはスキルなどを着用する対象キャラクターやアイテムの固有番号 |
TargetSeqCode | string | 装備またはスキルなどを着用する対象キャラクターやアイテムのシリアル番号 |
TargetName | string | 装備またはスキルなどを着用する対象キャラクターやアイテムの名前 |
ResourceChangeStateType | ChangeActType | オプション変更、レベルアップ、強化など変化したリソースの変化形式を区分 - 集計のための必須項目 |
BeforeLevel | string | 変化前の等級、レベルまたはオプションの値は数値化が必要 - 例:A、B、C、D、E/1、2、3、4、5、6、一般、高度、希少、英雄、古代、伝説、不滅/ホワイト、グリーン、ブルー、パープル、イエロー、オレンジ、レッド |
AfterLevel | string | 変化後の等級、レベルまたはオプションの値は数値化が必要 - 例:A、B、C、D、E/1、2、3、4、5、6、一般、高度、希少、英雄、古代、伝説、不滅/ホワイト、グリーン、ブルー、パープル、イエロー、オレンジ、レッド |
BeforeLevelDesc | string | 変化前の等級、レベルまたはオプションの詳細な値を記述 |
AfterLevelDesc | string | 変化後の等級、レベルまたはオプションの詳細な値を記述 |
ChangeResultType | ResultType | ゲームリソースの変化結果 - 集計のための必須項目 |
MoneyCode | string | ゲームマネーコード |
MoneyName | string | ゲームマネー名 ゲーム内で一貫している必要がある |
MoneyAmount | int | 獲得費用 |
Return(呼び出し結果) | ||
– | string | ログ保存後の結果値 |
サンプルソース
//{UniqueCode}アイテムをレベルアップし、レベルアップ結果が成功である場合
//ゲームリソースの定性的な変化ログを送信
StorageCoreManager.GetInstance().GetApi().ResourceChangeInfos(ObjectType.ITEM, "{UniqueCode}", 2, "Name", “TargetUniqueCode”, “TargetSeqCode”, “TargetName”, ChangeStateType.LEVEL, "1", "2", "{BeforeLevelDesc}", "{AfterLevelDesc}", ResultType.SUCCESS, “MoneyCode”, “MoneyName”, 100);
VMoneyChangeInfos
ゲーム内で獲得・消費するすべての財貨ログを送信して現金・非現金財貨のフローを分析
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ゲーム内で様々な行為を通じてゲームマネーを獲得すると、ログを送信 | Y | - ゲーム財貨の獲得・消費量 - ゲーム財貨を獲得・消費したキャラクター数 - リアルタイム財貨の獲得・消費 - アイテム別財貨の収入・支出分析 - ゲーム財貨のサマリー - ゲーム財貨の分析 |
ゲーム内で様々な行為を通じてゲームマネーを消費すると、ログを送信 | Y | |
ゲーム内で銀行振込/クレジットカード/商品券などで現金財貨を獲得した際にログを送信 | Y | |
ゲーム内で業績を達成して名誉ポイントを獲得すると、ログを送信 | Y | |
ゲーム内でコンテンツを実行するために様々な形のスタミナを消費すると、ログを送信 | Y | |
ゲーム内で加入したギルドに寄付してギルドポイントを獲得すると、ログを送信 | Y | |
ゲーム内で様々な取引所を通じて財貨を獲得すると、ログを送信 | Y | |
ゲーム内で様々な取引所を通じて財貨を消費すると、ログを送信 | Y |
- アイテムによる財貨収入・支出ログが発生した場合、そのアイテムのItemCodeとItemName情報をContentCodeとContentNameに記入する必要があります。
- アイテムによるログではないときは、ContentCodeとContentNameにNULLと記入します。
- ゲームマネーは、ゲームで貨幣として使われるすべての財貨を指します。ただし、現金はゲームマネーではありません。
- ゲームマネーの例
- 現金/クレジットカード/商品券で購入したダイヤモンド:現金財貨
- ゴールドの獲得・消費:非現金財貨
- 名誉ポイントの獲得・消費:非現金財貨
- チャレンジポイントの獲得・消費:非現金財貨
- ギルドポイントの獲得・消費:非現金財貨
- ゲームプレイに必要なスタミナの獲得・消費:非現金財貨
Enumerationsコンテンツ
- MoneyChangeType
ゲーム財貨の獲得・消費経路を指定
Name | Value | 説明 |
---|---|---|
MoneyChangeType.CASH | 0 | 現金でゲームマネーを購入 |
MoneyChangeType.VRCASH | 1 | ゲームマネーによる購入 |
MoneyChangeType.COUPON | 2 | クーポンによる獲得 |
MoneyChangeType.EVENTREWARD | 3 | 出席報酬などイベントによる獲得 |
MoneyChangeType.QUESTREWARD | 4 | クエスト報酬による獲得 |
MoneyChangeType.MISSIONREWARD | 5 | ミッション報酬による獲得 |
MoneyChangeType.NORMALREWARD | 6 | 一般報酬による獲得 |
MoneyChangeType.POST | 7 | 郵便により獲得 |
MoneyChangeType.GUILDSUPPORT | 8 | ギルドサポートによる獲得・消費(ギルドをサポートして個人がサポートを受ける) |
MoneyChangeType.GUILDCREATE | 9 | |
MoneyChangeType.GACHA | 10 | ガチャアイテムによる獲得 |
MoneyChangeType.BUY | 11 | ショップでの購入、販売、再購入(ゲームショップ) |
MoneyChangeType.COLLECT | 12 | トグルによる獲得(モンスター狩りの後にドロップされたアイテムを直接拾ったり、PKで敵キャラクターからドロップされたアイテムを拾ったりする場合など) |
MoneyChangeType.SNSSUPPORT | 13 | SNSによる獲得・消費 |
MoneyChangeType.ITEMENCHABT | 14 | アイテム強化による消費 |
MoneyChangeType.CHARNCHABT | 15 | キャラクター強化による消費 |
MoneyChangeType.DISMANTLE | 16 | アイテムやキャラクターの分解による獲得・消費 |
MoneyChangeType.MAKE | 17 | アイテムやキャラクターの作成・合成による獲得・消費 |
MoneyChangeType.STAGEACTION | 18 | ステージ実行による獲得・消費 |
MoneyChangeType.PVPACTION | 19 | 1対1モードによる獲得・消費 |
MoneyChangeType.PVEACTION | 20 | レイドなどによる獲得・消費 |
MoneyChangeType.PVMPACTION | 21 | 1対多モード(複数のユーザーとの対戦) |
MoneyChangeType.GUILDACTION | 22 | ギルド戦で獲得・消費 |
MoneyChangeType.EVENTSTAGEACTION | 23 | イベントステージでの消費 |
MoneyChangeType.UPGRADE | 24 | アイテム・キャラクターなどゲームリソースのアップグレイドや属性の変更による獲得・消費 |
MoneyChangeType.DELETE | 25 | アイテムの破壊・削除(直接破壊) |
MoneyChangeType.ITEMDROP | 26 | アイテムドロップによる消費・獲得(直接、PK、モンスターによる死亡など) |
MoneyChangeType.DEAL | 27 | キャラクター間の取引、委託取引所、仲介所、個人ショップでの獲得・消費 |
MoneyChangeType.REPAIR | 28 | 修理費用 |
MoneyChangeType.EXTEND | 29 | インベントリや倉庫の拡張費用 |
MoneyChangeType.MOVEMENT | 30 | 移動費用 |
MoneyChangeType.USERSUPPORT | 31 | ユーザーへのサポートまたはユーザーからサポートされた費用 |
MoneyChangeType.INIT | 32 | 初期作成(キャラクターの作成時に受け取った費用) |
MoneyChangeType.ETC | 33 | その他の理由である場合に選択 その他を選択する場合、Methodの説明のChangeNameは必須入力事項 |
- FlowType
ゲームマネー変化の区分値を指定
Name | Value | 説明 |
---|---|---|
IN | 0 | 獲得 |
OUT | 1 | 消費 |
- Money Type
ゲーム財貨の現金・非現金財貨の区分を指定
Name | Value | 説明 |
---|---|---|
MoneyType.GOLD | 0 | 非現金財貨 |
MoneyType.CASH | 1 | 現金財貨(キャッシュ、ダイヤモンド) |
MoneyType.STAMINA | 2 | ポイントの獲得(スタミナ、コイン、クッキー) |
MoneyType.MILEAGE | 3 | 決済時に累積するボーナス貨幣(マイレージ) |
MoneyType.EXP | 4 | 経験値獲得 |
Methodの説明
// VMoneyChangeInfoの内容を初期化
public void ClearVMoneyChangeInfoList()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<VMoneyChangeInfo>に財貨の使用履歴を1つずつ追加
public void AddVMoneyChangeInfoList(FlowType MoneyFlowType, string MoneyName, MoneyChangeType MoneyChangeType, string MoneyChangeDetail, string ContentName, string ContentCode, MoneyType MoneyType, long Amount, long HoldAmount, string MoneyChangeName = “”)
Parameter Name | Data Type | 説明 |
---|---|---|
MoneyFlowType | FlowType | ゲームマネーのフロータイプ - 集計のための必須項目 |
MoneyName | string | ゲームマネー名 - 集計のための必須項目 |
MoneyChangeType | MoneyChangeType | ゲームマネー変化の区分 - 集計のための必須項目 |
MoneyChangeDetail | string | ゲームマネー変化の詳細 |
ContentName | string | ゲームマネー変化コンテンツの名前 - 集計のための必須項目 - アイテムによる財貨ログが発生した場合、そのアイテムのItemName情報をロード - アイテムによるログでない場合はNULL |
ContentCode | string | ゲームマネー変化コンテンツのコード - 集計のための必須項目 - アイテムによる財貨ログが発生した場合、そのアイテムのItemCode情報をロード - アイテムによるログでない場合はNULL |
MoneyType | MoneyType | ゲームマネーの種類 |
Amount | string | 変化したゲームマネーの金額 - 集計のための必須項目 |
HoldAmount | long | 変化後のゲームマネーの総額 |
MoneyChangeName | string | MoneyChangeType.ETCを選択する場合、その理由名を入力 - ETCを選択する場合の必須入力事項 - Stringが同じ値同士でマッチングされ、その分析情報が提供される |
Return(呼び出し結果) | ||
– | – | 返す値なし |
// AddVMoneyChangeInfoListを通じて追加した財貨の獲得・消費履歴を照会
public List<VMoneyChangeInfo> GetVMoneyChangeInfoList()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
VMoneyChangeInfoList | List<VMoneyChangeInfo> | 財貨変更リスト |
// ゲーム内で獲得・消費するすべての財貨ログを送信
public void VMoneyChangeInfos(IEnumerable<VMoneyChangeInfo> VMoneyChangeInfoList)
Parameter Name | Data Type | 説明 |
---|---|---|
VMoneyChangeInfoList | List<VMoneyChangeInfo> | 財貨変更リスト |
Return(呼び出し結果) | ||
- | void | 返す値なし |
サンプルソース
// {MoneyName}のゲームマネーをトグルにより獲得した場合
StorageCoreManager scManager = StorageCoreManager.GetInstance();
//財貨変更リストを初期化
scManager.ClearVMoneyChangeInfoList();
//財貨変更履歴を追加
//経験値獲得
scManager.AddVMoneyChangeInfoList(FlowType.IN, "MoneyName", MoneyChangeType.INIT,"MoneyChangeDetail1", "ContentName", "ContentCode", MoneyType.EXP, 1000, 50000);
//経験値獲得
scManager.AddVMoneyChangeInfoList(FlowType.IN, "MoneyName", MoneyChangeType.DEAL,"MoneyChangeDetail2", "ContentName", "ContentCode", MoneyType.EXP, 2000, 40000);
//非現金財貨の「赤い宝石」を分解により獲得
scManager.AddVMoneyChangeInfoList(FlowType.IN, "MoneyName", MoneyChangeType.DISMANTLE,"MoneyChangeDetail3", "赤い宝石", "CD0002", MoneyType.GOLD, 3000, 30000);
//ギルド戦に参加時に「靴」というスタミナを使用
scManager.AddVMoneyChangeInfoList(FlowType.OUT, "MoneyName", MoneyChangeType.GUILDACTION, "MoneyChangeDetail4", "靴", "CD0003", MoneyType.STAMINA, 4000, 20000);
//現金購入によりダイヤモンドを獲得
scManager.AddVMoneyChangeInfoList(FlowType.IN, "MoneyName", MoneyChangeType.CASH, "MoneyChangeDetail5", "ダイヤモンド", "ContentCode", MoneyType.CASH, 5000, 10000, "MoneyChangeName");
//財貨変更履歴を送信
StorageCoreManager.GetInstance().GetApi().VMoneyChangeInfos(scManager.GetVMoneyChangeInfoList());
ItemChangeInfos
ゲーム内でユーザーのゲームアイテム獲得・消費(数量の変化)ログを送信してアイテムのフローを分析
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ゲーム内でアイテム獲得・消費時にログを送信 | Y | - アイテムの獲得・消費量 - アイテムを獲得・消費したキャラクター数 - リアルタイムアイテム獲得・消費 - ミッション分析 - 獲得アイテム - ゲームアイテムのサマリー - ゲームアイテム分析 |
ゲーム内でアイテム消費時にログを送信 | Y | |
注意事項 |
- ゲームアイテムは有料アイテムではありません。有料アイテムの購入ログはBuyInfosに送信する必要があります。
- 購入により獲得した財貨のみItemChangeInfosに送信します。
- 現金でパッケージアイテムを購入する場合は、必ずBuy Logに購入ログを一緒に保存する必要があります。現金パッケージアイテムを購入したり、現金で武器、装身具、ゲームマネーを購入する場合、Buy Logに購入ログを保存してください。
- ガチャ指標(ItemChangeType = GACHA)が10連ガチャの場合でも、1件の獲得データのみロードされます。
- 10個のアイテム情報は、ItemsInfosに10件としてロードします。
- 10連ガチャと1回のガチャの場合、ContentCodeとContentNameにそれぞれ分ける必要があります。
- 10連ガチャの場合、獲得費用(MoneyAmount)を10等分して保存する必要があります。
- 総費用が10,000ゴールドであれば、獲得アイテム1つにつき1,000ゴールドずつ分けて保存します。
- アイテムによる財貨収入・支出ログが発生した場合、そのアイテムのItemCodeとItemName情報をContentCodeとContentNameに記入する必要があります。
- (ItemChangeType = STAGEACTION, PVPACTION, PVEACTION, PVMPACTION, GUILDACTION, EVENTSTAGEACTION) ContentCodeとContentNameにステージ固有の名前がロードされる必要があります。
- StageName情報はContentActInfos.StageNameと一致する必要があります。StageTypeやStageGradeが異なる場合でも、StageNameは必ず一意性のある値に指定する必要があります。そうでない場合は、正しく集計されません。
- 複数のキャラクターをガチャやクエストを通じて収集するゲームの場合、キャラクターの強化もアイテム変化ログとしてロードしてください。そうでない場合は、正しく集計されません。
Enumerationsコンテンツ
- ChangeType
アイテムの量が変化した理由を指定
Name | Value | 説明 |
---|---|---|
ChangeType.CASH | 0 | 現金でゲームマネーを購入 |
ChangeType.VRCASH | 1 | ゲームマネーによる購入 |
ChangeType.COUPON | 2 | クーポンによる獲得 |
ChangeType.EVENTREWARD | 3 | 出席報酬など様々なイベントによる獲得 |
ChangeType.QUESTREWARD | 4 | クエスト報酬による獲得 |
ChangeType.MISSIONREWARD | 5 | ミッション報酬による獲得 |
ChangeType.NORMALREWARD | 6 | 一般報酬による獲得 |
ChangeType.POST | 7 | 郵便により獲得 |
ChangeType.GUILDSUPPORT | 8 | ギルドサポートによる獲得・消費(ギルドをサポートして個人がサポートを受ける) |
ChangeType.GACHA | 9 | ガチャアイテムによる獲得 |
ChangeType.BUY | 10 | ショップでの購入、販売、再購入(ゲームショップ) |
ChangeType.COLLECT | 11 | トグルによる獲得(モンスター狩りの後にドロップされたアイテムを直接拾ったり、PKで敵キャラクターからドロップされたアイテムを拾ったりする場合など) |
ChangeType.SNSSUPPORT | 12 | SNSによる獲得・消費 |
ChangeType.ENCHABT | 13 | 強化による消費 |
ChangeType.DISMANTLE | 14 | アイテムやキャラクターの分解による獲得・消費 |
ChangeType.MAKE | 15 | アイテムやキャラクターの作成・合成による獲得・消費 |
ChangeType.STAGEACTION | 16 | ステージ実行による獲得・消費 |
ChangeType.PVPACTION | 17 | 1対1モードによる獲得・消費 |
ChangeType.PVEACTION | 18 | レイドなどによる獲得・消費 |
ChangeType.PVMPACTION | 19 | 1対多モード(複数のユーザーとの対戦) |
ChangeType.GUILDACTION | 20 | ギルド戦で獲得・消費 |
ChangeType.EVENTSTAGEACTION | 21 | イベントステージでの消費 |
ChangeType.UPGRADE | 22 | アイテム・キャラクターなどゲームリソースのアップグレイドや属性の変更による獲得・消費 |
ChangeType.DELETE | 23 | アイテムの破壊・削除(直接破壊) |
ChangeType.ITEMDROP | 24 | アイテムドロップによる消費・獲得(直接、PK、モンスターによる死亡など) |
ChangeType.DEAL | 25 | キャラクター間の取引、委託取引所、仲介所、個人ショップでの獲得・消費 |
ChangeType.INIT | 26 | 初期作成情報 (キャラクターの初期作成に関する情報及び作成時に受け取るアイテム情報) - 集計のための必須項目 |
ChangeType.ETC | 27 | その他の理由である場合に選択 その他を選択する場合、Methodの説明のChangeNameは必須入力事項 |
- FlowType
アイテムにおける量的変化の区分値を指定
Name | Value | 説明 |
---|---|---|
IN | 0 | 獲得 |
OUT | 1 | 消費 |
Paramデータクラス
- ItemsInfo
獲得したアイテムのそれぞれの情報を保存
複数のアイテムを獲得・消費した場合、すべてを1個ずつ追加
Data Member | DataType | 説明 |
---|---|---|
ItemUniqueCode | string | アイテムの固有コード |
ItemName | string | アイテム名 |
ItemGrade | string | アイテムの等級 |
ItemLevel | int | アイテムのレベル |
ItemAmount | int | アイテム数 |
ItemImputeType | byte | アイテムの帰属有無 |
MoneyCode | string | ゲームマネーコード |
MoneyName | string | ゲームマネー名 ゲーム内で一貫している必要がある |
MoneyAmount | int | 獲得費用 |
Methodの説明
// List<ItemChangeInfo>の内容を初期化
public void ClearItemChangeInfoList()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<ItemChangeInfo>に複数の経路を介したアイテム数量変化を1つずつ追加
public void AddItemChangeInfoList(FlowType ItemFlowType, ChangeType ItemChangeType, string ChangeDetail, string ContentName, string ContentCode, IEnumerable<ItemsInfo> ItemsInfo, string ChangeName = "")
Parameter Name | Data Type | 説明 |
---|---|---|
ItemFlowType | FlowType | ゲームアイテムフローの区分 - 集計のための必須項目 |
ItemChangeType | ChangeType | ゲームアイテム変化の区分 - 集計のための必須項目 |
ChangeDetail | string | ゲームアイテム変化の詳細情報 |
ContentName | string | ゲームアイテム変化コンテンツの名前 - 集計のための必須項目 - ItemChangeType(GACHA)の場合、ガチャコンテンツの名前(10連ガチャと1回ガチャを分離) - StageName情報があるコンテンツの場合、ContentActInfos.StageNameと同じ情報をロード |
ContentCode | string | ゲームアイテム変化コンテンツのコード - 集計のための必須項目 - ItemChangeType(GACHA)の場合、ガチャコンテンツのコード(10連ガチャと1回ガチャを分離) - StageName情報があるコンテンツの場合、ContentActInfos.StageNameと同じ情報をロード |
ItemsInfo | List | ゲームアイテムの獲得・消費の詳細内容 - 集計のための必須項目 |
ChangeName | string | ChangeType.ETCを選択する場合、その理由名を入力 - ETCを選択する場合の必須入力事項 - 列挙型の値の中に必要な値がない場合、テキストで入力 - 同じテキストでグループ化分析され画面に表示される同じ特性のアイテムは、同じテキストを入力 |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// AddItemChangeInfoListを通じて追加したアイテム数量変化履歴を照会
public List<ItemChangeInfo> GetItemChangeInfoList()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
ItemChangeInfoList | List<ItemChangeInfo> | リストに保存されたアイテム数量変化履歴 |
// List<ItemChangeInfo>の内容を初期化
public void ClearItemChangeInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<ItemsInfo>にアイテム数量変化内容を追加
// 一度の行為で複数のアイテムを獲得・消費した場合、アイテムに関する情報
public void AddItemChangeInfos(int ItemAmount,string ItemGrade, byte ItemImputeType,int ItemLevel,string ItemName,string ItemUniqueCode, string MoneyCode, string MoneyName, int MoneyAmount)
Parameter Name | Data Type | 説明 |
---|---|---|
ItemAmount | int | アイテム数 - 集計のための必須項目 |
ItemGrade | string | アイテムの等級 - 集計のための必須項目 |
ItemImputeType | byte | アイテムの帰属有無 |
ItemLevel | int | アイテムのレベル |
ItemName | string | アイテム名 - 集計のための必須項目 |
ItemUniqueCode | string | アイテムの固有コード - 集計のための必須項目 |
MoneyCode | string | ゲームマネーコード |
MoneyName | string | ゲームマネー名 - ゲーム内で一貫している必要がある - 集計のための必須項目 |
MoneyAmount | int | 獲得費用 - 集計のための必須項目 |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// AddItemChangeInfosを通じて追加したアイテム数量変化履歴を照会
public List<ItemsInfo> GetItemChangeInfos()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
ItemsInfos | List<ItemsInfo> | リストに保存された詳細アイテムの情報 |
// アイテム数量変化ログを送信
public void ItemChangeInfos(IEnumerable<ItemChangeInfo> ItemChangeInfoList)
Parameter Name | Data Type | 説明 |
---|---|---|
ItemChangeInfoList | List<ItemChangeInfo> | アイテム変更リスト |
Return(呼び出し結果) | ||
– | void | 返す値なし |
サンプルソース
//{MoneyName}のゲームマネーをトグルにより獲得した場合
StorageCoreManager scManager = StorageCoreManager.GetInstance();
//獲得したアイテムをリストに追加するために、リストを初期化
scManager.ClearItemChangeInfos ();
//獲得したアイテムを追加***************************************************************************************************************************
//コンテンツで「zombie_A」個退治した後、アイテムを3個獲得 - List<ItemsInfo>にアイテムを追加
scManager.AddItemChangeInfos (1, "B", 1, 1, "legend Sword", "1001", "M100100", "Ruby", 100);
scManager.AddItemChangeInfos (2, "C", 1, 1, "Iron Shield ", "1002", "M100200", "Gold", 100);
scManager.AddItemChangeInfos (5, "D", 1, 1, "Iron Shield ", "1007", "M100200", "Gold", 100);
//List<ItemChangeInfo>にアイテムログセットで獲得したアイテムを追加してアイテムログセットを追加
scManager.AddItemChangeInfoList(FlowType.IN, ChangeType.STAGEACTION, "zombie_A退治", "zombie_A", "Cts0100100", scManager.GetItemChangeInfos());
//獲得・消費したアイテムを追加***************************************************************************************************************************
//獲得・消費したアイテムを追加***************************************************************************************************************************
//コンテンツで「zombie_KING」個退治した後、アイテムを2個獲得 - List<ItemsInfo>にアイテムを追加
scManager.AddItemChangeInfos (1, "B", 1, 1, "legend Sword", "1001", "M100100", "Ruby", 100);
scManager.AddItemChangeInfos (2, "C", 1, 1, "Iron Shield", "1002", "M100200", "Gold", 100);
//List<ItemChangeInfo>にアイテムログセットで獲得したアイテムを追加してアイテムログセットを追加
scManager.AddItemChangeInfoList(FlowType.IN, ChangeType.STAGEACTION, "zombie_KING退治", "zombie_A", "Cts0100100", scManager.GetItemChangeInfos());
//コンテンツで「zombie_KING」個退治した後、1つのポーションを10個消費 - List<ItemsInfo>にアイテムを追加
scManager.AddItemChangeInfos (10, "C", 1, 1, "Commu_Potion", "HP5011", "M100200", "Gold", 100);
//List<ItemChangeInfo>にアイテムログセットで獲得したアイテムを追加してアイテムログセットを追加
scManager.AddItemChangeInfoList(FlowType.OUT, ChangeType.STAGEACTION, "zombie_KING退治", "zombie_KING", "Cts0100100", scManager.GetItemChangeInfos());
//獲得・消費したアイテムを追加***************************************************************************************************************************
//アイテム数量変化ログを送信
StorageCoreManager.GetInstance ().GetApi ().ItemChangeInfos (scManager.GetItemChangeInfoList());
ConnectInfos
ログイン・ログアウトログを送信してゲームユーザーアクセス状況を分析
ゲーム内のコンテンツ(ステージ、ダンジョン、PVP、ショップ)への入場・退場ログを送信してコンテンツ活用度を分析
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ユーザーがゲームにログインした直後にログを送信 - ConnectTypeはAPPで送信 - FlowTypeはINで送信 | Y | - AU - Retention / Revisit(再訪問D+n) / Churn(離脱D+n) / Return(復帰D+n) - TS - ARPU - ログイン回数 - 最終ログイン - レベル分布のサマリー - レベル分布分析 |
ユーザーがゲームからログアウトした直後にログを送信 - ConnectTypeはAPPで送信 - FlowTypeはOUTで送信 | Y | |
ユーザーがゲームコンテンツに入場した直後にログを送信 - ConnectTypeはCONTENTで送信 - FlowTypeはINで送信 | Y | - MTS - レベル分布分析 |
ユーザーがゲームコンテンツから退場した直後にログを送信 - ConnectTypeはCONTENTで送信 - FlowTypeはOUTで送信 | Y |
分析に必要な基本情報であるため、ほとんどの指標を確認するには、ログを送信する必要があります。
- コンテンツの定義
- 単なるアクセス状態ではなく、コンテンツ要素のあるすべての項目を指す
- RPG – ダンジョン(曜日、レイドなど)、PvP、クエスト、ギルド管理など
- SNG – 村の管理、ソーシャルコンテンツなど
- FPS – スピーディーな対戦、競争戦、装備管理など
- パズル – ステージ、デッキ管理など
- コンテンツ項目を細分化するほど、より正確なユーザー分析が行えます。
Enumerationsコンテンツ
- ConnectType
コンテンツの形式を定義
Name | Value | 説明 |
---|---|---|
APP | 0 | ユーザーがゲームにログインまたはゲームからログアウトしたときに指定 |
CONTENT | 1 | ユーザーがコンテンツに進入またはコンテンツから離脱したときに指定 |
- FlowType
ゲームマネー変化の区分値を指定
Name | Value | 説明 |
---|---|---|
IN | 0 | ユーザーがログインまたはコンテンツに進入したときに指定 |
OUT | 1 | ユーザーがログアウトまたはコンテンツから離脱したときに指定 |
Methodの説明
public void ConnectInfos(ConnectType connectType, string contentName, FlowType entryType)
Parameter Name | Data Type | 説明 |
---|---|---|
connectType | ConnectType | アクセス基準の設定 - 集計のための必須項目 |
contentName | String | コンテンツ名 - 集計のための必須項目 - ログイン・ログアウト時には「Login」、「Logout」と入力 - コンテンツの場合はコンテンツ名を入力 |
entryType | FlowType | 進入または離脱の設定 - 集計のための必須項目 |
Return(呼び出し結果) | ||
– | void | 返す値なし |
サンプルソース
ゲームログインまたはゲームログアウト
// ログイン、ログアウト
// ゲームログインログを送信
StorageCoreManager.GetInstance().GetApi().ConnectInfos(ConnectType.APP, "Login", FlowType.IN);
// ゲームログアウトログを送信
r.GetInstance().GetApi().ConnectInfos(ConnectType.APP, "Logout", FlowType.OUT);
コンテンツに進入またはコンテンツから離脱
// コンテンツに入場、コンテンツから退場
// ステージ1-1への入場ログを送信
StorageCoreManager.GetInstance().GetApi().ConnectInfos(ConnectType.CONTENT, “ステージ1-1”, FlowType.IN);
// ステージ1-1からの退場ログを送信
StorageCoreManager.GetInstance().GetApi().ConnectInfos(ConnectType.CONTENT, “ステージ1-1”, FlowType.OUT);
AdPerformInfos
ゲームアプリ内に表示されるバナー(広告、お知らせ)に対するログを送信し、ゲームバナーに対するユーザーの反応を分析
ゲームアプリ内で特定の業績(特定のレベル、特定のクエスト、特定のステージへの到達など)達成ログを送信し、イベントに対するユーザーの反応を分析
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ゲーム内でバナーがクライアントに表示された直後にログを送信 | Y | - バナーの照会/クリック数 - イベントの実行ユーザー数・成功ユーザー数 - バナー分析 - イベント分析 - イベントファネル分析 |
ユーザーが表示されたバナーをクリックした直後にログを送信 | Y | |
ゲーム内でユーザーが特定の業績を達成した直後にログを送信 | Y |
- 広告やイベント、お知らせログを送信する際は、バナーが画面に表示されるときと、表示された画面をクリックするときに、それぞれ保存します。
- 追跡したい特定のイベント(業績達成、イベントクリア、クエスト完了、特定のステージへの到達など)がある場合、ContentTypeをTRACKに指定します。
- 以下のように測定したいイベントを完了した後にログが送信されると、ユーザーが到達する割合を分析できます。
- チュートリアル10段階完了
- 特定の業績達成(レベル20達成)
- イベントコンテンツ完了(初決済時に報酬が2倍になるイベント)
Enumerationsコンテンツ
- ContentType
追跡したい対象に対する区分を指定
Name | Value | 説明 |
---|---|---|
AD | 0 | ゲームバナーが広告の場合に指定 |
EVENT | 1 | ゲームバナーがイベントの場合に指定 |
NOTICE | 2 | ゲームバナーがお知らせの場合に指定 |
TRACK | 3 | In-Appのコンテンツ(業績達成、イベントクリア、クエスト完了、特定のステージへの到達など)を追跡する場合に指定 |
- AdsActType
システムとユーザーの行動形式を指定
システムに表示されるときと、ユーザーがクリックするときに分けて指定
Name | Value | 説明 |
---|---|---|
IMPRESSION | 0 | バナーがクライアントに表示される |
CLICK | 1 | 表示されたバナーをクリックしたとき |
ENTRY | 2 | 追跡対象のコンテンツに進入したとき |
COMPLATE | 3 | 追跡対象のコンテンツを完了したとき |
FAIL | 4 | 追跡対象のコンテンツに失敗したとき |
SUCCESS | 5 | 追跡対象のコンテンツに成功したとき |
Paramsデータクラス
- JoinContent
イベントの参加内容を保存
イベントに複数の段階がある場合、一つ一つ段階別にログを保存
Data Member | DataType | 説明 |
---|---|---|
JoinStep | int | 複数(段階別)参加の区分 |
JoinChoice | int | 参加(任意)内容 - 例:選択型イベント、出席イベントなど |
JoinLevel | int | 参加時のレベル |
Methodの説明
// 保存されたList<JoinContent>の値を初期化
public void ClearJoinContents()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
– | void | 返す値なし |
// List<JoinContent>にイベント内容を追加
public void AddJoinContents(int JoinChoice, int JoinLevel, int JoinStep)
Parameter Name | Data Type | 説明 |
---|---|---|
JoinChoice | int | 参加(任意)内容 - 例:選択型イベント、出席イベントなど |
JoinLevel | int | 参加時のレベル |
JoinStep | int | 複数(段階別)参加の区分 |
Return(呼び出し結果) | ||
– | void | 返す値なし |
List<JoinContent> GetJoinContents()
Parameter Name | Data Type | 説明 |
---|---|---|
– | – | – |
Return(呼び出し結果) | ||
JoinContents | List<JoinContent> | リストに保存された参加リストを返す |
// 保存されたList<JoinContent>の値を初期化
public string AdPerformInfos(ContentType PromoteContentType, AdsActType PromoteAdsActType, string PromoteContentName, string PromoteContent, string PromoteJoinKey, IEnumerable<JoinContent> PromoteJoinContent, string ReferrerPageName)
Parameter Name | Data Type | 説明 |
---|---|---|
PromoteContentType | ConnectType | 広告、イベント、お知らせなどのゲームバナーを区分 - 集計のための必須項目 |
PromoteAdsActType | AdsActType | そのバナーがクライアントに表示されたか、ユーザーがクリックしたかを区分 - 集計のための必須項目 |
PromoteContentName | string | ページ名/コンテンツ名 - 集計のための必須項目 |
PromoteContent | string | コンテンツ内容のサマリー |
PromoteJoinKey | string | 報酬アイテムとのマッピングのためのキー値 |
PromoteJoinContent | List | 参加内容 |
ReferrerPageName | string | 前の画面のアドレスまたは名前 |
Return(呼び出し結果) | ||
– | string | インターネットリソースのレスポンスを返す ログ保存後の結果値 |
サンプルソース
StorageCoreManager scManager = StorageCoreManager.GetInstance();
//コンテンツに段階が存在する場合、段階を1つずつ追加
scManager.ClearJoinContents();
scManager.AddJoinContents(1, 10,2);
scManager.AddJoinContents(2, 12, 1);
//ログを送信
AdPerformInfo StorageCoreManager.GetInstance().GetApi().AdPerformInfos(ContentType.EVENT, AdsActType.IMPRESSION, "promotecontentname", "promotecontent","promotejoinkey", scManager.GetJoinContents(), "referrerPageaName");
FriendshipInfos
ゲーム内の友達に関する情報を保存
APIの呼び出し時点
呼び出し時点 | 必須の有無 | 影響指標 |
---|---|---|
ゲーム内でユーザーが他のユーザーに友達関係をリクエストした際にログを送信 | Y | -分析指標なし - ログを検索できる |
ゲーム内で他のユーザーからの友達リクエストを承諾した際にログを送信 | Y | |
ゲーム内で他のユーザーからの友達リクエストを拒否した際にログを送信 | Y | |
ゲーム内で関係づけられた友達関係を削除した際にログを送信 | Y |
- FriendshipInfosログは分析用ログではなく、検索に活用するログです。
Enumerationsコンテンツ
- RequestType
友達情報を保存する際のユーザー行為を指定
Name | Value | 説明 |
---|---|---|
ASK | 0 | 友達リクエスト |
AGREE | 1 | 友達リクエストを承諾 |
DROP | 2 | 友達を削除 |
REJECT | 3 | 友達リクエストを拒否 |
Methodの説明
// ユーザーに対する友達リクエスト、リクエスト拒否、リクエスト承諾、削除
public void FriendshipInfos(RequestType FriendRequestType, string FriendMemberId, string CharID, string FriendNickName, string FriendCharId, int FriendLevel)
Parameter Name | Data Type | 説明 |
---|---|---|
FriendRequestType | RequestType | 友達リクエスト、承諾、削除、リクエスト拒否などのリクエスト形式 |
FriendMemberId | string | 友達のID |
CharID | string | キャラクターID |
FriendNickName | string | 友達のハンドルネーム |
FriendCharId | string | 友達のキャラクターID |
FriendLevel | int | 友達のレベル |
Return(呼び出し結果) | ||
– | void | 返す値なし |
サンプルソース
//レベル1で会員番号が{FriendMemberId}、ハンドルネームが{FriendMemberId}であるユーザーに友達リクエストを送る
string StorageCoreManager.GetInstance().GetApi().FriendshipInfos(RequestType. ASK, "FriendMemberId", "FriendNickName", 1);
//レベル1で会員番号が{FriendMemberId}、ハンドルネームが{FriendMemberId}であるユーザーに対する友達関係に同意
StorageCoreManager.GetInstance().GetApi().FriendshipInfos(RequestType. AGREE, "FriendMemberId", "FriendNickName", 1);