特許法第30条第2項適用 令和3年5月27日にhttps://www.youtube.com/watch?v=4AmApD2tEC8にて出演者が本発明に係る機能を使用してゲームをプレイしている動画を公開
以下に添付図面を参照しながら、本発明の実施形態の一態様について詳細に説明する。かかる実施形態に示す数値等は、理解を容易とするための例示にすぎず、特に断る場合を除き、本発明を限定するものではない。なお、本明細書および図面において、実質的に同一の機能、構成を有する要素については、同一の符号を付することにより重複説明を省略し、また本発明に直接関係のない要素は図示を省略する。
(情報処理システムSの全体の構成)
図1は、情報処理システムSの概略的な構成を示した説明図である。情報処理システムSは、クライアントすなわちゲーム端末として機能するプレイヤ端末1と、サーバ1000と、通信基地局Naを有する通信ネットワークNとを含む、所謂クライアントサーバシステムである。
本実施形態の情報処理システムSは、プレイヤ端末1およびサーバ1000がゲーム装置Gとして機能する。プレイヤ端末1およびサーバ1000には、それぞれゲームの進行制御の役割分担がなされており、プレイヤ端末1とサーバ1000との協働によって、ゲームが進行可能となる。
プレイヤ端末1は、通信ネットワークNを介してサーバ1000との通信を確立することができる。プレイヤ端末1は、サーバ1000と無線もしくは有線による通信接続が可能な電子機器を広く含む。プレイヤ端末1としては、例えば、スマートフォン、携帯電話、タブレット装置、パーソナルコンピュータ、ゲーム機器等が挙げられる。本実施形態では、プレイヤ端末1として、スマートフォンが用いられる場合について説明する。
サーバ1000は、複数のプレイヤ端末1と通信接続される。サーバ1000は、ゲームをプレイするプレイヤごとに各種の情報を蓄積する。また、サーバ1000は、主に、プレイヤ端末1から入力される操作に基づき、蓄積された情報の更新や、プレイヤ端末1に対して画像や各種情報をダウンロードさせる等の処理を遂行する。
通信基地局Naは、通信ネットワークNと接続され、プレイヤ端末1と無線による情報の送受信を行う。通信ネットワークNは、携帯電話網、インターネット網、LAN(Local Area Network)、専用回線等で構成され、プレイヤ端末1とサーバ1000との無線もしくは有線による通信接続を実現する。
(プレイヤ端末1およびサーバ1000のハードウェアの構成)
図2Aは、プレイヤ端末1のハードウェアの構成を説明する図である。また、図2Bは、サーバ1000のハードウェアの構成を説明する図である。図2Aに示すように、プレイヤ端末1は、CPU(Central Processing Unit)10、メモリ12、バス14、入出力インタフェース16、記憶部18、通信部20、入力部22、出力部24を含んで構成される。
また、図2Bに示すように、サーバ1000は、CPU1010、メモリ1012、バス1014、入出力インタフェース1016、記憶部1018、通信部1020、入力部1022、出力部1024を含んで構成される。
なお、サーバ1000のCPU1010、メモリ1012、バス1014、入出力インタフェース1016、記憶部1018、通信部1020、入力部1022、出力部1024の構成および機能は、それぞれ、プレイヤ端末1のCPU10、メモリ12、バス14、入出力インタフェース16、記憶部18、通信部20、入力部22、出力部24と実質的に同じである。したがって、以下では、プレイヤ端末1のハードウェアの構成について説明し、サーバ1000については説明を省略する。
CPU10は、メモリ12に記憶されたプログラムを動作させ、ゲームの進行を制御する。メモリ12は、ROM(Read Only Memory)またはRAM(Random Access Memory)で構成され、ゲームの進行制御に必要となるプログラムおよび各種のデータを記憶する。メモリ12は、バス14を介してCPU10に接続されている。
バス14には、入出力インタフェース16が接続される。入出力インタフェース16には、記憶部18、通信部20、入力部22、出力部24が接続されている。
記憶部18は、DRAM(Dynamic Random Access Memory)等の半導体メモリで構成され、各種プログラムおよびデータを記憶する。プレイヤ端末1においては、記憶部18に記憶されたプログラムおよびデータが、CPU10によってメモリ12(RAM)にロードされる。
通信部20は、通信基地局Naと無線により通信接続され、通信ネットワークNを介して、サーバ1000との間で各種データおよびプログラムといった情報の送受信を行う。プレイヤ端末1においては、サーバ1000から受信したプログラム等が、メモリ12または記憶部18に格納される。
入力部22は、例えば、プレイヤの操作が入力される(操作を受け付ける)タッチパネル、ボタン、キーボード、マウス、十字キー、アナログコントローラ等で構成される。また、入力部22は、プレイヤ端末1に設けられた、あるいは、プレイヤ端末1に接続(外付け)された専用のコントローラであってもよい。さらには、入力部22は、プレイヤ端末1の傾きや移動を検知する加速度センサ、または、プレイヤの音声を検知するマイクで構成されてもよい。すなわち、入力部22は、プレイヤの意思を、識別可能に入力させることができる装置を広く含む。
出力部24は、ディスプレイ装置およびスピーカを含んで構成される。なお、出力部24は、プレイヤ端末1に接続(外付け)される機器でもよい。本実施形態では、プレイヤ端末1が、出力部24としてディスプレイ26を備え、入力部22として、ディスプレイ26に重畳して設けられるタッチパネルを備えている。
次に、本実施形態の情報処理システムS、ゲーム装置Gにより提供されるゲームについて説明する。プレイヤは、所謂ガチャと呼ばれる抽選により獲得したキャラクタや、運営側から配布されたキャラクタを所有することができる。また、プレイヤは、所謂ガチャと呼ばれる抽選により獲得したサポートカード(サポートキャラクタ)や、運営側から配布されたサポートカードを所持することができる。
詳しくは後述するが、本実施形態では、プレイヤは、競走馬を擬人化したキャラクタを育成する育成ゲームをプレイすることができる。また、プレイヤは、複数のプレイヤが参加可能なマルチプレイゲームをプレイすることができる。マルチプレイゲームでは、各プレイヤは、自身が育成したキャラクタを、競馬を模したレースにエントリーすることができる。各プレイヤは、マルチプレイゲームのレースを開催したり、他のプレイヤが開催したレースに、自身が育成したキャラクタを参加させたりすることができる。
以下では、まず、育成ゲームについて説明し、その後、マルチプレイゲームについて詳述する。
(育成ゲームの説明)
図3は、育成ゲームのおおまかな流れを説明するための図である。育成ゲームは、準備段階処理および育成段階処理に大別される。準備段階処理では、主に、メインキャラクタの登録およびサポートカードの登録が行われる。
<準備段階処理>
図4Aは、ホーム画面を説明する図である。本実施形態では、プレイヤ端末1においてゲームアプリを起動すると、ディスプレイ26にホーム画面が表示される。ホーム画面の下部には、メニューバー28が表示されている。
メニューバー28には、プレイヤが操作(タップ)可能な複数の操作部が設けられている。メニューバー28には、「home」と記されたホーム画面選択操作部28a、「race」と記されたレース画面選択操作部28b、「gacha」と記されたガチャ画面選択操作部28cが設けられている。なお、メニューバー28においては、ディスプレイ26に表示中の画面が識別できるように、各画面に対応する操作部が強調表示される。
ホーム画面において、ガチャ画面選択操作部28cがタップされると、不図示のガチャ画面がディスプレイ26に表示される。詳しい説明は省略するが、ガチャ画面では、キャラクタやサポートカードを抽選で獲得することができる所謂ガチャ抽選を行うことができる。プレイヤは、ゲーム内通貨を消費することで、ガチャ抽選を行うことができる。
また、ホーム画面には、育成ゲーム開始ボタン30が表示される。育成ゲーム開始ボタン30がタップされると、図4Bに示すメインキャラクタ選択画面がディスプレイ26に表示される。
図4Bは、メインキャラクタ選択画面を説明する図である。メインキャラクタ選択画面の中央部には、複数のキャラクタアイコン31が表示され、プレイヤの所持しているキャラクタが一覧表示される。また、メインキャラクタ選択画面の上部には、パラメータ表示部32が表示される。また、メインキャラクタ選択画面の下部には、「Return」と記されたリターン操作部33、および、「NEXT」と記されたネクスト操作部34が表示されている。
本実施形態では、キャラクタごとに能力パラメータの初期値が設定されており、パラメータ表示部32には、プレイヤが選択したキャラクタアイコン31に対応するキャラクタの能力パラメータの初期値が数値で表示される。本実施形態では、能力パラメータの数値が大きいほど、能力が高いことを示している。
図5Aは、能力パラメータ(初期値)テーブルを説明する図である。本実施形態では、図5Aに示すように、能力パラメータ(初期値)テーブルに、キャラクタごとの能力パラメータの初期値が記憶されている。そして、能力パラメータ(初期値)テーブルに記憶された能力パラメータの初期値に基づいて、パラメータ表示部32における能力パラメータの初期値の表示が行われる。
本実施形態では、キャラクタごとに複数種類の能力のそれぞれについて能力パラメータの初期値が設定されている。具体的には、能力パラメータとして、パラメータ表示部32において「Speed」と記されたスピードの能力パラメータ、パラメータ表示部32において「Stamina」と記されたスタミナの能力パラメータ、パラメータ表示部32において「Power」と記されたパワーの能力パラメータ、パラメータ表示部32において「Spirit」と記された根性の能力パラメータ、パラメータ表示部32において「Wisdom」と記された賢さの能力パラメータが設けられている。
なお、キャラクタごとの能力パラメータの初期値を、ゲーム内通貨を消費することによって、上昇させることができることとしてもよい。また、能力パラメータの値は、育成ゲーム開始後の所定の条件が成立した場合に変化する。そのため、プレイヤは、育成ゲームにおいて、キャラクタの能力パラメータの数値を上昇させることを目指すこととなる。
また、本実施形態では、キャラクタごとに適性パラメータ(初期値)が設定されている。図5Bは、適性パラメータ(初期値)テーブルを説明する図である。本実施形態では、図5Bに示すように、適性パラメータ(初期値)テーブルに、キャラクタごとの適性パラメータの初期値が記憶されている。適性パラメータの初期値はA~Gのアルファベットで7段階のいずれかに設定されている。なお、適性パラメータはAが最も適性が高く、Gが最も適性が低いことを示している。適性パラメータ(初期値)テーブルに記憶された適性パラメータの初期値に基づいて、パラメータ表示部32において適性パラメータの初期値の表示が行われてもよい。
本実施形態では、キャラクタごとに複数種類の適性のそれぞれについて適性パラメータの初期値が設定されている。具体的には、適性パラメータとして、芝およびダートのそれぞれの場適性に係る適性パラメータと、短距離、マイル、中距離、長距離のそれぞれの距離適性に係る適性パラメータと、逃げ、先行、差し、追込のそれぞれの脚質適性に係る適性パラメータとが設けられている。
なお、キャラクタごとの適性パラメータの初期値を、ゲーム内通貨を消費することによって、上昇させることができることとしてもよい。また、適性パラメータの値は、育成ゲーム開始後の所定の条件が成立した場合に変化してもよい。なお、育成ゲーム開始後に所定の条件が成立した場合に、適性パラメータがAよりも適性が高いSに設定される場合があってもよい。
図4Cは、キャラクタ詳細画面を説明する第1の図である。また、図4Dは、キャラクタ詳細画面を説明する第2の図である。メインキャラクタ選択画面のキャラクタアイコン31を長押しすると、ディスプレイ26にキャラクタ詳細画面が表示される。キャラクタ詳細画面には、メインキャラクタ選択画面において長押しされたキャラクタアイコン31に対応するキャラクタの能力の詳細が表示される。
キャラクタ詳細画面の中央部には、スキル操作部41およびイベント操作部42が表示される。図4Cに示すように、メインキャラクタ選択画面が表示された当初には、スキル操作部41が強調表示されており、キャラクタごとに設けられているスキルが表示される。スキルは、後述する育成レースや、マルチプレイゲームにおける対戦レース中に、所定の条件が成立することで発動され得る能力である。各キャラクタは、スキルが発動することでレース展開が有利となる。
図5Cは、スキルテーブルを説明する図である。図5Cに示すように、スキルテーブルには、プレイヤが所持しているキャラクタごとのスキルが記憶されている。そして、スキルテーブルに記憶されたスキルに基づいて、図4Cに示すように、キャラクタ詳細画面においてスキルが表示される。なお、スキルは、所持しているだけでは発動することがなく、獲得することで初めて発動可能となる。以下では、キャラクタが発動可能な状態のスキルを獲得済みスキルと呼ぶ。
キャラクタには、育成ゲーム開始当初から、1つの獲得済みスキル41aが設定されている。また、キャラクタには、獲得済みスキル41aとは別に、所持スキル41bが複数設定されている。所持スキル41bは、育成ゲーム開始後に、後述するスキルポイントを消費することで獲得することができるスキルである。つまり、所持スキル41bは、スキルポイントと引き換えに、獲得済みスキル41aとなり得る。
本実施形態では、図5Cに示すスキルテーブルおける「◎」に対応するスキルが、図4Cのキャラクタ詳細画面において獲得済みスキル41aとして表示される。また、図5Cに示すスキルテーブルおける「〇」に対応するスキルが、図4Cのキャラクタ詳細画面において所持スキル41bとして表示される。本実施形態では、図4Cのキャラクタ詳細画面に示すように、獲得済みスキル41aと所持スキル41bとが区別しやすいように、獲得済みスキル41aが強調表示されている。
なお、本実施形態では、図4Cにおいて、キャラクタごとに設けられているスキルとして、1つの獲得済みスキル41aと7つの所持スキル41bとが表示されている場合を示しているが、これに限定されるものではない。例えば、キャラクタごとに獲得済みスキル41aおよび所持スキル41bの個数が異なることとしてもよい。また、例えば、ゲーム内通貨を消費することによって、キャラクタごとの獲得済みスキル41aおよび所持スキル41bの個数が増加することとしてもよい。
また、プレイヤがキャラクタ詳細画面のイベント操作部42をタップすると、図4Dに示すように、キャラクタ詳細画面の内容が切り替わり、キャラクタごとに設けられた専用イベント42aが表示される。この場合、図4Dに示すように、イベント操作部42が強調表示される。専用イベント42aは、育成ゲームにおいて所定の条件が成立した場合に発生する。専用イベント42aの発生により、育成ゲームに登場するキャラクタに係るストーリが表示されたり、育成ゲームにおける各種ステータスの値が変化したりする。
図5Dは、専用イベントテーブルを説明する図である。図5Dに示すように、専用イベントテーブルには、プレイヤが所持しているキャラクタごとに専用イベント42aが記憶されている。そして、専用イベントテーブルに記憶された専用イベント42aに基づいて、図4Dに示すように、キャラクタ詳細画面において専用イベント42aが表示される。なお、専用イベント42aには、スキルを所持あるいは獲得可能とするヒントイベント、キャラクタの能力パラメータの数値を上昇または減少させる能力イベント、キャラクタの適性パラメータを変化させる適性イベント、キャラクタに係るストーリを表示するストーリイベント等が含まれてもよい。
なお、図4Dに示すキャラクタ詳細画面において表示されている専用イベント42aは、育成ゲームの実行中にすべて実行されることとしてもよいし、育成ゲームの実行中に少なくとも一部が実行されることとしてもよいし、所定の条件が成立しなかった場合には、育成ゲームの実行中にすべてが実行されないこととしてもよい。また、例えば、ゲーム内通貨を消費することによって、キャラクタごとに設けられた専用イベント42aの個数が増加することとしてもよい。また、所定条件が成立した場合に、専用イベント42aとして表示されていない専用イベント42aが育成ゲーム中に実行されることとしてもよい。
また、図4Cおよび図4Dに示すように、キャラクタ詳細画面の下部には、「close」と記されたクローズ操作部43が表示されている。キャラクタ詳細画面のクローズ操作部43がタップされた場合、キャラクタ詳細画面の表示が終了し、メインキャラクタ選択画面がディスプレイ26に表示される。また、図4Bに示すメインキャラクタ選択画面においてリターン操作部33がタップされると、図4Aに示すホーム画面がディスプレイ26に表示される。
また、図4Bに示すメインキャラクタ選択画面においてネクスト操作部34がタップされると、選択中のキャラクタがメインキャラクタに設定される。そして、メインキャラクタが設定されると、ディスプレイ26にサポートカード設定画面がディスプレイ26に表示される。
図6Aは、サポートカード設定画面を説明する第1の図である。サポートカード設定画面の中央部には、サポートカード表示領域51が設けられている。サポートカード表示領域51には、複数のサポートカード設定操作部52が含まれる。また、サポートカード設定画面の下部には、「Return」と記されたリターン操作部53および「START」と記されたスタート操作部54が表示される。リターン操作部53が操作されると、図4Bに示すメインキャラクタ選択画面がディスプレイ26に表示される。
サポートカード設定操作部52は、プレイヤが設定可能なサポートカードと同じ数表示される。ここでは、プレイヤは6つのサポートカードを設定することができるため、サポートカード設定操作部52が6つ表示されている。なお、サポートカード設定画面の表示当初では、サポートカード設定操作部52が空欄で表示されている。
プレイヤは、所持しているサポートカードの中から、6種類のサポートカードを設定することができる。なお、設定可能な6種類の内、一部(例えば、5種類)をプレイヤが所持しているサポートカードの中から選択可能とし、残り(例えば、1種類)をプレイヤが所持していないサポートカードの中から選択可能としてもよい。
図6Bは、サポートカード選択画面を説明する図である。図6Aのサポートカード設定画面のサポートカード設定操作部52が操作されると、図6Bに示すサポートカード選択画面がディスプレイ26に表示される。サポートカード選択画面には、プレイヤが所持しているサポートカードに対応するアイコン61が一覧表示される。サポートカード選択画面に表示されているアイコン61をタップすることで、プレイヤは、サポートカードを選択することができる。
図7Aは、サポートカードテーブルを説明する図である。図7Aに示すように、サポートカードテーブルには、プレイヤの所持しているサポートカードの種別ごとに、サポートキャラクタの種類、レアリティ、レベル、得意トレーニングが記憶されている。サポートキャラクタは、サポートカードの種別と一対一で対応している。つまり、サポートカードには、必ず、1体のキャラクタがサポートキャラクタとして対応付けられている。
本実施形態では、サポートカードごとにレアリティが設定されている。レアリティは、R(レア)、SR(スーパーレア)、SSR(スーパースペシャルレア)の3段階が設けられている。なお、Rが最もレアリティが低く、SSRが最もレアリティが高く設定されている。本実施形態では、レアリティが高いサポートカードほど、後述するサポート効果が高くなる傾向がある。また、本実施形態では、レアリティが高いサポートカードほど、後述する所持スキルの数やサポートイベントの数が多くなる傾向がある。
サポートカードのレベルは、レベル1~レベル50の50段階が設けられている。サポートカードのレベルは、プレイヤによって上昇させることが可能であり、プレイヤによって上昇されたレベルがサポートカードごとに記憶されている。なお、サポートカードは、育成ゲームの実行、または、ゲーム内通貨を使用することでレベルを上昇させることができる。なお、サポートカードのレベルは、レアリティによって上限が設けられている。
例えば、レアリティがRのサポートカードは、レベル20が上限として定められており、レアリティがSRのサポートカードは、レベル25が上限として定められており、レアリティがSSRのサポートカードは、レベル30が上限として定められている。
なお、レベルの上限は、所定の条件が成立した場合に、段階的に上昇させることができる。例えば、レアリティがRのサポートカードは、最大でレベル40まで上限を上昇させることが可能であり、レアリティがSRのサポートカードは、最大でレベル45まで上限を上昇させることが可能であり、レアリティがSSRのサポートカードは、最大でレベル50まで上限を上昇させることが可能としてもよい。
図7Bは、サポート効果テーブルを説明する図である。図7Bに示すように、サポート効果テーブルには、プレイヤの所持しているサポートカードの種別ごとに、サポート効果が記憶されている。
サポート効果は、育成ゲームにおける各種ステータスを上昇させるものである。サポートカードには、サポート効果の対象が複数設けられている。サポート効果の対象としては、体力、速さ、スタミナ、パワー、根性、賢さ等が挙げられる。
図7Cは、所持スキルテーブルを説明する図である。図7Cに示すように、所持スキルテーブルには、プレイヤが所持するサポートカードごとに、所持スキルが設定されている。本実施形態では、メインキャラクタに設定されたキャラクタが所持スキルを所持しているのと同様に、サポートカードごとに所持スキルが設定されている。メインキャラクタは、育成ゲーム中にヒントイベントが発生することで、サポートカードごとに設定されている所持スキルを獲得可能となる。
図7Dは、サポートイベントテーブルを説明する図である。図7Dに示すように、サポートイベントテーブルには、プレイヤが所持するサポートカードごとに、発生し得るサポートイベントが記憶されている。サポートイベントとは、育成ゲーム中に発生する可能性があるイベントである。サポートイベントが発生した場合、育成ゲームにおける各種ステータスの値が上昇または減少する場合がある。
なお、サポートイベントは、ターン数に応じて実行されてもよいし、所定の抽選により実行するサポートイベントが決定されてもよい。また、実行するサポートイベントは、1ターンに複数選択されてもよい。
図6Cは、サポートカード設定画面を説明する第2の図である。本実施形態では、6つ全てのサポートカードが選択されると、図6Cに示すように、スタート操作部54が操作可能になる。一方で、6つ全てのサポートカードが選択されていない場合には、図6Aに示すように、スタート操作部54が操作不可能となっている。サポートカード設定画面においてスタート操作部54がタップされると、選択中のサポートカードが登録され、準備段階処理が終了となる。
<育成段階処理>
準備段階処理が終了すると、育成段階処理が開始される。育成段階処理では、メインキャラクタとして登録されたキャラクタの育成が可能となる。
図8は、選択項目テーブルを説明する図である。選択項目テーブルは、メインキャラクタの種別ごとに設けられている。ただし、メインキャラクタの種別にかかわらず、共通の選択項目テーブルが設けられてもよい。育成ゲームは、図8に示すように、第1ターンから第60ターンで構成されており、各ターンにおけるプレイヤの選択結果に応じて各種のパラメータの更新が行われるゲーム性を有している。
図9Aは、育成ゲーム画面を説明する第1の図である。図9Bは、育成ゲーム画面を説明する第2の図である。育成段階処理に移行すると、図9A、図9Bに示す育成ゲーム画面がディスプレイ26に表示される。育成ゲーム画面の上部には、体力表示部71および調子表示部72が表示される。メインキャラクタには、「体力」のパラメータが設けられている。「体力」のパラメータは、主に、後述するトレーニングで失敗する確率である失敗率の算出に用いられる。体力表示部71は、「体力」の上限値に対して、現在のメインキャラクタの「体力」の残量が視覚的に把握できるように表示される。
また、メインキャラクタには、「調子」のパラメータが設けられている。調子表示部72は、現在のメインキャラクタの「調子」が、複数段階(絶不調、不調、普通、好調、絶好調の5段階)で視覚的に把握できるように表示される。「調子」のパラメータが高いほど、メインキャラクタのレース展開が有利となり、また、トレーニングによる能力パラメータの上昇値が大きくなる。
また、図9A、図9Bに示すように、育成ゲーム画面の中央部には、メインキャラクタの画像、現在のメインキャラクタのステータスを数値および複数段階のランク(G+、F、F+、E、E+、D、D+、C、C+、B、B+、A、A+、S、SS、SS+の16段階)で示すステータス表示部73、育成ゲームにおいてメインキャラクタが所持しているスキルポイントの残量を数値で示すスキルポイント表示部74が表示されている。具体的には、本実施形態では、「Speed」(スピード)、「Stamina」(スタミナ)、「Power」(パワー)、「Spirit」(根性)、「Wisdom」(賢さ)の各能力パラメータの数値およびランクが表示される。
また、図9A、図9Bに示すように、育成ゲーム画面の下部には、「Rest」と記されたレスト操作部75、「Training」と記されたトレーニング操作部76、「Skill」と記されたスキル操作部77、「Going Out」と記されたゴーイングアウト操作部78、「Race」と記された育成レース操作部79が表示されている。また、育成ゲーム画面の上部には、現在のターン数が表示される。
プレイヤは、各ターンにおいて「Rest」(レスト操作部75)、「Training」(トレーニング操作部76)、「Going Out」(ゴーイングアウト操作部78)、「Race」(育成レース操作部79)のいずれかの項目を選択する。このとき、図8に示すように、各ターンにおいて選択可能な項目が予め設定されている。
図8に示す例では、第12ターン、第20ターン、第30ターン、第35ターン、第57ターン、第59ターン、第60ターンにおいて、「Race」(育成レース操作部79)の項目が選択可能であり、「Rest」(レスト操作部75)、「Training」(トレーニング操作部76)、「Going Out」(ゴーイングアウト操作部78)の各項目が選択不可能となるように設定される。
また、この例では、第1ターンから第11ターンまで、「Rest」(レスト操作部75)、「Training」(トレーニング操作部76)、「Going Out」(ゴーイングアウト操作部78)の各項目が選択可能であり、「Race」(育成レース操作部79)の項目が選択不可能となっている。
一方で、スキル操作部77は、全てのターンにおいて常時選択可能に設定されている。なお、詳しくは後述するが、スキル獲得を行ったとしても、当該ターンは終了しない。
図10Aは、トレーニング画面を説明する第1の図である。図10Bは、トレーニング画面を説明する第2の図である。育成ゲーム画面のトレーニング操作部76が操作されると、ディスプレイ26にトレーニング画面が表示される。
図10Aに示すように、トレーニング画面の下部には、トレーニング項目が表示される。ここでは、「Speed」と記されたスピード操作部81、「Stamina」と記されたスタミナ操作部82、「Power」と記されたパワー操作部83、「Spirit」と記された根性操作部84、「Wisdom」と記された賢さ操作部85が表示される。
プレイヤが各操作部81~85のいずれかを1回タップすると、タップした操作部81~85に対応するトレーニング項目が仮選択されるとともに、仮選択されたトレーニング項目に対応する操作部81~85が強調表示される。図10Aでは、パワー操作部83が仮選択された状態を示している。また、図10Bでは、スタミナ操作部82が仮選択された状態を示している。
また、各操作部81~85には、トレーニング項目ごとのトレーニングレベルが併せて表示される。トレーニングレベルは、当該項目のトレーニング回数に基づいて上昇するパラメータであり、トレーニングレベルが高いほど、トレーニングを実行した際に能力パラメータが上昇する数値が大きくなる。トレーニングレベルは、当初はレベル1に設定されており、最大でレベル5まで上昇する。
また、仮選択中の操作部81~85には、「Failure」と記された失敗率表示部86が表示される。失敗率表示部86に数値で表示される失敗率は、体力表示部71に表示される体力の残量に反比例して上昇するように設定されている。
また、ステータス表示部73において、仮選択中の操作部81~85に対応するトレーニングが実行され、成功した場合に能力パラメータが上昇する値が表示される。例えば、図10Aの場合には、パワー操作部83が仮選択されており、ステータス表示部73の「Stamina」に「+8」、「Power」に「+10」と表示される。また、図10Bの場合には、スタミナ操作部82が仮選択されており、ステータス表示部73の「Stamina」に「+15」、「Spirit」に「+5」と表示される。
また、トレーニングを実行した場合に後述するイベントが発生するトレーニング項目に対応する操作部81~85には、イベント報知表示87が表示される。
また、トレーニング画面の右上部には、仮選択中の操作部81~85の項目ごとに、トレーニングに配置されたキャラクタのアイコン88が表示される。すなわち、メインキャラクタと異なる複数のサブキャラクタのいずれか1または複数が、複数種類のトレーニング項目のいずれかに対応付けられる。
また、トレーニングを実行した場合にアイコン88に表示されたキャラクタに対応して所定のイベントが発生する場合には、対応するアイコン88にイベント報知表示87が表示される。
図10Cは、トレーニング結果報知画面を説明する図である。仮選択中の操作部81~85のいずれかが、再度タップされると、タップされた操作部81~85に対応するトレーニングが実行される。このように、メインキャラクタの能力を示す複数の能力パラメータのいずれか1または複数に対応する複数種類のトレーニング項目が選択可能である。
そして、トレーニングが実行されると、トレーニングの成功または失敗が報知されるトレーニング結果報知画面がディスプレイ26に表示される。ここでは、「成功」という文字が表示され、トレーニングの成功がプレイヤに報知される。
また、このとき、トレーニングの成功に基づいて、ステータス表示部73の能力パラメータが更新表示される。すなわち、プレイヤによって選択されたトレーニング項目に対応するメインキャラクタの能力パラメータが更新される。
ここでは、図10Aまたは図10Bでステータス表示部73に表示されていたトレーニングが成功した場合に上昇する能力パラメータの値が加算される。また、実行したトレーニング項目に応じて体力表示部71の表示が更新される。なお、スピード、スタミナ、パワー、根性のいずれかのトレーニングを行い、成功した場合には、体力が減少する。一方で、賢さのトレーニングを行い、成功した場合には、体力が回復する。
また、トレーニングに失敗した場合には、所定のペナルティが付与される。ペナルティの内容としては、具体的には、体力の低下、能力パラメータの数値の低下、調子の減少等が含まれる。なお、例えば、失敗率が低いときに付与されるペナルティよりも、失敗率が高いときに付与されるペナルティの方が、内容が重い(体力の低下する数値が大きい、能力パラメータの低下する数値が大きい、減少する調子の段階が大きい)ものとすることができる。また、ペナルティの内容をトレーニング項目に応じて決定してもよい。例えば、スピードのトレーニングが実行され、失敗した場合にはスピードの能力パラメータの値が減少し、パワーのトレーニングが実行され、失敗した場合にはパワーの能力パラメータの値が減少することとしてもよい。また、一部のトレーニング項目(例えば、賢さ)については、トレーニングが失敗したとしても、ペナルティが付与されないこととすることができる。
図10Dは、イベント画面を説明する図である。トレーニング結果報知画面の表示が終了すると、ディスプレイ26にイベント画面が表示されることがある。イベント画面では、様々なイベントが実行される。なお、イベントが複数発生する場合もある。
例えば、ヒントイベントが発生した場合には、スキルのヒントが得られる。スキルのヒントが得られると、プレイヤは、スキルポイントを消費してスキルを獲得することができる。スキルは複数種類設けられており、スキルごとに所定の能力が発動することがある。スキルには、それぞれ発動条件と効果が定められており、各々の発動条件が成立した場合に、予め定められた効果が発動する。スキルは、後述する育成レースの実行中に発動される場合がある。
イベントには、スキルを獲得するイベント、体力が回復するイベント、体力が減少するイベント、能力パラメータが上昇するイベント、能力パラメータが減少するイベント、調子が上昇するイベント、調子が減少するイベント等が含まれている。発生するイベントの種類は、ターンごとに予め定められたイベントや、所定の抽選により当選した場合に発生するイベントがある。
また、発生した全てのイベントが終了すると、次のターンに係る育成ゲーム画面が表示される。
図11Aは、スキル画面を説明する第1の図である。図11Bは、スキル画面を説明する第2の図である。育成ゲーム画面のスキル操作部77が操作されると、図11Aに示すスキル画面がディスプレイ26に表示される。
スキル画面には、獲得済みスキル、メインキャラクタに予め設定されている所持スキル、各種イベントの発生等により所持した所持スキル等が表示される。また、所持スキルに対してヒントイベントが発生した場合には、この所持スキルを獲得するために消費するスキルポイントが割り引かれる。ここでは、ヒントを獲得した所持スキルについては、獲得するために必要なスキルポイントが割り引かれて表示されている。このとき、割引率が併せて表示されることとなる。
また、スキル画面に表示されるスキルには、それぞれのスキルの発動条件および発動した際の効果が表示される。
また、スキル画面の上部には、体力表示部71、調子表示部72、スキルポイント表示部74が表示される。また、スキル画面の上部には、現在のターン数が表示される。
プレイヤの操作に基づいて、スキルポイントを消費して所持スキルを獲得すると、図11Bに示すように、獲得したスキルに「GET」と表示されて、所持スキルを獲得したことが報知される。また、スキルポイント表示部74においては、消費したスキルポイントが、表示されていたスキルポイントから減算される。
図12Aは、育成レース選択画面を説明する図である。育成ゲーム画面の育成レース操作部79が操作されると、図12Aに示す育成レース選択画面が表示される。育成レースは、メインキャラクタが所謂ノンプレイヤキャラクタ(以下、NPCという)とレースを行うものである。
育成レース選択画面の上部には、体力表示部71、調子表示部72が表示される。また、育成レース選択画面の中央部には、出場する育成レースの種別を選択するための育成レース選択操作部101が表示される。また、育成レース選択画面の下部には、「Start」と記されたスタート操作部102が表示される。なお、育成レース選択画面の育成レース選択操作部101によって選択できるレースは、ターンごとに予め設定されている。また、各レースに出走するための条件が予め設定されており、当該条件を満たしている場合に、当該レースに出走することができるようにしてもよい。
図12Bは、育成レース開始画面を説明する図である。育成レース選択操作部101で出場する育成レースの種別が選択された状態で、スタート操作部102が操作されると、図12Bに示す育成レース開始画面が表示される。育成レース開始画面の中央部には戦略表示部111が表示される。また、戦略表示部111には、現在選択中の戦略(追込、差し、先行、逃げ)が強調表示されるとともに、「Change」と記されたチェンジ操作部112が表示されている。チェンジ操作部112が操作されると、不図示の戦略変更画面がディスプレイ26に表示される。プレイヤは、戦略変更画面における操作により、育成レースにおける戦略を任意の戦略に変更することができる。
また、育成レース開始画面の下部には、「Result」と記されたリザルト操作部113、「Race」と記されたレース操作部114が表示されている。リザルト操作部113またはレース操作部114が操作されると、各能力パラメータに基づいて、レースのシミュレーションが行われる。このシミュレーションにより、レース展開や着順が決定される。
レース操作部114が操作された場合、ディスプレイ26には、キャラクタのレース画面が再生される。一方、リザルト操作部113が操作された場合には、レース画面が再生されることなく、レース結果のみが表示される。
図12Cは、育成レース結果画面を説明する図である。上記のレース画面の再生が終了した場合、および、リザルト操作部113が操作された場合、育成レース結果画面がディスプレイ26に表示される。育成レース結果画面では、当該育成レースにおける着順が表示される。
以上のように、プレイヤは、育成ゲームにおいてキャラクタを育成することができる。プレイヤは、例えば200体等、所定の上限数の範囲内で、育成したキャラクタを保持することができる。プレイヤが保持するキャラクタには、育成ゲームにおける最終的な能力パラメータが設定され、最終的な能力パラメータ等によって育成ランクが付与される。プレイヤは、異なる能力パラメータ、育成ランクが設定された同一のキャラクタを複数保持することができる。
プレイヤが育成したキャラクタは、育成ゲームとは別に設けられるさまざまなレースに出走させることができる。つまり、プレイヤは、各種のレースで勝利するために、育成ゲームにおいて、より能力パラメータおよび育成ランクの高いキャラクタを育成することとなる。本実施形態では、プレイヤが育成したキャラクタを出走させることができるレースとして、マルチプレイゲームの対戦レースが設けられている。以下に、マルチプレイゲームについて説明する。
(マルチプレイゲームの説明)
マルチプレイゲームは、複数のプレイヤによる対戦ゲームである。具体的には、プレイヤは、マルチプレイゲームにおいて対戦レースを選択し、自身が育成したキャラクタを、選択した対戦レースに出走させることができる。対戦レースでは、出走するキャラクタの能力パラメータや獲得スキル等に基づいてレースのシミュレーションが行われ、レース結果が導出される。
本実施形態では、各プレイヤは、複数の対戦レースにエントリーすることができる。ここで、対戦レースの「エントリー」は、「開催」および「参加」に大別される。「開催」は、プレイヤ自身が対戦レースを開催することを意味する。「参加」は、他のプレイヤが開催した対戦レースに参加することを意味する。
なお、「参加」には、自身の保持するキャラクタを、他のプレイヤが開催する対戦レースに出走させる「出走」と、自身のキャラクタを出走させずに、他のプレイヤが開催する対戦レースを単に視聴する「観戦」が含まれる。また、ここでは、対戦レースを「開催」する場合、プレイヤは自身の保持するキャラクタを、当該レースに出走させる必要がある。ただし、対戦レースを「開催」する場合にも、「出走」と「観戦」とを選択可能であってもよい。
図13Aは、マルチプレイゲームトップ画面を説明する図である。メニューバー28のレース画面選択操作部28bが操作されると、図13Aに示すマルチプレイゲームトップ画面が表示される。マルチプレイゲームトップ画面には、開催タブ201、参加タブ202、エントリー情報タブ203が設けられる。開催タブ201は、対戦レースを開催するための操作部であり、開催タブ201が操作されると、図13Bに示す開催レース選択画面が表示される。
図13Bは、開催レース選択画面を説明する図である。開催レース選択画面には、開催可能なレース種別を示す開催可能レース画像204が複数表示される。開催可能レース画像204には、当該レースに関する情報が表示されている。各レースには、レース名、コース、馬場、距離、最大出走人数等が予め設定されている。開催レース選択画面において、開催可能レース画像204がタップされると、タップされたレースが仮選択された状態となる。そして、レースが仮選択された状態で、開催レース選択画面に表示される開始ボタン205がタップされると、仮選択されたレースが開催レースに決定される。
以下では、対戦レースを開催するプレイヤをホストプレイヤ(第1プレイヤ)と呼び、ホストプレイヤから見て自身が開催する対戦レースを開催レースと呼ぶ場合がある。また、他のプレイヤが開催する対戦レースに参加するプレイヤをゲストプレイヤ(第2プレイヤ)と呼ぶ。
図13Cは、モード選択画面を説明する図である。開催レース選択画面において開催レースが決定されると、モード選択画面が表示される。本実施形態では、開催レースのモードとして、シンプルモードおよび詳細モードが設けられている。シンプルモードは、開催レースの概要である開催条件、および、開催レースのコンディション等のレース条件が、予め用意されたデフォルトの条件となるモードである。一方、詳細モードは、開催条件およびレース条件を、プレイヤが任意に設定することができるモードである。
モード選択画面には、シンプルモード選択操作部206、および、詳細モード選択操作部207が表示される。シンプルモード選択操作部206がタップされると、シンプルモードが仮選択された状態となり、詳細モード選択操作部207がタップされると、詳細モードが仮選択された状態となる。そして、モードが仮選択された状態で、モード選択画面に表示される開始ボタン208がタップされると、仮選択されたモードが本決定される。
図14は、シンプルモードを説明する図である。シンプルモードが本決定されると、不図示のシンプルモード設定画面が表示される。プレイヤは、シンプルモード設定画面において、ルーム名およびメッセージを入力することができる。ルーム名およびメッセージは、他のプレイヤが参加する対戦レースを検索する際に閲覧可能な情報である。なお、シンプルモード設定画面においては、初期設定として、ルーム名が「ルームマッチ参加募集中」に、メッセージが「よろしくお願いします。」に設定されている。プレイヤは、シンプルモード設定画面において、これらのルーム名およびメッセージを編集して登録することができる。
ここで、開催レースには、開催条件として、出走人数、開始時間、観戦可否、プライベート枠が設定される。
出走人数は、開催レースに出走するキャラクタの人数である。なお、開催レースは、出走登録がなされたキャラクタ数が、出走人数未満であった場合、不足した数だけNPCが追加される。したがって、マルチプレイゲームにおける対戦レースは、必ず、設定された出走人数で実行されることとなる。ただし、対戦レースは、プレイヤが出走させるキャラクタのみで実行されてもよい。また、出走登録がなされたキャラクタ数が所定数未満の場合には、開催レースが中止されてもよい。
開催可能なレースの種別には、それぞれ出走人数として規定数が設けられている。シンプルモードが選択された場合には、開催レースのレース種別ごとに予め定められた規定数が出走人数として設定される。
開始時間は、開催レースを開始する時間を示す情報である。より厳密には、開始時間は、レース結果を導出する時間を示す情報である。ここでは、開始時間として、レース結果が導出されるまでの時間、すなわち、残り時間が設定される。開始時間が設定されると、以後、時間の経過に伴って残り時間が減算され、残り時間が0になると、レース結果が導出される。なお、開始時間に代えて開始時刻が設定され、開始時刻になるとレース結果が導出されるとしてもよい。また、レースの種別によって、開始時間が設定されたり、開始時刻が設定されたりしてもよい。シンプルモードが選択された場合には、「30分後」が開始時間として設定される。以下では、開始時間を残り時間として説明する場合がある。
観戦可否は、キャラクタを出走させない第三者によるレースの観戦、視聴を許可するか否かを示す。シンプルモードが選択された場合には、観戦可否が「許可」に設定され、第三者によるレースの観戦が可能となる。
プライベート枠は、ホストプレイヤと所定の関係性を有するプレイヤ専用の出走枠である。詳しい説明は省略するが、所定の関係性を有するプレイヤとは、例えば、ホストプレイヤがフォロワあるいはフレンドとして設定しているプレイヤ、ホストプレイヤと同一のサークルに所属しているプレイヤ等である。
例えば、出走人数が18人の対戦レースにおいて、プライベート枠が「3」に設定されたとする。この対戦レースには、ホストプレイヤと所定の関係性を有していないプレイヤが保持するキャラクタは、最大で15体までしか出走させることができない。このように、プライベート枠は、ホストプレイヤと所定の関係性を有するプレイヤのために、出走枠を確保するために設定される。なお、シンプルモードが選択された場合、プライベート枠は「0」に設定される。
また、開催レースには、レース条件として、季節、天候・状態、やる気、育成ランクが設定される。
季節は、春夏秋冬のいずれかであり、設定された季節は、レース結果に影響を及ぼし得る。つまり、季節は、レース結果を導出するパラメータの1つである。各レース種別には、規定の季節が設けられており、シンプルモードが選択された場合には、開催レースのレース種別ごとに予め定められた規定の季節が設定される。
天候・状態は、レース時の天候、および、馬場の状態であり、設定された天候・状態は、レース結果に影響を及ぼす。つまり、天候・状態は、レース結果を導出するパラメータの1つである。シンプルモードが選択された場合には、開催レースの開始時に、抽選によってランダムに天候・状態が決定される。なお、天候・状態は、開催レースの開始時ではなく、開催レースの開始前の所定のタイミングで決定されてもよい。
やる気は、レースに出走するキャラクタの「調子」であり、上記した育成ゲームと同様に、「絶好調」、「好調」、「普通」、「不調」、「絶不調」の5段階が設けられている。やる気は、レースに出走するキャラクタの能力パラメータの変数として演算されるため、レース結果に影響を及ぼす。シンプルモードが選択された場合には、開催レースの開始時に、抽選によってランダムにやる気が決定される。なお、やる気は、開催レースの開始時ではなく、開催レースの開始前の所定のタイミングで決定されてもよい。また、やる気は、出走するキャラクタごとに決定されてもよいし、決定されたやる気が全てのキャラクタに一様に設定されてもよい。
育成ランクは、キャラクタの能力を分類するパラメータであり、能力パラメータ等に基づいて導出される。プレイヤは、開催レースにおいて、対戦レースに出走可能なキャラクタの育成ランクを所定ランク以上といった具合に設定することができる。ただし、シンプルモードが選択された場合には、育成ランクの「指定なし」が設定される。この「指定なし」は、全ての育成ランクのキャラクタが開催レースに出走可能であることを意味している。
以上のように、シンプルモードが選択された場合には、開催条件およびレース条件が初期の条件に設定される。ホストプレイヤは、シンプルモードで開催レースを設定した場合、ルーム名およびメッセージを事後的に変更することはできるが、開催条件およびレース条件を変更することはできない。
図15は、詳細モードを説明する図である。詳細モードが本決定されると、不図示の詳細モード設定画面が表示される。プレイヤは、詳細モード設定画面において、ルーム名およびメッセージを入力することができる。なお、詳細モード設定画面においても、初期設定として、ルーム名が「ルームマッチ参加募集中」に設定されており、メッセージが「よろしくお願いします。」に設定されている。プレイヤは、詳細モード設定画面において、これらのルーム名およびメッセージを編集して登録することができる。
また、詳細モードにおいては、プレイヤが、上記した開催条件を任意に設定することができる。具体的には、プレイヤは、出走人数を、11~18人の中からいずれかに設定することができる。また、プレイヤは、開始時間を、30分後、1時間後、3時間後、6時間後、12時間後、24時間後の中から選択することができる。また、プレイヤは、観戦可否を「許可」、「不許可」から選択することができる。「不許可」が選択された場合、第三者は当該レースを観戦、視聴することができない。また、プレイヤは、プライベート枠を、0から、先に選択した出走人数の範囲内で選択することができる。
また、詳細モードにおいては、プレイヤが、上記したレース条件を任意に設定することができる。具体的には、プレイヤは、季節を、ランダム、春、夏、秋、冬の中からいずれかに設定することができる。なお、ランダムが選択された場合には、シンプルモードと同様に、レース開始時に抽選によりランダムに季節が決定される。
また、プレイヤは、天候・状態を、ランダムおよび図示の12パターンの中からいずれかに設定することができる。なお、ランダムが選択された場合には、シンプルモードと同様に、レース開始時に抽選によりランダムに天候・状態が決定される。
また、プレイヤは、やる気を、ランダムおよび図示の5パターンの中からいずれかに設定することができる。なお、ランダムが選択された場合には、シンプルモードと同様に、レース開始時に抽選によりランダムにやる気が決定される。また、ランダム以外のいずれかのパターンが決定された場合には、出走する全てのキャラクタのやる気が、選択されたやる気に一様に設定される。
また、プレイヤは、開催レースに出走可能なキャラクタの育成ランクを選択することができる。ここでは、出走可能なキャラクタの育成ランクを、図示のいずれかに設定することができる。
上記のように、シンプルモード設定画面または詳細モード設定画面において各種の設定が完了すると、ディスプレイ26に出走キャラクタ選択画面が表示される。ホストプレイヤは、出走キャラクタ選択画面において、開催レースに出走させるキャラクタを選択することができる。
図16Aは、出走キャラクタ選択画面を説明する図である。図16Aに示すように、出走キャラクタ選択画面には、プレイヤが育成したキャラクタ、すなわち、プレイヤが保持しているキャラクタに対応するキャラアイコン210が表示される。キャラアイコン210がタップされると、キャラアイコン210に対応するキャラクタが仮選択され、当該キャラクタの能力パラメータが、能力情報表示部212に表示される。プレイヤは、能力情報表示部212に表示される能力パラメータを確認して、出走させるキャラクタを選択することができる。
いずれかのキャラクタが仮選択された状態で、出走キャラクタ選択画面に表示される選択操作部214が操作されると、ディスプレイ26に、戦略選択画面が表示される。
図16Bは、戦略選択画面を説明する図である。戦略選択画面には、上記した育成ゲームにおける戦略表示部111が表示される。プレイヤは、戦略表示部111において戦略を設定することができる。なお、戦略表示部111の下部には、取消操作部216および更新操作部218が表示される。取消操作部216が操作されると、出走キャラクタ選択画面が表示され、更新操作部218が操作されると、エントリー情報画面が表示される。
図16Cは、エントリー情報画面を説明する図である。エントリー情報画面には、出走キャラクタ情報タブ220が表示される。出走キャラクタ情報タブ220には、プレイヤが選択したキャラクタに係る情報が記される。ここで、プレイヤは、1の開催レースに対して、最大で3体のキャラクタを出走させることができる。エントリー情報画面には、出走キャラクタ情報タブ220が3つ表示されており、1体のキャラクタが選択された状態では、図16Cに示すように、最も上方に配置される出走キャラクタ情報タブ220に、キャラクタに係る情報が記される。
そして、キャラクタに係る情報が記されていない出走キャラクタ情報タブ220がタップされると、図16Aに示す出走キャラクタ選択画面が表示され、上記と同様にして、キャラクタを追加することができる。エントリー情報画面には、決定ボタン222が設けられており、決定ボタン222が操作されると、対戦レースの開催に係る登録手続きが完了する。つまり、決定ボタン222が操作されることで、開催される対戦レースの開催条件、レース条件、当該開催レースに出走するキャラクタ、および、当該キャラクタの作戦が確定する。
対戦レースの開催に係る登録手続きが完了すると、サーバ1000においてレースIDが発行される。レースIDは、対戦レースごとに付与されるものであり、レースIDの発行とともに、サーバ1000においてルームが作成される。なお、ルームというのは、マルチプレイゲームを実行するために複数のプレイヤIDを紐付けて管理可能なID、サーバ1000上の記憶領域、データを意味する。また、ルームは、プレイヤ目線では、対戦レースに参加するキャラクタやプレイヤが集う仮想の空間とも言える。なお、本実施形態では、1つのルームにおいて、1の対戦レースが実行されることから、レースIDはルームIDと同義と言える。ルームが作成されると、対戦レースを開催したホストプレイヤのディスプレイ26に、待機ルーム画面が表示される。
図16Dは、ホストプレイヤの待機ルーム画面を説明する図である。図16Dに示すように、待機ルーム画面には、ホストプレイヤが設定したルーム名、対戦レースに出走するキャラクタの画像、レースIDが表示される。レースIDの近傍には、コピーボタン224が設けられる。詳しい説明は省略するが、コピーボタン224が操作されると、レースIDがコピーされる。レースIDをコピーすることで、プレイヤは、ゲームアプリ内外の機能を利用して、他のプレイヤに容易にレースIDを伝達することができる。
また、ホストプレイヤの待機ルーム画面には、リターン操作部226および開始操作部228が設けられる。リターン操作部226が操作されると、ホーム画面やマルチプレイゲームトップ画面等、所定の画面に遷移する。
開始操作部228の近傍には、対戦レースが開始されるまでの残り時間が表示されている。そして、ホストプレイヤのプレイヤ端末1においては、残り時間に拘わらず、開始操作部228が有効化されている。開始操作部228が操作されると、残り時間に拘わらず、対戦レースを開始することができる。より厳密に言えば、ホストプレイヤは、開始操作部228を操作することで、開始時間を待たずに、開催レースのレース結果を導出することができる。レース結果が導出されると、ディスプレイ26にレース画面が再生表示される。
なお、図13Aに示すマルチプレイゲームトップ画面において、エントリー情報タブ203が操作されると、エントリー中の対戦レースの一覧が表示される。待機ルーム画面は、このとき表示された対戦レースをタップすることで再表示される。したがって、ホストプレイヤは、対戦レースの開催を登録した後、他のプレイヤの参加具合等を見ながら、任意のタイミングで開催レースを実行することができる。
また、待機ルーム画面には、詳細表示ボタン230が設けられる。詳細表示ボタン230が操作されると、レース詳細画面がディスプレイ26に表示される。
図17は、レース詳細画面を説明する図である。ホストプレイヤのプレイヤ端末1に表示されるレース詳細画面では、対戦レースの開催条件やレース条件等が表示される。また、レース詳細画面においては、ホストプレイヤがルーム名およびメッセージを編集することができる。つまり、ホストプレイヤは、レース詳細画面において、開催レースのルーム名およびメッセージを事後的に変更することができる。なお、ここでは、ホストプレイヤは、開催条件やレース条件を事後的に変更することはできないが、開催条件およびレース条件のいずれか一方または双方を事後的に変更可能としてもよい。
レース詳細画面には、リターン操作部232、決定操作部234および開催中止操作部236が設けられる。リターン操作部232が操作されると、待機ルーム画面あるいはマルチプレイゲームトップ画面等、所定の画面に遷移する。また、決定操作部234は、ルーム名またはメッセージの入力がなされた場合に有効となる。決定操作部234が操作されると、変更されたルーム名またはメッセージの登録がなされる。
また、ホストプレイヤは、開催中止操作部236を操作することで、開催レースを中止することができる。ただし、開催レースを中止することができるのは、開始15分前までである。したがって、開催レースの開始までの残り時間が15分以上である場合には開催中止操作部236が有効となり、残り時間が15分を切った状態では、開催中止操作部236が無効となる。
以上のように、レースIDが発行されて対戦レースの開催が予約されると、他のプレイヤの参加の受け付けが開始される。以下では、他のプレイヤが開催する対戦レースにゲストプレイヤとして参加する場合の操作について説明する。
図13Aに示すマルチプレイゲームトップ画面の参加タブ202は、他のプレイヤが開催する対戦レースに参加するための操作部である。参加タブ202が操作されると、ルーム検索画面が表示される。
図18Aは、ルーム検索画面を説明する図である。ルーム検索画面では、ランダムに抽出された所定数のルーム、すなわち、参加可能な開催予定の対戦レースが一覧表示される。具体的には、ルーム検索画面には、検索により抽出された対戦レースに対応する対戦レース情報インタフェース240が表示される。対戦レース情報インタフェース240には、ルーム名、プライベート枠の設定有無、観戦可否、レース種別、出走人数に対する現在のキャラクタの出走登録数、対戦レースが開始されるまでの残り時間等、種々の情報が表示される。
また、ルーム検索画面には、レースIDを入力可能な入力欄242、および、検索開始ボタン244が設けられる。入力欄242にレースIDを入力した後に、検索開始ボタン244が操作されると、入力されたレースIDに対応する対戦レース情報インタフェース240が表示される。なお、入力欄242にレースIDを入力せずに検索開始ボタン244が操作されると、不図示の検索条件入力画面が表示される。検索条件入力画面では、検索条件を入力可能であり、検索条件に合致した対戦レースが検索可能となる。
ルーム検索画面において、例えば対戦レース情報インタフェース240が長押しされると、当該対戦レースの詳細情報が表示される。また、対戦レース情報インタフェース240がタップされると、当該対戦レースの選択状態となる。
ルーム検索画面には、出走予約操作部246および観戦予約操作部248が設けられる。いずれかの対戦レースが選択された状態で、出走予約操作部246が操作されると、選択中の対戦レースにゲストプレイヤとしてキャラクタを出走させるための登録手続きが開始される。
なお、ゲストプレイヤとしてキャラクタを出走させるための登録手続きでは、ホストプレイヤによる対戦レースの開催に係る登録手続きと同様に、図16Aに示す出走キャラクタ選択画面、図16Bに示す戦略選択画面、図16Cに示すエントリー情報画面が表示される。ゲストプレイヤは、ホストプレイヤと同様に、対戦レースに出走させるキャラクタおよび作戦を決定することができる。そして、エントリー情報画面において決定ボタン222が操作されると、ゲストプレイヤとして「出走」の登録手続きが完了し、ゲストプレイヤの待機ルーム画面が表示される。
図18Bは、ゲストプレイヤの待機ルーム画面を説明する図である。図18Bに示すように、ゲストプレイヤの待機ルーム画面には、ルーム名、ゲストプレイヤが決定した対戦レースに出走予定のキャラクタに係る情報等が表示される。また、ゲストプレイヤの待機ルーム画面には、リターン操作部250および開始操作部252が設けられる。リターン操作部250が操作されると、ホーム画面やマルチプレイゲームトップ画面等、所定の画面に遷移する。
開始操作部252の近傍には、対戦レースが開始されるまでの残り時間が表示されている。ゲストプレイヤのプレイヤ端末1においては、開始時間になるまで、開始操作部252が無効化されている。開始操作部252は、開始時間になると有効化され、有効化された開始操作部252が操作されると、対戦レースのレース画面が表示される。
なお、ゲストプレイヤの待機ルーム画面には、詳細表示ボタン254が設けられる。詳細表示ボタン254が操作されると、対戦レースの詳細情報が表示されるレース詳細画面に遷移する。ゲストプレイヤのプレイヤ端末1に表示されるレース詳細画面では、当該対戦レースへの参加を取り消すことができる。詳しい説明は省略するが、ゲストプレイヤが対戦レースへの参加を取り消すことができるのは、対戦レースの開始15分前までである。ただし、ゲストプレイヤは、残り時間に拘わらず、対戦レースへの参加を取り消し可能であってもよい。
また、いずれかの対戦レースが選択された状態で、観戦予約操作部248が操作されると、選択中の対戦レースの観戦が予約される。観戦が予約された場合には、待機ルーム画面において、出走予定のキャラクタに係る情報等が表示される。この場合においても、待機ルーム画面に開始操作部252が設けられ、開始時間になると、レース画面の視聴が可能となる。また、ゲストプレイヤは、待機ルーム画面から、観戦を取り消すことができる。
次に、上記のゲームを実行するためのプレイヤ端末1およびサーバ1000の機能的構成について説明する。なお、ここでは、対戦レースのエントリーに関する機能的構成について説明し、その他の構成については説明を省略する。
(プレイヤ端末1の機能的構成)
図19は、プレイヤ端末1におけるメモリ12の構成およびコンピュータとしての機能を説明する図である。メモリ12には、プログラム記憶領域12a、および、データ記憶領域12bが設けられている。CPU10は、ゲームが開始されると、端末側ゲーム制御用プログラム(モジュール)をプログラム記憶領域12aに記憶する。
端末側ゲーム制御用プログラムには、送受信プログラム300、画像制御プログラム302、情報更新プログラム304が含まれる。なお、図19に列挙したプログラムは一例であり、端末側ゲーム制御用プログラムには、この他にも多数のプログラムが設けられている。
データ記憶領域12bには、データを記憶する記憶部として、プレイヤ情報記憶部310が設けられている。プレイヤ情報記憶部310には、対戦レースに係るさまざまな情報が記憶される。具体的には、プレイヤ情報記憶部310には、ホストプレイヤとして開催する対戦レースに係る情報、ゲストプレイヤとして参加する対戦レースに係る情報、開催レースの予約数を示す開催予約数、開催レースおよび参加レースの合計の予約数を示す合計予約数等が記憶される。なお、対戦レースに係る情報には、参加する全てのキャラクタに関する情報、および、レース結果情報が含まれる。
また、データ記憶領域12bには、対戦レースに係る情報以外に、プレイヤに関する情報や、プレイヤが育成したキャラクタに関する情報、育成ゲームに関する情報等を記憶する多数の記憶部が設けられている。
CPU10は、プログラム記憶領域12aに記憶された各プログラムを動作させ、データ記憶領域12bの各記憶部のデータを更新する。そして、CPU10は、プログラム記憶領域12aに記憶された各プログラムを動作させることで、プレイヤ端末1(コンピュータ)を、端末側ゲーム制御部1Aとして機能させる。端末側ゲーム制御部1Aは、送受信部300a、画像制御部302a、情報更新部304aを含む。
具体的には、CPU10は、送受信プログラム300を動作させ、コンピュータを送受信部300aとして機能させる。同様に、CPU10は、画像制御プログラム302、情報更新プログラム304を動作させ、それぞれ画像制御部302a、情報更新部304aとして機能させる。
送受信部300aは、プレイヤ端末1に対するプレイヤの操作入力に基づいて、サーバ1000に各種の情報を送信する。また、送受信部300aは、サーバ1000にセットされた受け取り可能な情報のうち、プレイヤ端末1においてログイン中のプレイヤのプレイヤIDに紐付けられた情報を受信する。
画像制御部302aは、プレイヤ端末1に対するプレイヤの操作入力に基づいて、ゲーム画面をディスプレイ26に表示する。
情報更新部304aは、プレイヤ端末1に対するプレイヤの操作入力、および、サーバ1000から受信した情報に基づいて、プレイヤ情報記憶部310に各種の情報を記憶する。
(サーバ1000の機能的構成)
図20は、サーバ1000におけるメモリ1012の構成およびコンピュータとしての機能を説明する図である。メモリ1012には、プログラム記憶領域1012a、および、データ記憶領域1012bが設けられている。CPU1010は、ゲームが開始されると、サーバ側ゲーム制御用プログラム(モジュール)をプログラム記憶領域1012aに記憶する。
サーバ側ゲーム制御用プログラムには、送受信プログラム1200、ルーム作成プログラム1202、ホストプレイヤ情報設定プログラム1204、ゲストプレイヤ情報設定プログラム1206、開始時間管理プログラム1208、繰上開始プログラム1210、レース結果導出プログラム1212、エントリー管理プログラム1214、ルーム消滅プログラム1216、変更プログラム1218が含まれる。なお、図20に列挙したプログラムは一例であり、サーバ側ゲーム制御用プログラムには、この他にも多数のプログラムが設けられている。
データ記憶領域1012bには、データを記憶する記憶部として、プレイヤ情報記憶部1300および対戦レース情報記憶部1302が設けられている。
プレイヤ情報記憶部1300には、対戦レースに係るさまざまな情報が記憶される。具体的には、プレイヤ情報記憶部1300には、全てのプレイヤのプレイヤIDが記憶される。また、プレイヤ情報記憶部1300には、プレイヤIDに紐付けて、プレイヤに関する情報、プレイヤが育成したキャラクタに関する情報、育成ゲームに関する情報、ホストプレイヤとして開催する対戦レースに係る情報、ゲストプレイヤとして参加する対戦レースに係る情報、開催予約数、合計予約数等が記憶される。
対戦レース情報記憶部1302には、全てのレースIDが記憶される。また、対戦レース情報記憶部1302には、レースIDに紐付けて、対戦レースに係る情報が記憶される。なお、対戦レース情報記憶部1302に記憶される対戦レースに係る情報には、対戦レースの開催条件、レース条件、開始時間(開始までの残り時間)、出走予定のキャラクタに係る情報、レース結果情報等が含まれる。
また、データ記憶領域1012bには、プレイヤ情報記憶部1300および対戦レース情報記憶部1302以外にも、各種の情報を記憶するための多数の記憶部が設けられている。
CPU1010は、プログラム記憶領域1012aに記憶された各プログラムを動作させ、データ記憶領域1012bの各記憶部のデータを更新する。そして、CPU1010は、プログラム記憶領域1012aに記憶された各プログラムを動作させることで、サーバ1000を、サーバ側ゲーム制御部1000Aとして機能させる。サーバ側ゲーム制御部1000Aは、送受信部1200a、ルーム作成部1202a、ホストプレイヤ情報設定部1204a、ゲストプレイヤ情報設定部1206a、開始時間管理部1208a、繰上開始部1210a、レース結果導出部1212a、エントリー管理部1214a、ルーム消滅部1216a、変更部1218aを含む。
具体的には、CPU1010は、送受信プログラム1200を動作させ、コンピュータを送受信部1200aとして機能させる。同様に、CPU1010は、ルーム作成プログラム1202、ホストプレイヤ情報設定プログラム1204、ゲストプレイヤ情報設定プログラム1206、開始時間管理プログラム1208、繰上開始プログラム1210、レース結果導出プログラム1212、エントリー管理プログラム1214、ルーム消滅プログラム1216、変更プログラム1218を動作させ、それぞれルーム作成部1202a、ホストプレイヤ情報設定部1204a、ゲストプレイヤ情報設定部1206a、開始時間管理部1208a、繰上開始部1210a、レース結果導出部1212a、エントリー管理部1214a、ルーム消滅部1216a、変更部1218aとして機能させる。
送受信部1200aは、プレイヤ端末1から送信される情報を受信する。また、送受信部1200aは、プレイヤ端末1に受信させるデータをセットする。詳しくは後述するが、送受信部1200aは、導出された対戦レースのレース結果をホストプレイヤおよびゲストプレイヤに受け取らせる処理を遂行する。
ルーム作成部1202aは、レースIDを発行してルームを作成する。具体的には、ルーム作成部1202aは、対戦レース情報記憶部1302の記憶領域を確保し、レースIDと確保した記憶領域とを紐付ける。また、ルーム作成部1202aは、ホストプレイヤが設定したルーム名、メッセージ、開催条件、レース条件等を、確保した記憶領域に記憶する。つまり、ルーム作成部1202aは、複数のプレイヤが参加可能な対戦レースの開催を要求するホストプレイヤの操作入力に基づいてルームを作成する処理を遂行する。
ホストプレイヤ情報設定部1204aは、ホストプレイヤに係る情報を対戦レース情報記憶部1302に記憶する。なお、対戦レース情報記憶部1302に記憶されるホストプレイヤに係る情報には、ホストプレイヤに付与されたプレイヤID、ホストプレイヤが設定した、対戦レースに出走するキャラクタに係る情報が含まれる。
つまり、ここでは、ホストプレイヤ情報設定部1204aが、ホストプレイヤのプレイヤIDと、対戦レースのゲーム結果を導出するために必要であって、ホストプレイヤが設定したキャラクタに係る設定情報とをルームに紐付けて記憶する処理を遂行する。
ゲストプレイヤ情報設定部1206aは、ゲストプレイヤに係る情報を対戦レース情報記憶部1302に記憶する。なお、対戦レース情報記憶部1302に記憶されるゲストプレイヤに係る情報には、ゲストプレイヤに付与されたプレイヤID、ゲストプレイヤが設定した、対戦レースに出走するキャラクタに係る情報、さらには、「出走」、「観戦」の参加種別に係る情報が含まれる。
つまり、ここでは、ゲストプレイヤ情報設定部1206aが、ルームへの入室を要求する、ホストプレイヤと異なる1または複数のゲストプレイヤの操作入力に基づいて、ゲストプレイヤに付与されたプレイヤIDと、対戦レースのゲーム結果を導出するために必要であって、ゲストプレイヤが設定したキャラクタに係る設定情報とをルームに紐付けて記憶する処理を遂行する。
開始時間管理部1208aは、各ルームの開始時間、すなわち、対戦レースを開始するまでの残り時間を管理する。つまり、ここでは、開始時間管理部1208aが、対戦レースの開始時間に関する時間情報をルームに紐付けて管理する処理を遂行する。
繰上開始部1210aは、開始時間の前に対戦レースを開始させるホストプレイヤの開始操作の入力に基づいて、対戦レースを開始させる処理を遂行する。
レース結果導出部1212aは、対戦レースの開始時間になると、プレイヤ情報に基づいて対戦レースのレース結果を導出する処理を遂行する。
エントリー管理部1214aは、ホストプレイヤおよびゲストプレイヤの開催予約数、合計予約数を管理する。つまり、ここでは、エントリー管理部1214aが、ゲストプレイヤのプレイヤIDに紐付けられているルームの数が所定数(ここでは5)以上である場合に、他のルームへの参加を不可能とし、ゲストプレイヤのプレイヤIDに紐付けられているルームの数が所定数未満である場合に、ルームへの参加を可能とする処理を遂行する。
ルーム消滅部1216aは、ホストプレイヤによる対戦レースの開催を取り消す開催取消要求操作の入力に基づいて、ルームを消滅させる。
変更部1218aは、ゲストプレイヤによる対戦レースへの参加を取り消す辞退要求操作の入力に基づいて、ルームからゲストプレイヤに係る情報を消去する等、ルームに係る情報を変更する。
次に、対戦レースを実行するためのプレイヤ端末1およびサーバ1000における処理について説明する。以下では、ホストプレイヤとなるプレイヤのプレイヤ端末1をホスト端末と呼び、ゲストプレイヤとなるプレイヤのプレイヤ端末1をゲスト端末と呼ぶ。また、以下の説明において、ホスト端末が遂行する処理をHn(nは任意の整数)、サーバ1000が遂行する処理をSn(nは任意の整数)、ゲスト端末が遂行する処理をGn(nは任意の整数)と示す。
(プレイヤ端末1とサーバ1000との通信処理)
図21は、プレイヤ端末1およびサーバ1000の処理を説明する第1のシーケンス図である。ホスト端末においてルーム作成操作が入力されると、ホスト端末の送受信部300aが、作成要求情報をサーバ1000に送信する(H1)。なお、ルーム作成操作は、図16Cに示すエントリー情報画面における決定ボタン222のタップ操作である。また、作成要求情報には、ホストプレイヤのプレイヤID、対戦レースの種別、開催条件、レース条件、対戦レースに出走させるキャラクタに係る情報が含まれる。
サーバ1000において、送受信部1200aが作成要求情報を受信すると、エントリー管理部1214aが開催判定処理を遂行する(S1)。
図22は、サーバ1000における開催判定処理(S1)を説明するフローチャートである。エントリー管理部1214aは、プレイヤ情報記憶部1300に記憶されているホストプレイヤの予約数情報を取得する(S1-1)。なお、予約数情報には、開催予約数および合計予約数が含まれる。ホストプレイヤの開催予約数が0でなければ(S1-2のNO)、送受信部1200aは、対戦レースを開催できない旨を知らせる開催拒否情報を、ホスト端末が受信可能なようにセットする(S1-3)。
また、エントリー管理部1214aは、開催予約数が0であれば(S1-2のYES)、ホストプレイヤの合計予約数が5未満であるかを判定する(S1-4)。合計予約数が5未満でなければ(S1-4のNO)、送受信部1200aは、上記と同様に開催拒否情報をセットする(S1-3)。
図21に示すように、ホスト端末では、開催拒否情報を受信すると、画像制御部302aが、対戦レースを開催することができないことをホストプレイヤに知らしめる開催不可画面を表示する(H2)。
一方、図22に示すように、開催予約数が0であり(S1-2のYES)、合計予約数が5未満であれば(S1-4のYES)、エントリー管理部1214aは、ルーム作成処理のモジュールをコールする(S1-5)。これにより、図21に示すように、開催判定処理(S1)に続き、後述するルーム作成処理(S2)が開始される。
図23は、サーバ1000におけるルーム作成処理(S2)を説明するフローチャートである。ルーム作成部1202aは、レースIDを取得する(S2-1)。なお、レースIDは9桁の数字で構成され、ルーム作成部1202aは、現在使用中ではない任意のレースIDを1つ取得する。また、ルーム作成部1202aは、対戦レース情報記憶部1302の記憶領域を確保し(S2-2)、確保した記憶領域に、ルーム情報として開始条件等を記憶する(S2-3)。
なお、ルーム情報には、対戦レースを実行するために必要な全ての情報が含まれる。ここでは、取得したレースIDが、確保した記憶領域のアドレスに紐付けて記憶される。また、レースIDが紐付けられた記憶領域には、ホストプレイヤが設定したルーム名、メッセージ、対戦レースの開始条件、レース条件等が記憶される。
また、ホストプレイヤ情報設定部1204aは、作成要求情報に含まれるホストプレイヤのプレイヤIDを、確保した記憶領域にルーム情報として記憶する(S2-4)。また、ホストプレイヤ情報設定部1204aは、作成要求情報に含まれる、ホストプレイヤが設定した対戦レースに出走させるキャラクタに係る情報を、確保した記憶領域にルーム情報として記憶する(S2-5)。
また、エントリー管理部1214aは、プレイヤ情報記憶部1300において、ホストプレイヤのプレイヤIDに紐付けられている開催予約数をインクリメントする(S2-6)。本実施形態では、ホストプレイヤが同時に開催を予約できる最大数は「1」である。
詳しい説明は省略するが、プレイヤ端末1は、サーバ1000で管理されている予約数情報を定期的に受信する。そして、プレイヤ端末1では、開催予約数が「1」の場合、新たなレースを開催するための操作ができないように制御される。したがって、サーバ1000において開催予約数が「1」と記憶されているプレイヤのプレイヤ端末1から、ルームの作成を要求する作成要求情報が送信されることは基本的にはない。したがって、ここでは、ホストプレイヤのプレイヤIDに紐付けられている開催予約数が「0」から「1」に更新される。
また、エントリー管理部1214aは、プレイヤ情報記憶部1300において、ホストプレイヤのプレイヤIDに紐付けられている合計予約数をインクリメントする(S2-7)。本実施形態では、ホストプレイヤが同時にエントリーできる最大数は「5」である。
プレイヤ端末1では、合計予約数が「5」の場合、新たなレースにエントリーするための操作ができないように制御される。したがって、サーバ1000において合計予約数が「5」と記憶されているプレイヤのプレイヤ端末1から、ルームの作成を要求する作成要求情報が送信されることは基本的にはない。したがって、ここでは、ホストプレイヤのプレイヤIDに紐付けられている合計予約数が「1」から「5」のいずれかに更新される。
そして、送受信部1200aは、上記S2-6およびS2-7で更新した開催予約数および合計予約数を含む予約数情報を、ホスト端末が受信可能なようにセットする(S2-8)。また、送受信部1200aは、上記S2-3からS2-5で記憶したルーム情報を、ホスト端末が受信可能なようにセットする(S2-9)。
そして、開始時間管理部1208aは、レースIDに紐付けて開始時間をタイマにセットする(S2-10)。詳しくは後述するが、ここでセットされた開始時間は、サーバ1000において、時間の経過に伴って減算される。これにより、対戦レースが開始されるまでの残り時間がサーバ1000において管理される。
図21に戻り、サーバ1000においてルーム作成処理(S2)が遂行されると、ホスト端末がルーム情報および予約数情報を受信し、受信情報がプレイヤ情報記憶部310に記憶される(H3)。また、ホスト端末では、画像制御部302aが、受信情報に基づいて待機ルーム画面を表示する(H4)。
また、例えば、複数の対戦レースの開催が予約されている状態で、ゲスト端末においてルーム検索操作が入力されたとする(G1)。なお、ルーム検索操作は、図13Aに示すマルチプレイゲームトップ画面における参加タブ202のタップ、および、図18Aに示すルーム検索画面における検索開始ボタン244のタップを含む。検索操作が入力されると、検索情報がサーバ1000に送信される。
サーバ1000では、検索情報を受信すると、参加可能なルームを抽出し、ゲスト端末が受信可能なように、抽出情報をセットする(S3)。ゲスト端末では、抽出情報を受信すると、受信した抽出情報に基づいて、画像制御部302aが、ルーム検索画面にルーム一覧を表示する(G2)。
また、ゲスト端末において入室要求操作が入力されると(G3)、入室要求情報がサーバ1000に送信される。なお、入室要求操作は、図18Aに示すルーム検索画面における出走予約操作部246または観戦予約操作部248のタップを含む。また、入室要求情報には、ゲストプレイヤが参加を要求するレースID、「出走」または「観戦」のいずれかを識別する参加種別、ゲストプレイヤが設定したキャラクタに係る情報が含まれる。
サーバ1000において、送受信部1200aが入室要求情報を受信すると、エントリー管理部1214aが入室判定処理を遂行する(S4)。
図24は、サーバ1000における入室判定処理(S4)を説明するフローチャートである。エントリー管理部1214aは、プレイヤ情報記憶部1300に記憶されているゲストプレイヤの予約数情報を取得する(S4-1)。ゲストプレイヤの合計予約数が5未満でなければ(S4-2のNO)、送受信部1200aは、対戦レースに参加することができない旨を知らせる入室拒否情報を、ゲスト端末が受信可能なようにセットする(S4-3)。
また、エントリー管理部1214aは、合計予約数が5未満であれば(S4-2のYES)、受信した入室要求情報に含まれるレースIDを確認する(S4-4)。また、エントリー管理部1214aは、受信した入室要求情報に含まれる参加種別が「出走」であるかを判定する(S4-5)。参加種別が「出走」ではない場合(S4-5のNO)、すなわち、参加種別が「観戦」の場合、エントリー管理部1214aは、ルーム更新処理のモジュールをコールする(S4-10)。これにより、図21に示すように、入室判定処理(S4)に続き、後述するルーム更新処理(S5)が開始される。
一方、参加種別が「出走」の場合(S4-5のYES)、エントリー管理部1214aは、レースIDに紐付けられた出走人数を、対戦レース情報記憶部1302から取得する(S4-6)。また、エントリー管理部1214aは、レースIDに紐付けられた出走予定のキャラクタの登録数を、対戦レース情報記憶部1302から取得する(S4-7)。
エントリー管理部1214aは、取得した出走人数およびキャラクタの登録数から、ゲストプレイヤが設定した1~3体のキャラクタ全てを出走させるための出走枠が足りているかを判定する(S4-8)。出走枠が足りていない場合(S4-8のNO)、送受信部1200aが、上記と同様に、入室拒否情報をセットする(S4-3)。
また、出走枠が足りている場合(S4-8のYES)、エントリー管理部1214aは、該当する対戦レースの開始までの残り時間を確認する(S4-9)。そして、残り時間が15分以上であれば(S4-9のYES)、エントリー管理部1214aがルーム更新処理のモジュールをコールする(S4-10)。一方、残り時間が15分未満であれば(S4-9のNO)、送受信部1200aが入室拒否情報をセットする(S4-3)。
図21に示すように、ゲスト端末では、入室拒否情報を受信すると、画像制御部302aが、入室すなわち参加が不可能であることを示す入室不可画面をディスプレイ26に表示する(G4)。また、入室判定処理(S4)において入室すなわち参加が可能であると判定されると、サーバ1000においてルーム更新処理(S5)が遂行される。
図25は、サーバ1000におけるルーム更新処理(S5)を説明するフローチャートである。ゲストプレイヤ情報設定部1206aは、入室要求情報に含まれるゲストプレイヤのプレイヤIDを、参加を要求する対戦レースのレースIDに紐付けられた記憶領域に記憶する(S5-1)。また、ゲストプレイヤ情報設定部1206aは、ゲストプレイヤが設定した参加種別を、ゲストプレイヤのプレイヤIDに紐付けて記憶する(S5-2)。
また、参加種別が「出走」の場合(S5-3のYES)、ゲストプレイヤ情報設定部1206aは、ゲストプレイヤが設定したキャラクタに係る情報を、レースIDおよびプレイヤIDに紐付けて記憶する(S5-4)。
また、エントリー管理部1214aは、プレイヤ情報記憶部1300において、ゲストプレイヤのプレイヤIDに紐付けられている合計予約数をインクリメントする(S5-5)。本実施形態では、ゲストプレイヤが同時に参加を予約できる最大数は「5」である。
詳しい説明は省略するが、プレイヤ端末1では、合計予約数が「5」の場合、新たなレースに参加するための操作ができないように制御される。したがって、サーバ1000において合計予約数が「5」と記憶されているプレイヤのプレイヤ端末1から、ルームへの入室を要求する入室要求情報が送信されることは基本的にはない。したがって、ここでは、ゲストプレイヤのプレイヤIDに紐付けられている合計予約数が「1」から「5」のいずれかに更新される。
そして、送受信部1200aは、上記S5-5で更新した合計予約数を含む予約数情報を、ゲスト端末が受信可能なようにセットする(S5-6)。また、送受信部1200aは、レースIDに紐付けられているルーム情報を、ホスト端末およびゲスト端末が受信可能なようにセットする(S5-7)。具体的には、送受信部1200aは、レースIDに紐付けられている全てのプレイヤIDに対して、ルーム情報を紐付けてセットする。
図21に戻り、サーバ1000においてルーム更新処理(S5)が遂行されると、ゲスト端末がルーム情報および予約数情報を受信し、受信情報がプレイヤ情報記憶部310に記憶される(G5)。また、ゲスト端末では、画像制御部302aが、受信情報に基づいて待機ルーム画面を表示する(G6)。
また、プレイヤ端末1においては、ゲームアプリが起動している間、すなわち、ゲームをプレイしている間、サーバ1000に対して定期的に通信接続が行われる。例えば、育成ゲーム中、ゲーム中に所定の画面遷移が行われた場合、ログイン操作がなされた場合等、所定のタイミングでプレイヤ端末1とサーバ1000との間で通信接続がなされる。ここでは、プレイヤ端末1において、サーバ1000と通信接続が行われる処理をサーバアクセス処理と呼ぶ。
例えば、ホスト端末において、サーバ1000におけるルーム更新処理(S5)の後、サーバアクセス処理が遂行されたとする(H5)。この場合、サーバ1000においては、ホスト端末のプレイヤIDにルーム情報が紐付けられてセットされているため、ホスト端末の送受信部300aが、サーバ1000からルーム情報を受信する。ホスト端末では、情報更新部304aが、受信したルーム情報に基づいてプレイヤ情報記憶部310を更新する(H6)。また、ホスト端末において、待機ルーム画面を表示させる操作が入力された場合には、画像制御部302aが、更新されたルーム情報に基づいて待機ルーム画面を表示する。
図26は、プレイヤ端末1およびサーバ1000の処理を説明する第2のシーケンス図である。ホスト端末において、繰り上げ要求操作(開始操作)が入力されると、送受信部300aが繰り上げ要求情報をサーバ1000に送信する。なお、繰り上げ要求操作は、図16Dに示すホストプレイヤの待機ルーム画面における開始操作部228のタップ操作である。また、繰り上げ要求情報には、ホストプレイヤのプレイヤID、および、レースIDが含まれる。
サーバ1000において、送受信部1200aが繰り上げ要求情報を受信すると、繰上開始部1210aが繰上開始処理を遂行する(S11)。
図27は、サーバ1000における繰上開始処理(S11)を説明するフローチャートである。繰上開始部1210aは、該当する対戦レースの開始までの残り時間を確認する(S11-1)。そして、残り時間が15分以上であれば(S11-1のYES)、繰上開始部1210aが、例えば、10秒間待機する待機処理を遂行する(S11-2)。待機時間が経過すると、レース結果導出部1212aが結果導出処理(S100)を遂行する。
なお、繰上開始処理において、待機処理(S11-2)は必須ではなく、即座に結果導出処理(S100)が遂行されてもよい。ただし、待機処理が設けられることで、仮に、ホストプレイヤの繰り上げ要求操作が入力されたタイミングと、ゲストプレイヤの入室要求操作とがほぼ同じタイミングでなされた場合であっても、ゲストプレイヤの入室が可能となり、多くのプレイヤが対戦レースに参加可能となる。
図28は、サーバ1000における結果導出処理を説明するフローチャートである。レース結果導出部1212aは、対戦レース情報記憶部1302においてレースIDに紐付けられている全てのキャラクタに係る情報を取得する(S100-1)。また、レース結果導出部1212aは、対戦レース情報記憶部1302においてレースIDに紐付けられているレース条件を取得する(S100-2)。
次に、レース結果導出部1212aは、取得したキャラクタに係る情報およびレース条件に基づいて、対戦レースのシミュレーションを行い、レース結果を導出する(S100-3)。なお、詳しい説明は省略するが、対戦レースのシミュレーションでは、全てのキャラクタの能力パラメータやスキル情報等が演算式に入力され、その演算結果に基づいてレース結果が導出される。なお、天候ややる気等のレース条件は、変数として演算式に入力される。また、ランダムに抽出される変数が演算式に入力され、レース結果に不確実性がもたらされる。
そして、レース結果が導出されると、レース結果導出部1212aは、対戦レース情報記憶部1302に、レース結果を示す結果情報を記憶する。また、送受信部1200aは、ホスト端末およびゲスト端末が受信可能なように結果情報をセットする(S100-4)。
以上のように、ホストプレイヤが繰り上げ要求操作を入力することで、開始時間を待たずに、レース結果が導出されることとなる。なお、ここでは、開始時間を待たずにレース結果を導出する条件として、対戦レースの開始までの残り時間が15分以上であることとした。ただし、開始時間を待たずにレース結果を導出する条件はこれに限らない。
図29は、変形例に係るサーバ1000における繰上開始処理を説明するフローチャートである。変形例に係る繰上開始処理では、上記した実施例に係る繰上開始処理のS11-1の前に、S11-0の処理が追加されている。具体的には、繰り上げ要求情報を受信すると、繰上開始部1210aは、レースIDに紐付けられているプレイヤID数が所定数以上であるかを判定する(S11-0)。そして、レースIDに紐付けられているプレイヤID数が所定数以上であれば、上記と同様に、S11-1以降の処理が遂行される。
つまり、変形例では、レースIDすなわちルームに紐付けられたプレイヤIDの数が所定数以上であることを条件として、開始時間を待たずにレース結果を導出することができる。換言すれば、所定数以上のゲストプレイヤが、キャラクタの出走登録を行っていることを条件として、開始時間を待たずにレース結果を導出することが可能となっている。
なお、ここでは、レースIDに紐付けられたプレイヤID数を判定することとしたが、例えば、プレイヤID数に代えて、あるいは、プレイヤID数に加えて、出走登録されているキャラクタ数が所定数以上であるかが判定されてもよい。
図26に戻り、ホスト端末およびゲスト端末において、レース結果表示操作が入力されると(H12、G11)、送受信部300aが結果要求情報をサーバ1000に送信する。なお、レース結果表示操作は、開始操作部228、252のタップ操作後に表示される操作部へのタップ操作である。また、結果要求情報は、レース結果の送信を要求する情報である。
サーバ1000においては、結果要求情報を受信すると、エントリー管理部1214aが予約数更新処理(S12)を遂行する。
図30は、サーバ1000における予約数更新処理を説明するフローチャートである。エントリー管理部1214aは、結果要求情報を送信したプレイヤ端末1のプレイヤIDを特定し、プレイヤ情報記憶部1300に記憶されている予約数情報をデクリメントする(S12-1)。ここでは、エントリー管理部1214aは、ホスト端末から結果要求情報を受信した場合には、開催予約数および合計予約数をデクリメントする。また、エントリー管理部1214aは、ゲスト端末から結果要求情報を受信した場合には、合計予約数をデクリメントする。また、送受信部1200aは、S12-1で更新した予約数情報を、結果要求情報を送信したプレイヤ端末1が受信可能なようにセットする(S12-2)。
図26に戻り、ホスト端末およびゲスト端末では、送受信部300aがサーバ1000にセットされた結果情報、および、予約数情報を受信する。ホスト端末およびゲスト端末では、サーバ1000にセットされた結果情報を受信すると、情報更新部304aがプレイヤ情報記憶部310に結果情報を記憶する(H13、G12)。また、画像制御部302aがレース結果をディスプレイ26に表示する(H14、G13)。また、情報更新部304aが、プレイヤ情報記憶部310において、予約数情報を更新する(H15、G14)。
なお、ここでは、プレイヤ端末1において、レース結果が表示される前に、サーバ1000において予約数情報が更新されることとした。ただし、プレイヤ端末1においてレース結果の表示が完了した後に、サーバ1000において予約数情報が更新されてもよい。
以上のように、サーバ1000においては、ホスト端末およびゲスト端末から受信する情報に基づいて、対戦レースに係る種々の処理が遂行される。また、サーバ1000では、ホスト端末およびゲスト端末からの情報の受信有無に拘わらず、タイマ割込み処理が遂行される。このタイマ割込み処理は、数ミリ秒おきに繰り返し実行されるものである。ここでは、タイマ割込み処理に、開始時間を監視する開始時間監視処理が含まれる。
図31は、サーバ1000における開始時間監視処理を説明するフローチャートである。対戦レース情報記憶部1302には、レースIDと開始時間とが紐付けられたリストが設けられている。ルームが作成されてレースIDが発行されると、このリストにレースIDと開始時間とが追加される。開始時間管理部1208aは、リストに入力されている全てのレースIDに紐付けられている開始時間をデクリメントする(S200-1)。そして、開始時間管理部1208aは、S200-1で更新した開始時間が0のレースIDを抽出する(S200-2)。レース結果導出部1212aは、S200-2で抽出された全てのレースIDに対して、上記と同様の結果導出処理(S100)を遂行する。
このように、サーバ1000においては、ホストプレイヤが設定した開始時間になると、プレイヤの操作入力の有無に拘わらず、レース結果が導出される。導出されたレース結果は、レースIDに紐付けて対戦レース情報記憶部1302に記憶される。したがって、開始時間の経過後に、プレイヤ端末1においてサーバアクセス処理が遂行されることにより、プレイヤ端末1がレース結果を受信することとなる。
図32は、プレイヤ端末1およびサーバ1000の処理を説明する第3のシーケンス図である。ホスト端末において開催取消要求操作が入力されると、ホスト端末の送受信部300aが、開催取消要求情報をサーバ1000に送信する(H21)。なお、開催取消要求操作は、図17に示すレース詳細画面における開催中止操作部236のタップ操作である。また、開催取消要求情報には、ホストプレイヤのプレイヤID、および、レースIDが含まれる。
サーバ1000において、送受信部1200aが開催取消要求情報を受信すると、ルーム消滅部1216aがルーム消滅処理を遂行する(S21)。
図33は、サーバ1000におけるルーム消滅処理を説明するフローチャートである。ルーム消滅部1216aは、開催取消要求情報に含まれるレースIDに紐付けられた開始時間、すなわち、対戦レースの開始までの残り時間が15分以上であるかを判定する(S21-1)。残り時間が15分以上であれば(S21-1のYES)、ホストプレイヤ情報設定部1204aが、プレイヤ情報記憶部1300に記憶されているホストプレイヤのプレイヤIDに紐付けられた予約数情報を更新する(S21-2)。ここでは、ホストプレイヤ情報設定部1204aが、ホストプレイヤのプレイヤIDに紐付けられた開催予約数、および、合計予約数を、それぞれ「1」減算する。
また、ここでは、ゲストプレイヤ情報設定部1206aが、プレイヤ情報記憶部1300に記憶されているゲストプレイヤのプレイヤIDに紐付けられた予約数情報を更新する。具体的には、ゲストプレイヤ情報設定部1206aは、ゲストプレイヤのプレイヤIDに紐付けられた合計予約数を「1」減算する。
次に、送受信部1200aは、S21-2で更新された予約数情報を、ホスト端末およびゲスト端末が受信可能なようにセットする(S21-3)。また、送受信部1200aは、ルームが消滅したことを示す消滅情報を、消去されたレースIDに紐付けてセットする(S21-4)。ここでは、送受信部1200aが、対戦レースに参加の登録がなされていた全てのプレイヤのプレイヤIDに紐付けて消滅情報をセットする。
また、ルーム消滅部1216aは、対戦レース情報記憶部1302に記憶されたレースID、および、当該レースIDに紐付けられたルーム情報を消去する(S21-5)。
図32に戻り、ホスト端末において、消滅情報および予約数情報を受信すると、情報更新部304aが、プレイヤ情報記憶部310からルーム情報を消去する(H22)。また、情報更新部304aは、プレイヤ情報記憶部310において、予約数情報を更新する(H23)。
また、サーバ1000において、ルーム消滅処理(S21)が遂行された後、ゲスト端末においてサーバアクセス処理が遂行されると(G21)、送受信部300aがサーバ1000にセットされた消滅情報および予約数情報を受信する。ゲスト端末では、消滅情報および予約数情報を受信すると、情報更新部304aが、プレイヤ情報記憶部310からルーム情報を消去する(G22)。また、情報更新部304aは、プレイヤ情報記憶部310において、予約数情報を更新する(G23)。
図34は、プレイヤ端末1およびサーバ1000の処理を説明する第4のシーケンス図である。ゲスト端末において辞退要求操作が入力されると、ゲスト端末の送受信部300aが、辞退要求情報をサーバ1000に送信する(G31)。なお、辞退要求操作は、待機ルーム画面から遷移するレース詳細画面において入力可能である。また、辞退要求情報には、ゲストプレイヤのプレイヤID、および、レースIDが含まれる。
サーバ1000において、送受信部1200aが辞退要求情報を受信すると、変更部1218aが変更処理を遂行する(S31)。
図35は、サーバ1000における変更処理を説明するフローチャートである。変更部1218aは、辞退要求情報に含まれるレースIDに紐付けられた開始時間、すなわち、対戦レースの開始までの残り時間が15分以上であるかを判定する(S31-1)。残り時間が15分以上であれば(S31-1のYES)、ゲストプレイヤ情報設定部1206aが、プレイヤ情報記憶部1300に記憶されているゲストプレイヤのプレイヤIDに紐付けられた予約数情報を更新する(S31-2)。ここでは、ゲストプレイヤ情報設定部1206aが、ゲストプレイヤのプレイヤIDに紐付けられた合計予約数を「1」減算する。
次に、送受信部1200aは、S31-2で更新された予約数情報を、ゲスト端末が受信可能なようにセットする(S31-3)。また、送受信部1200aは、参加の取り消しが完了したことを示す辞退完了情報を、ゲスト端末が受信可能なようにセットする(S31-4)。また、変更部1218aは、対戦レース情報記憶部1302において、当該レースIDに紐付けられたルーム情報から、該当するゲストプレイヤのプレイヤ情報を消去する(S31-5)。
図34に戻り、ゲスト端末において、辞退完了情報および予約数情報を受信すると、情報更新部304aが、プレイヤ情報記憶部310からルーム情報を消去する(G32)。また、情報更新部304aは、プレイヤ情報記憶部310において、予約数情報を更新する(G33)。
また、サーバ1000において、変更処理(S31)が遂行された後、ホスト端末においてサーバアクセス処理が遂行されると(H31)、送受信部300aがサーバ1000にセットされたルーム情報を受信する。ホスト端末では、ルーム情報を受信すると、情報更新部304aが、プレイヤ情報記憶部310のルーム情報を更新する(H32)。また、ホスト端末において、待機ルーム画面が表示される場合には、ルーム情報に基づいて、画像制御部302aが待機ルーム画面を更新する(H33)。
以上のように、ホストプレイヤは、対戦レースの開催を事後的に取りやめることができる。またゲストプレイヤは、対戦レースへの参加を事後的に取りやめることができる。
以上、添付図面を参照しながら実施形態の一態様について説明したが、本発明は上記実施形態に限定されないことは言うまでもない。当業者であれば、特許請求の範囲に記載された範疇において、各種の変形例または修正例に想到し得ることは明らかであり、それらについても当然に技術的範囲に属するものと了解される。
上記実施形態において、プレイヤ端末1とサーバ1000とで行われる処理の分担は一例に過ぎない。例えば、上記した各処理は、プレイヤ端末1およびサーバ1000の少なくともいずれかで実行されればよく、その実行タイミングや、実行する装置は特に限定されない。例えば、上記実施形態では、ルーム作成処理(S2)およびルーム更新処理(S5)がサーバ1000で遂行される場合について示した。ただし、ルーム作成処理(S2)あるいはルーム更新処理(S5)は、ホスト端末で遂行されてもよい。つまり、上記したサーバ1000における処理は、対戦レースごとに、当該対戦レースを開催するホスト端末において遂行されてもよい。
また、上記実施形態におけるプレイヤ端末1およびサーバ1000の処理は一例に過ぎない。プレイヤ端末1およびサーバ1000における処理は、本発明の目的を逸脱しない範囲で、適宜設計可能であることは言うまでもない。
また、上記実施形態では、プレイヤが保持するキャラクタを対戦レースに出走させるゲームについて説明したが、ゲームの内容は上記実施形態に限定されるものではない。本発明は、複数のプレイヤが参加可能なマルチプレイゲームに広く適用可能であり、あらゆるゲームジャンルに適用可能である。したがって、上記実施形態では、プレイヤがキャラクタを対戦させる対戦ゲームについて説明したが、例えば、複数のプレイヤが協力してコンピュータと対戦する協力ゲームとすることもできる。
また、上記実施形態では、マルチプレイゲームに詳細モードが設けられ、対戦レースの開催条件およびレース条件をホストプレイヤが設定可能であることとした。しかしながら、ホストプレイヤが開催する対戦レースは、全ての開催条件およびレース条件が予め定められており、変更することができないものとしてもよい。
また、上記実施形態では、対戦レースにキャラクタを出走させるプレイヤは、出走させるキャラクタを選択可能である。したがって、上記実施形態では、対戦レースに参加するプレイヤのプレイヤ情報に、プレイヤIDに加えて、レース結果を導出するために必要であって、ホストプレイヤまたはゲストプレイヤが設定したキャラクタに係る情報等の設定情報が含まれている。しかしながら、プレイヤ情報には、少なくともプレイヤIDが含まれていればよい。この場合、例えば、各プレイヤに対応するキャラクタが、サーバ1000においてランダムに決定され、決定されたキャラクタによってレース結果が導出されてもよい。
また、上記実施形態では、開始時間になる前にホストプレイヤが対戦レースを開始させる、繰り上げ要求操作を入力可能とした。ただし、繰り上げ要求操作は必須ではなく、開始時間前のレース結果の導出は不可能としてもよい。
また、上記実施形態では、1のプレイヤが同時に複数の対戦レースにエントリー可能であることとした。換言すれば、上記実施形態では、1つのプレイヤIDが、複数のルームに紐付け可能であることとした。そして、上記実施形態では、ゲストプレイヤのプレイヤIDに紐付けられているルームの数が所定数以上である場合に、他のルームへの参加を不可能とし、ゲストプレイヤのプレイヤIDに紐付けられているルームの数が所定数未満である場合に、ルームへの参加を可能とすることとした。ただし、1のプレイヤは、同時に1つのマルチプレイゲームにのみエントリー可能であってもよい。
なお、上記実施形態における処理を実行するための情報処理プログラムは、コンピュータが読み取り可能な非一時的記憶媒体に格納され、記憶媒体として提供されてもよい。さらには、この記憶媒体を含むゲーム端末装置が提供されてもよい。また、上記実施形態は、各機能およびフローチャートに示すステップを実現する情報処理方法としてもよい。