特許法第30条第2項適用 (1)掲載日 平成31年3月28日 掲載アドレス:https://www.youtube.com/watch?time_continue=17&v=E79AoXSUJ6Q (2)公開日 平成31年4月22日 公開名:第1回クローズドβテスト (3)公開日 令和1年5月9日 公開名:第2回クローズドβテスト
本発明の実施の形態を説明する。
[全体構成]
図1は、本実施形態におけるゲームシステムの全体構成例を示す図である。図1に示すように、ゲームシステムは、ゲームのプレーヤA,B毎に用意されるプレーヤ端末1と、ゲームサーバ2と、SNSサーバ3とを備えて構成される。プレーヤ端末1と、ゲームサーバ2及びSNSサーバ3とは、通信回線Nに接続可能で、相互に通信可能である。
通信回線Nは、データ通信が可能な通信路を意味する。すなわち、通信回線Nは、直接接続のための専用線(専用ケーブル)やイーサネット(登録商標)等によるLANの他、電話通信網やケーブル網、インターネット等の通信網を含み、通信方法については有線/無線を問わない。
プレーヤ端末1は、ゲームプログラム及びソーシャルネットワークサービス(SNS: Social Network Service)を実行することのできるコンピュータである。そして、無線通信基地局等を介して通信回線Nに接続し、ゲームサーバ2とデータ通信を行うことができる。同様に、無線通信基地局等を介して通信回線Nに接続し、SNSサーバ3とデータ通信を行うことができる。プレーヤ端末1は、例えば、スマートフォンや、携帯電話機、携帯型ゲーム装置、据置型家庭用ゲーム装置、業務用ゲーム装置、パソコン、タブレット型コンピュータ、据置型家庭用ゲーム装置のコントローラ等である。プレーヤ端末1は、基本的には、複数存在し、各プレーヤにより操作される。
図2は、プレーヤ端末1の一例であるスマートフォンの装置構成例を示す図である。図2に示すように、プレーヤ端末1は、ディスプレイ11と、ディスプレイ11と一体構成されるタッチ操作パネル12と、スピーカ13とを備える。また、プレーヤ端末1には、図示されていない制御基板、内蔵バッテリー、電源ボタン、音量調節ボタン等が設けられている。
制御基板には、CPUやGPU、DSP等の各種マイクロプロセッサ、ASIC、VRAMやRAM、ROM等の各種ICメモリ、携帯電話基地局と無線通信するための無線通信モジュール等が搭載されている。また、制御基板には、タッチ操作パネル12のドライバ回路といった、いわゆるI/F回路(インターフェース回路)等が搭載されている。これら制御基板に搭載されている各要素は、それぞれがバス回路等を介して電気的に接続され、データの読み書きや信号の送受信が可能に接続されている。
ゲームサーバ2は、単数又は複数のサーバ装置や記憶装置等を含んで構成されたサーバシステムである。ゲームサーバ2は、本実施の形態のゲームを運営するための各種サービスを提供し、ゲームの運営に必要なデータの管理や、プレーヤ端末1でのゲームの実行に必要なゲームプログラムやデータの配信等を行うことができる。
SNSサーバ3は、各会員に対してソーシャルネットワークサービス(SNS)を提供するWebサーバよりなり、各プレーヤはプレーヤ端末1(携帯電話、スマートフォン、タブレット、PCその他を含む)からSNSアプリを起動してSNSサーバ3に接続し、自己のユーザID及びパスワードを入力して認証ステップをクリアすると、SNS画面がプレーヤ端末1のディスプレイ11上に表示される。もっとも、認証方式等は必ずしもパスワード入力を必須とするものではない。なお、SNSアプリとして基本的な機能、例えば、自らの近況の入力や表示、他のユーザとのメッセージ交換が含まれる。メッセージとしては静止画、アイコン(いわゆる「スタンプ」を含む)、動画、音声等の一以上が利用できる。
本実施の形態では、上述のようなゲームシステムを、第1プレーヤAが保有する第1ゲーム要素と、対戦相手となる第2プレーヤBが保有する第1ゲーム要素とを使用した対戦ゲームに適用した例を説明する。
ここで、第1ゲーム要素は、キャラクタに対応付けられた仮想的又は実体のある物品である。仮想的又は実体のある物品の一例としては、例えば、コンピュータに表示される仮想的なカードや、実体のあるカード等である。そして、実行するゲームにおいて、カードの使用により登場させることが可能となるキャラクタは、プレーヤ(コンピュータに操作されるノンプレーヤも含む)の操作に基づいて行動制御がなされるキャラクタであるものとし、カードには対応するキャラクタの図柄(該キャラクタの外観を示した画像)が付されるものとして説明する。更に、これに限られるものではなく、実行されるゲームのゲーム要素を特定する用途のカードは、キャラクタのようなゲーム要素を特定可能に構成されるものに限らず、アイテムや発動する効果等、その他のゲーム要素を特定するものであってもよいことは言うまでもない。尚、物品は、カードに限られることなく、物品に対応付けられたゲーム要素を特定可能に構成された物品であれば、カードに限られるものではない。物品は、例えばゲーム要素の外観を有するフィギュア等の造形物であってもよい。
更に、本実施の形態が適用される対戦ゲームでは、第1ゲーム要素とは異なる第2ゲーム要素が加わる。第2ゲーム要素はあるキャラクタではあるが、かならずしも仮想的又は実体のある物品と対応付けられる必要はない。
第2ゲーム要素は、プレーヤが保有する第1ゲーム要素をゲーム内において使用する。第1ゲーム要素を使用するとは、ゲーム内において第1ゲーム要素の選択又は行動を決定することを含む。第1ゲーム要素が例えばカードであるとすると、第2ゲーム要素は、ゲーム内の対戦において、プレーヤが保有するカードの選択又は行動(挙動)を自律的又は自発的(能動的)に決定する。別の言い方をするならば、コンピュータに操作されるノンプレーヤの機能のように、プレーヤによって行われる第1ゲーム要素の選択又は行動等の決定と同様な動作を行うということである。但し、従来からあるノンプレーヤは、人間のプレーヤの代わりにコンピュータに操作されるものであるが、第2ゲーム要素は人間のプレーヤと別個独立に存在し、プレーヤが保有する第1ゲーム要素を使用する点で異なる。そして、従来からあるノンプレーヤとは異なり、プレーヤと第2ゲーム要素とはひとつのグループを構成することになる。
また、第2ゲーム要素は、キャラクタ情報を持つ。このキャラクタ情報は、第2ゲーム要素のゲームの強さ(レベル)や属性情報(性別や性格など)である。キャラクタ情報は、第2ゲーム要素の自律的又は自発的(能動的)な行動(第1ゲーム要素の使用)に影響を与える。別の言い方をするならば、キャラクタ情報は第2ゲーム要素の能力であり、この能力の相違によって第2ゲーム要素の自律的又は自発的(能動的)な行動(第1ゲーム要素の使用)が異なるということである。そして、このキャラクタ情報は、第2ゲーム要素の選択時やゲームの進行に伴って変化する。
上述のような、第2ゲーム要素による自律的又は自発的(能動的)な行動は、ゲームサーバ2が備えるAI機能によって与えられる情報に基づいて行われる。このAI機能は、多くの対戦ゲームのゲーム進行の内容とその結果等を教師データとし、機械学習して得られたAI機能である。機械学習の方法は、深層学習(ディープラーニング)、強化学習、又は、それらの組み合わせが代表的なものであるが、これに限られない。
[ゲーム内容の概略]
次に、実施の形態の説明の理解を助けるために、プレーヤ端末1のディスプレイ11の表示画面を用いて、ゲームの概要を説明する。
本実施形態のゲームでは、プレーヤA,Bは、第1ゲーム要素である仮想的なゲームカード(単に「カード」という。)をゲーム内で使用する。カードは複数種類用意され、各々に関連付けられたキャラクタの能力及びカード属性等の組合せによって区別される。カード属性は、例えば、赤、青といった色や、1から7の何れかの数字等で定められる。各カードには、コンピュータ制御の敵キャラクタや他プレーヤ等の対戦相手との対戦プレイ(バトル)に用いるレベルや攻撃力、HPといった能力パラメータ値が定められている。
カードは、アカウント登録時において対戦プレイ(バトル)に最低限必要な枚数が付与される他、ゲーム中に取得したり、課金アイテムとして購入によって取得したり、ガチャと呼ばれる抽選によって取得することができる。加えて、カードは、実体のあるゲームカード(以下、「リアルカード」という。)を入手し、入手したリアルカードをゲーム内で使用可能とするための登録手続きをすることによっても獲得できる。具体的には、プレーヤA,Bは、リアルカードの登録手続きを行うと、そのリアルカードと対応付けられたカード種類のカードを取得することができる。
そして、各プレーヤA,Bは、保有しているカードのうちの所定枚数(例えば40枚)でデッキを構成し、デッキを用いた対戦プレイ(バトル)に挑む。デッキを用いた対戦プレイ(バトル)とは、デッキを構成するカード(デッキカード)に定められている能力パラメータ値(第1ゲーム要素のキャラクタ情報)を用いて、対戦相手との勝敗を決めるものである。
ゲームに先立ち、各プレーヤA,Bは、アカウント登録を済ませ、デッキを編成しておく必要がある。デッキの編成は、ホーム画面等からカードメニューをタッチ操作し、その1つとして提示されるデッキ編成メニューから行えるようになっている。保有しているカードの枚数に余裕があれば、複数のデッキを編成して設定することもできる。
ここで、第2ゲーム要素であるが、各プレーヤA,Bは、アカウント登録時において、複数の第2ゲーム要素(以下、バディと記載する)から好みのバディを選択することにより、取得可能である。各プレーヤA,Bは、取得したバディと同一のグループ(ペア)となる。
バトルの準備が整うと、プレーヤA,Bは、ログイン後に表示されるホーム画面からバトルメニューを選択操作(タッチ操作)する。バトルメニューでは複数の対戦態様を選択できる。
本実施形態におけるバトルゲームの対戦態様は、人間のプレーヤと人間のプレーヤとが対戦する通常の通常対戦態様と、人間のプレーヤと、人間のプレーヤのグループ(ペア)を構成するバディとが対戦する特殊対戦態様とがある。特殊対戦態様の中には、「オープンバトル」がある。
オープンバトルとは、プレーヤが設定した任意のデッキをバディに使用させ、一定時間内に、バディと多数のプレーヤとが対戦する対戦態様である。プレーヤが「オープンバトル」を選択した場合、バディが多数のプレーヤと対戦するためには、プレーヤがバディ対プレーヤの対戦を希望している旨を広く告知し、他のプレーヤがその旨を知る必要がある。
そこで、本実施の形態では、プレーヤが自己のバディ対プレーヤの対戦を希望している旨を広く告知する手段として、ソーシャルネットワークサービス(SNS)を利用する。
ソーシャルネットワークサービス(SNS)に公開する情報は、プレーヤが自己のバディ対他のプレーヤの対戦を希望しているメッセージと、プレーヤとバディとの対戦を可能とするためのバディに関する情報にアクセスするためのアクセス情報である。
プレーヤのバディと他のプレーヤとの対戦を可能とするためのバディに関する情報は、オープンバトルを希望するプレーヤのバディを特定する情報を含み、例えば、後述するように、バディを識別する識別情報や、バディのレベルや属性情報、バディが使用するデッキ、対戦可能人数、対戦可能時間等である。
アクセス情報は、オープンバトルを希望するプレーヤのバディに関する情報を特定する情報にアクセスするためのアクセス情報である。アクセス情報の代表的なものとして、Uniform Resource Locator(URL)がある。
プレーヤは、バディ対他のプレーヤの対戦を希望しているメッセージとアクセス情報とを、ソーシャルネットワークサービス(SNS)に提供することにより、プレーヤのバディと他のプレーヤとの対戦を可能とする。
通常対戦態様又は特殊対戦態様(オープンバトル)いずれかを選択し、対戦相手が決定されると、バトルが開始される。
バトルは、プレーヤA側のターンと、対戦相手であるプレーヤB側のターンとが交互に実行される。各ターンは、デッキカードのうち手札をフィールド等の自プレーヤのプレーヤ領域に設定するスタンバイフェーズと、設定したデッキカードを使用するために、他のデッキカード等を準備するカード使用準備フェーズと、プレーヤ領域に設置したデッキカードを用いて、対戦プレーヤ又は対戦プレーヤのカードに攻撃を行う対戦フェーズ等の複数のフェーズから構成される。
図3はプレーヤ端末1のディスプレイ11に表示される対戦ゲームのスタンバイフェーズ又はカード使用準備フェーズにおける画面表示の一例を示した図である。ディスプレイ11の画面は、プレーヤA側のカード等が設定される第1領域20と、対戦するプレーヤB側のカード等が設定される第2領域21とを備えている。また、第1領域20と第2領域21との境界には、現在実行することが可能な操作の情報を表示する操作情報30が表示される。
第1領域20、第2領域21の各領域は、自デッキより選択されたカード(手札)が5枚配置されるフィールド領域22と、フィールドに配置されたカードの行動又は効果を発動するために消費(行動コスト)されるカードが配置されるベース領域23と、カードの発動効果に影響与え(フォース)、ライフ(HP)を持つ第1オブジェクト31と、同様にライフ(HP)を持つ第2オブジェクトが配置されるフォース領域24とを備える。尚、本実施の形態では、第2オブジェクト32は、プレーヤ又は第2ゲーム要素であるバディと兼ねて表示されている。
対戦フェーズでは、図4に示すように、プレーヤAは、攻撃に使用するカードを、指でタッチし、攻撃対象となる相手のカード、第1又は第2オブジェクト31,32までドラックすることにより、攻撃に使用するカード及び攻撃対象となる対戦プレーヤBのカード、第1又は第2オブジェクト31,32を決定する。これにより、プレーヤAの攻撃が開始される。また、バディAによる攻撃の場合には、ゲームサーバ2から提供されるカード操作情報によって、攻撃に使用するカード及び攻撃対象となる対戦プレーヤBのカード、第1又は第2オブジェクト31,32が決定される。
このような一連のフェーズからなるターンを、プレーヤA側と対戦相手のプレーヤB側とが交互に繰り返し、いずれかのプレーヤ又はバディのライフが0になる、又は、デッキのカードが0枚になることにより、勝敗が決定する。対戦の勝敗が決定すると、その対戦の勝敗(対戦結果)が提示される。
尚、プレーヤとバディとの対戦(オープンバトル)の場合、人間側のプレーヤに対しては上述のバトル画面を提示するが、バディ側のプレーヤの場合は詳細なバトル画面を表示せず、対戦結果のみ表示するようにしても良い。プレーヤとバディとの対戦時において、かならずしも、バディ側のプレーヤはバトルを閲覧可能とは限らず、コンピュータに操作されるバディという特殊性を鑑みると、複数のバトルが同時多発的に発生する場合もあるからである。
以下、このようなゲームシステムを実現する各構成要素について説明する。
[機能構成]
図5は、プレーヤ端末1の機能構成例を示すブロック図である。
図5に示すように、プレーヤ端末1は、操作入力部51と、処理部52と、画像表示部53と、音出力部54と、通信部55と、記憶部56とを備える。
操作入力部51は、プレーヤがゲームに関する各種操作を入力するためのものであり、操作入力に応じた操作入力信号を処理部52に出力する。操作入力部51の機能は、例えば、タッチ操作パッド、ホームボタン、ボタンスイッチや、ジョイスティック、トラックボールといった直接プレーヤAが指で操作する素子はもちろん、加速度センサや角速度センサ、傾斜センサ、地磁気センサといった、運動や姿勢を検知する素子等によっても実現できる。図2では、タッチ操作パネル12がこれに該当する。
処理部52は、記憶部56に格納されるプログラムやデータ、操作入力部51からの操作入力信号等に基づいてプレーヤ端末1の動作を統括的に制御する。処理部52の機能は、例えば、CPUやGPU等のマイクロプロセッサ、ASIC、ICメモリ等の電子部品によって実現できる。この処理部52は、主な機能部として、ゲーム演算部61と、画像生成部62と、音生成部63と、通信制御部64とを備える。
ゲーム演算部61は、本実施の形態のゲームを実現するための種々のゲーム処理を実行し、処理結果を画像生成部62や音生成部63に出力する。ゲーム演算部61は、プレーヤ情報管理部70と、カード設定部71と、バディ設定部72と、対戦モード選択部73と、オープンバトル管理部74と、対戦実行部75と、ゲーム管理部76、SNS実行部77とを含む。
プレーヤ情報管理部70は、プレーヤの情報を管理する。管理する情報は、プレーヤのニックネーム等の基本的なユーザ情報、プレーヤランク及びバディレベルを管理する。
カード設定部71は、後述するカード設定データ及びデッキ設定データを用い、プレーヤA,Bが現時点までに保有している保有カードを管理する。また、ユーザの操作により、保有カードからデッキを構成するカードを選択し、デッキを設定する。そして各デッキを構成するカードを管理し、プレーヤA,Bが選択したデッキより、スタンバイフェーズ及びカード使用準備フェーズにおいて、各フィールドに設定されるカード及び手札を設定する。また、各フィールドに設定されるカード及び手札に関する情報であるカード設定情報を生成し、通信部55を介して、ゲームサーバ2に送信する。
バディ設定部72は、プレーヤA,Bは、アカウント登録時において、プレーヤA,Bにより選択された第2ゲーム要素としてのバディに関する情報を、後述するバディ設定データを用いて管理する。バディ設定部71は、アカウント登録時のバディ(第2ゲーム要素)のキャラクタ情報は初期値(最も低い値)に設定される。また、バディが変更された場合、バディ設定部72は、変更後のバディ(第2ゲーム要素)のキャラクタ情報を初期値(最も低い値)に設定する。また、バディ設定部72は、対戦中又はその他のメニュー画面において、バディの画像情報を画像生成部62に出力する。
対戦モード選択部73は、バトルメニューを表示し、プレーヤによる対戦モードの選択を実行する。バトルメニューに表示される対戦モードは、プレーヤ(人間)同士が対戦する通常対戦モードと、特殊対戦モード(オープンバトル)とである。対戦モードの選択は、バトルメニューで表示されている通常対戦モード及びオープンバトルのボタンから、プレーヤが希望する対戦モードのボタンを選択操作(タッチ操作)することにより選択することができる。選択した対戦モードの情報(対戦モード選択情報)は、通信部55を介して、ゲームサーバ2に送信される。
オープンバトル処理部74は、オープンバトルの処理を管理する。オープンバトルの処理には、自己のバディを他のプレーヤと対戦するためにオープンバトルを開催する側の処理と、バディと対戦するプレーヤ側の処理とがある。
オープンバトルを開催する側の処理は、オープンバトルの開催の要求から、対戦に必要なバディ情報を含むオープンバトル情報へのアクセス情報(URL)の取得、オープンバトルの終了までを管理する処理である。一方、バディと対戦するプレーヤ側の処理は、アクセス情報(URL)に基づくオープンバトルの対戦を開始するための処理である。これらの処理の動作の詳細は後述する。
対戦実行部75は、プレーヤの操作による対戦を実行する部である。対戦実行部75は、プレーヤA,Bのタッチ操作等により、カードの選択や、カードの行動を決定し、カードの選択又は行動の情報である行動選択情報を生成し、通信部55を介して、ゲームサーバ2に送信する。また、対戦実行部75は、カードの選択又は行動の操作に関する情報であるカード操作情報を、通信部55を介して取得する。カード操作情報は、ゲームサーバ2のAI機能により、バディのキャラクタ情報と、対戦におけるカード設定情報の状況とを参照して生成された情報であり、プレーヤ端末1に、バディがカードの選択又は行動の操作する画像を表示するための情報である。更に、対戦実行部75は、取得されたカード操作情報を用いて、バディがカードの選択又は行動を操作する画像を表示する処理を行う。
ゲーム管理部76は、ゲーム全体の進行を管理する。
SNS実行部77は、アクセス情報(URL)を含むメッセージを作成し、ソーシャルネットワークサービス(SNS)に提供する。ソーシャルネットワークサービス(SNS)に提供する方法は、既存の技術を用いることができる。尚、ソーシャルネットワークサービス(SNS)の例としては、Facebook(登録商標)、LINE(登録商標)、Twitter(登録商標)等がある。
画像生成部62は、ゲーム演算部61の処理結果に基づいて1フレーム時間(例えば1/60秒)で1枚のゲーム画面を生成し、生成したゲーム画面の画像信号を画像表示部103に出力する。画像生成部62の機能は、例えば、GPUやデジタルシグナルプロセッサ(DSP)等のプロセッサ、ビデオ信号IC、ビデオコーデック等のプログラム、フレームバッファ等の描画フレーム用ICメモリ、テクスチャデータの展開用に使用されるICメモリ等によって実現できる。
音生成部63は、ゲーム演算部61の処理結果に基づいてゲームに関する効果音やBGM、操作補助情報の音声情報、各種操作音等の音信号を生成し、音出力部54に出力する。音生成部63の機能は、例えば、デジタルシグナルプロセッサ(DSP)や音声合成IC等のプロセッサ、音声ファイルを再生可能なオーディオコーデック等によって実現できる。
通信制御部64は、ゲームサーバ2とのデータ通信のための通信接続及びデータ処理を行う。
画像表示部53は、画像生成部62から入力される画像信号に基づいて各種ゲーム画面を表示する。画像表示部53の機能は、例えば、フラットパネルディスプレイ、ブラウン管(CRT)、プロジェクター、ヘッドマウントディスプレイといった表示装置によって実現できる。画像表示部62は、例えば、図2のディスプレイ11に該当する。
音出力部54は、音生成部63から入力される音信号に基づいてゲームに関する効果音等を音出力するためのものである。音出力部54は、例えば、図2のスピーカ13に該当する。
通信部55は、通信回線Nと接続して通信を実現する。通信部55の機能は、例えば、無線通信機、モデム、TA(ターミナルアダプタ)、有線用の通信ケーブルのジャックや制御回路等によって実現できる。
記憶部56には、プレーヤ端末1を動作させ、プレーヤ端末1が備える種々の機能を実現するためのプログラムや、このプログラムの実行中に使用されるデータ等が予め記憶され、或いは処理の都度一時的に記憶される。記憶部56は、例えばRAMやROM、フラッシュメモリ等のICメモリ、ハードディスク等の磁気ディスク、CD-ROMやDVD等の光学ディスク等によって実現できる。
記憶部56には、システムプログラムと、ゲームプログラムとが格納される。システムプログラムは、プレーヤ端末1のコンピュータとしての基本機能を実現するためのプログラムである。ゲームプログラムは、処理部52をゲーム演算部61として機能させるためのプログラムである。このプログラムは、プレーヤがアカウント登録を済ませるとゲームサーバ2又は他のアプリ配信サーバ等から配信される。また、記憶部56には、ソーシャルネットワークサービス(SNS)のプログラムも格納される。ソーシャルネットワークサービス(SNS)のプログラムは、処理部52をSNS実行部77として機能させるためのプログラムも含む。
また、記憶部56には、プレーヤ情報管理部70が管理するカード設定データ、デッキ設定データ、バディ設定データ及びランク設定データが格納される。なお、その他にも、カードのキャラクタ及びバディの画像を表示するためのモデルデータやテクスチャデータ、モーションデータ、エフェクトデータ、ゲーム画面の背景画像、効果音等の音データ等が適宜ゲームに必要なデータとして配信され、記憶部56に格納される。
カード設定データは、プレーヤが保有するカードのキャラクタ情報であり、カード種類毎に用意される。図6は、プレーヤが保有するカードのカード設定データの一例を示した図である。図6では、プレーヤが保有するカード識別情報”001”で特定される1枚のカードのカード設定データを示している。カード設定データは、カード識別情報、画像、カード名、カード種類、コスト数、色、種族、能力、攻撃力、ヒットポイント及びレアリティを含んでいる。尚、図6はカード設定データの一例を示したものであり、これに限定されるものではない。また、カード設定データは、プレーヤA,Bが保有するカードが増減することにより、増減する。
デッキ設定データは、プレーヤの各デッキに関するデータであり、各デッキを構成するカードのカード識別情報を含む。図7は、デッキ設定データの一例を示す図である。図7の例では、プレーヤAのデッキ1のデッキ設定データの例であり、デッキ1がカード識別情報”001”~カード識別情報”023”のカードから構成されていることを示している例である。尚、図7はデッキ設定データの一例を示したものであり、これに限定されるものではない。
バディ設定データは、メニュー設定より選択されたバディのキャラクタ情報である。このバディのキャラクタ情報はゲームの進行に伴って変化するが、変化した場合には変化後のキャラクタ情報がゲームサーバ2から通知され、キャラクタ情報は更新される。図8はバディ設定データの一例を示す図である。図8の例は、バディ識別情報と、バディのキャラクタ画像と、バディ名と、バディのレベル(キャラクタ情報)とが記憶されたデータ例である。
ランク設定データは、プレーヤのランク及び現在までの累積勝利ポイントのデータである。図9はランク設定データの一例を示す図である。図9の例は、プレーヤAのランク及び現在までの累積勝利ポイントが記憶されたデータ例である。これらのデータは、対戦の終了後、ゲームサーバ2から送信されるランク情報を用いて、プレーヤ情報管理部70により、更新される。
次に、ゲームサーバ2の構成を説明する。図10は、ゲームサーバ2の機能構成例を示すブロック図である。
ゲームサーバ2は、処理部91と、通信部92と、記憶部93とを備える。
処理部91は、プレーヤ管理部101と、オープンバトル管理部102と、ゲーム管理部103と、AI処理部104と、ランク更新部105とを備える。
プレーヤ管理部101は、後述するユーザ情報データを用いてアカウントやゲームの進行状況等を接続されるプレーヤ端末1毎に管理する。
オープンバトル管理部102は、プレーヤ端末1からの対戦モード選択情報によるオープンバトルの要求に応答して、プレーヤ端末1のプレーヤのバディと他のプレーヤとの対戦であるオープンバトルを管理する。このオープンバトルを管理する処理については、後述する。
ゲーム管理部103は、プレーヤ端末1からのカード設定情報や行動選択情報等を受信し、カード設定情報や行動選択情報、後述するカードデータを用いて、対戦モードに応じた対戦処理を行い、その対戦結果を出力する。
AI処理部104は、多くの対戦ゲームのゲーム進行の内容とその結果等の教師データを機械学習して得られたアルゴリズムを有する。このアルゴリズムは、バディのキャラクタ情報に応じたアルゴリズムである。機械学習の方法は、深層学習(ディープラーニング)が代表的なものであるが、これに限られない。AI処理部104は、プレーヤ端末1から送信されるカード設定情報、プレーヤ端末1のプレーヤのバディのキャラクタ情報、対戦モード等を入力し、そのカード設定情報の状況におけるバディのカード操作情報を出力する。尚、アルゴリズムは、バディのキャラクタ情報に応じて異なるので、プレーヤ端末1から送信されるカード設定情報が同一であっても、プレーヤのバディのキャラクタ情報が異なれば、異なるカード操作情報を出力する可能性がある。
ランク更新部105は、対戦結果に基づき、プレーヤ又はバディの勝利ポイントを計算し、各プレーヤ又はバディに勝利ポイントを付与する。更に、ランク更新部105は、プレーヤのランク又はバディのレベルについて、累積された勝利ポイントに対応したランク又はレベルに更新する。例えば、対戦に勝利した場合は150ポイントの勝利ポイントを付与し、累積勝利ポイントが500ポイントに達すると、プレーヤのランクを「2」に更新するなどである。また、対戦に敗戦した場合は、勝利ポイントを与えるのではなく、減ずるようにしても良い。例えば、対戦に敗戦した場合は、累積勝利ポイントから150ポイントを減ずるなどである。このような場合、累積勝利ポイントによっては、現在のランクから下位のランクに降格する場合もある。バディのレベルも同様である。但し、プレーヤのランクとバディのレベルとを連携させるようにしても良い。例えば、バディのレベルは、レーヤのランクが一定のランクに達しなければ、その上のレベルに上昇することはできないようにする等である。
通信部92は、通信回線Nと接続して通信を実現する。
記憶部93には、システムプログラムと、ゲームプログラムとが格納される。システムプログラムは、ゲームサーバ2のコンピュータとしての基本機能を実現するためのプログラムである。ゲームプログラムは、処理部91を、プレーヤ管理部101と、オープンバトル管理部102と、ゲーム管理部103と、AI処理部104と、ランク更新部105として機能させるためのプログラムである。
更に、記録部93は、ユーザ情報データと、カードデータとが格納されている。
ユーザ情報データは、ゲームに参加しているプレーヤの基本データであり、プレーヤ毎のユーザ情報データを記録している。図11はユーザ情報データの一例を示した図である。図11の例では、プレーヤのユーザ識別情報と、そのプレーヤのバディ設定データと、デッキ設定データと、プレーヤのランク及び現在までの累積勝利ポイントと、プレーヤのバディのレベル及び現在までの累積勝利ポイントとを含んでいる。
カードデータは、本ゲームで使用されるカード全てのカードデータである。基本的に、上述した図6のカード設定データと同様なデータを、ゲームで使用される全てのカードについて格納している。
SNSサーバ3は、各プレーヤに対してソーシャルネットワークサービス(SNS)を提供するWebサーバであり、プレーヤから送信されたメッセージを、プレーヤに指定された他のプレーヤに送信する。
[各装置の動作]
次に、プレーヤ端末1と、ゲームサーバ2と、SNSサーバ3との動作を説明する。ここでは、プレーヤAがプレーヤ端末1を用いてオープンバトルを希望し、プレーヤBがプレーヤ端末1を用いてプレーヤAのバディと対戦する場合を例に説明する。また、オープンバトル情報へのアクセス情報として、URLを例にして説明する。
図12は、プレーヤ端末1、ゲームサーバ2及びSNSサーバ3の動作を説明するための全体のシーケンス図である。まず、ゲームシステム全体の大きな動作を、図12を用いて説明した後に、各装置の動作を説明する。
まず、プレーヤAのプレーヤ端末1の対戦モード選択部73はバトルメニューを表示し、プレーヤによりオープンバトルが選択される。オープンバトルが選択されると、オープンバトル要求が、通信部55を介して、ゲームサーバ2に送信される(Step1)。
オープンバトル要求を受信したゲームサーバ2は、オープンバトル開始画面生成処理を行う(Step2)。ゲームサーバ2は、生成したオープンバトル開始画面情報を、プレーヤAのプレーヤ端末1に送信する。
オープンバトル開始画面を受信したプレーヤAのプレーヤ端末1は、オープンバトル情報へのアクセス情報であるURLの発行を要求するURL発行要求処理を行う(Step3)。プレーヤAのプレーヤ端末1は、URL発行要求を、ゲームサーバ2に送信する。
URL発行要求を受信したゲームサーバ2は、URLの発行を行うURL発行処理を行う(Step4)。ゲームサーバ2は、発行したURLを、プレーヤAのプレーヤ端末1に送信する。
発行されたURLを受信したプレーヤAのプレーヤ端末1は、オープンバトル画面処理を行う(Step5)。オープンバトル画面処理は、URL付きのメッセージを作成し、SNSサーバ3に送信する処理と、オープンバトルを中止したい場合に要求するオープンバトル中止要求を送信する処理と、ゲームサーバ2から対戦結果を受信して表示する処理とを含む。
URL付きのメッセージを受信したSNSサーバ3は、プレーヤBのプレーヤ端末1に、URL付きのメッセージを送信する(Step6)。
URL付きのメッセージを受信したプレーヤBのプレーヤ端末1は、プレーヤ対戦処理を行う(Step7)。プレーヤ対戦処理は、URLに基づいて、ゲームサーバ2にアクセスし、プレーヤAのバディとプレーヤBとの対戦を実行する処理である。
URLにアクセスしてきたプレーヤBのプレーヤ端末1に応答して、ゲームサーバ2は、プレーヤAのバディとプレーヤBとの対戦を実行するサーバ対戦処理を行う(Step8)。また、サーバ対戦処理は、オープンバトルの対戦結果を、プレーヤAのプレーヤ端末1に送信する。
上述した全体の動作における各装置の動作について説明する。
オープンバトル開始画面生成処理(Step2)について説明する。図13はオープンバトル開始画面生成処理のフローチャートである。
プレーヤAのプレーヤ端末1から、ゲームサーバ2がオープンバトル要求を受信すると、オープンバトル開始画面生成処理が開始される。ゲームサーバ2のオープンバトル管理部102は、記録部93に格納されているプレーヤAのユーザ情報データから、プレーヤAのバディ情報、デッキ情報を取得する(Step21)。
オープンバトル管理部102は、取得したプレーヤAのバディ情報及びデッキ情報に基づいて、オープンバトル開始画面情報を生成する(Step22)。オープンバトル開始画面情報は、プレーヤAのバディの名前、バディが使用するデッキ、バディのレベル、URL発行要求ボタン画像等が含まれる。そして、オープンバトル開始画面情報をプレーヤAのプレーヤ端末1に送信する(Step23)。
以上で、オープンバトル開始画面生成処理を終了する。
次に、URL発行要求処理(Step3)について説明する。図14はURL発行要求処理のフローチャートである。
まず、プレーヤAのプレーヤ端末1のオープンバトル処理部74は、受信したオープンバトル開始画面情報を用いて、オープンバトル開始画面を生成する処理を行い、画像表示部53によりオープンバトル開始画面を表示させる(Step31)。図15はプレーヤAのプレーヤ端末1に表示されるオープンバトル開始画面の一例である。図15の例では、バディの情報であるバディのアイコン80、バディ名81、バディのレベル82、バディが使用するデッキ名83、バディが使用するデッキを変更するデッキ変更ボタン84、URL発行ボタン85、前回の対戦結果86及び対戦した人数87が表示されている。
プレーヤAは、バディが使用するデッキを変更する場合(Step32)、デッキ変更ボタンを使用してデッキを変更する(Step33)。
オープンバトル開始画面に表示されているバディ等の状態で、オープンバトルを開催する場合、URL発行ボタンをタッチし、URL発行要求を行う(Step34)。そして、オープンバトル処理部74は、URL発行要求をゲームサーバ2に送信する(Step35)。
以上で、URL発行要求処理を終了する。
続いて、URL発行処理(Step4)について説明する。図16はURL発行処理のフローチャートである。
ゲームサーバ2のオープンバトル管理部102は、URL発行要求を受信する(Step41)。そして、URL発行要求受信時のプレーヤAのバディ情報及びデッキ情報を取得する(Step42)。
オープンバトル管理部102は、プレーヤAのバディ情報及びデッキ情報を用いてオープンバトル情報を生成する(Step43)。オープンバトル情報は、プレーヤAの識別情報、プレーヤAのバディを識別する識別情報、バディのアイコン、バディ名、バディのレベル、バディが使用するデッキを識別するデッキ識別情報等を含む。
オープンバトル管理部102は、生成したオープンバトル情報を所定の場所に格納し(Step44)、格納先をURL化する(Step45)。尚、URLで特定される格納先に格納されているオープンバトル情報は、プレーヤ端末1がURL発行要求したときのプレーヤAの識別情報、プレーヤAのバディを識別する識別情報、バディのアイコン、バディ名、バディのレベル、バディが使用するデッキを識別するデッキ識別情報等であり、URL発行要求後に変更された情報(例えば、バディのレベルや、バディが使用するデッキ)は更新されない。これらの変更を反映させたい場合は、後述するように、オープンバトルを終了させ、再度、URL発行要求処理を行い、変更後のオープンバトル情報のURLを発行する必要がある。
以上で、URL発行処理を終了する。
オープンバトル画面表示処理(Step5)について説明する。図17はオープンバトル画面表示処理のフローチャートである。
まず、プレーヤAのプレーヤ端末1のオープンバトル処理部74は、受信したURLの情報をオープンバトル画面に表示する(Step51)。図18はプレーヤAのプレーヤ端末1に表示されるオープンバトル画面の一例である。図18の例では、オープンバトルのバディのアイコン80、バディ名81、バディのレベル82、バディが使用するデッキ名83、発行されたURL(https://www.xx.ne.jp/c100/yyy/)88、URLのコピーボタン89、現在のバディと他のプレーヤの戦況情報90、対戦した人数91、残りの対戦可能時間92、オープンバトル終了ボタン93が表示されている。
プレーヤAは、SNSにオープンバトルを告知する場合にはURLのコピーボタンをタッチし(Step52)、クリップボードにURLにコピーを行い、SNSのメッセージにペーストし、SNSメッセージを生成する(Step53)。図19はURLが記載されたSNSメッセージの一例である。
SNS実行部77は、URLが記載されたメッセージをSNSサーバ3に送信する(Step54)。これにより、SNSを介して、プレーヤAのオープンバトルを告知することができる。
プレーヤAは、所定の理由により、オープンバトルを終了させる場合は(Step55)、オープンバトル終了ボタン93をタッチし、オープンバトル終了要求を、ゲームサーバ2に送信する(Step56)。
オープンバトルの終了時間になり、オープンバトル終了通知を受信すると(Step57)、オープンバトルの最終的な対戦結果を受信し(Step58)、対戦結果を表示する(Step59)。図20はオープンバトル終了時の対戦結果が表示された画面の一例である。図20の例では、バディの情報であるバディのアイコン80、バディ名81、バディのレベル82、バディが使用するデッキ名83、バディが使用するデッキを変更するデッキ変更ボタン84、URL発行ボタン85、今回の対戦結果94及び対戦した人数95が表示されている。
以上で、オープンバトル画面処理を終了する。
プレーヤ対戦処理(Step7)について説明する。図21はプレーヤ対戦処理のフローチャートである。
プレーヤBのプレーヤ端末1のSNS実行部77は、図19に示されるような、SNSメッセージを受信する(Step71)。
プレーヤBがプレーヤAのバディと対戦を望む場合は(Step72)、SNSメッセージに記載されているURLをクリックし、ゲームサーバ2にアクセスする(Step73)。
ゲームサーバから対戦開始画面を受信し、オープンバトル処理部74は対戦開始画面を表示する(Step74)。図22はプレーヤBのプレーヤ端末1に表示される対戦開始画面の一例を示した図である。図22の例では、プレーヤBのバディの情報であるバディのアイコン100、対戦相手(プレーヤAのバディ)名101、バディのレベル102、対戦相手(プレーヤA)の現在の戦況103及び対戦した人数104、残りの対戦可能時間105、プレーヤBが使用するデッキ名106、使用するデッキを変更するデッキ変更ボタン107、対戦を開始する対戦開始ボタン108が表示されている。
プレーヤBがプレーヤAのバディと対戦を開始する場合。は、図22に示される対戦開始画面の対戦開始ボタン108をタッチする(Step75)。オープンバトル処理部74は、対戦開始要求をゲームサーバ2に送信し、プレーヤBがプレーヤAのバディとの対戦が開始される(Step76)。対戦処理は対戦実行部75により行われる。
プレーヤBがプレーヤAのバディとの対戦が終了すると(Step77)、オープンバトル処理部74は対戦結果を受信する(Step78)。そして、オープンバトル処理部74は対戦結果を表示する(Step79)。
以上で、プレーヤ対戦処理を終了する。
サーバ対戦処理(Step8)について説明する。図23はサーバ対戦処理のフローチャートである。
まず、オープンバトル管理部102は、プレーヤAのプレーヤ端末1からURL発行要求を受信し、URL発行をすると、URL発行時からの経過時間を計測する(Step81)。この計測は、プレーヤAのオープンバトルの終了を通知するために行われる。
オープンバトル管理部102は、URLにアクセスがあると(Step82)、URLで特定されるオープンバトル情報を取得する(Step83)。そして、取得したオープンバトル情報を用いて、対戦開始画面を生成し、図22に示されるような対戦開始画面をアクセスしてきたプレーヤBのプレーヤ端末1に送信する(Step84)。
オープンバトル管理部102がプレーヤBのプレーヤ端末1から対戦開始要求を受信すると(Step85)、ゲーム管理部103がプレーヤAのバディとプレーヤBとの対戦処理を開始する(Step86)。プレーヤAのバディの自律的挙動は、オープンバトル情報から得られるバディの識別情報やバディのレベルに対応したAI処理部104から得られる情報に基づいて行われる。
プレーヤAのバディとプレーヤBとの対戦が終了すると、プレーヤA、Bのプレーヤ端末1に、対戦結果を送信する(Step87)。尚、プレーヤAのプレーヤ端末1に送信する対戦結果は、オープンバトルの開催中に行われた対戦の累積の勝敗が送信される。また、対戦の結果により、ランク更新部105により、プレーヤのランクとバディのレベル等が更新される。
プレーヤAのプレーヤ端末1からオープンバトル終了要求を受信した場合(Step88)は、オープンバトルの有効時間にかかわらず、プレーヤAのオープンバトルを終了し、オープンバトル終了時の累積の勝敗を、プレーヤAのプレーヤ端末1に送信する(Step90)。一方、また、オープンバトルの経過時間が有効時間に到達した場合(Step89)は、プレーヤAのオープンバトルを終了し、オープンバトル終了時の累積の勝敗を、プレーヤAのプレーヤ端末1に送信する(Step90)。
以上で、サーバ対戦処理を終了する。
本実施の形態によれば、プレーヤのバディ(第2ゲーム要素)に関する情報及びそのバディ(第2ゲーム要素)との対戦に必要な情報へのアクセスするためのアクセス情報を、ソーシャルネットワークサービス(SNS)を用いて告知している。その結果、プレーヤのバディ(第2ゲーム要素)は、多くのプレーヤと対戦することができ、プレーヤは自己のバディがどの程度強いのかを知ることができる。また、多くの対戦を経ることで、多くのポイントを取得することも可能となる。
また、プレーヤのバディの行動は、ゲームサーバ2により制御されるので、プレーヤがバディの操作をする必要はなく、結果として、上記のようにソーシャルネットワークサービス(SNS)を用いた告知による多くの対戦を実行することが可能である。
更に、優秀なキャラクタ情報を持つバディ(第2ゲーム要素)を有すれば、プレーヤは、ソーシャルネットワークサービスを用いた告知した対戦で勝利する確率も高まるので、プレーヤは優秀なキャラクタ情報持つバディ(第2ゲーム要素)を育てるという育成ゲーム的な楽しみ方もできる。
上述した実施の形態では、SNSのメッセージにURLを記載する際、URLのコピーボタンをタッチし、クリップボードにURLにコピーを行い、SNSのメッセージにペーストする例を説明したが、これに限られない。
例えば、図24に示すように、オープンバトル画面上に、複数のソーシャルネットワークサービス(SNS)のアイコン200を表示する。そして、希望のソーシャルネットワークサービス(SNS)のアイコンをタッチすることにより、選択したソーシャルネットワークサービス(SNS)のメッセージに自動的にアクセス情報(URL)が記載されるようにしても良い。
尚、上記した実施の形態では、仮想的なゲームカードを用いたカードゲームを例示したが、適用可能なゲームのジャンルは限定されない。例えば、第1ゲーム要素に関連付けたキャラクタを選手とするスポーツの対戦ゲームとしてもよい。
また、上記の実施の形態の一部又は全部は、以下の付記のようにも記載されるが、以下には限られない。
[付記1]
プレーヤが第1ゲーム要素を使用して行うゲームを実行する端末であって、
実行命令が格納されたメモリと、プロセッサとを備え、
前記プロセッサは、前記実行命令により、
第1ゲーム要素を構成要素とするプレーヤのデッキを設定可能なデッキ設定処理と、
前記プレーヤとグループを構成し、前記デッキを使用可能であり、他のプレーヤと対戦可能な第2ゲーム要素を設定可能な第2ゲーム要素設定処理と、
他のプレーヤと前記第2ゲーム要素との対戦を可能とするための第2ゲーム要素に関する情報を、プレーヤ間での情報の共有が可能なソーシャルネットワークサービスに提供する提供処理と
を実行する端末。
[付記2]
プレーヤが第1ゲーム要素を使用して行うゲームを管理するゲーム管理装置であって、
実行命令が格納されたメモリと、プロセッサとを備え、
前記プロセッサは、前記実行命令により、
第1ゲーム要素を構成要素とするプレーヤのデッキの設定を許可するデッキ設定許可処理と、
前記プレーヤとグループを構成し、前記デッキを使用可能であり、他のプレーヤと対戦可能な第2ゲーム要素の設定を許可する第2ゲーム要素設定許可処理と、
プレーヤの端末からの要求に応答して、他のプレーヤと前記第2ゲーム要素との対戦を可能とするための第2ゲーム要素に関する情報へのアクセス情報を生成し、前記プレーヤの端末に送信するアクセス情報生成処理と
を実行するゲーム管理装置。
以上、好ましい実施の形態をあげて本発明を説明したが、本発明は必ずしも上記実施の形態に限定されるものではなく、その技術的思想の範囲内において様々に変形し実施することが出来る。