(57)【要約】【課題】本発明は、ゲーム難易度の調整のための分散型台帳装置、分散型台帳方法、トランザクション情報のブロードキャスト装置及び方法を提供する。【解決手段】このために、特定のユーザに対して変更された難易度情報を含む難易度情報保存要請トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、ブロックチェーン内の第１のアカウントから受信する保存要請受信ステップと；難易度情報保存要請トランザクションに基づいて難易度情報を保存する保存ステップと；ブロックチェーン内の第２のアカウントから、難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；第２のアカウントに難易度情報を送信する難易度情報送信ステップと；を提供する。【選択図】図１
2019122739.tif 000002
【特許請求の範囲】
【請求項１】
難易度情報管理アカウント、第１のアカウント、及び第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、
前記難易度情報管理アカウントの前記プログラムコードは、
特定のユーザについての難易度情報を含む難易度情報保存要請トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、前記ブロックチェーン内の前記第１のアカウントから受信する保存要請受信ステップと；
前記難易度情報保存要請トランザクションに基づいて前記難易度情報を保存する保存ステップと；
前記ブロックチェーン内の前記第２のアカウントから、難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；
前記第２のアカウントに前記難易度情報を送信する難易度情報送信ステップと；を含み、
前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、
前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳装置。
【請求項２】
前記難易度情報は、前記特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を含み、
前記調整情報は、難易度調整の大きさと難易度調整の方向を含むことを特徴とする、請求項１に記載のゲーム難易度の調整のための分散型台帳装置。
【請求項３】
難易度情報管理アカウント、第１のアカウント、及び第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、
前記難易度情報管理アカウントの前記プログラムコードは、
特定のユーザについてのプレイ情報を含むプレイ情報トランザクションを、前記ブロックチェーン内の前記第１のアカウントから受信するプレイ情報受信ステップと；
前記プレイ情報トランザクションに基づいて前記特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を生成する調整情報生成ステップと；
前記ブロックチェーン内の前記第２のアカウントから、前記調整情報確認に関する要請である調整情報確認クエリを受信する調整情報確認要請ステップと；
前記第２のアカウントに前記調整情報を送信する調整情報送信ステップと；を含み、
前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、
前記調整情報は、難易度調整の大きさと難易度調整の方向を含み、
前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記調整情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳装置。
【請求項４】
前記調整情報生成ステップは、
前記特定のユーザのプレイ情報に基づいて離脱可能性情報を計算し、
前記離脱可能性情報が既設定された特定の基準値以上であれば、前記離脱可能性情報が前記特定の基準値未満となるように、前記調整情報を生成し、
前記離脱可能性情報が前記特定の基準値未満であれば、難易度が上昇する方向に前記調整情報を生成し、
前記プレイ情報は、前記特定のユーザの離脱情報、持続時間情報、レベル情報、クエスト解決情報、失敗情報、成功情報、能力値情報、アイテム情報、及び暗号通貨情報の少なくとも一つであることを特徴とする、請求項３に記載のゲーム難易度の調整のための分散型台帳装置。
【請求項５】
前記調整情報生成ステップにおいて、前記調整情報の生成には、強化学習（Ｒｅｉｎｆｏｒｃｅｍｅｎｔ  Ｌｅａｒｎｉｎｇ）が用いられ、
前記強化学習におけるエージェント（Ａｇｅｎｔ）は、前記難易度情報管理アカウントとなり、アクション（Ａｃｔｉｏｎ）は、前記調整情報の生成であり、補償（Ｒｅｗａｒｄ）は、前記特定のユーザのプレイ持続時間、学習速度、及び反復度の少なくとも一つであることを特徴とする、請求項３に記載のゲーム難易度の調整のための分散型台帳装置。
【請求項６】
難易度情報管理アカウント、調整情報生成アカウント、第１のアカウント、及び第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウント及び前記調整情報生成アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、
前記調整情報生成アカウントの前記プログラムコードは、
特定のユーザについてのプレイ情報を含むプレイ情報トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、前記ブロックチェーン内の前記第１のアカウントから受信するプレイ情報受信ステップと；
前記プレイ情報トランザクションに基づいて前記特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を生成する調整情報生成ステップと；を含み、
前記難易度情報管理アカウントの前記プログラムコードは、
前記特定のユーザについての調整情報を含む調整情報トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、前記ブロックチェーン内の前記調整情報生成アカウントから受信する保存要請受信ステップと；
前記調整情報トランザクションに基づいて前記調整情報を保存する保存ステップと；
前記ブロックチェーン内の前記第２のアカウントから、調整情報確認に関する要請である調整情報確認クエリを受信する調整情報確認要請ステップと；
前記第２のアカウントに前記調整情報を送信する調整情報送信ステップと；を含み、
前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、
前記調整情報は、難易度調整の大きさと難易度調整の方向を含み、前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳装置。
【請求項７】
難易度情報管理契約アカウント、第１のアカウント、第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；により行われる分散型台帳方法において、
前記難易度情報管理アカウントが、前記ブロックチェーン内の前記第２のアカウントから、難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；
前記難易度情報管理アカウントが、前記第１のアカウントから受信されて既保存された前記難易度情報を前記第２のアカウントに送信する難易度情報送信ステップと；を含み、
前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、
前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳方法。
【請求項８】
ブロックチェーンに保存され、難易度情報を保存する難易度情報管理アカウントが、前記ブロックチェーン内の第２のアカウントから、前記難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；
前記難易度情報管理アカウントが、前記ブロックチェーン内の第１のアカウントから受信されて既保存された前記難易度情報を前記第２のアカウントに送信する難易度情報送信ステップと；を含み、
前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、
前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳方法をコンピュータで行うための記録媒体に保存されたプログラム。
【請求項９】
ユーザのクライアントから前記ユーザの難易度情報を受信する難易度情報受信モジュールと；
受信された前記難易度情報を特定のゲームアカウントに対するトランザクション情報に含ませ、前記難易度情報を含む前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；を含み、
前記特定のゲームアカウントは、
前記難易度情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；
難易度情報管理アカウントに前記難易度情報を含む難易度情報保存トランザクション（ｔｒａｎｓａｃｔｉｏｎ）を送信するトランザクション送信ステップと；
を行うコンピュータ読み取り可能なプログラムコードを含み、
前記難易度情報管理アカウントに保存された前記難易度情報を用いて、複数のゲームアカウントが前記難易度情報を共有するように管理することを特徴とする、トランザクション情報のブロードキャスト装置。
【請求項１０】
ユーザのクライアントから前記ユーザの難易度情報を受信する難易度情報受信モジュールと；受信された前記難易度情報を特定のゲームアカウントに対するトランザクション情報に含ませ、前記難易度情報を含む前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；により行われるトランザクション情報のブロードキャスト方法において、
前記特定のゲームアカウントが、前記難易度情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；
前記特定のゲームアカウントが、難易度情報管理アカウントに前記難易度情報を含む難易度情報保存トランザクション（ｔｒａｎｓａｃｔｉｏｎ）を送信するトランザクション送信ステップ;を含み、
前記難易度情報管理アカウントに保存された前記難易度情報を用いて、複数のゲームアカウントが前記難易度情報を共有するように管理することを特徴とする、トランザクション情報のブロードキャスト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ゲーム難易度の調整のための分散型台帳装置、分散型台帳方法、トランザクション情報のブロードキャスト装置及び方法に関する。
【背景技術】
【０００２】
近年、急速に発展する産業のうち、最も目立つことがゲーム産業である。特に、モバイルゲームの成長速度が極めて速いが、韓国では、代表的にネットマーブルゲームズ社が２０１７年５月１２日、韓国証券取引所に上場してから、時価総額約１７兆ウォンの企業となった。また、韓国において代表的に成功したＰＣゲーム開発社としてはブルーホールがある。ブルーホールは、プレイヤーアンノウンズバトルグラウンズの成功により、約１０兆ウォンの価値で評価されると知られている。
【０００３】
最近になって、ゲーム産業環境では、ユーザのアクセス可能性が高くなり、代替できるゲームが多くなるにつれて、各ゲーム会社は、ユーザの情報を分析して離脱率を最小化し、またはリテンションを高めるための様々な方法を積極的に活用している。難易度情報分析方法としては、代表的にコホート分析、ファネル分析、ＡＲＰＵ（Ａｖｅｒａｇｅ  Ｒｅｖｅｎｕｅ  Ｐｅｒ  Ｕｓｅｒ）分析などがあり、離脱率を最小化し、またはリテンションを高めるための方法としては、ゲームの外的側面での改善であるグロース・ハッキング、ゲームの内的側面での難易度調整などがある。
【０００４】
このとき、複数のＰＣ／モバイルゲームアプリケーションに対して難易度情報を連結すると、ユーザの状況に一層最適化されたカスタマイズサービスが可能となる。例えば、複数のＰＣ／モバイルゲームアプリケーションに対する難易度システムや推薦システムを統合するなどの戦略が挙げられる。このためにはデータベース（ＤＢ）のミラーリングが必要である。しかしながら、難易度情報を互いに連結しようとする試みが複数の主体（ｅｎｔｉｔｙ）によって行われる場合、ＤＢのミラーリングが非常に難しくなるという問題があった。
【０００５】
上記問題を解決するために、Ａ社のサーバとＢ社のサーバとをミラーリングすることはできるが、完全なミラーリングの場合にはサービスの安定性を損なうおそれがあるので、実際には不可能であると考えられる。また、専用線を設ける方式を用いてもよいが、インフラコストが非常にかかるという問題が発生する。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】大韓民国登録特許、１０−１７５１０２５、ブロックチェーンベースのスマート証券業務処理システム（Ｓｍａｒｔ  ｓｙｓｔｅｍ  ｆｏｒ  ｔｒａｄｉｎｇ  ｓｔｏｃｋ  ｂａｓｅｄ  ｂｌｏｃｋｃｈａｉｎ）、株式会社オンザ
【特許文献２】大韓民国登録特許、１０−１７５８８７０、マイニング管理システム及びこれを用いたマイニングの管理方法（Ｍｉｎｉｎｇ  Ｒｉｇ  Ｍｏｎｉｔｏｒｉｎｇ  Ｓｙｓｔｅｍ  Ａｎｄ  Ｍｉｎｉｎｇ  Ｒｉｇ  Ｍｏｎｉｔｏｒｉｎｇ  Ｍｅｔｈｏｄ  Ｉｎ  Ｕｓｉｎｇ  Ｓａｍｅ）、株式会社オンザ
【特許文献３】米国公開特許、ＵＳ２０１６／０３４２９８９  Ａ１、Ｍｅｔｈｏｄ  ａｎｄ  ｓｙｓｔｅｍ  ｆｏｒ  ｐｒｏｃｅｓｓｉｎｇ  ｂｌｏｃｋｃｈａｉｎ−ｂａｓｅｄ  ｔｒａｎｓａｃｔｉｏｎｓ  ｏｎ  ｅｘｉｓｔｉｎｇ  ｐａｙｍｅｎｔ  ｎｅｔｗｏｒｋｓ、Ｍａｓｔｅｒｃａｒｄ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｉｎｃｏｒｐｏｒａｔｅｄ
【特許文献４】米国公開特許、ＵＳ２０１６／０２９２６７２  Ａ１、Ｓｙｓｔｅｍｓ  ａｎｄ  ｍｅｔｈｏｄｓ  ｏｆ  ｂｌｏｃｋｃｈａｉｎ  ｔｒａｎｓａｃｔｉｏｎ ｒｅｃｏｒｄａｔｉｏｎ、Ｎａｓｄａｑ、Ｉｎｃ.
【特許文献５】米国公開特許、ＵＳ２０１７／０１３２６１５  Ａ１、Ｂｌｏｃｋ  ｃｈａｉｎ  ａｌｉａｓ  ｆｏｒ  ｐｅｒｓｏｎ−ｔｏ−ｐｅｒｓｏｎ  ｐａｙｍｅｎｔｓ、Ｂａｎｋ  Ｏｆ  Ａｍｅｒｉｃａ  Ｃｏｒｐｏｒａｔｉｏｎ
【発明の概要】
【発明が解決しようとする課題】
【０００７】
したがって、本発明は、上記問題を解決するためになされたもので、従来のネットワークの形態を維持しながらも、ゲーム難易度の調整のための分散型台帳装置、分散型台帳方法、トランザクション情報のブロードキャスト装置及び方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
以下、本発明の目的を達成するための具体的手段について説明する。
本発明の目的は、難易度情報管理アカウント、第１のアカウント、及び第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、前記難易度情報管理アカウントの前記プログラムコードは、特定のユーザについての難易度情報を含む難易度情報保存要請トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、前記ブロックチェーン内の前記第１のアカウントから受信する保存要請受信ステップと；前記難易度情報保存要請トランザクションに基づいて前記難易度情報を保存する保存ステップと；前記ブロックチェーン内の前記第２のアカウントから、難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；前記第２のアカウントに前記難易度情報を送信する難易度情報送信ステップと；を含み、前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳装置を提供することにより達成できる。
【０００９】
また、前記難易度情報は、前記特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を含み、前記調整情報は、難易度調整の大きさと難易度調整の方向を含んでもよい。
【００１０】
本発明の他の目的は、難易度情報管理アカウント、第１のアカウント、及び第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、前記難易度情報管理アカウントの前記プログラムコードは、特定のユーザについてのプレイ情報を含むプレイ情報トランザクションを、前記ブロックチェーン内の前記第１のアカウントから受信するプレイ情報受信ステップと；前記プレイ情報トランザクションに基づいて前記特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を生成する調整情報生成ステップと；前記ブロックチェーン内の前記第２のアカウントから、前記調整情報確認に関する要請である調整情報確認クエリを受信する調整情報確認要請ステップと；前記第２のアカウントに前記調整情報を送信する調整情報送信ステップと；を含み、前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、前記調整情報は、難易度調整の大きさと難易度調整の方向を含み、前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記調整情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳装置を提供することにより達成できる。
【００１１】
また、調整情報生成ステップは、前記特定のユーザのプレイ情報に基づいて離脱可能性情報を計算し、前記離脱可能性情報が既設定された特定の基準値以上であれば、前記離脱可能性情報が前記特定の基準値未満となるように、前記調整情報を生成し、前記離脱可能性情報が前記特定の基準値未満であれば、難易度が上昇する方向に前記調整情報を生成し、前記プレイ情報は、前記特定のユーザの離脱情報、持続時間情報、レベル情報、クエスト解決情報、失敗情報、成功情報、能力値情報、アイテム情報、及び暗号通貨情報の少なくとも一つであることを特徴としてもよい。
【００１２】
また、調整情報生成ステップにおいて、前記調整情報の生成には、強化学習（Ｒｅｉｎｆｏｒｃｅｍｅｎｔ  Ｌｅａｒｎｉｎｇ）が用いられ、前記強化学習におけるエージェント（Ａｇｅｎｔ）は、前記難易度情報管理アカウントとなり、アクション（Ａｃｔｉｏｎ）は、前記調整情報の生成であり、補償（Ｒｅｗａｒｄ）は、前記特定のユーザのプレイ持続時間、学習速度、及び反復度の少なくとも一つであることを特徴としてもよい。
【００１３】
本発明の他の目的は、難易度情報管理アカウント、調整情報生成アカウント、第１のアカウント、及び第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウント及び前記調整情報生成アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、前記調整情報生成アカウントの前記プログラムコードは、特定のユーザについてのプレイ情報を含むプレイ情報トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、前記ブロックチェーン内の前記第１のアカウントから受信するプレイ情報受信ステップと；前記プレイ情報トランザクションに基づいて前記特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を生成する調整情報生成ステップと；を含み、前記難易度情報管理アカウントの前記プログラムコードは、前記特定のユーザについての調整情報を含む調整情報トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、前記ブロックチェーン内の前記調整情報生成アカウントから受信する保存要請受信ステップと；前記調整情報トランザクションに基づいて前記調整情報を保存する保存ステップと；前記ブロックチェーン内の前記第２のアカウントから、調整情報確認に関する要請である調整情報確認クエリを受信する調整情報確認要請ステップと；前記第２のアカウントに前記調整情報を送信する調整情報送信ステップと；を含み、前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、前記調整情報は、難易度調整の大きさと難易度調整の方向を含み、前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳装置を提供することにより達成できる。
【００１４】
本発明の他の目的は、難易度情報管理契約アカウント、第１のアカウント、第２のアカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；により行われる分散型台帳方法において、前記難易度情報管理アカウントが、前記ブロックチェーン内の前記第２のアカウントから、難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；前記難易度情報管理アカウントが、前記第１のアカウントから受信されて既保存された前記難易度情報を前記第２のアカウントに送信する難易度情報送信ステップと；を含み、前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２のゲームアプリケーションをサービスする第２のサーバと連結され、前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳方法を提供することにより達成できる。
【００１５】
本発明の他の目的は、ブロックチェーンに保存され、難易度情報を保存する難易度情報管理アカウントが、前記ブロックチェーン内の第２のアカウントから、前記難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；前記難易度情報管理アカウントが、前記ブロックチェーン内の第１のアカウントから受信されて既保存された前記難易度情報を前記第２のアカウントに送信する難易度情報送信ステップと；を含み、前記第１のアカウントは第１のゲームアプリケーションをサービスする第１のサーバと連結され、第２のアカウントは第２ゲームのアプリケーションをサービスする第２のサーバと連結され、前記ブロックチェーン内の複数のアカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有することを特徴とする、ゲーム難易度の調整のための分散型台帳方法をコンピュータで行うための記録媒体に保存されたプログラムを提供することにより達成できる。
【００１６】
本発明の他の目的は、ユーザのクライアントから前記ユーザの難易度情報を受信する難易度情報受信モジュールと；受信された前記難易度情報を特定のゲームアカウントに対するトランザクション情報に含ませ、前記難易度情報を含む前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；を含み、前記特定のゲームアカウントは、前記難易度情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；難易度情報管理アカウントに前記難易度情報を含む難易度情報保存トランザクション（ｔｒａｎｓａｃｔｉｏｎ）を送信するトランザクション送信ステップと；を行うコンピュータ読み取り可能なプログラムコードを含み、前記難易度情報管理アカウントに保存された前記難易度情報を用いて、複数のゲームアカウントが前記難易度情報を共有するように管理することを特徴とする、トランザクション情報のブロードキャスト装置を提供することにより達成できる。
【００１７】
本発明の他の目的は、ユーザのクライアントから前記ユーザの難易度情報を受信する難易度情報受信モジュールと；受信された前記難易度情報を特定のゲームアカウントに対するトランザクション情報に含ませ、前記難易度情報を含む前記トランザクション情報を分散型台帳に保存した後、ブロックチェーン分散ネットワークを介して少なくとも一部のノードにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するブロードキャストモジュールと；により行われるトランザクション情報のブロードキャスト方法において、前記特定のゲームアカウントが、前記難易度情報を含む前記トランザクション情報を受信するトランザクション情報受信ステップと；前記特定のゲームアカウントが、難易度情報管理アカウントに前記難易度情報を含む難易度情報保存トランザクション（ｔｒａｎｓａｃｔｉｏｎ）を送信するトランザクション送信ステップ;を含み、前記難易度情報管理アカウントに保存された前記難易度情報を用いて、複数のゲームアカウントが前記難易度情報を共有するように管理することを特徴とする、トランザクション情報のブロードキャスト方法を提供することにより達成できる。
【発明の効果】
【００１８】
以上述べたように、本発明によれば、以下のような効果を奏する。
第一に、本発明の一実施形態によれば、従来のネットワークをそのまま維持しながらも複数の主体（ｅｎｔｉｔｙ）のＰＣ／モバイルゲームアプリケーションの難易度情報を統合してシームレス（ｓｅａｍｌｅｓｓ）な難易度経験をユーザに与えることができるという効果が得られる。
【００１９】
第二に、本発明の一実施形態によれば、ゲームなどのＰＣ／モバイルゲームアプリケーションにおけるゲームアプリケーションの全体の離脱率を低減させることができるという効果が得られる。
【００２０】
本明細書に添付される下記の図面は、本発明の好適な実施形態を例示するものであって、発明の詳細な説明とともに本発明の技術思想をさらに理解させる役割をするものであるので、本発明は、そのような図面に記載された事項に限定されて解釈されてはならない。
【図面の簡単な説明】
【００２１】
【図１】本発明の一実施形態による分散型台帳装置を示す模式図である。
【図２】様々なノードの形態を示す模式図である。
【図３】本発明の一実施形態によるメモリモジュールのデータ構造を示す模式図である。
【図４】本発明の一実施形態による、特定のゲームサーバ２０とブロックチェーン３０の関係を示す模式図である。
【図５】本発明の一実施形態による、ゲームサーバ２０とブロックチェーン３０を示す模式図である。
【図６】本発明の一実施形態による難易度情報確認クエリを示す模式図である。
【図７】本発明の一実施形態によるミラーリングメッセージトランザクション（Ｔｘ、Ｔｒａｎｓａｃｔｉｏｎ）と応答トランザクション（Ｔｘ、Ｔｒａｎｓａｃｔｉｏｎ）情報を示す模式図である。
【図８】変更された難易度情報の保存が要請されるとき、本発明の一実施形態による分散型台帳装置１の処理モジュール１１の処理ステップ（難易度情報の保存方法）を示すフローチャートである。
【図９】特定のゲームのアカウントから難易度情報の確認が要請されるとき（特定のゲームアプリケーションを実行するとき）、本発明の一実施形態による分散型台帳装置１の処理モジュール１１の処理ステップ（難易度情報確認方法）を示すフローチャートである。
【図１０】本発明の他の実施形態による、ゲームサーバ２０とブロックチェーン３０を示す模式図である。
【図１１】本発明のトランザクション情報送信装置２と分散型台帳装置１０のＨＴＴＰ通信を示す模式図である。
【図１２】本発明の一実施形態によるトランザクション情報送信装置２が難易度情報保存要請（難易度情報を含む）を受信した場合を示す模式図である。
【図１３】本発明の一実施形態によるトランザクション情報送信装置が難易度情報保存要請を受信した場合を示す模式図である。
【発明を実施するための形態】
【００２２】
以下、添付図面に基づいて本発明の属する技術分野における通常の知識を有する者が本発明を容易に実施することができる実施形態について詳細に説明する。但し、本発明の好適な実施形態についての動作原理を詳細に説明するに当たって、関連した公知の機能または構成についての具体的な説明が本発明の要旨を不必要に不明瞭にするおそれがあると判断される場合は、その詳細な説明を省略する。
【００２３】
また、図面全体にわたって類似した機能及び作用を行う部分については、同一の符号を使用する。明細書の全体において、特定の部分が他の部分と連結されているというのは、直接的に連結される場合だけでなく、その中間に他の素子を介して間接的に連結される場合を含む。また、特定の構成要素を含むというのは、特に断りのない限り、他の構成要素を除外するのではなく、他の構成要素をさらに含んでもよいことを意味する。
【００２４】
ゲーム難易度の調整のための分散型台帳装置
分散型台帳装置において、図１は、本発明の一実施形態による分散型台帳装置を示す模式図である。図１に示すように、本発明の一実施形態による分散型台帳装置１は、ブロックチェーン分散ネットワーク１００のノードのうちのいずれか一つを意味することができ、通信モジュール１０、処理モジュール１１、メモリモジュール１２を含むことができる。
【００２５】
ブロックチェーン分散ネットワーク１００は、ブロックチェーンの分散型台帳を保存している複数のノードで構成されたＰ２Ｐ分散ネットワークを意味する。ブロックチェーン分散ネットワーク１００は、少なくとも一部のノードが同じ処理を行えるように構成されるので、一部のノードがシャットダウン（Ｓｈｕｔ  ｄｏｗｎ）されるか変調されても、システム全体には影響を与えないという特徴を有する。ノードは、ブロックチェーン分散ネットワーク１００に連結された全てのコンピューティング装置を意味することができる。このようなノードは、デジタルウォレット、ブロックチェーンのコピー、検証エンジン、採掘エンジン、Ｐ２Ｐネットワークの配布機能（ブロードキャスト）などを含んでもよく、さらにライト（Ｌｉｇｈｔ）な機能のみで構成されたクライアントをも含んでもよい。本発明の一実施形態によるブロックチェーン分散ネットワーク１００は、ピュア（Ｐｕｒｅ）Ｐ２Ｐと、スーパーノード（Ｓｕｐｅｒ  Ｎｏｄｅ）を有するハイブリッド（Ｈｙｂｒｉｄ）Ｐ２Ｐと、を含んでもよい。特に、本発明の一実施形態によるノードは、ＰＣ／モバイルゲームアプリケーションのソースコードと一緒にクライアントにインストールされてもよい。
【００２６】
ノードにおいて、図２は、様々なノードの形態を示す模式図である。図２に示すように、参照クライアント（Ｒｅｆｅｒｅｎｃｅ  ｃｌｉｅｎｔ）は、ユーザのデジタルウォレット管理モジュールと、合意アルゴリズムが仕事量の証明（ＰＯＷ、Ｐｒｏｏｆ  ｏｆ  Ｗｏｒｋ）である場合のブロック採掘（Ｂｌｏｃｋ  Ｍｉｎｉｎｇ）のためのマイニングモジュール（Ｍｉｎｉｎｇ  Ｍｏｄｕｌｅ）と、全体のブロックチェーンの全部または少なくとも一部のブロックを保存するブロックチェーンデータベース（Ｂｌｏｃｋｃｈａｉｎ  Ｄａｔａｂａｓｅ）と、トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）をブロックチェーン分散ネットワークにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するネットワークルーティングモジュール（Ｎｅｔｗｏｒｋ  Ｒｏｕｔｉｎｇ  Ｍｏｄｕｌｅ）と、を含むノードを意味することができ、例えば、ビットコイン・コア（Ｂｉｔｃｏｉｎ  Ｃｏｒｅ）のクライアント（Ｃｌｉｅｎｔ）などを意味することができる。フルノード（Ｆｕｌｌ  Ｎｏｄｅ）は、ブロックチェーンデータベースと、ネットワークルーティングモジュールと、を含むノードを意味することができる。ソロマイナーノード（Ｓｏｌｏ  Ｍｉｎｅｒ  Ｎｏｄｅ）は、マイニングモジュールと、ブロックチェーンデータベースと、ネットワークルーティングモジュールと、を含むノードを意味することができる。マイニングノード（Ｍｉｎｉｎｇ  Ｎｏｄｅ）は、マイニングプール（Ｍｉｎｉｎｇ  Ｐｏｏｌ）のノードを意味するプールマイニングノード（Ｐｏｏｌ  Ｍｉｎｉｎｇ  Ｎｏｄｅ）に連結されるゲートウェイルータ（Ｇａｔｅｗａｙ  Ｒｏｕｔｅｒ）と、マイニングモジュールと、を含む負荷の軽いノードを意味することができる。ライトウェイトウォレットノード（Ｌｉｇｈｔｗｅｉｇｈｔ  Ｗａｌｌｅｔ  Ｎｏｄｅ）は、一般的にブロックチェーンのヘッダ情報のみを保存し、デジタルウォレット管理モジュールを保有してユーザのデジタルウォレットを保存し、ネットワークルーティングモジュールを含むがブロックチェーンデータベースを含まないので、トランザクションの生成やブロックチェーン分散ネットワークにアクセスするためには第３者が所有しているサーバに依存する負荷の軽いノードを意味することができる。本発明の一実施形態による分散型台帳装置１は、前記ノードのうちブロックチェーンデータベースとネットワークルーティングモジュールとを含むノードを意味することができる。また、本発明の一実施形態によるノードがマイニングモジュールを含む場合には、ＰＯＷ（Ｐｒｏｏｆ  ｏｆ  Ｗｏｒｋ）またはＰＯＳ（Ｐｒｏｏｆ  ｏｆ  Ｓｔａｋｅ）方式によりユーザクライアントがマイニングを行うように構成することができる。
【００２７】
通信モジュール１０は、トランザクション（Ｔｒａｎｓａｃｔｉｏｎ）をブロックチェーン分散ネットワークにブロードキャスト（Ｂｒｏａｄｃａｓｔ）するネットワークのルーティングモジュール（Ｎｅｔｗｏｒｋ  Ｒｏｕｔｉｎｇ  Ｍｏｄｕｌｅ）やプールマイニングノード（Ｐｏｏｌ  Ｍｉｎｉｎｇ  Ｎｏｄｅ）に連結されるゲートウェイルータ（Ｇａｔｅｗａｙ  Ｒｏｕｔｅｒ）などを意味することができる。
【００２８】
処理モジュール１１は、メモリモジュール１２に保存された分散型台帳であるブロックチェーンのブロックに保存されているトランザクションの内容を処理するモジュールである。本発明の一実施形態による処理モジュール１１は、イーサリアム仮想マシン（Ｅｔｈｅｒｅｕｍ Ｖｉｒｔｕａｌ  Ｍａｃｈｉｎｅ）のような仮想マシン（ＶＭ）で構成されることができる。このような仮想マシンは、例えば、ムータン（Ｍｕｔａｎ）、ＬＬＬ、セーペント（Ｓｅｒｐｅｎｔ）、ソリディティ（Ｓｏｌｉｄｉｔｙ）などの上位レベルの言語で作られたコード（スマート契約：Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）がコンパイルされて生成されたバイトコード（Ｂｙｔｅ  Ｃｏｄｅ）を実行するためのランタイム（Ｒｕｎｔｉｍｅ）であり、オペコード（ＯＰＣＯＤＥ）及びスタック（Ｓｔａｃｋ）のほかメモリ（Ｍｅｍｏｒｙ）及びストレージ（Ｓｔｏｒａｇｅ）を使用する主体でもある。
【００２９】
メモリモジュール１２は、分散型台帳を保存するモジュールであり、全体ブロックチェーンの全部または一部のブロックを保存するブロックチェーンデータベース（Ｂｌｏｃｋｃｈａｉｎ  Ｄａｔａｂａｓｅ）を意味することができる。図３は、本発明の一実施形態によるメモリモジュールのデータ構造を示す模式図である。図３に示すように、本発明の一実施形態によるメモリモジュール１２は、全部または一部のブロックチェーンを保存することができ、各ブロックヘッダには、前のブロックヘッダのハッシュ値（ｈａｓｈ）、解答値（ｎｏｎｃｅ）、トランザクショングループのハッシュ値とその他の生成された時間に関する情報であるタイムスタンプ（Ｔｉｍｅｓｔａｍｐ）（図示せず）、採掘難易度を意味するディフィカルティ（Ｄｉｆｆｉｃｕｌｔｙ）（図示せず）、ブロックのナンバーを意味するブロック番号（Ｂｌｏｃｋ  Ｎｕｍｂｅｒ）（図示せず）などが含まれ得る。各ブロック体（Ｃｏｎｔｅｎｔｓ）には、少なくとも一つ以上のトランザクション情報（特に、本発明の一実施形態による難易度情報保存トランザクション情報）が含まれ得る。
【００３０】
また、ブロックには、特定のゲームアカウントと難易度情報管理アカウントとが含まれ得る。図４は、本発明の一実施形態による、特定のゲームサーバ２０とブロックチェーン３０の関係を示す模式図である。図４に示すように、特定のゲームアカウント３１は、ＥＯＡ（Ｅｘｔｅｒｎｅｌ  Ｏｗｎｅｄ  Ａｃｃｏｕｎｔ）またはＣＡ（Ｃｏｎｔｒａｃｔ  Ａｃｃｏｕｎｔ）で構成されてもよく、特定のＰＣ／モバイルゲームアプリケーションのサーバ２０に連結されて特定のゲームの難易度情報と特定のゲームアカウントの難易度情報がペアリング（ｐａｉｒｉｎｇ）されるように構成され、難易度情報管理アカウント３２の難易度情報とミラーリング（ｍｉｒｒｏｒｉｎｇ）されるように構成されてもよい。難易度情報管理アカウント３２は、ＥＯＡ（Ｅｘｔｅｒｎｅｌ  Ｏｗｎｅｄ  Ａｃｃｏｕｎｔ）またはＣＡ（Ｃｏｎｔｒａｃｔ  Ａｃｃｏｕｎｔ）で構成されてもよく、複数のゲームアカウント３１と連結されて変更された難易度情報を受信し、難易度情報を用いて複数のゲームアカウント３１の難易度情報とミラーリング（ｍｉｒｒｏｒｉｎｇ）されるように構成されてもよい。
【００３１】
難易度情報管理アカウント３２の生成のための難易度情報管理アカウント生成トランザクション情報には、アドレス（ａｄｄｒｅｓｓ）は含まれていない可能性があり、本発明の一実施形態によるスマート契約の一種である難易度情報管理アカウントのコード（例えば、バイトコード（Ｂｙｔｅ  ｃｏｄｅ）を含むことができる。難易度情報管理アカウント生成トランザクション情報をブロックに保存して実行すると、当該スマート契約に対する契約アカウント（Ｃｏｎｔｒａｃｔ  ａｃｃｏｕｎｔ）の一種である難易度情報管理アカウントのアドレスが生成され、ブロックに保存される。本発明の一実施形態による難易度情報管理アカウントを生成した後に難易度情報管理アカウントを条件付きで利用する特定のゲームアカウントである特定のゲームアカウント３１を生成するか、既存の特定のゲームアカウント３１を修正して配布することができる。
【００３２】
特定のユーザのクライアントにおいて特定のゲームのゲームアプリケーション（ＰＣまたはモバイル）が終了すると、特定のゲームにおける難易度情報は難易度情報管理アカウントに保存される。図３に示すように、難易度情報保存トランザクション情報には、難易度情報管理アカウントアドレス情報、難易度情報保存実行命令、当該命令のパラメータ（ｐａｒａｍｅｔｅｒ）のうちのいずれか一つである難易度情報、その他の伝達しようとする価値情報（Ｖａｌｕｅ）またはパラメータ、ユーザ識別情報（各ユーザ別に難易度情報管理アカウントが生成される場合には必要ない）を含むことができる。難易度情報保存トランザクション情報をブロックに保存して実行すると、難易度情報管理アカウントは、既保存された難易度情報を新しい難易度情報にアップデートすることができる。アップデートされた難易度情報は、難易度情報管理アカウントのストレージ（Ｓｔｏｒａｇｅ）やメモリ（ｍｅｍｏｒｙ）内に含まれるなどの方法によりブロックに保存することができる。
【００３３】
本発明の一実施形態による難易度情報は、特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を含むことができる。本発明の一実施形態による調整情報は、調整の大きさと調整の方向を含むベクトル情報であって、例えば、２０％（調整の大きさ）だけ難易度が下落（調整方向）するように構成され得る。本発明の一実施形態により難易度情報が調整情報を含む場合、特定のユーザの複数のゲームへのプレイに対して一概に難易度を調整可能になる効果が発生する。特に、難易度を調整しようとする複数のゲームのカテゴリーが多様である場合も、難易度調整を適用可能になる効果が発生する。
【００３４】
このような本発明の一実施形態による調整情報は、それぞれの特定のゲームサーバ２０側に設けられた調整情報生成モジュールにより生成され得る。図５は、本発明の一実施形態による、ゲームサーバ２０とブロックチェーン３０を示す模式図である。図５に示すように、本発明の一実施形態によるゲームサーバ２０は、難易度調整モジュール２１と調整情報生成モジュール２２を含むことができる。
【００３５】
本発明の一実施形態による難易度調整モジュール２１は、ゲームアカウント３１とのペアリングを介してゲームアカウント３１から調整情報をアップデートされ、調整情報により、当該ゲームの難易度を調整するモジュールである。本発明の一実施形態による調整情報に基づいた難易度の調整は、各ゲームのカテゴリーにより別々に適用され得る。例えば、パズルゲーム（アニパン、みんなのマーブル、キャンディークラッシュ、フレンズポップ、四川省、アングリーバード、テトリス）の場合、ユーザにとって利得となるアイテム／イベントの出現頻度、利得の大きさ、乱数範囲の制限によって出現されるイベントの多様性の減少などにより、難易度調整を行うことができる。
【００３６】
また、ＲＰＧゲーム（英雄の軍団、ミューオリジン、サマナーズウォー、セブンナイツ、真・三國無双、レイヴン、ブレイド、ＨＩＴ、メイプルストーリー、ソードアート・オンラインなど）の場合、敵ＮＰＣ（ノンプレーヤキャラクタ）の数、敵ＮＰＣの能力値、敵ＮＰＣの出現頻度、成功時の報酬、アイテムの出現頻度などにより難易度の調整を行うことができる。また、シュッティング、ランニング、アクション、及びアドベンチャーゲーム（ドラゴンフライト、ステラサガ（Ｓｔｅｌｌａ  Ｓａｇａ）、プリンス・オブ・ペルシャ、コマンド、コールオブデューティー、ＮОＶＡ、デッドスペース、フレンズラン、ソニック、ウィンドランナー、メタルスラッグ、アサシンクリード、ＧＴＡ、みんなでチャチャチャ、ニード・フォー・スピードなど）の場合、障害物またはアイテムの出現頻度、敵ＮＰＣの反応速度、敵ＮＰＣの能力値、成功判定確率範囲などによって難易度の調整を行うことができる。また、シミュレーション及びリアルタイム戦略ゲーム（クラッシュ・オブ・クイーンズ、クラッシュ・オブ・クラン、ドミネーションズ、ブーム・ビーチ、水滸伝、にゃんこ大戦争、ヒーローズ・オブ・オーダー＆カオス、クラッシュ・ロワイヤル、ハースストーンなど）の場合、相手のユーザのレベル、アイテムなどの補償出現頻度、利得イベントの出現頻度などによって難易度の調整を行うことができる。また、リズムゲーム（ビートマニア、タップソニック、リズムスター、ビートパンパンなど）の場合、成功判定確率、ビート速度、点数補償などによって難易度を調整することができる。また、スポーツゲーム（魔球魔球、二死満塁、チャグチャグ、ＦＩＦＡオンラインなど）の場合、相手のユーザのレベル、敵ＮＰＣの能力値、成功判定確率、利得イベント確率、アイテムなどの補償出現頻度などによって難易度の調整を行うことができる。
【００３７】
本発明の一実施形態による調整情報生成モジュール２２は、当該ユーザのプレイ情報（ユーザの特定ゲームにおけるユーザの離脱情報、ユーザの持続時間情報、ユーザのレベル情報、ユーザのクエスト解決情報、ユーザの失敗情報、ユーザの成功情報、ユーザの能力値情報、ユーザのアイテム情報など）に基づいて離脱可能性情報を計算し、当該離脱可能性情報が、既設定された特定の閾値（Ｔｈｒｓｈｏｌｄ）の上に位置した場合、特定の閾値（Ｔｈｒｓｈｏｌｄ）の以下に位置するように調整情報を生成することができる。或いは、当該離脱可能性情報が、既設定された特定の閾値（Ｔｈｒｓｈｏｌｄ）の下に位置した場合、難易度が上昇する方向に調整情報を生成することができる（これにより、没入度が上昇する効果が発生する）。このとき、調整情報の生成には、強化学習（Ｒｅｉｎｆｏｒｃｅｍｅｎｔ  Ｌｅａｒｎｉｎｇ）、遺伝的アルゴリズム（Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ）、各種の人工の神経ネットワーク（ＡＮＮ、Ａｒｔｉｆｉｃｉａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）などの最適化アルゴリズムが用いられ得る。本発明の一実施形態により、調整情報の生成において強化学習が用いられる場合、最適化アルゴリズムのエージェント（Ａｇｅｎｔ）は、調整情報生成モジュールとなり、アクション（Ａｃｔｉｏｎ）は、特定の調整情報の生成を意味することができ、状態（Ｓｔａｔｅ）は、現在の難易度情報で構成され得る。また、補償（Ｒｅｗａｒｄ）は、ユーザの没入度と関連したメタデータであるユーザのプレイ持続時間（特定のゲームをあとどのくらい持続的にプレイするか）、ユーザの学習速度（特定のゲームがあとどのくらい速く且つ上手にできるか）、ユーザの反復度（特定期間内に特定のゲームをどのくらい多く繰り返すか）などによって設定され得る。
【００３８】
本発明の一実施形態による離脱可能性情報は、当該ユーザのプレイ情報及び全体のユーザの少なくとも一部のユーザのプレイ情報に基づいて、当該ユーザが特定ゲームのプレイを離脱（特定期間内にプレイしないこと、ユーザのプレイ持続時間が特定の水準以下になることなど）する可能性がどれくらいであるかについての情報を意味することができる。
【００３９】
また、本発明の一実施形態による調整情報生成モジュール２２では、離脱可能性情報の代わりに成功可能性情報が用いられ得る。本発明の一実施形態による成功可能性情報は、当該ユーザが特定ゲームの特定イベントを成功する確率についての情報である。本発明の一実施形態による調整情報生成モジュール２２は、当該ユーザのプレイ情報に基づいて成功可能性情報を計算し、当該成功可能性情報が、既設定された特定の範囲内に収斂するように調整情報を生成することができる。例えば、本発明の一実施形態による成功可能性情報が５０％であれば、当該ユーザが当該イベントに対して成功する確率が５０％であることを意味し、難易度を下げる方向（例えば、成功可能性情報が８０％乃至１２０％に収斂される方向）に調整情報が生成され得る。また、例えば、本発明の一実施形態による成功可能性情報が２５０％であれば、当該ユーザが当該イベントに対して成功する確率が２５０％であることを意味し、難易度を高める方向（例えば、成功可能性情報が８０％乃至１２０％に収斂される方向）に調整情報が生成され得る。
【００４０】
成功可能性情報の前記既設定された特定の範囲は、特定のユーザまたは全体の少なくとも一部のユーザの成功及び失敗情報（プレイ情報に含まれている）及び離脱可能性情報（特定期間内にプレイしないこと、ユーザのプレイ持続時間が特定の水準以下になることなど）により最適化することができる。成功可能性情報の最適化には、強化学習（Ｒｅｉｎｆｏｒｃｅｍｅｎｔ  Ｌｅａｒｎｉｎｇ）、遺伝的アルゴリズム（Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ）、各種の人工の神経ネットワーク（ＡＮＮ、Ａｒｔｉｆｉｃｉａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）などの最適化アルゴリズムが用いられ得る。
【００４１】
特定のユーザのクライアント（ＰＣまたはモバイル）にとって特定ゲームのゲームアプリケーションが実行されると、難易度情報管理アカウントに既保存された難易度情報が、特定のゲームアカウントを通じて特定のゲームに適用されることになる。図６は、本発明の一実施形態による難易度情報確認クエリを示す模式図である。図６に示すように、本発明の一実施形態により、特定のゲームアカウントは、特定のゲームがロードされると、難易度情報管理アカウントの既保存された難易度情報から難易度情報をロードするために、難易度情報管理アカウントに難易度情報確認クエリ（Ｑｕｅｒｙ）を送信することができる。難易度情報確認クエリには、難易度情報管理アカウントアドレス情報、難易度情報確認命令、当該命令のパラメータのうちのいずれか一つであるカテゴリ情報、その他の確認しようとする価値情報（Ｖａｌｕｅ）またはパラメータ、ユーザ識別情報（それぞれのユーザに対して難易度情報管理アカウントが生成される場合には必要ない）を含むことができる。難易度情報確認クエリは、ローカル（Ｌｏｃａｌ）（当該ユーザのクライアントまたは当該サービス社のノード）の分散型台帳装置１にのみ要請され、ブロックチェーン分散ネットワーク全体の状態を変更しない。本発明の一実施形態による難易度情報管理アカウントが難易度情報確認クエリを受信すると、難易度情報が難易度情報管理アカウントのストレージ（Ｓｔｏｒａｇｅ）やメモリ（ｍｅｍｏｒｙ）内に保存された難易度情報を特定のゲームのアカウントに送信（リターン）して、特定のゲームアカウントのスマート契約が以後のアルゴリズムを行うように構成されてもよい。
【００４２】
また、難易度情報をロード（ｌｏａｄ）するためにメッセージトランザクションを使用してもよい。図７は、本発明の一実施形態によるミラーリングメッセージトランザクション（Ｔｘ、Ｔｒａｎｓａｃｔｉｏｎ）及び応答トランザクション（Ｔｘ、Ｔｒａｎｓａｃｔｉｏｎ）情報を示す模式図である。図７に示すように、特定のゲームアカウントでは、難易度情報のミラーリングのために難易度情報管理アカウントにミラーリングメッセージトランザクションを送信することができ、難易度情報管理アカウントでは、難易度情報をロード（ｌｏａｄ）して特定のゲームアカウントに難易度情報を含む応答メッセージのトランザクション情報を送信して、特定のゲームアカウントのスマート契約の以後手続きが行われるように構成されてもよい。このような応答メッセージのトランザクション情報には、特定のゲームアカウントのアドレス情報、難易度情報ミラーリング命令、当該命令のパラメータのうちのいずれか一つである難易度情報、その他の価値情報（Ｖａｌｕｅ）またはパラメータ、ユーザ識別情報（それぞれのユーザに対して難易度情報管理アカウントが生成される場合には必要ない）を含むことができる。本発明の一実施形態による応答メッセージのトランザクション情報は、検証が完了すると、ブロックチェーン分散ネットワーク１００内に配布（ブロードキャスト）されて、全体ノードにおいて特定のゲームアカウントのスマート契約が行われるように構成されてもよい。
【００４３】
このようなスマート契約のコード（Ｃｏｄｅ）は、例えば、イーサリアム（Ｅｔｈｅｒｅｕｍ）の場合、ソリディティ（Ｓｏｌｉｄｉｔｙ）、セーペント（Ｓｅｒｐｅｎｔ）、ＬＬＬ、ムータン（Ｍｕｔａｎ）の言語として記録されるが、現在はソリディティ（Ｓｏｌｉｄｉｔｙ）が主に用いられており、文法はジャバスクリプト（ＪａｖａＳｃｒｉｐｔ（登録商標））と類似している。スマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）は、「変数」、「構造体」及び「関数」を含めて処理モジュール１１によって処理されるプログラムコードである。このようなスマートコントラクトコード（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ  Ｃｏｄｅ）は、コンパイル（Ｃｏｍｐｉｌｅ）過程を経てバイトコード（Ｂｙｔｅ  Ｃｏｄｅ）に変換される。バイトコード（Ｂｙｔｅ  Ｃｏｄｅ）はソリディティーリアルタイムコンパイラ（Ｓｏｌｉｄｉｔｙ  Ｒｅａｌｔｉｍｅ  Ｃｏｍｐｉｌｅｒ）を用いてコンパイルされる。ソリディティ（Ｓｏｌｉｄｉｔｙ）のバイトコード（Ｂｙｔｅ  Ｃｏｄｅ）はすべて１６進数のコードであり、ソリディティ（Ｓｏｌｉｄｉｔｙ）においてこのバイトコード（Ｂｙｔｅ  Ｃｏｄｅ）を受信アドレスなしにペイロード（Ｐａｙｌｏａｄ）（ｄａｔａ：）に割り当ててブロックチェイン（Ｂｌｏｃｋｃｈａｉｎ）にトランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を配布すれば、マイナー（Ｍｉｎｅｒ）によってブロック（Ｂｌｏｃｋ）が生成され、このようなトランザクション（Ｔｒａｎｓａｃｔｉｏｎ）はコントラクトクリエーショントランザクション（Ｃｏｎｔｒａｃｔ  Ｃｒｅａｔｉｏｎ  Ｔｒａｎｓａｃｔｉｏｎ）とみなされ、トランザクションレシート（Ｔｒａｎｓａｃｔｉｏｎ  Ｒｅｃｅｉｐｔ）のコントラクトアドレス（Ｃｏｎｔｒａｃｔ  Ａｄｄｒｅｓｓ）：フィールドに生成（配布）されたコントラクト（Ｃｏｎｔｒａｃｔ）のアドレスを入れてリターンする。
【００４４】
スマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）開発環境は、開発ツール及びコンパイラ（Ｃｏｍｐｉｌｅｒ）を含む範囲を含むことができる。例えば、ソリディティ（Ｓｏｌｉｄｉｔｙ）の場合、コード（Ｃｏｄｅ）を作成してコンパイルすると、すべてのコンパイラは、「バイトコード（Ｂｙｔｅ  Ｃｏｄｅ）」、「ファンクション・シグネチャ（Ｆｕｎｃｔｉｏｎ  Ｓｉｇｎａｔｕｒｅ）」及び「アプリケーション・バイナリー・インタフェース（Ａｐｐｌｉｃａｔｉｏｎ  Ｂｉｎａｒｙ  Ｉｎｔｅｒｆａｃｅ、ＡＢＩ）」を出力する。
【００４５】
バイトコード（Ｂｙｔｅ  Ｃｏｄｅ）は、前述したようにスマートコントラクトコード（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ  Ｃｏｄｅ）をコンパイルした結果であり、ブロックチェイン（Ｂｌｏｃｋｃｈａｉｎ）にコントラクトクリエーショントランザクション（Ｃｏｎｔｒａｃｔ  Ｃｒｅａｔｉｏｎ  Ｔｒａｎｓａｃｔｉｏｎ）を発生させて配布する場合と、コントラクト（Ｃｏｎｔｒａｃｔ）へのメッセージトランザクション（Ｍｅｓｓａｇｅ  Ｔｘ：Ｍｅｓｓａｇｅ  Ｔｒａｎｓａｃｔｉｏｎの略語）が発生する場合と、コントラクト（Ｃｏｎｔｒａｃｔ）へのコール／クエリ（Ｃａｌｌ／Ｑｕｅｒｙ）が発生する場合とにより分散型台帳装置１（イーサリアムの場合にＥＶＭ）上で実行される。
【００４６】
ファンクション・シグネチャ（Ｆｕｎｃｔｉｏｎ  Ｓｉｇｎａｔｕｒｅ）は、コントラクト（Ｃｏｎｔｒａｃｔ）関数を呼び出すときにインタフェースとして用いられるものであり、コントラクト（Ｃｏｎｔｒａｃｔ）関数名をＳＨＡ−３暗号的なハッシュ（Ｈａｓｈ）関数でハッシュした４バイト値のハッシュ値である。
【００４７】
アプリケーション・バイナリー・インタフェース（Ａｐｐｌｉｃａｔｉｏｎ  Ｂｉｎａｒｙ  Ｉｎｔｅｒｆａｃｅ、ＡＢＩ）は、特定の言語やプラットフォームに従属しない方法で記述されたアプリケーション・インタフェース（Ａｐｐｌｉｃａｔｉｏｎ  Ｉｎｔｅｒｆａｃｅ）を意味する。ＡＢＩの定義をコンパイラ或いはＡＢＩジェネレーター（ＡＢＩ  Ｇｅｎｅｒａｔｏｒ）が出力するが、ＡＢＩにはスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）の関数とパラメータ（Ｐａｒａｍｅｔｅｒ）のメタデータ（Ｍｅｔａ  ｄａｔａ）が定義されている。ＡＢＩを用いてジャバスクリプト（ＪａｖａＳｃｒｉｐｔ（登録商標））言語ベースのアプリケーションを作成するときに、オブジェクトを作成させることができ、簡単にそのオブジェクトのメソッド（Ｍｅｔｈｏｄ）を呼び出すだけでコントラクト（Ｃｏｎｔｒａｃｔ）の関数が呼び出されるようにすることができる。現在、イーサリアム（Ｅｔｈｅｒｅｕｍ）は、ｗｅｂ３．ｊｓと共にジャバスクリプト（ＪａｖａＳｃｒｉｐｔ（登録商標））応用で簡単にＡＢＩを用いてオブジェクトを作成して使用できるようにサポートしており、１．４．０以降のｇｏ−イーサリアム（Ｅｔｈｅｒｅｕｍ）では、Ｇｏ  Ｎａｔｉｖｅ言語ベースの応用でスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）を簡単にバインディング（Ｂｉｎｄｉｎｇ）できるように、ＡＢＩをベースでＧｏ  Ｃｏｄｅを生成させるＡＢＩＧｅｎを提供している。
【００４８】
このようなスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）開発環境は、ブロックチェーンエンジン（Ｂｌｏｃｋｃｈａｉｎ  Ｅｎｇｉｎｅ）と連結されてコントラクトクリエーション（Ｃｏｎｔｒａｃｔ  Ｃｒｅａｔｉｏｎ）／デプロイメント（Ｄｅｐｌｏｙｍｅｎｔ）、メッセージトランザクション（Ｍｅｓｓａｇｅ  Ｔｘ）、コール（Ｃａｌｌ）／クエリ（Ｑｕｅｒｙ）を伝達することができるが、このようなブロックチェーンエンジン（Ｂｌｏｃｋｃｈａｉｎ  Ｅｎｇｉｎｅ）は、本発明の一実施形態による分散型台帳装置１を意味し、イーサリアムの例では、ゲス（ｇｅｔｈ）やパリティ（ｐａｒｉｔｙ）、エス（ｅｔｈ）のようなイーサリアムノード（Ｅｔｈｅｒｅｕｍ  Ｎｏｄｅ）を意味する。最終的にはすべてのスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）と関連したトランザクション（Ｔｒａｎｓａｃｔｉｏｎ）処理とコントラクト（Ｃｏｎｔｒａｃｔ）実行のためのＥＶＭのような仮想マシンは、分散型台帳装置１のようなノード（Ｎｏｄｅ）上に構成されている。
【００４９】
このようなスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）開発環境においてＡＢＩはＡｐｐｌｉｃａｔｉｏｎｓと連結可能である。スマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）はロジック（Ｌｏｇｉｃ）だけを所有し、ユーザや外部システムとの相互作用のためにはアプリケーション（Ａｐｐｌｉｃａｔｉｏｎ）が必要である。ＨＴＭＬ＋ＣＳＳ＋ＪａｖａＳｃｒｉｐｔ（登録商標）、アプリケーションサーバ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｅｒｖｅｒ）、ウォレット（Ｗａｌｌｅｔ）などのアプリケーション（Ａｐｐｌｉｃａｔｉｏｎ）は、例えば、イーサリアム（Ｅｔｈｅｒｅｕｍ）とのインタフェース（Ｉｎｔｅｒｆａｃｅ）を介してスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）と相互作用する構成である。
【００５０】
スマートコントラクトコード（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ  Ｃｏｄｅ）は、「Ｃｒｅａｔｉｏｎ／Ｄｅｐｌｏｙｍｅｎｔ」、「Ｉｎｖｏｋｅ  ｂｙ  Ｍｅｓｓａｇｅ」、「Ｃａｌｌ」に大別される。本発明の一実施形態による難易度情報管理アカウントのコードも、契約アカウント生成、メッセージトランザクションによる難易度情報保存、クエリによる難易度情報確認、トランザクションによる難易度情報ミラーリングに大別される。
【００５１】
難易度情報の変造防止において、ブロックの証明方法として従来のＰＯＷ（仕事量の証明、Ｐｒｏｏｆ  ｏｆ  Ｗｏｒｋ）を行うと、ノードがＰＣ／モバイルゲームアプリケーションを実行するためのユーザのクライアントである場合、過度のコンピューティングパワーが求められるという問題が発生する。このような問題を解決するために、本発明の一実施例によれば、特定のユーザが特定のＰＣ／モバイルゲームアプリケーションにおいて既設定の条件（例えば、ゲームアプリケーションの使用時間、レベル上昇、クエスト解決など）を満たすと、新たに生成されたブロックを証明するように構成されてもよい。ゲームアプリケーションユーザの使用程度、努力、サービス参加度に基づいたこのような証明の方法を用いて、特定の時間間隔で生成されるブロックを証明する場合、コンピューティングパワーを乱用しないながらも、変調されて新たに形成されたブロックチェーンを廃棄することができるという効果が得られる。
【００５２】
図８は、変更された難易度情報の保存が要請されるとき、本発明の一実施形態による分散型台帳装置１の処理モジュール１１の処理ステップ（難易度情報の保存方法）を示すフローチャートである。図８に示すように、本発明の一実施形態による処理モジュール１１は、難易度情報保存トランザクション情報を受信すると、アドレス呼び出しステップ（Ｓ１０）、保存命令ステップ（Ｓ１１）、保存ステップ（Ｓ１２）、配布ステップ（Ｓ１３）を含めてトランザクション情報を処理することができる。
【００５３】
アドレス呼び出しステップ（Ｓ１０）は、処理モジュール１１が難易度情報保存トランザクション情報に保存された難易度情報管理アカウントのアドレスを呼び出すステップである。アドレス呼び出しステップ（Ｓ１０）により、仮想マシンである分散型台帳装置１においてスマート契約の一種である難易度情報管理アカウントのコードが実行できるように活性化される。
【００５４】
保存命令ステップ（Ｓ１１）は、難易度情報保存トランザクション情報の難易度情報保存実行命令により難易度情報管理アカウントのコードのうちの少なくとも一部である難易度情報保存コードを実行するステップである。
【００５５】
保存ステップ（Ｓ１２）は、難易度情報管理アカウントのコードのうちの一部である難易度情報保存コードにより難易度情報保存トランザクション情報に含まれているパラメータ（ｐａｒａｍｅｔｅｒ）である難易度情報を難易度情報管理アカウントのストレージ（Ｓｔｏｒａｇｅ）またはメモリ（Ｍｅｍｏｒｙ）に保存するステップである。契約アカウント（Ｃｏｎｔｒａｃｔ  Ａｃｃｏｕｎｔ）はストレージ（Ｓｔｏｒａｇｅ）と呼ばれる永続的な（Ｐｅｒｓｉｓｔｅｎｔ）格納場所を含むことができる。ストレージ（Ｓｔｏｒａｇｅ）では、キー値（Ｋｅｙ−Ｖａｌｕｅ）マップ構造で３２バイトのキーを３２バイト値にマッピングするようになっている。特定のスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）は、自分以外のコントラクト（Ｃｏｎｔｒａｃｔ）のストレージ（Ｓｔｏｒａｇｅ）を読み書きすることができない。メモリ（Ｍｅｍｏｒｙ）はスマートコントラクト（Ｓｍａｒｔ  Ｃｏｎｔｒａｃｔ）がメッセージコール（Ｍｅｓｓａｇｅ  Ｃａｌｌ）があるたびに最新のインスタンス（Ｉｎｓｔａｎｃｅ）を得ることができる空間である。メモリ（Ｍｅｍｏｒｙ）ではバイト（ｂｙｔｅ）レベルで読み書きすることができるが、３２バイト単位チャンク（Ｃｈｕｎｋ）で保存することができる。すなわち、メモリ（Ｍｅｍｏｒｙ）では、１という値を保存すると３２バイト（２５６ビット）空間に保存される。例えば、ＥＶＭは、合計１０２４個の命令セット（Ｉｎｓｔｒｕｃｔｉｏｎ  Ｓｅｔ）（ＯＰＣＯＤＥ）を入れることができるスタック（Ｓｔａｃｋ）を含み、２５６ビットのワード（ｗｏｒｄ）（値）を有する。
【００５６】
配布ステップ（Ｓ１３）では、保存ステップ（Ｓ１２）により変更された状態（Ｓｔａｔｅ）である難易度情報を、分散型台帳装置１がブロックチェーン分散ネットワーク１００の全ノードに配布してブロードキャストするステップである。
【００５７】
本発明の一実施例による難易度情報保存トランザクション情報によれば、処理モジュール１１により難易度情報管理アカウントのストレージまたはメモリに難易度情報が保存され、ノード全体にこのような状態の変更が配布（グローバルステート（Ｇｌｏｂａｌ  Ｓｔａｔｅ）の変更）されるので、その後、少なくとも一つ以上の特定のゲームアプリケーションに対して統合的に難易度の調整を行うことができるという効果が得られる。また、このような本発明の一実施形態による難易度情報が調整情報で構成される場合、ゲームのカテゴリーにかかわらず、複数のゲームに対して難易度の調整を統合的に行うことができるという効果が得られる。
【００５８】
図９は、特定のゲームアカウントから難易度情報の確認が要請されるとき（特定のゲームアプリケーションを実行するとき）、本発明の一実施形態による分散型台帳装置１の処理モジュール１１の処理ステップ（難易度情報の確認方法）を示すフローチャートである。図９に示すように、本発明の一実施形態による処理モジュール１１は、難易度情報確認クエリを受信すると、アドレス呼び出しステップ（Ｓ２０）、検索命令ステップ（Ｓ２１）、確認ステップ（Ｓ２２）、リターンステップ（Ｓ２３）を含めてトランザクション情報を処理することができる。
【００５９】
アドレス呼び出しステップ（Ｓ２０）は、処理モジュール１１が、難易度情報確認クエリに含まれている難易度情報管理アカウントのアドレスを呼び出すステップである。アドレス呼び出しステップ（Ｓ２０）により、仮想マシンである分散型台帳装置１においてスマート契約の一種である難易度情報管理アカウントのストレージまたはメモリの検索が行われる。
【００６０】
検索命令ステップ（Ｓ２１）は、難易度情報確認クエリの難易度情報検索命令により難易度情報の検索を行うステップである。難易度情報の検索は、識別情報を用いて行われることができる。
【００６１】
確認ステップ（Ｓ２２）は、難易度情報確認クエリに含まれているパラメータ（ｐａｒａｍｅｔｅｒ）である識別情報を、難易度情報管理アカウントのストレージ（Ｓｔｏｒａｇｅ）またはメモリ（Ｍｅｍｏｒｙ）に保存されている難易度情報内の識別情報と比較して、当該識別情報を含む難易度情報が難易度情報管理アカウントのストレージまたはメモリに保存されているかどうかを確認するステップである。本発明の一実施例により識別情報が暗号化された場合、ステータス情報のハッシュ値を用いて復号化した後、識別情報の検索を行うことができる。
【００６２】
リターンステップ（Ｓ２３）は、難易度情報管理アカウントが受信した識別情報が既保存されている難易度情報を特定のゲームアカウントにリターンするステップである。
【００６３】
本発明の一実施形態による難易度情報確認クエリによれば、少なくとも一つ以上の特定のスマート契約に対して統合的に難易度の管理を行うことができるという効果が得られる。
【００６４】
本発明の他の実施形態によると、各ゲームサーバ２０内の調整情報生成モジュール２２が、ブロックチェーン３０内のスマートコントラクトに含まれ、各ゲームアカウント３１は、各ゲームサーバ２０から特定のユーザのプレイ情報を受信し、各ゲームサーバは、各ゲームアカウントから調整情報を受信し、難易度調整モジュール２１が特定ユーザの特定ゲームに対して難易度の調整を行うように構成され得る。
【００６５】
図１０は、本発明の他の実施形態による、ゲームサーバ２０とブロックチェーン３０を示す模式図である。図１０に示すように、本発明の他の実施形態によるゲームサーバ２０は、難易度調整モジュール２１を含み、本発明の他の実施形態によるブロックチェーン３０は、各ゲームアカウント３１、難易度情報管理アカウント３２、及び調整情報生成アカウント３３を含むことができる。
【００６６】
本発明の他の実施形態によると、各ゲームサーバ２０は、各ゲームアカウント３１に当該ユーザのプレイ情報（ユーザの特定ゲームにおけるユーザの離脱情報、ユーザの持続時間情報、ユーザのレベル情報、ユーザのクエスト解決情報、ユーザの失敗情報、ユーザの成功情報、ユーザの能力値情報、ユーザのアイテム情報など）を送信することができる。本発明の他の実施形態による各ゲームアカウント３１は、このようなプレイ情報をスマートコントラクトアカウントである調整情報生成アカウント３３に送信することができる。
【００６７】
本発明の他の実施形態による調整情報生成アカウント３３は、プレイ情報に基づいて離脱可能性情報を計算し、当該離脱可能性情報が既設定された特定の閾値（Ｔｈｒｓｈｏｌｄ）の上に位置した場合、特定の閾値（Ｔｈｒｓｈｏｌｄ）の以下に位置するように調整情報を生成することができる。または、調整情報生成アカウント３３の調整情報の生成には、離脱可能性情報の代わりに成功可能性情報が用いられてもよい。本発明の一実施形態による成功可能性情報は、当該ユーザが特定ゲームの特定イベントを成功する確率についての情報である。本発明の一実施形態による調整情報生成モジュール２２は、当該ユーザのプレイ情報に基づいて成功可能性情報を計算し、当該成功可能性情報が既設定された特定の範囲内に収斂するように調整情報を生成することができる。
【００６８】
本発明の他の実施形態による難易度情報管理アカウント３２は、調整情報生成アカウント３３で生成された調整情報がユーザ別に保存され得る。保存された調整情報は、特定のゲームアカウントの要請（クエリまたはＴｘの形態）により特定のゲームアカウント３１に送信され得る。調整情報を受信したゲームアカウント３１は、当該ゲームサーバ２０の難易度調整モジュール２１に調整情報を送信して難易度をアップデートすることができる。
【００６９】
本発明の他の実施形態により、調整情報の生成がブロックチェーン内において行われると、ゲーム難易度の調整のための分散型台帳装置に新しいゲームを連結してデプロイ（ｄｅｐｌｏｙ）することが、相当簡便になるという効果が発生する。また、本発明の他の実施形態により、調整情報の生成がブロックチェーン内において行われると、複数のゲームに対して統合的な調整情報の生成が行われるという効果が発生する。
【００７０】
このとき、本発明の他の実施形態による調整情報の生成には、強化学習（Ｒｅｉｎｆｏｒｃｅｍｅｎｔ  Ｌｅａｒｎｉｎｇ）、遺伝的アルゴリズム（Ｇｅｎｅｔｉｃ  Ａｌｇｏｒｉｔｈｍ）、各種の人工の神経ネットワーク（ＡＮＮ、Ａｒｔｉｆｉｃｉａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋ）などの最適化アルゴリズムが用いられ得る。本発明の他の実施形態により、調整情報の生成において強化学習が用いられると、最適化アルゴリズムのエージェント（Ａｇｅｎｔ）は、調整情報生成モジュールとなり、アクション（Ａｃｔｉｏｎ）は、特定の調整情報の生成を意味することができ、状態（Ｓｔａｔｅ）は、現在の難易度情報で構成され得る。また、補償（Ｒｅｗａｒｄ）は、ユーザの没入度と関連したメタデータであるユーザのプレイ持続時間（特定のゲームをあとどのくらい持続的にプレイするか）、ユーザの学習速度（特定のゲームがあとどのくらい速く且つ上手にできるか）、ユーザの反復度（特定期間内に特定のゲームをどのくらい多く繰り返すか）などによって設定され得る。
【００７１】
本発明の他の実施形態による離脱可能性情報は、当該ユーザのプレイ情報及び全体のユーザの少なくとも一部のユーザのプレイ情報に基づいて、当該ユーザが特定ゲームのプレイを離脱（特定期間内にプレイしないこと、ユーザのプレイ持続時間が特定の水準以下になることなど）する可能性がどれくらいであるかについての情報を意味することができる。
【００７２】
また、本発明の他の実施形態によると、調整情報生成アカウントのプログラムコードが、難易度情報管理アカウントのスマートコントラクトプログラムコード内に含まれ得る。この場合、本発明の他の実施形態によるゲーム難易度の調整のための分散型台帳装置において、難易度情報管理アカウントのプログラムコードは、特定のユーザについてのプレイ情報を含むトランザクション（Ｔｒａｎｓａｃｔｉｏｎ）を、前記ブロックチェーン内の前記第１のアカウントから受信する保存要請受信ステップと；前記トランザクションに基づいて前記特定のユーザに適用される難易度調整の方向性に関する情報である調整情報を生成する調整情報生成ステップと；前記ブロックチェーン内の前記第２のアカウントから、前記調整情報確認に関する要請である難易度情報確認クエリを受信する調整情報確認要請ステップと；前記第２のアカウントに前記調整情報を送信する難易度情報送信ステップと；を含むように構成され得る。
【００７３】
トランザクション情報のブロードキャスト装置
本発明の一実施形態によるトランザクション情報のブロードキャスト装置において、図１１は、本発明のトランザクション情報送信装置２と分散型台帳装置１０のＨＴＴＰ通信を示す模式図である。図１１に示すように、本発明の一実施形態によるトランザクション情報のブロードキャスト装置は、例えば、ソリディティ（Ｓｏｌｉｄｉｔｙ）でコーディングされる場合、ジャバスクリプト（ＪａｖａＳｃｒｉｐｔ（登録商標））ベースのＷｅｂ３．Ｊｓ  ＡＰＩを用い、内部的にはＪＳＯＮ―ＲＰＣ  ＡＰＩを用いることができる。これにより、Ｂｒｏｗｓｅｒ、Ｎｏｄｅ．ＪＳ、Ｍｉｓｔなどでトランザクション情報送信装置２を構成することができる。トランザクション情報送信装置２の主体は、ＥＯＡまたはＣＡであり得る。
【００７４】
図１１に示すように、本発明の一実施形態によるトランザクション情報送信装置２は、難易度情報管理アカウントに難易度情報を保存するように難易度情報保存トランザクション情報を分散型台帳装置１にＪＳＯＮ−ＲＰＣ  ＡＰＩを用いて要請することができる。難易度情報保存トランザクション情報を受信した分散型台帳装置１は、難易度情報保存方法により、難易度情報を難易度情報管理アカウントのストレージまたはメモリに難易度情報として保存した後にブロックチェーン分散ネットワーク１００に配布（ｂｒｏａｄｃａｓｔ、ｐｒｏｐａｇａｔｉｏｎ）することができる。
【００７５】
図１２は、本発明の一実施形態によるトランザクション情報送信装置２が難易度情報保存要請（難易度情報を含む）を受信した場合を示す模式図であり、図１３は、本発明の一実施形態によるトランザクション情報送信装置が難易度情報保存要請を受信した場合を示すフローチャートである。図１２及び１３に示すように、ユーザクライアントにおいてＡゲームのアプリケーションが実行された後、終了すると、ユーザクライアント及びサーバを介してトランザクション情報送信装置２が、難易度情報を含む難易度情報保存要請をブロックチェーン分散ネットワーク１００に送信するようにＡＰＩが構成され、コア（Ｃｏｒｅ）において難易度情報保存要請がトランザクション情報として生成した後（Ｓ３０、トランザクション情報の生成ステップ）、トランザクション情報送信装置の秘密キーで署名されたトランザクション情報がブロックチェーン分散ネットワーク１００の特定のノード（分散型台帳装置１）に送信される（Ｓ３１、トランザクション情報送信ステップ）。このとき、特定のノードは、ユーザクライアントまたはＡゲーム主体のクライアントであり得る。
【００７６】
特定のノード（分散型台帳装置１）は、Ａゲームアカウントに難易度を保存してほしいという要請のスマート契約を実行することになる（Ｓ３２、スマート契約実行ステップ）。Ａゲームアプリケーションとブロックチェーンにより難易度情報を共有するゲームアプリケーションのうちの一つであるＢゲームアプリケーションが、ユーザクライアントにおいて実行されると、Ｂゲームアカウントは、ユーザについての情報である識別情報に対応する既保存された難易度情報を難易度情報管理アカウントに確認してほしいという難易度情報確認クエリを送信することができる（Ｓ３３、クエリ送信ステップ）。その後、当該クエリに対するリターンとして、Ｂゲームアカウントは、難易度情報管理アカウントから既保存された難易度情報を受信することができる（Ｓ３４、クエリリターンステップ）。Ｂゲームアプリケーションに対応するＢゲームアカウントは、Ｂアプリケーションのサーバとペアリングされるように構成されるので、Ｂゲームアプリケーション内の難易度情報は、Ｂゲームアカウントに受信された難易度情報に対応することになる。
【００７７】
特定のノードからブロックチェーン分散ネットワーク１００に配布された難易度情報は、難易度情報管理アカウントのメモリに保存されていてから、当該特定のノードまたは他の特定のノードが新しいブロック（Ｎｅｗ  ｂｌｏｃｋ）をマイニング（ｍｉｎｉｎｇ）すると、当該ブロックに記録される。
【００７８】
本発明の一実施例によると、Ａゲームアプリケーションにおいてａ％の離脱率を有する難易度のゲーム環境においてユーザが離脱した後、ユーザがＢゲームアプリケーションに流入するとき、ａ％よりも低いｂ％の離脱率またはａ％よりも高いｃ％の離脱率を有する難易度を提供するために、クエリリターンステップ（Ｓ３４）では、難易度情報管理アカウントが既設定された割合で難易度情報を調整してＢゲームアカウントに送信するように構成されてもよい。ユーザがＡゲームアプリケーションにおけるａ％の離脱率を有する難易度のゲーム環境において連続的に失敗した場合、難易度が高いと仮定してＢゲームアプリケーションではａ％よりも低いｂ％の離脱率を有する難易度を提供することができる。ユーザがＡゲームアプリケーションにおけるａ％の離脱率を有する難易度のゲーム環境において連続的に成功した場合、難易度が低いと仮定してＢゲームアプリケーションではａ％よりも高いｃ％の離脱率を有する難易度を提供することができる。
【００７９】
以上説明したように、本発明が属する技術分野における通常の知識を有する者は、本発明がその技術的な思想や必須の特徴を変更することなく、他の具体的な形態に実施できることを理解するはずである。そこで、上述した実施形態は全ての面で例示的なものであり、限定的ではないものと理解しなければならない。本発明の範囲は、詳細な説明よりは後述する特許請求の範囲によって示され、特許請求の範囲の意味及び範囲、そしてその均等な概念から導き出される全ての変更または変形された形態が本発明の範囲に含まれるものと解釈されなければならない。
【００８０】
本明細書に記述された特徴及び利点は、全てを含む訳ではなく、特に、多くの追加の特徴と利点が、図面、明細書及び特許請求の範囲に鑑みて当業者に明らかになるであろう。更に、本明細書において使用される言語は、主として可読的及び教授的な目的で選択されており、本発明の主題を記述又は限定するために選択されない可能性があることに留意すべきである。
【００８１】
本発明の実施形態の前述の説明は、例示を目的として提示されたものである。これは、開示された正確な形態に本発明を限定するか網羅的に作製することを意図したものではない。当業者は、前述した開示に照らして種々の修正及び変形が可能であることを理解することができる。
【００８２】
本説明の一部は、演算の記号表現及びアルゴリズムに関する本発明の実施形態を記述する。このようなアルゴリズム的説明および表現は、一般的に作業の核心を効率的に他の当業者に伝達するためにデータ処理分野の当業者により使用される。このような動作は、機能的、演算的、または論理的に説明されるが、コンピュータやこれと同等の電気回路、マイクロコードなどにより実現されると理解される。さらにこれはモジュールとしてのこのような動作の配列を示すために、時には一般性を失うことなく便利に証明される。上述した動作及びその関連するモジュールは、ソフトウェア、ファームウェア、ハードウェア、またはこれらの任意の組み合わせで実現され得る。
【００８３】
ここで記述された任意のステップ、動作、またはプロセスは、一つ以上のハードウェアまたはソフトウェアモジュールと共に単独でまたは他の装置と組み合わせて行われるか実現され得る。一実施形態において、ソフトウェアモジュールは、コンピュータプログラムコードを含むコンピュータ−読み取り可能な媒体で構成されるコンピュータプログラム製品と共に実現され、コンピュータプログラムコードは、記述された任意または全ての工程、ステップ、または動作を行うためのコンピュータプロセッサによって実行され得る。
【００８４】
また、本発明の実施形態は、本明細書における動作を実行するための装置と関連され得る。これらの装置は、必要な目的のために特別に製作されてもよく、又はコンピュータ内に保存されたコンピュータプログラムにより選択的に活性化又は再構成される一般的な目的の演算装置を含むことができる。このようなコンピュータプログラムは、任意の種類のコンピュータ読み取り可能な記憶媒体又は電子命令語の保存に適した任意の種類のメディアに保存されてもよく、コンピュータシステムバスに結合されてもよい。さらに、本明細に参照される任意の演算システムは、単一のプロセッサを含んでもよく、又は計算能力増強のためのマルチプロセッサデザインを採用した構造であってもよい。
【００８５】
最後に、本明細書で使用される言語は、主に読みやすさや教示の目的のために選択されており、本発明の主題を記述又は限定するためには選択されていない。
【００８６】
このため、本発明の範囲は、詳細な説明により限定されるものではなく、これをベースにした出願の任意の請求項によって限定されるものである。したがって、本発明の実施形態の開示は、例示的なものであり、以下の請求項に記載の本発明の範囲を限定するものではない。
【符号の説明】
【００８７】
１  分散型台帳装置
２  トランザクション情報送信装置
１０  通信モジュール
１１  処理モジュール
１２  メモリモジュール
２０  ゲームサーバ
２１  難易度調整モジュール
２２  調整情報生成モジュール
３０  ブロックチェーン
３１  ゲームアカウント
３２  難易度情報管理アカウント
３３  調整情報生成アカウント
１００  ブロックチェーン分散ネットワーク
【図１】
2019122739.tif 000003
【図２】
2019122739.tif 000004
【図３】
2019122739.tif 000005
【図４】
2019122739.tif 000006
【図５】
2019122739.tif 000007
【図６】
2019122739.tif 000008
【図７】
2019122739.tif 000009
【図８】
2019122739.tif 000010
【図９】
2019122739.tif 000011
【図１０】
2019122739.tif 000012
【図１１】
2019122739.tif 000013
【図１２】
2019122739.tif 000014
【図１３】
2019122739.tif 000015
【手続補正書】
【提出日】平成30年6月7日(2018.6.7)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
難易度情報管理アカウント及び複数のスマート契約アカウントを含む少なくとも一部のブロックチェーンを保存し、前記難易度情報管理アカウントに既保存された難易度情報を含む分散型台帳が保存されたメモリモジュールと；
前記メモリモジュールと動作可能に結合され、前記難易度情報管理アカウント及び前記複数のスマート契約アカウントのコンピュータ読み取り可能なプログラムコードを実行する処理モジュールと；を含み、
前記難易度情報管理アカウントの前記プログラムコードは、
特定のユーザについての難易度情報を含む難易度情報保存要請を、前記ブロックチェーン内の前記複数のスマート契約アカウントの一つである第１のアカウントから受信する保存要請受信ステップと；
前記難易度情報保存要請に基づいて前記難易度情報を含む難易度情報保存トランザクションを生成し、前記難易度情報管理アカウントに前記難易度情報を保存する保存ステップと；
前記ブロックチェーン内の前記第１のアカウントまたは前記複数のスマート契約アカウントの他の一つである第２のアカウントからの難易度情報確認に関する要請である難易度情報確認クエリを受信する難易度情報確認要請ステップと；
前記第１のアカウントまたは第２のアカウントに前記難易度情報を送信する難易度情報送信ステップと；
を行うコンピュータ読み取り可能なプログラムコードを含み、
前記複数のスマート契約アカウントのそれぞれは、少なくとも一つのゲームアプリケーションをサービスする少なくとも一つのサーバと連結され、
前記難易度情報管理アカウント及び前記複数のスマート契約アカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有し、前記複数のゲームアプリケーションのゲーム難易度を統合的に調整することを特徴とする、ブロックチェーンベースのゲーム難易度の調整のための分散型台帳装置。
【請求項２】
特定のユーザについての難易度情報を保存する難易度情報管理アカウント及び複数のスマート契約アカウントを含むブロックチェーンを保存する分散型台帳装置が、前記難易度情報を含む難易度情報保存要請を、前記ブロックチェーン内の前記複数のスマート契約アカウントの一つである第１のアカウントから前記難易度情報管理アカウントに送信する保存要請送信ステップと；
前記分散型台帳装置が、前記難易度情報保存要請に基づいて前記難易度情報を含む難易度情報保存トランザクションを生成し、前記難易度情報管理アカウントに前記難易度情報を保存する保存ステップと；
前記分散型台帳装置が、前記ブロックチェーン内の前記第１のアカウントまたは前記複数のスマート契約アカウントの他の一つである第２のアカウントからの難易度情報確認に関する要請である難易度情報確認クエリを、前記第１のアカウントまたは前記第２のアカウントから前記難易度情報管理アカウントに送信する難易度情報確認要請ステップと；
前記分散型台帳装置が、前記難易度情報管理アカウントから前記第１のアカウントまたは前記第２のアカウントに、前記難易度情報を送信する難易度情報送信ステップと；を含み、
前記複数のスマート契約アカウントのそれぞれは、少なくとも一つのゲームアプリケーションをサービスする少なくとも一つのサーバと連結され、
前記難易度情報管理アカウント及び前記複数のスマート契約アカウントを用いて、複数のゲームアプリケーションに対して前記難易度情報を共有し、前記複数のゲームアプリケーションのゲーム難易度を統合的に調整することを特徴とする、ブロックチェーンベースのゲーム難易度の調整のための分散型台帳方法。
【外国語明細書】
2019122739000001.pdf