Game Report SDKとMethod
    • PDF

    Game Report SDKとMethod

    • PDF

    Article Summary

    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エンジンエディタにプラグインをインストールして設定する方法は、以下のとおりです。

    1. Unrealエンジンエディタを実行し、プラグインをインストールするプロジェクトのPluginsフォルダを開きます。
    2. ダウンロードしたSDKの「Unreal」フォルダにあるSDKファイルをPluginsフォルダにコピーして圧縮を展開します。
    3. Unrealエンジンエディタを再実行し、セッティング > プラグイン > プロジェクト > Otherを順にクリックします。
    4. StorageCoreSDKPlugin有効化チェックボックスを選択し、Unrealエンジンエディタを再実行します。

    SDKの初期化

    アプリを初めて実行する場合、ブループリントなどを使用してSDKを初期化する必要があります。
    また、StorageCoreSdkに直接アクセスしてC++コードでSDKを初期化することもできます。

    ブループリントでSDKを初期化する方法は以下のとおりです。

    1. ブループリントを実行します。
    2. 以下の表を参考にして基本情報を入力し、初期化します。

    入力すべき基本情報は以下のとおりです。

    NameValue説明
    Server IPStringNCP API URL
    - https://storagecore.gamereport.naverncp.com
    Auth KeyStringAPI使用認証キー
    - Service Center > 当該ゲームの設定ページにある認証キーを入力
    - 集計のための必須項目
    Game VersionStringゲームバージョン
    - 集計のための必須項目
    Channel CodeStringチャネルコード
    - ゲームストアのチャネル情報を入力
    - 集計のための必須項目
    Channel IDStringチャネル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

    プラグインのインストールと設定

    1. Unity 3Dを実行し、プラグインをインストールするプロジェクトを開きます。
    2. UnityメニューでAssets > Import Package > Custom Packageをクリックします。
    3. ダウンロードしたSDKの「Unity」フォルダにあるStorageCoreUnityPlugin.unitypackageファイルを選択し、[Import] ボタンをクリックします。
    4. 最初のScene HierarchyにPlugin/StorageCoreManager.prefabをドラッグ&ドロップします。
    5. StorageCoreManager GameObjectを選択し、Inspector画面で以下の表を参考にして基本使用環境を設定します。

    入力すべき基本情報は以下のとおりです。

    NameValue説明
    Server IPStringNCP API URL
    - https://storagecore.gamereport.naverncp.com
    Auth KeyStringAPI使用認証キー
    - Service Center > 当該ゲームの設定ページにある認証キーを入力
    - 集計のための必須項目
    Game VersionStringゲームバージョン
    - 集計のための必須項目
    Channel CodeStringチャネルコード
    - ゲームストアのチャネル情報を入力
    - 集計のための必須項目
    Channel IDStringチャネルID
    - 会員登録したユーザーのメールアドレスを入力
    • Member ID(アカウントID)とNick Name(ハンドルネーム)は、ゲームのユーザー情報に応じて別途設定する必要があります。
    • StorageCoreSampleフォルダ内のSample.sceneでサンプルプロジェクトを確認できます。
    Name説明
    Sample.sceneGame 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

    プラグインのインストールと設定

    1. ダウンロードしたSDKの「iOS」フォルダにあるStorageCoreSdk.frameworkとstrip-frameworks.shをXcodeプロジェクトファイル(.xcodeproj)があるフォルダへコピーします。
    2. Xcodeプロジェクト設定メニューで、以下の方法でStorageCoreSdk.frameworkとstrip-frameworks.shを設定します。
    • StorageCoreSdk.frameworkのインストール
    1. Xcodeプロジェクト設定メニューでGeneralをクリックし、「Embedded Binaries」領域にある**+**ボタンをクリックします。
    2. Add Otherボタンをクリックし、プロジェクトフォルダにコピーした「StorageCoreSdk.framework」を追加します。
    3. 「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に設定してください。

    1. Xcodeプロトコル設定でBuild Phasesをクリックします。
    2. 左上にある**+**ボタンをクリックし、New Run Script Phaseを選択してRun Scriptを追加します。
    3. 追加されたRun Scriptに、以下の表を参考にしてプロジェクトフォルダへコピーしたstrip-frameworks.shを実行するスクリプトを作成します。

    入力すべき基本情報は以下のとおりです。

    NameValue説明
    Server IPStringNCP API URL
    - https://storagecore.gamereport.naverncp.com
    Auth KeyStringAPI使用認証キー
    - Service Center > 当該ゲームの設定ページにある認証キーを入力
    - 集計のための必須項目
    Game VersionStringゲームバージョン
    - 集計のための必須項目
    Channel CodeStringチャネルコード
    - ゲームストアのチャネル情報を入力
    - 集計のための必須項目
    Channel IDStringチャネル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の開発環境を構成してください。

    プラグインのインストールと設定

    1. WrapperソースコードのコピーのためにダウンロードしたSDKの「Cocos2d-x」フォルダにある「StorageCoreSdk.zip」圧縮ファイルを展開し、StorageCoreSdkフォルダをCocos2d-xプロジェクトファイルフォルダ/Classesへコピーします。
    2. Cocos2d-xプロジェクトフォルダ/Classes/StorageCoreSdkフォルダをドラッグしてXcodeまたはVisual Studioプロジェクトに追加し、以下の表を参考にして基本使用環境を設定します。

    入力すべき基本情報は以下のとおりです。

    NameValue説明
    Server IPStringNCP API URL
    - https://storagecore.gamereport.naverncp.com
    Auth KeyStringAPI使用認証キー
    - Service Center > 当該ゲームの設定ページにある認証キーを入力
    - 集計のための必須項目
    Game VersionStringゲームバージョン
    - 集計のための必須項目
    Channel CodeStringチャネルコード
    - ゲームストアのチャネル情報を入力
    - 集計のための必須項目
    Channel IDStringチャネル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

    プラグインのインストールと設定

    1. ダウンロードしたSDKの「Android」フォルダにあるStorageCoreSdk.jarとgson-2.8.4.jarをAndroid Studioプロジェクトフォルダ/app/libsへコピーします。

    2. 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'
       }
      
    3. AndroidManifest.xmlに対し、以下の表を参考にして基本使用環境を設定します。

      • パーミッションの追加
      <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
      <uses-permission android:name="android.permission.INTERNET" />
      

    入力すべき基本情報は以下のとおりです。

    NameValue説明
    Server IPStringNCP API URL
    - https://storagecore.gamereport.naverncp.com
    Auth KeyStringAPI使用認証キー
    - Service Center > 当該ゲームの設定ページにある認証キーを入力
    - 集計のための必須項目
    Game VersionStringゲームバージョン
    - 集計のための必須項目
    Channel CodeStringチャネルコード
    - ゲームストアのチャネル情報を入力
    - 集計のための必須項目
    Channel IDStringチャネル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説明
    UrlRest API URL情報
    AuthKeyRest 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("サノス");
      
    • 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)した敵
      MethodReturn説明
      ClearPartnersInfovoidパートナー情報を保存するためにリストを初期化
      AddPartnersInfovoidパートナー情報を追加
      GetPartnersInfoList<PartnersInfo>パートナー情報を照会
      ClearWearItemInfosvoidWearItem情報を保存するためにリストを初期化
      AddWearItemInfosvoidWearItemデータを追加
      GetWearItemInfosList<WearItemInfo>WearItemデータを照会
      ClearSkillInfosvoidスキル情報を保存するためにスキルリストを初期化
      AddSkillInfosvoidキャラクターが使用するスキルをスキルリストに追加
      GetSkillInfosList<SkillInfo>保存されたスキルリストを照会
      ClearItemInfosvoidアイテム情報を保存するためにリストを初期化
      AddItemInfosvoidアイテム情報を追加
      GetItemInfosList<ItemInfo>保存されたアイテムリストを照会
      ClearEnemyInfosvoidコンテンツで対戦した相手情報を保存するためにリストを初期化
      AddEnemyInfosvoidコンテンツで対戦した相手情報を追加
      GetEnemyInfosList<EnemyInfo>AddEnemyInfosを通じて保存したEnemyInfo情報を照会
    • AdPerformInfos

      • ゲーム実行時に、ゲームアプリでのバナー表示情報とバナークリックログを送信してユーザーの反応を分析
      • ユーザーが参加した様々なキャンペーン(イベント)ログを送信してゲームユーザーの参加率を分析
      MethodReturn説明
      ClearJoinContentsvoidパートナー情報を保存するためにリストを初期化
      AddJoinContentsvoidパートナー情報を追加
    • FileDownloadInfos

      • ゲームのアップデート中にダウンロードまたはインストールするファイルログを送信し、ダウンロードやインストール中に発生する問題を分析
    • InstallInfos

      • ゲームの初実行とゲームアカウント作成ログを送信し、サービス中のゲームを分析
      注意事項

      InstallInfosログはゲームログ分析の基準となるログで、送信しない場合、様々な分析に制約が発生することがあります。

    • FriendshipInfos

      • ゲームで発生する友達関係に対するログを送信し、ログを利用してゲーム内の友達関係を検索
      参考情報

      FriendshipInfosログは、分析されないログです。必要な場合、ログ検索機能を利用して確認できます。

    • ItemChangeInfos

      • ユーザーが様々なゲームアイテムを獲得・消費した直後にログを送信し、アイテムのバランス、ゲーム企画に対するユーザーの反応を分析

      • ゲーム内で使用する有料、無料アイテムをいずれも分析

      • 含まれている情報

        • アイテム数量変化の目的
        • それぞれのアイテム数量変化の経路
        • 一度の行為で獲得・消費した複数のアイテム
      • 様々なItemChangeInfos情報の累積転送のためにオブジェクトを設定

        MethodReturn説明
        ClearItemChangeInfoListvoidアイテム変更履歴を保存するためのリスト初期化
        AddItemChangeInfoListvoidアイテム変更履歴の追加
        GetItemChangeInfoListList<ItemChangeInfo>AddItemChangeInfoListを通じて保存したアイテム変更リストを返す
      • ItemChangeInfosに含まれるItemsInfoオブジェクト情報を設定

        MethodReturn説明
        ClearItemChangeInfosvoid保存したアイテム数量変化(獲得・消費)情報を初期化
        AddItemChangeInfosvoidアイテムの獲得・消費時の、そのアイテムの詳細情報を追加
        GetItemChangeInfosList<ItemsInfo>AddItemChangeInfosを通じて追加したアイテム変化(獲得・消費)情報を返す
    • VMoneyChangeInfos

      • ゲーム内で使用されるすべての財貨数量変化(獲得・消費)ログを送信し、ゲーム財貨のフローを分析
      参考情報

      ゲーム内で、財貨だけでなく財貨に類似した形を持つゲームリソースも分析できます。

      • 様々なVMoneyChangeInfos情報の累積転送のためにオブジェクトを設定

        MethodReturn説明
        ClearVMoneyChangeInfoListvoid保存した財貨数量変化(獲得・消費)情報を初期化
        AddVMoneyChangeInfoListvoid財貨数量変化(獲得・消費)情報を追加
        GetVMoneyChangeInfoListList<VMoneyChangeInfo>AddVMoneyChangeInfoListを通じて追加した財貨変更(獲得・消費)履歴情報を返す
    • ResourceChangeInfos

      • ゲーム内で使用されるアイテムの特性変化ログを送信し、ゲームコンテンツのバランス、アイテムのバランス、コンテンツとアイテムの関連、ゲーム企画に対するユーザーの反応を分析
    • BuyInfos

      • 現金/カード/クーポン/商品券購入などの購入ログを送信して売上を分析
      • 売上分析により、売上ユーザーを分析、アイテムを分析、アイテム間の関係を分析
    注意事項

    String項目は、100字以内で指定する必要があります。

    SDK Methodの詳細

    InstallInfos

    ゲームの初実行とゲームアカウント作成ログを送信し、サービス中のゲームのインストールやアカウント作成状況を分析

    APIの呼び出し時点

    呼び出し時点必須の有無影響指標
    ゲームのインストール後にゲームアプリを初めて実行した直後にログを送信
  • InstallTypeはINSTALLで送信
  • Y- RU
    - NRU
    - Retention (再訪問ユーザー)
    - Revisit (再訪問)
    - リアルタイム流入
    - 新規会員状況
    - 流入関連指標
    - リセマラ関連指標
    - インストール関連指標
    最初にアカウントを作成した直後にログを送信
  • InstallTypeはACCOUNTで送信
  • Y- RU
    - NRU
    - Retention (再訪問ユーザー)
    - Revisit (再訪問)
    - リアルタイム流入
    - 新規会員状況
    - 流入関連指標
    - リセマラ関連指標
    - インストール関連指標
    注意事項

    分析に必要な基本情報であるため、ほとんどの指標を確認するには、ログを送信する必要があります。

    参考情報
    • アカウント作成と同時にキャラクターが作成される構造の場合、キャラクター作成ログはItemChangeInfosの ChangeType.INITで別途保存する必要があります。
    • ゲームアプリの初回実行時にエラーが発生した場合は、エラーコードまたはエラーメッセージを一緒に送信します。

    Enumerationsコンテンツ

    • InstallType
      ゲームアプリのインストール関連のログを送信する際に、インストールやアカウント作成に対する区分を指定
    NameValue説明
    INSTALL0インストール
    - Apple Store、Google Play Storeでゲームをインストールした後、ゲームの初実行(初回実行)時点で設定します。
    ACCOUNT1ゲーム実行後のアカウント作成(会員登録とアカウント作成)時点で設定します。
    参考情報
    • キャラクター作成ログは、ItemChangeInfosのChangeType.INITで別途保存する必要があります。
    • 1つのアカウントに1つのキャラクターというゲームの場合、アカウントの作成完了時にキャラクターの作成ログも一緒に残すと、正確な指標測定が可能になります。
    • アカウント作成完了時にConnectInfosのログインログも一緒に残すと、正確な指標測定が可能になります。
    • ResultType
      ゲームインストール(ゲームリソースファイルパッチ)の成否を指定
    NameValue説明
    NON0ゲームアプリのインストール(ゲームリソースファイルパッチ)の成否なし
    SUCCESS1ゲームアプリのインストール(ゲームリソースファイルパッチ)に成功
    FAIL2ゲームアプリのインストール(ゲームリソースファイルパッチ)に失敗

    Methodの説明

    string InstallInfos(InstallType AppInstallType, string ReferrerURL, string APPVersion, StateType DeviceInstallStateType, ResultType DeviceInstallResult, string InstallErrorMessage, string PushToken)
    
    Parameter NameData Type説明
    AppInstallTypeInstallTypeアプリのインストール・アンインストールを区分・集計するための必須項目
    ReferrerURLstringストアに来る前に、どのサイトに滞在したのか確認する情報を集計するための必須項目
    APPVersionstringゲームのバージョン情報を集計するための必須項目
    DeviceInstallStateTypeStateTypeゲームアプリのインストール(ゲームリソースファイルパッチ)プロセス過程に関する情報
    DeviceInstallResultResultTypeゲームアプリのインストール(ゲームリソースファイルパッチ)結果に関する情報
    InstallErrorMessagestringゲームアプリのインストール(初回実行)時に発生するエラーメッセージ情報
    PushTokenstringプッシュ送信のための個人プッシュトークン情報
    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
      ユーザーがゲームのリソースファイルを受け取る際の転送方式を指定
    NameValue説明
    DATA0データ通信によるダウンロード
    WIFI1Wi-Fiによるダウンロード

    Methodの説明

    string FileDownloadInfos(string FileName, int FileSeq, string FileVersion, string ErrorMessage)
    
    Parameter NameData Type説明
    FileNamestringダウンロードするファイル名
    FileSeqintファイルダウンロードの順序
    FileVersionstringファイルバージョン
    ErrorMessagestringエラーメッセージ
    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
      ユーザーが有料アイテムを購入または獲得するゲームリソースの種類を指定
    NameValue説明
    CHARGE0現金キャッシュをチャージ
    BONUS1ボーナスキャッシュをチャージ
    (例:イベント当選の報酬として支給されるキャッシュやクーポンによるチャージ)
    CASHPRESENT2他のユーザーにキャッシュをプレゼント
    PURCHARSE3アイテムを購入
    ITEMPRESENT4他のユーザーにアイテムをプレゼント
    • CurrencyType
      有料アイテム購入時の決済金額の通貨種類を指定
    NameValue説明
    KRW0韓国ウォン
    CNY1中国人民元
    HKD2香港ドル
    TWD3台湾ニュードル
    EUR4ユーロ
    USD5アメリカ・ドル
    GBP6イギリス・ポンド
    AUD7オーストラリア・ドル
    JPY8日本円
    RUB9ロシア・ルーブル
    AED10エミラティ・ディルハム
    AFN11アフガニスタン・アフガニ
    ALL12アルバニア・レク
    AMD13アルメニア・ドラム
    ANG14オランダ領アンティル・ギルダー
    AOA15アンゴラ・クワンザ
    ARS16アルゼンチン・ペソ
    AWG17アルバ・フロリン
    AZN18アゼルバイジャン・マナト
    BAM19ボスニア・ヘルツェゴビナ・兌換マルク
    BBD20バルバドス・ドル
    BDT21バングラデシュ・タカ
    BGN22ブルガリア・レフ
    BHD23バーレーン・ディナール
    BIF24ブルンジ・フラン
    BMD25バミューダ・ドル
    BND26ブルネイ・ドル
    BOB27ボリビア・ボリビアーノ
    BRL28ブラジル・レアル
    BSD29バハマ・ドル
    BTC30Bitcoin
    BTN31ブータン・ニュルタム
    BWP32ボツワナ・プラ
    BYN33新ベラルーシ・ルーブル
    BYR34ベラルーシ・ルーブル
    BZD35ベリーズ・ドル
    CAD36カナダ・ドル
    CDF37コンゴ・フラン
    CHF38スイス・フラン
    CLF39チリ・UF(Unidad de Fomento)
    CLP40チリ・ペソ
    CNH41Chinese Yuan (Offshore)
    COP42コロンビア・ペソ
    CRC43コスタリカ・コロン
    CUC44キューバ・兌換ペソ
    CUP45キューバ・ペソ
    CVE46カーボベルデ・エスクード
    CZK47チェコ・コルナ
    DJF48ジブチ・フラン
    DKK49デンマーク・クローネ
    DOP50ドミニカ共和国・ペソ
    DZD51アルジェリア・ディナール
    EEK52エストニア・クローン
    EGP53エジプト・ポンド
    ERN54エリトリア・ナクファ
    ETB55エチオピア・ブル
    FJD56フィジー・ドル
    FKP57フォークランド諸島・ポンド
    GEL58ジョージア・ラリ
    GGP59Guernsey Pound
    GHS60ガーナ・セディ
    GIP61ジブラルタル・ポンド
    GMD62ガンビア・ダラシ
    GNF63ギニア・フラン
    GTQ64グアテマラ・ケツァル
    GYD65ガイアナ・ドル
    HNL66ホンジュラス・レンピラ
    HRK67クロアチア・クーナ
    HTG68ハイチ・グールド
    HUF69ハンガリー・フォリント
    IDR70インドネシア・ルピア
    ILS71イスラエル・シェケル
    IMP72Manx pound
    INR73インド・ルピー
    IQD74イラク・ディナール
    IRR75イラン・リアル
    ISK76アイスランド・クローナ
    JEP77Jersey Pound
    JMD78ジャマイカ・ドル
    JOD79ヨルダン・ディナール
    KES80ケニア・シリング
    KGS81キルギス・ソム
    KHR82カンボジア・リエル
    KMF83コモロ・フラン
    KPW84朝鮮民主主義人民共和国・ウォン
    KWD85クウェート・ディナール
    KYD86ケイマン諸島・ドル
    KZT87カザフスタン・テンゲ
    LAK88ラオス・キープ
    LBP89リビア・ポンド
    LKR90スリランカ・ルピー
    LRD91リベリア・ドル
    LSL92レソト・ロチ
    LYD93リビア・ディナール
    MAD94モロッコ・ディルハム
    MDL95モルドバ・レウ
    MGA96マダガスカル・アリアリ
    MKD97マケドニア・ディナール
    MMK98ミャンマー・チャット
    MNT99モンゴル・トゥグルグ
    MOP100マカオ・パタカ
    MRO101モーリタニア・ウギア
    MRU102Mauritanian Ouguiya
    MTL103Maltese Lira
    MUR104モーリシャス・ルピー
    MVR105モルディブ・ルフィア
    MWK106マラウイ・クワチャ
    MXN107メキシコ・ペソ
    MYR108マレーシア・リンギット
    MZN109モザンビーク・メティカル
    NAD110ナミビア・ドル
    NGN111ナイジェリア・ナイラ
    NIO112ニカラグア・コルドバ
    NOK113ノルウェー・クローネ
    NPR114ネパール・ルピー
    NZD115ニュージーランド・ドル
    OMR116オマーン・リアル
    PAB117パナマ・バルボア
    PEN118ペルー・ヌエボ・ソル
    PGK119パプアニューギニア・キナ
    PHP120フィリピン・ペソ
    PKR121パキスタン・ルピー
    PLN122ポーランド・ズウォティ
    PYG123パラグアイ・グアラニー
    QAR124カタール・リヤル
    RON125ルーマニア・レウ
    RSD126セルビア・ディナール
    RWF127ルワンダ・フラン
    SAR128サウジアラビア・リヤル
    SBD129ソロモン諸島・ドル
    SCR130セーシェル・ルピー
    SDG131スーダン・ポンド
    SEK132スウェーデン・クローナ
    SGD133シンガポール・ドル
    SHP134セントヘレナ・ポンド
    SLL135シエラレオネ・レオン
    SOS136ソマリア・シリング
    SRD137スリナム・ドル
    SSP138南スーダン・ポンド
    STD139サントメ・ドブラ
    STN140Sao Tome and Principe Dobra
    SVC141エルサルバドル・コロン
    SYP142シリア・ポンド
    SZL143スワジランド・リランゲニ
    THB144タイ・バーツ
    TJS145タジキスタン・ソモニ
    TMT146トルクメニスタン・マナト
    TND147チュニジア・ディナール
    TOP148トンガ・パアンガ
    TRY149トルコ・リラ
    TTD150トリニダード・トバゴ・ドル
    TZS151タンザニア・シリング
    UAH152ウクライナ・フリヴニャ
    UGX153ウガンダ・シリング
    UYU154ウルグアイ・ペソ
    UZS155ウズベキスタン・スム
    VEF156ボリバル・フエルテ
    VND157ベトナム・ドン
    VUV158バヌアツ・バツ
    WST159サモア・タラ
    XAF160CFAフラン(BEAC)
    XAG161銀(1トロイオンス)
    XAU162金(1トロイオンス)
    XCD163東カリブ・ドル
    XDR164特別引出権
    XOF165CFAフラン(BCEAO)
    XPD166パラジウム(1トロイオンス)
    XPF167CFPフラン
    XPT168白金(1トロイオンス)
    YER169イエメン・リアル
    ZAR170南アフリカ・ランド
    ZMK171ザンビア・クワチャ
    ZMW172ザンビア・クワチャ
    • PayToolCode
      有料アイテム購入時の決済手段を指定
    NameValue説明
    CARD0クレジットカード決済
    MOBILE1携帯電話決済
    SENDCASH2銀行振込(通帳なし)またはPAY決済
    CASH3マイレージまたは媒体社のキャッシュ
    GIFTCARD4商品券決済
    • ResultType
      有料アイテムの購入結果を指定
    NameValue説明
    TRY0決済の実行
    SUCCESS1決済完了で成功
    FAIL2決済完了だが失敗

    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 NameData Type説明
    OrderNOstringストアから受け取った注文番号
    問題発生時にストアの決済情報と照合するKey
    GoodsCodestringストアが認識する商品コード
    PayPurchaseTypePurchaseType獲得するゲームリソースの種類
    ItemCodestringゲーム内部の商品コード・イベント参加キーの値
    必須 – 集計のための必須項目
    ItemNamestringゲーム商品の名前
    必須 – 集計のための必須項目
    Amountint購入数量
    必須 – 集計のための必須項目
    CurrencyCodeCurrencyType決済した金額の通貨の種類
    必須 – 集計のための必須項目
    TotalPricefloat総購入金額(小数点以下を表示可能)
    必須 – 集計のための必須項目
    PayToolCodePayToolCodeType決済手段
    SdateDateTime期間限定アイテム・ボーナスキャッシュの場合、開始時間
    EdateDateTime期間限定アイテム・ボーナスキャッシュの場合、終了時間
    ReceiveMemberIDStringゲームで発行されるアカウントID
    BalanceInt購入イベント完了後のキャッシュ残高または数量
    PayResultTypeResultType結果値の区分
    必須 – 集計のための必須項目
    PayResultMessagestring決済メッセージ
    成功・失敗メッセージまたはコード
    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
      ゲーム内でユーザーが実行するコンテンツの種類を指定
    NameValue説明
    STAGE0コンテンツが一般ステージの場合に指定
    GUILD1コンテンツがギルド戦の場合に指定
    FRIENDSHIP2コンテンツが親善戦の場合に指定
    MISSION3コンテンツがゲーム内ミッションの場合に指定
    PVE4コンテンツがPVE(レイドまたはボス戦)の場合に指定
    PVP5コンテンツがPVPの場合に指定
    PVMP6コンテンツが乱闘または複数のユーザーを相手にする場合に指定
    QUEST7コンテンツがクエストの場合に指定
    SIEGE8コンテンツが攻城戦の場合に指定
    EVENTSTAGE9コンテンツがイベントステージの場合に指定
    • AutoType
      ユーザーがコンテンツを実行する際に使用したゲーム実行方法を指定
    NameValue説明
    AUTO0ステージを自動で実行
    MANUAL1ステージを手動で実行
    • ResultType
      ユーザーがゲームコンテンツを実行した結果を指定
    NameValue説明
    NON0ステージの結果を成功または失敗と判断できない場合に指定
    SUCCESS1成功の場合に指定
    FAIL2失敗の場合に指定
    • PartnerType
      コンテンツを一緒に実行したパートナーまたはゲームリソース(友達、ペット、ギルド員)の種類を指定
    NameValue説明
    MYSELF0自分が保有するキャラクターの場合に指定
    MAINMYSELF1自分のメインキャラクターの場合に指定
    FRIEND2パートナーが友達の場合に指定
    GUILD3パートナーがギルド員の場合に指定
    PET4パートナーがペットの場合に指定
    RANDOM5パートナーがランダムに指定された場合に指定
    ETC6その他

    Params Data Class

    • PartnersInfo
      ユーザーがゲームコンテンツ実行時に一緒に実行した(サポートした)ゲームパートナー(友達(キャラクター)/ギルド員/ペット/カード)の詳細情報を保存
    Data MemberDataType説明
    PartnerTypePartnerTypeパートナーの種類
    MemberIDstring会員番号(シリアル番号)
    PartnerIDstringパートナーキャラクター(ギルド員/ペット/カード)のシリアル番号
    PartnerCharUQCodestringパートナーキャラクター(ギルド員/ペット/カード)の固有番号
    PartnerLevelintパートナーキャラクター(ギルド員/ペット/カード)のレベル
    PartnerHPintコンテンツ完了時点のパートナーキャラクター(ギルド員/ペット/カード)のHP
    PartnerMPintコンテンツ完了時点のパートナーキャラクター(ギルド員/ペット/カード)のMP
    • WearItemInfo
      ユーザーがゲームコンテンツ実行時に着用(装着)したアイテム情報を保存
      着用または装着したアイテム(武器、装身具、衣類など)
    Data MemberDataType説明
    PartnerIDstringアイテムを使用したパートナーのID
    ItemCodestring着用したアイテムのコード
    ItemNamestring着用したアイテムの名前
    ItemLevelint着用したアイテムのレベル(0を入れる)
    ItemGradestring着用したアイテムの等級
    ItemDeckCodestring着用したアイテムに適用されたデッキコード
    ItemDeckNamestring着用したアイテムに適用されたデッキ名
    • SkillInfo
      ユーザーがゲームコンテンツ実行時に使用したキャラクタースキル情報を、使用したスキル順に保存
    Data MemberDataType説明
    PartnerIDstringスキルを使用したパートナーのID
    SkillNamestring使用したスキルの名前
    SkillDamageint使用したスキルがモンスターまたは相手キャラクターに与えたダメージ
    SkillTypestring使用したスキルの攻撃形式(物理、魔法、治癒)
    SkillDurationint使用したスキルの持続時間
    • ItemInfo
      ゲーム内でコンテンツ実行時に使用したアイテム情報を、使用したアイテム順に保存
    Data MemberDataType説明
    PartnerIDstringアイテムを使用したパートナーのID
    ItemNamestring使用したアイテム名
    ItemAmountint使用したアイテム数
    ItemDurationint使用したアイテムの持続時間
    • EnemyInfo
      ゲーム内でコンテンツ実行中に退治したゲームリソース(モンスター、ペット、PVPの相手キャラクター、ボスモンスター)情報を保存
    Data MemberDataType説明
    PartnerIDstring敵を退治したパートナーのID
    EnemyIDstring退治したキャラクターのID(PVP、PVMP)またはモンスターのID
    EnemyLevelint退治したキャラクター、ユーザーレベルのINT
    レベルがない場合は0
    EnemyAttackint退治したキャラクター / ユーザー攻撃力のINT
    攻撃力がない場合は0
    EnemyDefenseint退治したモンスター / キャラクターの防御力
    防御力がない場合は0
    EnemyStaminaint退治したモンスター / キャラクターの体力
    体力がない場合は0

    Methodの説明

    // PartnersInfoの内容を初期化
    public void ClearPartnersInfo()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    void返す値なし
    // List<PartnersInfo>にパートナー情報を1つずつ追加
    public void AddPartnersInfo(string MemberID, string PartnerCharUQCode, int PartnerHP, string PartnerID, int PartnerLevel, int PartnerMP, PartnerType PartnerType)
    
    Parameter NameData Type説明
    MemberIDString会員番号
    PartnerCharUQCodeString友達(キャラクター)/ギルド員/ペット/カードを使用するキャラクターの固有番号
    PartnerHPint友達(キャラクター)/ギルド員/ペット/カードのHP
    PartnerIDString友達(キャラクター)/ギルド員/ペット/カードのID
    PartnerLevelint友達(キャラクター)/ギルド員/ペット/カードのレベル
    PartnerMPint友達(キャラクター)/ギルド員/ペット/カードのMP
    StagePartnersInfoPartnerTypeパートナーの種類
    集計のための必須項目
    Return(呼び出し結果)
    void返す値なし
    // AddPartnersInfoを通じて追加した装着パートナー情報履歴を照会
    public List<PartnersInfo> GetPartnersInfo()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    PartnersInfosList<PartnersInfo>リストに保存されたパートナー情報
    // WearItemInfoの内容を初期化
    public void ClearWearItemInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    void返す値なし
    // List<WearItemInfo>に装着アイテムを1つずつ追加
    public void AddWearItemInfos(string PartnerID, string ItemCode, string ItemDeckCode, string ItemDeckName, string ItemGrade, int ItemLevel, string ItemName)
    
    Parameter NameData Type説明
    PartnerIDstringアイテムを使用したパートナーのID
    ItemCodestring着用したアイテムのコード
    ItemDeckCodestring着用したアイテムに適用されたデッキコード
    ItemDeckNamestring着用したアイテムに適用されたデッキ名
    ItemGradestring着用したアイテムの等級
    ItemLevelint着用したアイテムのレベル(0を入れる)
    ItemNamestring着用したアイテムの名前
    Return(呼び出し結果)
    void返す値なし
    // AddWearItemInfosを通じて追加した装着アイテム履歴を照会
    public List<WearItemInfo> GetWearItemInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    List<WearItemInfo>リストに保存された着用装備に関する情報
    // SkillInfosの内容を初期化
    public void ClearSkillInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    void返す値なし
    // List<SkillInfo>に、コンテンツ実行時に使用したスキルを1つずつ追加
    public void AddSkillInfos(string PartnerID, int SkillDamage, int SkillDuration, string SkillName, string SkillType)
    
    Parameter NameData Type説明
    PartnerIDstringスキルを使用したパートナーのID
    SkillDamageint使用したスキルがモンスターまたは相手キャラクターに与えたダメージ
    SkillDurationint使用したスキルの持続時間
    SkillNamestring使用したスキルの名前
    SkillTypestring使用したスキルの攻撃形式(物理、魔法、治癒)
    Return(呼び出し結果)
    void返す値なし
    // AddSkillInfosを通じて追加した使用スキル履歴を照会
    public List<SkillInfo> GetSkillInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    SkillInfosList<SkillInfo>リストに保存された、使用したスキル情報
    // ItemInfoの内容を初期化
    public void ClearItemInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    void返す値なし
    // List<ItemInfo>に、コンテンツ実行時に使用したアイテムを1つずつ追加
    public void AddItemInfos(string PartnerID, int ItemAmount, int ItemDuration, string ItemName)
    
    Parameter NameData Type説明
    PartnerIDstringアイテムを使用したパートナーのID
    ItemAmountint使用したアイテム数
    ItemDurationint使用したアイテムの持続時間
    ItemNamestring使用したアイテム名
    Return(呼び出し結果)
    -void返す値なし
    // AddItemInfosを通じて追加した使用スキル履歴を照会
    public List<ItemInfo> GetItemInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    List<ItemInfo>リストに保存された使用アイテム情報
    // List<EnemyInfo>の内容を初期化
    public void ClearEnemyInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    void返す値なし
    // List<EnemyInfo>にコンテンツ実行中に退治したゲームリソース(モンスター、ペット、PVPの相手キャラクター、ボスモンスター)を1つずつ追加
    public void AddEnemyInfos(string PartnerID, int EnemyAttack,int EnemyDefense,string EnemyID,int EnemyLevel,int EnemyStamina)
    
    Parameter NameData Type説明
    PartnerIDstring敵を退治したパートナーのID
    EnemyAttackint退治したキャラクター / ユーザー攻撃力のINT
    攻撃力がない場合は0
    EnemyDefenseint退治したモンスター / キャラクターの防御力
    防御力がない場合は0
    EnemyIDstring退治したキャラクターのID(PVP、PVMP)またはモンスターのID
    EnemyLevelint退治したキャラクター、ユーザーレベルのINT
    レベルがない場合は0
    EnemyStaminaint退治したモンスター / キャラクターの体力
    体力がない場合は0
    Return(呼び出し結果)
    void返す値なし
    // AddEnemyInfosを通じて保存した対戦相手情報を返す
    public List<EnemyInfo> GetEnemyInfos()
    
    Parameter NameData 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 NameData Type説明
    StageTypeStageTypeアクセス基準を設定(ゲームまたはコンテンツ)
    - 集計のための必須項目
    StageNameString実行したコンテンツ名
    - StageNameは、難易度を含むステージ固有の名前をロード
    - StageTypeやStageGradeが異なる場合でも、コンテンツ名は必ず一意性のある名前を指定しないと正確な分析はできない
    - 例:ステージ名、難易度、Stage1_2、HardStage2_4
    - 集計のための必須項目
    IsAutoAutoTypeゲームコンテンツの実行方法
    StageGradeStringゲームコンテンツ開始前の予想等級
    - ステージ開始前にゲームが判断するステージの等級
    - 集計のための必須項目
    StageResultGradeStringゲームコンテンツ完了後の結果等級
    - ステージ成功時は成功等級段階を入力
    - 例:StageResult(SUCCESS) – 「星3つ等級」

    - ステージ失敗時は失敗理由を入力
    - 例:StageResult(FAIL) – 「ポーション不足で死亡」

    - テキストベースでグループ化されるため、名称の標準化が必要
    - 集計のための必須項目
    StagePlayTimeintゲーム内コンテンツ実行時間(単位:秒)
    - 集計のための必須項目
    StageResultResultTypeゲームコンテンツ完了後の結果
    -集計のための必須項目
    StagePartnersInfoList<partnersinfo>コンテンツ実行時に一緒に実行した(サポートした)ゲームパートナー情報
    RemainHPintゲームコンテンツ完了後の残存HP
    RemainMPintゲームコンテンツ完了後の残存MP
    WearItemInfoList<WearItemInfo>ゲームコンテンツ時に着用(装着)したアイテム情報
    UseSkillInfoList<SkillInfo>ゲームコンテンツ実行時に使用したキャラクタースキル情報
    UseItemInfoList<ItemInfo>ゲームコンテンツ実行時に使用したアイテム情報
    EnemyKillintゲームコンテンツ実行中に退治したゲームリソース(モンスター、ペット、PVPの相手キャラクター、ボスモンスター)の数
    EnemyKillInfoList<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
      変化の主体を指定
      例:ペットの強化、武器の変化、武器ソケットの変化、衣類の強化、ドローンの強化
    NameValue説明
    ACCOUNT0アカウントの変化
    CHAR1キャラクターの変化
    CARD2カードの変化
    ITEM3アイテムの変化
    PET4ペットの変化
    • ChangeStateType
      アカウント、キャラクター、カード、ゲーム主体における定性的変化を区分して指定
    NameValue説明
    GRADE0等級アップ
    LEVEL1レベルアップ
    COMPOSE2合成
    TRANSCENDENCE3超越
    ENHANCING4特性強化
    DISASSEMBLE5分解
    OPTION6オプション変更
    NUMBERS7数値変更
    SKILL8スキル変更
    ETC9その他の変更
    INSTALL10装備装着
    • ResultType
      アカウント、キャラクター、カード、ゲーム主体における定性的変化作業の成否を指定
    NameValue説明
    TRY0実行(必須ではない)
    SUCCESS1成功
    FAIL2失敗
    NON3成功・失敗がない場合は「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 NameData Type説明
    ChangeObjectTypeObjectTypeアカウント、キャラクター、ペットなど変化したリソースオブジェクトを区分
    - 集計のための必須項目
    UniqueCodestring変化したリソースの固有コード
    - 集計のための必須項目
    SeqCodelong変化したリソースのシリアル番号
    Namestring変化したリソース名
    - 集計のための必須項目
    TargetUniqueCodestring装備またはスキルなどを着用する対象キャラクターやアイテムの固有番号
    TargetSeqCodestring装備またはスキルなどを着用する対象キャラクターやアイテムのシリアル番号
    TargetNamestring装備またはスキルなどを着用する対象キャラクターやアイテムの名前
    ResourceChangeStateTypeChangeActTypeオプション変更、レベルアップ、強化など変化したリソースの変化形式を区分
    - 集計のための必須項目
    BeforeLevelstring変化前の等級、レベルまたはオプションの値は数値化が必要
    - 例:A、B、C、D、E/1、2、3、4、5、6、一般、高度、希少、英雄、古代、伝説、不滅/ホワイト、グリーン、ブルー、パープル、イエロー、オレンジ、レッド
    AfterLevelstring変化後の等級、レベルまたはオプションの値は数値化が必要
    - 例:A、B、C、D、E/1、2、3、4、5、6、一般、高度、希少、英雄、古代、伝説、不滅/ホワイト、グリーン、ブルー、パープル、イエロー、オレンジ、レッド
    BeforeLevelDescstring変化前の等級、レベルまたはオプションの詳細な値を記述
    AfterLevelDescstring変化後の等級、レベルまたはオプションの詳細な値を記述
    ChangeResultTypeResultTypeゲームリソースの変化結果
    - 集計のための必須項目
    MoneyCodestringゲームマネーコード
    MoneyNamestringゲームマネー名
    ゲーム内で一貫している必要がある
    MoneyAmountint獲得費用
    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
      ゲーム財貨の獲得・消費経路を指定
    NameValue説明
    MoneyChangeType.CASH0現金でゲームマネーを購入
    MoneyChangeType.VRCASH1ゲームマネーによる購入
    MoneyChangeType.COUPON2クーポンによる獲得
    MoneyChangeType.EVENTREWARD3出席報酬などイベントによる獲得
    MoneyChangeType.QUESTREWARD4クエスト報酬による獲得
    MoneyChangeType.MISSIONREWARD5ミッション報酬による獲得
    MoneyChangeType.NORMALREWARD6一般報酬による獲得
    MoneyChangeType.POST7郵便により獲得
    MoneyChangeType.GUILDSUPPORT8ギルドサポートによる獲得・消費(ギルドをサポートして個人がサポートを受ける)
    MoneyChangeType.GUILDCREATE9
    MoneyChangeType.GACHA10ガチャアイテムによる獲得
    MoneyChangeType.BUY11ショップでの購入、販売、再購入(ゲームショップ)
    MoneyChangeType.COLLECT12トグルによる獲得(モンスター狩りの後にドロップされたアイテムを直接拾ったり、PKで敵キャラクターからドロップされたアイテムを拾ったりする場合など)
    MoneyChangeType.SNSSUPPORT13SNSによる獲得・消費
    MoneyChangeType.ITEMENCHABT14アイテム強化による消費
    MoneyChangeType.CHARNCHABT15キャラクター強化による消費
    MoneyChangeType.DISMANTLE16アイテムやキャラクターの分解による獲得・消費
    MoneyChangeType.MAKE17アイテムやキャラクターの作成・合成による獲得・消費
    MoneyChangeType.STAGEACTION18ステージ実行による獲得・消費
    MoneyChangeType.PVPACTION191対1モードによる獲得・消費
    MoneyChangeType.PVEACTION20レイドなどによる獲得・消費
    MoneyChangeType.PVMPACTION211対多モード(複数のユーザーとの対戦)
    MoneyChangeType.GUILDACTION22ギルド戦で獲得・消費
    MoneyChangeType.EVENTSTAGEACTION23イベントステージでの消費
    MoneyChangeType.UPGRADE24アイテム・キャラクターなどゲームリソースのアップグレイドや属性の変更による獲得・消費
    MoneyChangeType.DELETE25アイテムの破壊・削除(直接破壊)
    MoneyChangeType.ITEMDROP26アイテムドロップによる消費・獲得(直接、PK、モンスターによる死亡など)
    MoneyChangeType.DEAL27キャラクター間の取引、委託取引所、仲介所、個人ショップでの獲得・消費
    MoneyChangeType.REPAIR28修理費用
    MoneyChangeType.EXTEND29インベントリや倉庫の拡張費用
    MoneyChangeType.MOVEMENT30移動費用
    MoneyChangeType.USERSUPPORT31ユーザーへのサポートまたはユーザーからサポートされた費用
    MoneyChangeType.INIT32初期作成(キャラクターの作成時に受け取った費用)
    MoneyChangeType.ETC33その他の理由である場合に選択
    その他を選択する場合、Methodの説明のChangeNameは必須入力事項
    • FlowType
      ゲームマネー変化の区分値を指定
    NameValue説明
    IN0獲得
    OUT1消費
    • Money Type
      ゲーム財貨の現金・非現金財貨の区分を指定
    NameValue説明
    MoneyType.GOLD0非現金財貨
    MoneyType.CASH1現金財貨(キャッシュ、ダイヤモンド)
    MoneyType.STAMINA2ポイントの獲得(スタミナ、コイン、クッキー)
    MoneyType.MILEAGE3決済時に累積するボーナス貨幣(マイレージ)
    MoneyType.EXP4経験値獲得

    Methodの説明

    // VMoneyChangeInfoの内容を初期化
    public void ClearVMoneyChangeInfoList()
    
    Parameter NameData 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 NameData Type説明
    MoneyFlowTypeFlowTypeゲームマネーのフロータイプ
    - 集計のための必須項目
    MoneyNamestringゲームマネー名
    - 集計のための必須項目
    MoneyChangeTypeMoneyChangeTypeゲームマネー変化の区分
    - 集計のための必須項目
    MoneyChangeDetailstringゲームマネー変化の詳細
    ContentNamestringゲームマネー変化コンテンツの名前
    - 集計のための必須項目
    - アイテムによる財貨ログが発生した場合、そのアイテムのItemName情報をロード
    - アイテムによるログでない場合はNULL
    ContentCodestringゲームマネー変化コンテンツのコード
    - 集計のための必須項目
    - アイテムによる財貨ログが発生した場合、そのアイテムのItemCode情報をロード
    - アイテムによるログでない場合はNULL
    MoneyTypeMoneyTypeゲームマネーの種類
    Amountstring変化したゲームマネーの金額
    - 集計のための必須項目
    HoldAmountlong変化後のゲームマネーの総額
    MoneyChangeNamestringMoneyChangeType.ETCを選択する場合、その理由名を入力
    - ETCを選択する場合の必須入力事項
    - Stringが同じ値同士でマッチングされ、その分析情報が提供される
    Return(呼び出し結果)
    返す値なし
    // AddVMoneyChangeInfoListを通じて追加した財貨の獲得・消費履歴を照会
    public List<VMoneyChangeInfo> GetVMoneyChangeInfoList()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    VMoneyChangeInfoListList<VMoneyChangeInfo>財貨変更リスト
    // ゲーム内で獲得・消費するすべての財貨ログを送信
    public void VMoneyChangeInfos(IEnumerable<VMoneyChangeInfo> VMoneyChangeInfoList)
    
    Parameter NameData Type説明
    VMoneyChangeInfoListList<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
      アイテムの量が変化した理由を指定
    NameValue説明
    ChangeType.CASH0現金でゲームマネーを購入
    ChangeType.VRCASH1ゲームマネーによる購入
    ChangeType.COUPON2クーポンによる獲得
    ChangeType.EVENTREWARD3出席報酬など様々なイベントによる獲得
    ChangeType.QUESTREWARD4クエスト報酬による獲得
    ChangeType.MISSIONREWARD5ミッション報酬による獲得
    ChangeType.NORMALREWARD6一般報酬による獲得
    ChangeType.POST7郵便により獲得
    ChangeType.GUILDSUPPORT8ギルドサポートによる獲得・消費(ギルドをサポートして個人がサポートを受ける)
    ChangeType.GACHA9ガチャアイテムによる獲得
    ChangeType.BUY10ショップでの購入、販売、再購入(ゲームショップ)
    ChangeType.COLLECT11トグルによる獲得(モンスター狩りの後にドロップされたアイテムを直接拾ったり、PKで敵キャラクターからドロップされたアイテムを拾ったりする場合など)
    ChangeType.SNSSUPPORT12SNSによる獲得・消費
    ChangeType.ENCHABT13強化による消費
    ChangeType.DISMANTLE14アイテムやキャラクターの分解による獲得・消費
    ChangeType.MAKE15アイテムやキャラクターの作成・合成による獲得・消費
    ChangeType.STAGEACTION16ステージ実行による獲得・消費
    ChangeType.PVPACTION171対1モードによる獲得・消費
    ChangeType.PVEACTION18レイドなどによる獲得・消費
    ChangeType.PVMPACTION191対多モード(複数のユーザーとの対戦)
    ChangeType.GUILDACTION20ギルド戦で獲得・消費
    ChangeType.EVENTSTAGEACTION21イベントステージでの消費
    ChangeType.UPGRADE22アイテム・キャラクターなどゲームリソースのアップグレイドや属性の変更による獲得・消費
    ChangeType.DELETE23アイテムの破壊・削除(直接破壊)
    ChangeType.ITEMDROP24アイテムドロップによる消費・獲得(直接、PK、モンスターによる死亡など)
    ChangeType.DEAL25キャラクター間の取引、委託取引所、仲介所、個人ショップでの獲得・消費
    ChangeType.INIT26初期作成情報 (キャラクターの初期作成に関する情報及び作成時に受け取るアイテム情報)
    - 集計のための必須項目
    ChangeType.ETC27その他の理由である場合に選択
    その他を選択する場合、Methodの説明のChangeNameは必須入力事項
    • FlowType
      アイテムにおける量的変化の区分値を指定
    NameValue説明
    IN0獲得
    OUT1消費

    Paramデータクラス

    • ItemsInfo
      獲得したアイテムのそれぞれの情報を保存
      複数のアイテムを獲得・消費した場合、すべてを1個ずつ追加
    Data MemberDataType説明
    ItemUniqueCodestringアイテムの固有コード
    ItemNamestringアイテム名
    ItemGradestringアイテムの等級
    ItemLevelintアイテムのレベル
    ItemAmountintアイテム数
    ItemImputeTypebyteアイテムの帰属有無
    MoneyCodestringゲームマネーコード
    MoneyNamestringゲームマネー名
    ゲーム内で一貫している必要がある
    MoneyAmountint獲得費用

    Methodの説明

    // List<ItemChangeInfo>の内容を初期化
    
    public void ClearItemChangeInfoList()
    
    Parameter NameData 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 NameData Type説明
    ItemFlowTypeFlowTypeゲームアイテムフローの区分
    - 集計のための必須項目
    ItemChangeTypeChangeTypeゲームアイテム変化の区分
    - 集計のための必須項目
    ChangeDetailstringゲームアイテム変化の詳細情報
    ContentNamestringゲームアイテム変化コンテンツの名前
    - 集計のための必須項目
    - ItemChangeType(GACHA)の場合、ガチャコンテンツの名前(10連ガチャと1回ガチャを分離)
    - StageName情報があるコンテンツの場合、ContentActInfos.StageNameと同じ情報をロード
    ContentCodestringゲームアイテム変化コンテンツのコード
    - 集計のための必須項目
    - ItemChangeType(GACHA)の場合、ガチャコンテンツのコード(10連ガチャと1回ガチャを分離)
    - StageName情報があるコンテンツの場合、ContentActInfos.StageNameと同じ情報をロード
    ItemsInfoListゲームアイテムの獲得・消費の詳細内容
    - 集計のための必須項目
    ChangeNamestringChangeType.ETCを選択する場合、その理由名を入力
    - ETCを選択する場合の必須入力事項
    - 列挙型の値の中に必要な値がない場合、テキストで入力
    - 同じテキストでグループ化分析され画面に表示される同じ特性のアイテムは、同じテキストを入力
    Return(呼び出し結果)
    void返す値なし
    // AddItemChangeInfoListを通じて追加したアイテム数量変化履歴を照会
    public List<ItemChangeInfo> GetItemChangeInfoList()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    ItemChangeInfoListList<ItemChangeInfo>リストに保存されたアイテム数量変化履歴
    // List<ItemChangeInfo>の内容を初期化
    public void ClearItemChangeInfos()
    
    Parameter NameData 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 NameData Type説明
    ItemAmountintアイテム数
    - 集計のための必須項目
    ItemGradestringアイテムの等級
    - 集計のための必須項目
    ItemImputeTypebyteアイテムの帰属有無
    ItemLevelintアイテムのレベル
    ItemNamestringアイテム名
    - 集計のための必須項目
    ItemUniqueCodestringアイテムの固有コード
    - 集計のための必須項目
    MoneyCodestringゲームマネーコード
    MoneyNamestringゲームマネー名
    - ゲーム内で一貫している必要がある
    - 集計のための必須項目
    MoneyAmountint獲得費用
    - 集計のための必須項目
    Return(呼び出し結果)
    void返す値なし
    // AddItemChangeInfosを通じて追加したアイテム数量変化履歴を照会
    public List<ItemsInfo> GetItemChangeInfos()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    ItemsInfosList<ItemsInfo>リストに保存された詳細アイテムの情報
    // アイテム数量変化ログを送信
    public void ItemChangeInfos(IEnumerable<ItemChangeInfo> ItemChangeInfoList)
    
    Parameter NameData Type説明
    ItemChangeInfoListList<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
      コンテンツの形式を定義
    NameValue説明
    APP0ユーザーがゲームにログインまたはゲームからログアウトしたときに指定
    CONTENT1ユーザーがコンテンツに進入またはコンテンツから離脱したときに指定
    • FlowType
      ゲームマネー変化の区分値を指定
    NameValue説明
    IN0ユーザーがログインまたはコンテンツに進入したときに指定
    OUT1ユーザーがログアウトまたはコンテンツから離脱したときに指定

    Methodの説明

    public void ConnectInfos(ConnectType connectType, string contentName, FlowType entryType)
    
    Parameter NameData Type説明
    connectTypeConnectTypeアクセス基準の設定
    - 集計のための必須項目
    contentNameStringコンテンツ名
    - 集計のための必須項目
    - ログイン・ログアウト時には「Login」、「Logout」と入力
    - コンテンツの場合はコンテンツ名を入力
    entryTypeFlowType進入または離脱の設定
    - 集計のための必須項目
    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
      追跡したい対象に対する区分を指定
    NameValue説明
    AD0ゲームバナーが広告の場合に指定
    EVENT1ゲームバナーがイベントの場合に指定
    NOTICE2ゲームバナーがお知らせの場合に指定
    TRACK3In-Appのコンテンツ(業績達成、イベントクリア、クエスト完了、特定のステージへの到達など)を追跡する場合に指定
    • AdsActType
      システムとユーザーの行動形式を指定
      システムに表示されるときと、ユーザーがクリックするときに分けて指定
    NameValue説明
    IMPRESSION0バナーがクライアントに表示される
    CLICK1表示されたバナーをクリックしたとき
    ENTRY2追跡対象のコンテンツに進入したとき
    COMPLATE3追跡対象のコンテンツを完了したとき
    FAIL4追跡対象のコンテンツに失敗したとき
    SUCCESS5追跡対象のコンテンツに成功したとき

    Paramsデータクラス

    • JoinContent
      イベントの参加内容を保存
      イベントに複数の段階がある場合、一つ一つ段階別にログを保存
    Data MemberDataType説明
    JoinStepint複数(段階別)参加の区分
    JoinChoiceint参加(任意)内容
    - 例:選択型イベント、出席イベントなど
    JoinLevelint参加時のレベル

    Methodの説明

    // 保存されたList<JoinContent>の値を初期化
    public void ClearJoinContents()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    void返す値なし
    // List<JoinContent>にイベント内容を追加
    public void AddJoinContents(int JoinChoice, int JoinLevel, int JoinStep)
    
    Parameter NameData Type説明
    JoinChoiceint参加(任意)内容
    - 例:選択型イベント、出席イベントなど
    JoinLevelint参加時のレベル
    JoinStepint複数(段階別)参加の区分
    Return(呼び出し結果)
    void返す値なし
    List<JoinContent> GetJoinContents()
    
    Parameter NameData Type説明
    Return(呼び出し結果)
    JoinContentsList<JoinContent>リストに保存された参加リストを返す
    // 保存されたList<JoinContent>の値を初期化
    public string AdPerformInfos(ContentType PromoteContentType, AdsActType PromoteAdsActType, string PromoteContentName, string PromoteContent, string PromoteJoinKey, IEnumerable<JoinContent> PromoteJoinContent, string ReferrerPageName)
    
    Parameter NameData Type説明
    PromoteContentTypeConnectType広告、イベント、お知らせなどのゲームバナーを区分
    - 集計のための必須項目
    PromoteAdsActTypeAdsActTypeそのバナーがクライアントに表示されたか、ユーザーがクリックしたかを区分
    - 集計のための必須項目
    PromoteContentNamestringページ名/コンテンツ名
    - 集計のための必須項目
    PromoteContentstringコンテンツ内容のサマリー
    PromoteJoinKeystring報酬アイテムとのマッピングのためのキー値
    PromoteJoinContentList参加内容
    ReferrerPageNamestring前の画面のアドレスまたは名前
    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
      友達情報を保存する際のユーザー行為を指定
    NameValue説明
    ASK0友達リクエスト
    AGREE1友達リクエストを承諾
    DROP2友達を削除
    REJECT3友達リクエストを拒否

    Methodの説明

    // ユーザーに対する友達リクエスト、リクエスト拒否、リクエスト承諾、削除
    public void  FriendshipInfos(RequestType FriendRequestType, string FriendMemberId, string CharID, string FriendNickName, string FriendCharId, int FriendLevel)
    
    Parameter NameData Type説明
    FriendRequestTypeRequestType友達リクエスト、承諾、削除、リクエスト拒否などのリクエスト形式
    FriendMemberIdstring友達のID
    CharIDstringキャラクターID
    FriendNickNamestring友達のハンドルネーム
    FriendCharIdstring友達のキャラクターID
    FriendLevelint友達のレベル
    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);
    

    この記事は役に立ちましたか?

    Changing your password will log you out immediately. Use the new password to log back in.
    First name must have atleast 2 characters. Numbers and special characters are not allowed.
    Last name must have atleast 1 characters. Numbers and special characters are not allowed.
    Enter a valid email
    Enter a valid password
    Your profile has been successfully updated.