(58)【調査した分野】(Int.Cl.,DB名)
前記良好度合いは、前記操作キャラクタから前記移動体までの方向、および前記操作キャラクタから前記移動体までの距離の少なくとも一方に応じて決定される、請求項1に記載のゲームプログラム。
前記良好度合いを示す情報を出力するステップにおいて、前記良好度合いが最良でない場合、前記操作キャラクタが前記移動体に対してどのような位置関係で作用を与えれば前記良好度合いが最良となったかを示す情報を、前記良好度合いを示す情報として出力する、請求項3に記載のゲームプログラム。
前記操作キャラクタには、該操作キャラクタの体力を示す体力値が設定されており、該体力値は前記操作キャラクタが前記移動体に作用を与えることで減少するものであり、
前記ゲームプログラムは、前記プロセッサに、
前記相手キャラクタにより与えられた作用を受けて移動する前記移動体に対して前記操作キャラクタが作用を与えた場合に、前記相手キャラクタが前記移動体に対して作用を与えたときの前記相手キャラクタと前記移動体との位置関係の良好度合いに応じて、前記操作キャラクタの前記体力値を減少させるステップと、
前記操作キャラクタの前記体力値を示す情報を前記タッチスクリーンに表示するステップと、を実行させる、請求項1〜5のいずれか1項に記載のゲームプログラム。
前記体力値の減少量を示す情報を出力するステップにおいて、前記良好度合いが最良である場合、前記良好度合いが最良でない場合と異なる態様で、前記体力値の減少量を示す情報を出力する、請求項5または8に記載のゲームプログラム。
前記パラメータを変化させるステップにおいて、前記パラメータとして前記操作キャラクタまたは前記相手キャラクタの移動速度を遅くなるように変化させる、請求項10に記載のゲームプログラム。
【発明を実施するための形態】
【0011】
本開示に係るゲームシステムは、複数のユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
【0012】
〔実施形態1〕
(ゲームシステム1のハードウェア構成)
図1は、ゲームシステム1のハードウェア構成を示す図である。ゲームシステム1は図示の通り、複数のユーザ端末100と、サーバ200とを含む。各ユーザ端末100は、サーバ200とネットワーク2を介して接続する。ネットワーク2は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution)、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばW-Fi(登録商標))等が挙げられる。
【0013】
サーバ200は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ200は、プロセッサ20と、メモリ21と、ストレージ22と、通信IF23と、入出力IF24とを備える。サーバ200が備えるこれらの構成は、通信バスによって互いに電気的に接続する。
【0014】
ユーザ端末100は、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末100は図示の通り、プロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチスクリーン15とを備える。ユーザ端末100が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
【0015】
(各装置のハードウェア構成要素)
プロセッサ10は、ユーザ端末100全体の動作を制御する。プロセッサ20は、サーバ200全体の動作を制御する。プロセッサ10および20は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、およびGPU(Graphics Processing Unit)を含む。
【0016】
プロセッサ10は後述するストレージ12からプログラムを読み出し、後述するメモリ11に展開する。プロセッサ20は後述するストレージ22からプログラムを読み出し、後述するメモリ21に展開する。プロセッサ10およびプロセッサ20は展開したプログラムを実行する。
【0017】
メモリ11および21は主記憶装置である。メモリ11および21は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置で構成される。メモリ11は、プロセッサ10が後述するストレージ12から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ10に作業領域を提供する。メモリ11は、プロセッサ10がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ21は、プロセッサ20が後述するストレージ22から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ20に作業領域を提供する。メモリ21は、プロセッサ20がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
【0018】
なお、本実施形態においてプログラムとは、ゲームをユーザ端末100とサーバ200との協働により実現するためのゲームプログラムである。また、各種データとはユーザ情報、ゲーム情報等、ゲームに関するデータ、ならびにユーザ端末100とサーバ200との間で送受信する指示や通知を含んでいる。
【0019】
ストレージ12および22は補助記憶装置である。ストレージ12および22は、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置で構成される。ストレージ12およびストレージ22には、ゲームに関する各種データが格納される。
【0020】
通信IF13は、ユーザ端末100における各種データの送受信を制御する。通信IF23は、サーバ200における各種データの送受信を制御する。通信IF13および23は例えば、無線LAN(Local Area Network)を介する通信、有線LAN、無線LAN、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
【0021】
入出力IF14は、ユーザ端末100がデータの入力を受け付けるためのインターフェースであり、またユーザ端末100がデータを出力するためのインターフェースである。入出力IF14は、USB(Universal Serial Bus)等を介してデータの入出力を行ってもよい。入出力IF14は、例えば、ユーザ端末100の物理ボタンやカメラ、マイク、スピーカ等を含み得る。サーバ200の入出力IF24は、サーバ200がデータの入力を受け付けるためのインターフェースであり、またサーバ200がデータを出力するためのインターフェースである。入出力IF24は、例えば、マウスまたはキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
【0022】
ユーザ端末100のタッチスクリーン15は、入力部151と表示部152とを組み合わせた電子部品である。入力部151は、例えばタッチパッドによって構成される。表示部152は、例えば液晶ディスプレイ、または有機EL(Electro-Luminescence)ディスプレイ等によって構成される。
【0023】
入力部151は、入力面に対しユーザの操作(主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作)が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部151は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
【0024】
図示していないが、ユーザ端末100は、該ユーザ端末100の保持姿勢を特定するためのセンサを備えていてもよい。このセンサは、例えば、加速度センサであってもよい。ユーザ端末100がセンサを備えている場合、プロセッサ10は、センサの出力からユーザ端末100の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ10は、ユーザ端末100が縦向きに保持されているときには、縦長の画像を表示部152に表示させる縦画面表示としてもよい。一方、ユーザ端末100が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ10は、ユーザ端末100の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
【0025】
(サーバ200の機能的構成)
図2は、サーバ200の機能的構成を示すブロック図である。サーバ200は、ゲームを実現するために必要な各種データおよびプログラムを、各ユーザ端末100に提供する機能を有する。また、サーバ200は、各ユーザ端末100からゲームに関するデータを収集し管理する機能を有する。また、サーバ200は、複数のユーザ端末100間の同期処理を行う機能を有する。
【0026】
なお、本実施形態では、サーバ200は事前に登録されたゲームのアカウントで各ユーザおよびユーザ端末100を識別する。アカウントの登録方法は特に限定されない。例えばユーザ端末100またはパーソナルコンピュータ等の他の装置がユーザの操作に従ってアカウントの登録に必要な情報をサーバ200に送信すればよい。そして、サーバ200は受信した情報に基づいてアカウントを作成および保存すればよい。
【0027】
ユーザ端末100がいずれかのアカウントを用いてゲームシステム1のネットワークにログインすると、サーバ200はログインしたユーザ端末100を認識する。なお、ログインの方法および処理内容については特に限定しない。サーバ200およびユーザ端末100は、従来知られた方法を用いてログインに係る各種処理を行えばよい。
【0028】
サーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、入出力IF24等の協働によって、制御部210および記憶部220として機能する。
【0029】
記憶部220は、制御部210が使用する各種データを格納する。記憶部220はゲームプログラム221と、ゲーム情報222と、ユーザ情報223とを格納している。
【0030】
ゲームプログラム221は、ゲームを実現するためのプログラムである。ゲーム情報222およびユーザ情報223は、ゲームプログラム221が実行されるときに参照されるデータである。
【0031】
なお、ゲームプログラム221は、サーバ200で実行するゲームプログラムに加えて、ユーザ端末100に送信しユーザ端末100で実行するプログラム(後述するゲームプログラム121)を含んでいてもよい。もしくは、記憶部220は、サーバ200で実行するゲームプログラム221と、ユーザ端末100で実行するプログラムとの両方を格納していてもよい。
【0032】
ゲーム情報222は、アカウント間で共通の情報である。ゲーム情報222は、例えば各種ゲーム空間を構築するための情報を含み得る。「ゲーム空間」とは、ユーザが操作可能なキャラクタのオブジェクトが配置される空間である。また、ゲーム情報222は、ゲーム空間内に配置されるオブジェクトに関する各種設定情報を含み得る。例えば、ゲーム情報222は、コート、ネット、背景オブジェクト、NPC(non player character)オブジェクト等の配置位置、大きさ、色、形状等に関する各種設定情報を含み得る。また、ゲーム情報222は、NPCの各種パラメータの設定値を含み得る。
【0033】
ユーザ情報223は、ゲームのアカウント毎に管理される情報である。ユーザ情報223は例えば、ユーザを示す情報、保有しているキャラクタに関する情報、保有資産に関する情報、およびゲームの進行度合いを示す情報等をアカウントの識別子に対応付けた情報である。保有しているキャラクタに関する情報としては、キャラクタの各種パラメータを示す情報等、キャラクタ毎に設定される情報が挙げられる。アカウントの保有資産としては、例えばゲーム内通貨、アイテム、および装備品などが挙げられる。
【0034】
制御部210は、記憶部220に格納されたゲームプログラム221を実行することにより、ゲームに関する各種処理を制御する。制御部210は、ゲームプログラム221を実行することにより、送受信部211、データ管理部213、およびサーバ処理部212として機能する。
【0035】
送受信部211は各種データを送受信する。例えば、送受信部211は、ユーザ端末100からの各種データおよびプログラムの送信要求、マルチプレイの同期の要求、および同期のためのデータ等を受信し、サーバ処理部212に送る。また例えば、送受信部211は、サーバ処理部212からの指示に従って、ユーザ端末100に各種データおよびプログラムを送信する。
【0036】
本実施形態において「マルチプレイ」とは、複数のユーザで1つのゲーム空間を共有してゲームを進行させるプレイ形式を指す。マルチプレイに参加している各ユーザは、それぞれのアカウントでゲームシステム1にログインしている。そして、サーバ200は、マルチプレイに参加している各ユーザのユーザ端末100におけるゲームの進行を同期させる。
【0037】
サーバ処理部212は、ゲームを提供するために必要な演算処理を行う。サーバ処理部212は、ユーザ端末100からの要求等に応じて、ゲームプログラム221に記述された演算処理を実行する。また例えば、サーバ処理部212は、ゲームの進行に係る各種判定処理を行う。
【0038】
例えば、サーバ処理部212は、データ管理部213にゲーム情報222またはユーザ情報223のレコードの追加、更新、または削除を指示する。また例えば、サーバ処理部212は送受信部211に各種データまたはプログラムの送信を指示する。また例えば、サーバ処理部212は、送受信部211を介しユーザ端末100からマルチプレイの同期の要求および同期のためのデータを受け取ると、同期処理部214にマルチプレイの同期処理を行うよう指示する。
【0039】
データ管理部213は、記憶部220に格納されている各種データをサーバ処理部212の指示に従って管理する。例えば、データ管理部213は、サーバ処理部212からの指示に応じてゲーム情報222またはユーザ情報223のレコードを、追加、更新、または削除する。
【0040】
また例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲーム情報222およびユーザ情報223の少なくとも一方を記憶部220から読み出し、送受信部211を介しユーザ端末100に送信する。
【0041】
また例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲームプログラム221のうち、ユーザ端末100で実行する分のプログラムを記憶部220から読み出し、送受信部211を介しユーザ端末100に送信する。
【0042】
同期処理部214は、サーバ処理部212の指示に従って、ゲームのマルチプレイに係る同期処理を行う。同期処理部214は、各アカウントに対応するユーザ端末100から受信する何らかの情報を、他のユーザ端末100に送信することで複数のユーザ端末100間の同期を行う。また、同期処理部214はサーバ200から複数のユーザ端末100に何らかの情報を送信する場合も、各ユーザ端末100に同期して情報を送信する。なお、同期処理部214は、同期のタイミングや同期すべき情報等をサーバ処理部212から受信すればよい。これにより、例えばあるユーザ端末100において行われた入力操作によって引き起こされるゲーム内の作用が、他のユーザ端末100において同期されて示される。
【0043】
(ユーザ端末100の機能的構成)
図3は、ユーザ端末100の機能的構成を示すブロック図である。ユーザ端末100は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、および入出力IF14等の協働によって、制御部110および記憶部120として機能する。
【0044】
記憶部120は、ゲームプログラム121と、ゲーム情報122と、ユーザ情報123とを格納する。ゲームプログラム121は、ユーザ端末100で実行するゲームプログラムである。ゲーム情報122は、制御部110がゲームプログラム121を実行する際に参照するデータであって、サーバ200のゲーム情報222と同様の情報を含んでいる。ユーザ情報123は、ユーザ端末100のユーザのアカウントに関するデータであって、サーバ200のユーザ情報223と同様の情報を含んでいる。
【0045】
制御部110は、記憶部120に格納されたゲームプログラム121を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲーム情報122に記憶された、ゲーム空間を構築するための情報を参照してゲーム空間を構築する。また、制御部110は、各種データを送受信する。例えば、制御部110はサーバ200から各種データおよびプログラム等を受信する。制御部110は、ゲーム情報122もしくはユーザ情報123の一部または全部をサーバ200に送信する。制御部110はサーバ200にマルチプレイの同期の要求を送信してもよい。制御部110はサーバ200からマルチプレイの同期のためのデータを受信してもよい。
【0046】
制御部110は、ゲームプログラム121の記述に応じて、入力操作受付部111、ゲーム進行処理部112、移動制御部113、カメラ配置制御部114、オブジェクト制御部115、および表示制御部116として機能する。
【0047】
入力操作受付部111は、入力部151に対するユーザの入力操作を検知し受け付ける。入力操作受付部111は、タッチスクリーン15およびその他の入出力IF14を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部110の各要素に出力する。
【0048】
例えば、入力操作受付部111は、入力部151に対する入力操作を受け付け、当該入力操作の入力位置の座標を検出し、当該入力操作の種類を特定する。入力操作受付部111は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、入力操作受付部111は、連続して検知されていた入力が途切れると、タッチスクリーン15から接触入力が解除されたことを検知する。
【0049】
ゲーム進行処理部112は、ゲームの進行に係る各種処理を行う。例えば、ゲーム進行処理部112は、入力操作受付部111が受け付けた入力操作の位置の座標と、操作の種類と、ゲームの進行状況とに基づいて、ユーザの指示内容を特定する。また、ゲーム進行処理部112は、当該入力操作がキャラクタの動作を指示する入力操作であることを特定する。また、ゲーム進行処理部112は、ゲーム情報122またはユーザ情報123の追加、更新、または削除を行う。また、ゲーム進行処理部112は、ゲームの進行に係る各種判定処理を行う。
【0050】
移動制御部113は、入力操作の位置座標および種類に基づいて、キャラクタの具体的な移動方向、移動速度、および移動距離の少なくともいずれかを決定するものである。ゲーム進行処理部112がユーザの入力操作をキャラクタの移動を指示する入力操作であると特定した場合、移動制御部113は、当該キャラクタの移動方向、移動速度、および移動距離の少なくともいずれかを決定する。移動制御部113は決定した内容をオブジェクト制御部115に伝える。
【0051】
カメラ配置制御部114は、ゲーム空間のうちユーザに提示する領域を指定するための仮想カメラを規定する。カメラ配置制御部114は、仮想カメラのゲーム空間内での位置および向きを規定することにより、仮想カメラをゲーム空間に仮想的に配置する。カメラ配置制御部114は、仮想カメラで規定される視野領域および当該視野領域に配置されているオブジェクトを描画した画像を作成するよう、表示制御部116に指示する。なお、カメラ配置制御部114は、仮想カメラの位置および向きを、随時変更してよい。
【0052】
表示制御部116は、表示部152に画像を表示させる。例えば、表示制御部116は、ゲーム空間のうち、カメラ配置制御部114が規定する仮想カメラの視野の領域と、当該領域に存在するオブジェクトとを描画した画像を生成し、表示部152に表示させる。表示制御部116は、画像にアイコン、ボタン、各種パラメータを示すメニュー等、ゲームの種々の操作に必要なUI(user interface)に係るオブジェクトを重畳して描画してもよい。
【0053】
オブジェクト制御部115は、ゲーム情報122に含まれる、オブジェクトの設定情報に基づきゲーム空間にオブジェクトを配置する。また、オブジェクト制御部115は、ゲーム空間に配置したオブジェクトを制御する。例えば、オブジェクト制御部115は、オブジェクトのゲーム空間内での位置、向き、形状、色等を変更したり、オブジェクトに所定の一連の動作を行わせたりする。例えば、オブジェクト制御部115は、ユーザの操作に基づいて動作する操作可能なキャラクタを、移動制御部113が決定した移動方向、移動速度、および移動距離で移動させる。なお、以降の説明では「ユーザの操作に基づいて動作する操作可能なキャラクタ」を「操作キャラクタ」と称する。
【0054】
なお、サーバ200は、ユーザ端末100が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末100は、サーバ200が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末100およびサーバ200以外の他の装置をゲームシステム1の構成要素とし、該他の装置にゲームシステム1における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラム121および221を実行するコンピュータは、ユーザ端末100、サーバ200、および他の装置の何れであってもよい。
【0055】
(ゲームの進行)
ゲームシステム1は、例えばテニスゲームを実現する。テニスゲームは、操作キャラクタと、NPCまたは他のユーザ端末100によって操作されるキャラクタ(他端末のキャラクタ)とがゲーム空間においてテニスで対戦するゲームである。ここで、他端末のキャラクタとは、前述の操作キャラクタを動かすユーザ端末100と異なる、他のユーザ端末100における操作キャラクタのことを示す。以降、操作キャラクタと対戦するNPC、または操作キャラクタと対戦する他端末のキャラクタをまとめて「相手キャラクタ」と称する。相手キャラクタは1体であっても複数であってもよい。テニスゲームにおける対戦は、実際のテニスのルールを基本として、適宜追加または変更された所定のルールに則って行われる。以降の説明では、実際のテニスのルールについて詳細な説明は省略する。
【0056】
(ゲーム空間とオブジェクトおよび仮想カメラの配置)
図4は、テニスゲームにおけるゲーム空間の一例を示す図である。テニスゲームはX軸、Y軸、Z軸の3軸を座標軸とする3次元のゲーム空間で進行する。
図4の状態(A)は、ゲーム空間をXY平面と平行な視点から見た場合の、各種オブジェクトおよび仮想カメラの配置例を示している。
図4の状態(B)は、ゲーム空間をZY平面と平行な視点から見た場合の、各種オブジェクトおよび仮想カメラの配置例を示している。なお、以降の説明では、一度部材番号を付して説明したオブジェクトについて再び言及する際は「オブジェクト」という文言を省略して記載する。例えば「操作キャラクタのオブジェクト310」は単に「操作キャラクタ310」と称する。
【0057】
オブジェクト制御部115は、テニスコートを示す略平面状のオブジェクト300を、XY平面と略平行に、ゲーム空間に配置する。また、オブジェクト制御部115は、テニスコート300を長手方向に二分するように、ネットを示すオブジェクト303を配置する。オブジェクト制御部115は操作キャラクタのオブジェクト310と、相手キャラクタのオブジェクト320とを、テニスコート300に配置する。例えば、オブジェクト制御部115は、操作キャラクタ310をコート301およびその周辺領域(第1の領域)に配置する。また、オブジェクト制御部115は、相手キャラクタ320をコート302およびその周辺領域(第2の領域)に配置する。換言すると、第1の領域は、操作キャラクタ310が移動可能な領域であり、第2の領域は、相手キャラクタ320が移動可能な領域である。コート301およびコート302の周辺領域は、例えばそれぞれのコートのベースラインの外側およびサイドライン外側の所定の範囲である。
【0058】
カメラ配置制御部114は、ゲーム空間内に仮想カメラ330を配置する。仮想カメラ330の位置および角度は特に限定されない。仮想カメラ330はユーザの入力操作が容易であり、かつより迫力のあるゲーム画面を提供できる位置および角度で配置される。例えば、仮想カメラ330は、
図4の状態(A)および(B)に示すように、操作キャラクタ310が視野領域の略中央に映り、かつ、相手キャラクタ320が写るような位置および角度で配置されてよい。
【0059】
(サーブ時の動作)
テニスゲームは、実際のテニスと同様に、1ゲームが複数のポイントから成る。1ポイントは、操作キャラクタ310または相手キャラクタ320のサーブから始まる。操作キャラクタ310と相手キャラクタ320とはボールを相手コートに向けて交互に打球し、いずれかのキャラクタが返球に失敗すると、対戦相手に得点が付与される。
【0060】
図5および
図6は、表示制御部116がタッチスクリーン15に表示させる表示画面の一例を示している。また、
図5および
図6は、ユーザがタッチスクリーン15に対して行う入力操作を模式的に示している。タッチスクリーン15に対し入力操作を行うための指示体は特に限定されない。例えば、指示体はユーザの手指であっても、スタイラスペン等であってもよい。本実施形態では、指示体としてユーザの手指(指A1)を用いることとする。また、本実施形態では、入力操作受付部111は、特別に記載しない限り、タッチスクリーン15上のあらゆる位置で行われた入力操作を受け付けることとする。
【0061】
図5は、操作キャラクタ310にサーブを打たせるときのユーザの入力操作および操作キャラクタ310の動作を示す。
図5の状態(A)は、オブジェクト制御部115がユーザの入力操作に応じて、操作キャラクタ310のサーブ動作の開始位置を移動させる場面を示す。オブジェクト制御部115は、ポイント開始時に操作キャラクタ310をエンドラインに沿って配置する。入力操作受付部111がタッチスクリーン15に対するドラッグ操作(図中の指A1に対する矢印)を受け付けると、ゲーム進行処理部112は、当該ドラッグ操作とゲームの進行状況とから、ドラッグ操作が操作キャラクタ310のサーブの開始位置を移動させる指示であると特定する。移動制御部113はドラッグ操作から移動方向、移動速度、および移動距離の少なくともいずれかを決定する。オブジェクト制御部115は、移動制御部113の決定内容に従い操作キャラクタ310を移動させる(図中の操作キャラクタ310に対する矢印)。
【0062】
なお、オブジェクト制御部115は操作キャラクタ310をエンドラインに沿って左右いずれかの方向に移動させることができる。ユーザは操作キャラクタ310にトスを行わせるための入力操作を行うまで、ドラッグ操作で操作キャラクタ310をエンドラインの任意の位置に動かすことができる。これにより、ユーザは操作キャラクタ310のサーブのコースを調整することができる。
【0063】
また、カメラ配置制御部114は、サーブ時は仮想カメラ330を、テニスコート300の中央のラインが視野領域の左右方向の略中央に含まれ、かつ、コート301とコート302とが縦方向(
図4におけるy軸と平行な方向)に見渡せるような位置および角度で配置してよい。これにより、ユーザにサーブを打つ操作キャラクタ310と、サーブの打ち込み先である相手キャラクタ320側のコートと、サーブの軌跡とを視認性良く見せることができる。
【0064】
図5の状態(B)は、オブジェクト制御部115が、ユーザの入力操作に応じて操作キャラクタ310にトス動作を行わせる場面を示す。入力操作受付部111がタッチスクリーン15に対するタップ操作を受け付けると、ゲーム進行処理部112は、当該ドラッグ操作とゲームの進行状況とから、タップ操作が操作キャラクタ310にトス動作を行わせる指示を示すと特定する。オブジェクト制御部115は当該指示に従って、操作キャラクタ310にトス動作を行わせるとともに、ボールのオブジェクト340をトス動作に合わせて出現および移動させる。トス動作とは、ボール340をトスアップする動作である。すなわち、オブジェクト制御部115は、操作キャラクタ310がボール340を投げることで、ボール340が上昇および下降するように移動させる。
【0065】
図5の状態(C)は、オブジェクト制御部115が、ユーザの入力操作に応じて操作キャラクタ310にサーブを打たせる場面を示す。入力操作受付部111がトス動作の間にタッチ操作を受け付けると、ゲーム進行処理部112は、当該タッチ操作を、サーブを打たせる指示であると特定する。オブジェクト制御部115は、当該指示に従って操作キャラクタ310に、サーブを打たせるための、ラケットを振る動作を行わせる。ボール340をラケットの動きに応じて相手キャラクタ320側のコートに移動させる。
【0066】
なお、ゲーム進行処理部112は、サーブを打たせる指示を特定した場合、当該指示を示すタップ操作が行われたタイミングに応じて、サーブの成否を判定してもよい。例えば、ゲーム進行処理部112は、ボール340が上昇の頂点付近の所定の領域に位置するときにタップ操作が行われた場合にサーブ成功と判定してもよい。また例えば、ゲーム進行処理部112は、ボール340が当該所定の領域以外に位置するときにタップ操作が行われた場合、サーブ失敗と判定してもよい。ここで、サーブ成功とは、コート302のサービスエリア内にボール340が落下し接地するようなサーブを操作キャラクタ310に打たせることを示す。一方サーブ失敗とは、操作キャラクタ310にラケットを空振りさせる、操作キャラクタ310にコート302のサービスエリア外にボール340が落下する、もしくは、ボール340がネットにかかり、コート302まで飛ばずに落下するようなサーブを打たせることを示す。
【0067】
(ラリー時の動作)
図6は、操作キャラクタ310と相手キャラクタ320とがボールを交互に打ち合う(ラリーする)ときの、ユーザの入力操作および操作キャラクタ310の動作を示す。
図6の状態(A)は、ユーザの入力操作に応じて、オブジェクト制御部115が操作キャラクタ310を移動させる場面を示す。ゲーム進行処理部112は、操作キャラクタ310または相手キャラクタ320のサーブの後に入力操作受付部111がドラッグ操作(図中の指A1に対する矢印)を受け付けた場合、当該ドラッグ操作を、操作キャラクタ310を移動させる指示を示すと特定する。移動制御部113はドラッグ操作から移動方向、移動速度、および移動距離の少なくともいずれかを決定する。オブジェクト制御部115は、移動制御部113の決定内容に従い操作キャラクタ310を移動させる(図中の操作キャラクタ310に対する矢印)。
【0068】
なお、ラリー時において、カメラ配置制御部114は、タッチスクリーン15のユーザから見て手前側となる辺から画面の中央に向かう所定の領域A2を空けて操作キャラクタ310が表示されるように、仮想カメラ330の位置および角度を決定してもよい。これにより、入力操作を行うユーザの手指A1でテニスコート300、相手キャラクタ320、操作キャラクタ310、またはボール340等が隠れてしまうことを防ぐことができる。したがって、ユーザはゲームの状況を見つつ、容易に入力操作を行うことができる。
【0069】
また、カメラ配置制御部114は仮想カメラ330を、コート301とコート302とが縦方向(
図4におけるy軸と平行な方向)に見渡せるような位置および角度で配置してもよい。これにより、ユーザにサーブを打つ操作キャラクタ310と、ボール340の打ち込み先である相手キャラクタ320側のコートと、サーブされたボール340の軌跡とを視認性良く見せることができる。
【0070】
図6の状態(B)は、ユーザの入力操作に応じて、オブジェクト制御部115が操作キャラクタ310に打球動作(操作キャラクタ310がラケットをスイングする動作)を行わせる場面を示す。ゲーム進行処理部112は、ラリー時に入力操作受付部111がタッチ操作を受け付けた場合、当該タッチ操作を、操作キャラクタ310に打球動作を行わせる指示であると特定する。オブジェクト制御部115は、当該指示に従って操作キャラクタ310に打球動作を行わせる。すなわち、オブジェクト制御部115は、操作キャラクタ310にラケットを振る動作を行わせるとともに、ボール340を第2の領域に移動させる。
【0071】
(打球エリア)
ゲーム進行処理部112は、操作キャラクタ310に打球動作を行わせる場合、当該打球動作でボール340を打球することができたか否かを判定する(打球成否判定)。また、オブジェクト制御部115は、打球成否判定の基準となる打球エリア350を、操作キャラクタ310とともにゲーム空間に配置する。なお、打球エリア350は、操作キャラクタの種類によってその大きさおよび形状の少なくとも一方が異なっていてもよい。
【0072】
図7は、操作キャラクタ310の打球エリアを示すオブジェクト350を模式的に示す図である。
図7の状態(A)は、操作キャラクタ310およびライン351と、打球エリア350との位置関係を示す図である。なお、打球エリアの形および大きさは、
図7に示した形および大きさに限定されない。打球エリア350は、操作キャラクタ310の現在位置を基準として、操作キャラクタ310が作用可能なボール340の位置の範囲を示す指標である。換言すると、打球エリア350は、操作キャラクタ310に打球動作を行わせた場合に、当該打球動作でボール340を打球できる範囲を示している。打球エリア350は、操作キャラクタ310の配置位置(現在位置)を基準として設けられる。操作キャラクタ310がユーザの入力操作に応じて移動すると、打球エリア350の位置も操作キャラクタ310に合わせて移動する。
【0073】
打球エリア350はエンドラインの方向に延びる直線のライン351を含む。ライン351は、操作キャラクタ310とボール340との位置関係の良好度合いが最良になるボール340の位置を示す指標である。つまり、ライン351は、打球動作に好適なタイミングをユーザに示すためのガイド線であるといえる。なお、ライン351はエンドラインに対し斜め方向となってもよい。例えば、ライン351は操作キャラクタ310の左右方向に対し延びる直線であってもよい。
【0074】
ゲーム進行処理部112は、操作キャラクタ310と、ボール340との位置関係に基づいて、打球成否判定を行う。より具体的には、ゲーム進行処理部112は、ボール340が打球エリア350内に位置している場合は打球成功と判定し、ボール340が当該打球エリア350外に位置している場合は打球失敗と判定する。
【0075】
(打球エリアと打球の良好度合い)
ゲーム進行処理部112は打球成功と判定した場合、さらに、ボール340が打球エリア350のどの領域に位置しているかに応じて、操作キャラクタ310とボール340との位置関係の良好度合いを決定する。例えば、位置関係以外の条件が同条件であれば、操作キャラクタ310は位置関係が最良である場合に最も強い打球を打つことができる。なお、ここで言う「打球」は、後述する特殊ショットを除いた打球を示す。
【0076】
図7の状態(B)は、打球エリア350のより詳細な一例を示す図である。ゲーム進行処置部112は、ボールが打球エリア350の領域353〜357のいずれに位置しているかによって、操作キャラクタ310とボール340の位置関係の良好度合いを決定する。なお、領域352〜357はタッチスクリーン15に表示されなくてもよい。また、各領域の大きさおよび形状は
図8の例に限定されない。また、領域353〜357は全て設けられていなくてもよい。例えば、領域353を設けず、領域354が領域353の範囲も含んでいてもよい。
【0077】
領域354は、ライン351に沿った所定の範囲のうち、後述する領域353を除く領域である。領域354内にボール340が位置するタイミングで操作キャラクタ310が打球する場合、ゲーム進行処理部112は、位置関係の良好度合いが最良であると判定し、最も強い打球でボール340を返球すると決定する。以下、位置関係の良好度合いが最良である場合を、「ジャスト」と称する。なお、「強い打球」とは、ゲームでより有利になるような打球を示す。ゲームでより有利になる返球とは、例えば、球速がより速い返球、ユーザによって指示されたコースにより近いコースでの返球等を示す。
【0078】
領域355は、打球エリア350内での領域354の周辺領域である。領域355内にボール340が位置するタイミングで操作キャラクタ310が打球する場合、ゲーム進行処理部112は、位置関係の良好度合いが、最良より1段階下の良好度合いであると判定し、ジャストの場合よりも1段階弱い打球でボール340を返球すると決定する。以下、位置関係の良好度合いが最良より1段階下の良好度合いである場合を、「GOOD」と称する。
【0079】
領域353は例えば、操作キャラクタ310を中心とした所定の領域である。また、領域356および領域357は、打球エリア350内で、領域353〜355を除いた領域である。これらの領域にボール340が位置するタイミングで打球動作を受け付けた場合、ゲーム進行処理部112は、位置関係の良好度合いが最良より2段階以上下の良好度合いであると判定し、GOODの場合よりも弱い打球でボール340を返球すると決定する。
【0080】
打球成否判定の結果、および位置関係の良好度合いはオブジェクト制御部115に伝えられる。オブジェクト制御部115は判定結果および位置関係の良好度合いに基づき、操作キャラクタ310およびボール340を動作させる。
【0081】
このように、ゲーム進行処置部112は、打球エリア350とボール340との位置関係の良好度合い、すなわち操作キャラクタ310とボール340との位置関係の良好度合いに応じて、打球の成否、および打球時の球の強さを決定する。例えば、ゲーム進行処理部112は、操作キャラクタ310からボール340までの方向、および操作キャラクタ310からボール340までの距離の少なくとも一方に応じて、位置関係の良好度合いを決定している。
【0082】
これにより、ユーザに対し、相手キャラクタ320側のコートから飛来するボール340のコースを想定させること、および、打球により良い位置に操作キャラクタ310を移動させる(位置取りさせる)ことを促すことができる。コースの想定および打球前の位置取りは、現実のテニスゲームでも重要な要素である。したがって、ゲームシステム1は、テニスゲームにおいて実際のテニスの戦略での対戦を実現させることができ、ゲームの興趣性を向上させることができる。
【0083】
また、ゲーム進行処理部112は、打球エリア350周辺の所定の領域を領域352と規定する。ゲーム進行処理部112は、打球成否判定の際に、打球エリア350ではなく領域352にボール340が位置している場合も、ボール340の打球が成功したと判定してよい。また、ゲーム進行処理部112が領域352で打球に成功したと判定した場合、ゲーム進行処理部112およびオブジェクト制御部115は、打球エリア350内で打球した場合に比べてゲームが不利になるように、操作キャラクタ310およびボール340の少なくともいずれかを動作させてよい。
【0084】
例えば、操作キャラクタ310に領域352のボール340を打球させた場合、オブジェクト制御部115は、ボール340を相手キャラクタ320に得点のチャンスを与えるような球速および軌道で返球させてもよい。例えば、オブジェクト制御部115は、ボール340を低速で、かつ浮き上がるような軌道で移動させてもよい。また例えば、操作キャラクタ310に領域352のボール340を打球させた場合、オブジェクト制御部115は、打球した操作キャラクタ310の姿勢を崩させてもよい。この場合、入力操作受付部111は操作キャラクタ310に対する操作を一定時間受け付けなくてもよい。
【0085】
(弾性オブジェクトの表示)
また、表示制御部116は、入力操作受付部111が移動操作を受け付けた場合に、移動操作の方向を示すオブジェクトをタッチスクリーン15に表示させてもよい。
図8は、ユーザの指A1の移動操作と、当該移動操作を示すオブジェクトの変化とを示す図である。
【0086】
図8の状態(A)は、ユーザがタッチスクリーン15に対しタッチオン操作を行ったときの表示画面を示す。タッチオン操作とは、タッチスクリーン15に対して指示体を接触または近接させる操作である。入力操作受付部111はタッチオン操作を受け付ける。表示制御部116はタッチオン操作を受け付けた位置B1を中心とする弾性オブジェクトC1をタッチスクリーン15に表示させる。このように、タッチオン操作に応じて弾性オブジェクトを表示することにより、操作を受け付けたことをユーザに視覚的に示すことができる。
【0087】
図8の状態(B)は、ユーザが指A1の位置を移動させる移動操作を行ったときの表示画面を示す。ユーザが指A1を位置B1から位置B2に移動させる移動操作を行うと、入力操作受付部111は、指A1の位置の変化を検出する。表示制御部116は入力操作受付部111の検出結果に基づいて、弾性オブジェクトC1を位置B1から位置B2まで引き伸ばすように変形させた弾性オブジェクトC2を、タッチスクリーン15に表示させる。このように、移動操作に応じて弾性オブジェクトを変形させて表示することにより、タッチスクリーン15が検出した移動操作の方向をユーザに視覚的に示すことができる。
【0088】
(UI配置)
表示制御部116は、
図5〜6および8で示した表示画面に、さらにユーザの入力操作に係るUIを重畳させて表示させることができる。
図9は、表示制御部116がタッチスクリーン15に表示させる表示画面の一例を示す図である。
【0089】
図9の状態(A)は、サーブ時の表示画面の一例を示す図である。
図9の状態(B)は、ラリー時の表示画面の一例を示す図である。表示制御部116は、ゲーム空間内のオブジェクトを描画した画像に、特殊ショットボタン360、球種選択ボタン370、ならびに交代ボタン380および382の画像を重畳させた画像を作成し、タッチスクリーン15に表示させてよい。
【0090】
また、表示制御部116は、操作キャラクタ310のスタミナゲージ311、相手キャラクタのスタミナゲージ321、ならびに控えキャラクタ(後述)のスタミナゲージ381および382をタッチスクリーンに表示させてよい。ここで、操作キャラクタ310と同じグループに所属するキャラクタのうち、操作キャラクタ以外のキャラクタを、控えキャラクタと呼称する。例えば、n人(nは1以上)のグループの場合、そのグループには、1人の操作キャラクタと(n−1)人の控えキャラクタが所属している。なお、スタミナゲージ311および321については、後に説明する。
【0091】
特殊ショットボタン360は、操作キャラクタ310に特殊ショットを打たせるための入力操作を受けつけるボタンである。入力操作受付部111は、ゲームの進行状況が所定の条件を満たしている場合、特殊ショットボタン360に対する入力操作を受けつける。例えば、ゲーム進行処理部112が、操作キャラクタ310の打球が所定回数成功したと判定した場合に、入力操作受付部111は特殊ショットボタン360を押下可能とする。
【0092】
ゲーム進行処理部112は、特殊ショットボタン360が一旦押下された状態で、操作キャラクタ310の打球が成功したと判定した場合、オブジェクト制御部115に特殊な返球(特殊ショット)をさせるよう指示する。特殊ショットとは、発動時または発動後に所定の条件を満たした場合に、操作キャラクタ310または相手キャラクタ320に特定の効果を付与する打球を示す。また、特殊ショットは、ボール340を特殊な移動方法で相手キャラクタ320側のコートに移動させるショットであってもよい。特殊な移動方法とは、例えば、通常の返球時には発生しない速度、軌道、回転状態でボールを移動させる方法である。また、ゲーム進行処理部112は、特殊ショットボタン360が押下可能な状態から押下されることにより、操作キャラクタ310が返球する回数が一定回数に至るまで、操作キャラクタ310とボール340との位置関係の良好度合いが最良である場合の返球をすることとしてもよい。換言すれば、特殊ショットボタン360が押下されることにより、ボールが打球エリア350のいずれにあっても、ボールを一定回数(例えば、3回)打ち返すまで、ジャストの打球を返球することとしてもよい。
【0093】
球種選択ボタン370は、操作キャラクタ310に打球動作をさせた際に打球可能な球種を示すとともに、当該球種の変更するための入力操作を受け付けるボタンである。ゲーム進行処理部112は、球種選択ボタン370が押下される(タッチされる)と、操作キャラクタ310の打球する球種を変更する。
【0094】
交代ボタン380および382は、操作キャラクタ310を、交代ボタン380または382にそれぞれ対応付けられた控えキャラクタと交代させるための入力操作を受け付けるためのボタンである。表示制御部116は、控えキャラクタの数に合わせた数の交代ボタンを表示させてもよい。ただし、表示制御部116が表示させる交代ボタンの数が多くなると、テニスゲームの対戦を表示させる領域が狭くなってしまう。それゆえ、操作キャラクタと同じグループに所属可能な他のキャラクタの数に上限を設けたり(例えば、2人)、あるいは表示する交代ボタンの数に上限(例えば、2つ)を設けたりしてもよい。なお、控えキャラクタの数よりも表示させる交代ボタンの数が少ない場合には、表示制御部116は、予めユーザに設定させた優先順位に従って、交代ボタンに対応付ける控えキャラクタを決定してもよい。
【0095】
ゲーム進行処理部112は、ユーザによる交代指示を受け付ける。交代指示は、交代ボタン380または382に対するタッチ操作により入力される。例えば、交代ボタン380に対するタッチ操作が検出された場合、ゲーム進行処理部112は、交代ボタン380に対応付けられているキャラクタが選択されたこと、および操作キャラクタ310を、選択されたキャラクタと交代させること、をオブジェクト制御部115に指示する。オブジェクト制御部115は、操作キャラクタ310に代えて、選択されたキャラクタを配置(表示)する。交代指示によって操作キャラクタ310から控えキャラクタとなったキャラクタは、交代ボタン380と対応づけられてもよい。この場合、交代ボタン380に対するタッチ操作が再度検出されれば、操作キャラクタ310に復帰することが可能である。なお、ゲーム進行処理部112が交代指示を受け付ける期間は、ボールデッドの期間、および、インプレイの期間であって、相手キャラクタがボールを打球する権利を有する期間に制限される。ゲーム進行処理部112が交代指示を受け付ける期間については、具体例を挙げて後に説明する。
【0096】
スタミナゲージ311および321はそれぞれ、操作キャラクタ310および相手キャラクタ320のスタミナの最大値および現在値を示している。スタミナゲージ381および383はそれぞれ、交代ボタン380に対応付けられた控えキャラクタ、および交代ボタン382に対応付けられた控えキャラクタの、スタミナの最大値および現在値を示している。スタミナとは、キャラクタの体力を示すパラメータである。各キャラクタには、スタミナの値(体力値)の最大値が予め定められている。ゲーム進行処理部112は、対戦中のキャラクタの動作に応じて、スタミナの値を最大値から減少させる。また、ゲーム進行処理部112は、対戦中のキャラクタの動作に応じて、減少したスタミナの値を回復させる。スタミナは、キャラクタの移動に関する性能(移動速度等)を決定するのに参照される。
【0097】
(スタミナの減少)
ゲーム進行処理部112は、操作キャラクタ310がボール340の打球に成功したと判定すると、当該打球に応じてスタミナの値を減少させる。また、ゲーム進行処理部112は、相手キャラクタ320がボール340を打球した場合も、当該打球に応じてスタミナの値を減少させる。つまり、各キャラクタのスタミナの値は、ボール340を打球することによって減少していく。なお、ゲーム進行処理部112は、操作キャラクタ310または相手キャラクタ320が移動する毎にスタミナを減少させてもよい。
【0098】
ゲーム進行処理部112は、操作キャラクタ310および相手キャラクタ320それぞれの打球時のスタミナの減少量を、返球するキャラクタとボール340との位置関係の良好度合いに応じて決定する。
【0099】
図10〜12は、ラリー時の表示画面の一例を示す図である。
図10は、操作キャラクタ310がボール340を、打球エリア350の領域354で打球した場合のラリーを示す図である。
図11は、操作キャラクタ310がボール340を、打球エリア350の領域356で打球した場合のラリーを示す図である。
図12は、操作キャラクタ310がボール340を、打球エリア350の領域352で打球した場合のラリーを示す図である。
【0100】
図10〜12の状態(A)は、操作キャラクタ310がボール340を打球した場面を示す図である。操作キャラクタ310がボール340を打球すると、ゲーム進行処理部112は、ボール340が打球エリア350または領域352のどの領域で打球されたかを判定する。
図10の状態(A)の場合は、ジャストでの打球である。
図11の状態(A)の場合は、ジャストの打球となる領域354よりも、操作キャラクタ310の向きにして前方の位置で打球している。換言すると、
図11の状態(A)の場合は、ジャストの位置関係よりも早いタイミングで打球しているといえる。また、
図12の状態(A)の場合は、打球エリア350外、すなわちジャストの位置関係よりも遠い位置での打球である。
【0101】
ゲーム進行処理部112は、ボール340が打球された領域に応じて、操作キャラクタ310とボール340との位置関係の良好度合いを決定する。
図10の状態(A)の場合は、ゲーム進行処理部112は、ボール340を最も強い打球で第2の領域へ移動させるように、オブジェクト制御部115に指示する。
図11の状態(A)および
図12の状態(A)の場合は、ゲーム進行処理部112は、ボール340を
図10の(A)の場合よりも弱い打球で第2の領域へ移動させるように、オブジェクト制御部115に指示する。オブジェクト制御部115はゲーム進行処理部112からの指示に従って、ボール340を第2の領域へ返球させる。
【0102】
なお、ゲーム進行処理部112は、ジャストでの打球と判定した場合に、表示制御部116にジャストで打球したことを示すエフェクト410をタッチスクリーン15に表示させるよう指示してもよい。また、表示制御部116は、エフェクト410をタッチスクリーン15に表示させてもよい。これにより、ユーザはジャストで打球できたか否かという操作の結果を容易に認識することができる。
【0103】
また、表示制御部116は、位置関係の良好度合いを示す情報を、操作キャラクタを操作するユーザが知覚可能な態様でタッチスクリーン15に表示させてもよい。例えば、
図10の状態(A)のように操作キャラクタ310がジャストで打球した場合、表示制御部116は、打球直後に位置関係がジャストであることを示す文字400を表示させてもよい。なお、文字400は一例であり、位置関係の良好度合いを示す情報は、イラスト、各種エフェクト、文字とイラストの組合せ等、どのような表示態様で示されてもよい。以降の文字表現についても同様である。また、ユーザ端末100は、表示だけでなく、効果音等の音声を出力することによって、位置関係の良好度合いを示す情報をユーザに示してもよい。
【0104】
また、
図11の状態(A)のように操作キャラクタ310がジャストの位置関係よりも早いタイミングで打球している場合、表示制御部116は、タイミングが速かったことを示す文字450を表示させてもよい。また、
図12の状態(A)のように、操作キャラクタ310がジャストの位置関係よりも遠い位置で打球した場合、表示制御部116は、距離が遠かったことを示す文字470を表示させてもよい。
【0105】
なお、
図10の状態(A)、
図11の状態(A)、および
図12の状態(A)のように、位置関係の良好度合いを示す情報は、操作キャラクタ310がボール340を打球した場合に、どのような位置関係で打球すれば良好度合いが最良(ジャスト)となったかを示していることが好ましい。これにより、ユーザは、操作キャラクタ310にどの位置関係で打球させればジャストで打球できたかを知ることができる。よって、ユーザがゲームの操作をより習熟し易くなる。
【0106】
また、表示制御部116は、操作キャラクタ310が打球した時に減少するスタミナの減少量を示す情報を、タッチスクリーン15に表示させてもよい。例えば、
図10の状態(A)に示すように、表示制御部116は、タッチスクリーン15における操作キャラクタ310の足元の位置に、文字420でスタミナの減少量を表示させればよい。また、ユーザ端末100は、表示だけでなく、効果音等の音声を出力することによって、スタミナの減少量を示す情報をユーザに示してもよい。
【0107】
なお、
図12の状態(A)に示すように、操作キャラクタ310が遠い位置(領域352)で打球した場合、ゲーム進行処理部112は、打球エリア350内で打球した場合に比べて、操作キャラクタ310のスタミナを大きく減少させてもよい。また、操作キャラクタ310または相手キャラクタ320が、位置関係がより良好な状態でボール340を打球した場合、スタミナの減少量をより少なくしてもよい。
【0108】
また、ゲーム進行処理部112は、スタミナの減少量を、ボール340を打球したキャラクタのスタミナ以外のパラメータに基づいて決定してもよい。例えば、ゲーム進行処理部112は、特殊ショットのボール340を返球する場合、通常の打球を返球する場合に比べて大きくスタミナを減少させてもよい。また、ゲーム進行処理部112は、返球前のボール340の球速が速いほど大きくスタミナを減少させてもよい。また、ボール340を打ったキャラクタのサーブやストロークのパラメータが高いほど、当該ボール340を返球する際のスタミナの減少量を大きくしてもよい。
【0109】
図10〜12の状態(B)はそれぞれ、
図10〜12の状態(A)で操作キャラクタ310が打球したボール340を、相手キャラクタ320が返球した場面を示す。表示制御部116は、相手キャラクタ320が返球した時に減少するスタミナの減少量を示す情報を、タッチスクリーン15に表示させてもよい。例えば、
図10の状態(B)に示すように、表示制御部116は、タッチスクリーン15における相手キャラクタ320の頭上の位置に、文字430等の表示様式でスタミナの減少量を表示させればよい。
【0110】
なお、
図10の状態(B)のように、相手キャラクタ320が、操作キャラクタ310がジャストで打球したボール340を返球した場合、ジャストで打球していないボール340を返球する場合に比べて異なる態様で、文字430を示してもよい。例えば、ジャストで打球していないボール340を返球する場合に比べて色、大きさ、形、エフェクトの有無等が異なっていてもよい。また、相手キャラクタ320が、操作キャラクタ310がジャストで打球したボール340を返球した場合、表示制御部116は、通常とは異なるエフェクト440をタッチスクリーン15に表示させてもよい。このように、タッチスクリーン15における表示態様を異ならせることで、ユーザは相手キャラクタ320のスタミナを大きく減少させたことを、直観的に認識することができる。
【0111】
また、表示制御部116は、相手キャラクタ320が返球した際の、相手キャラクタ320とボール340との位置関係の良好度合いを示す情報を、ユーザが知覚可能な態様でタッチスクリーン15に表示させてもよい。これにより、ユーザはボール340を操作キャラクタ310で返球すると、操作キャラクタ310のスタミナの値がどの程度減少するか予測することができる。よって、ユーザにスタミナの値の減少を抑える立ち回り等、対戦の戦略を考えさせることができる。
【0112】
なお、ゲーム進行処理部112は、操作キャラクタ310および相手キャラクタの打球時のスタミナの減少量を、打球前のボール340の球種、および、打球前のボール340が特殊ショットであるか否か等に応じて決定してもよい。また、ゲーム進行処理部112は、スタミナの減少量を、返球前のボール340を打ったキャラクタのスタミナ以外のパラメータ(サーブ、ストロークなどのパラメータの大小)に基づいて決定してもよい。
【0113】
(スタミナ減少時の性能低下)
ゲーム進行処理部112は、スタミナの値が所定の閾値以下に減少したか否かを判定し、閾値以下に減少した場合、当該スタミナが減少したキャラクタのパラメータを、ゲームにおいて不利になるよう変化させてもよい。例えば、ゲーム進行処理部112は、スタミナの値が所定の閾値以下に減少したキャラクタの移動速度を低下させたり、ボール340を打球する際の球速を遅くしたり、コントロールを低下させたりしてもよい。また例えば、ゲーム進行処理部112は、スタミナの値が所定の閾値以下に減少したキャラクタの、特殊ショットや特定の球種のショットを使用不可能にしてもよい。
【0114】
このように、スタミナの減少に応じてキャラクタの性能や動作自体に制限を設けることにより、ユーザに、操作キャラクタ310を控えキャラクタに交代させるタイミングを考えさせたり、対戦中のスタミナ減少を最小限に抑えるような立ち回りを考えさせたりすることができる。したがって、ゲームの戦略性を高めることができ、興趣性を向上させることができる。また、ユーザに操作キャラクタ310の基本操作(移動、打球、球種選択、および特殊ショットの実行など)をユーザに習熟させるための動機づけを行うことができる。
【0115】
(ラリーの処理の流れ)
図13は、操作キャラクタ310と相手キャラクタ320とのラリーに係る処理の流れを示すフローチャートである。なお、ラリーは操作キャラクタ310または相手キャラクタ320のサーブから始まるが、
図13ではラリーの途中、操作キャラクタ310がボール340を打球するところからの処理の流れを記載している。また、ステップS14とステップS16の処理の順序は入れ替わっていてもよい。また、ステップS22とステップS24の処理の順序は入れ替わっていてもよい。
【0116】
入力操作受付部111が打球動作を指示する入力操作を受け付けると(ステップS10)、ゲーム進行処理部112は、打球成否判定を行う(ステップS12)。操作キャラクタ310がボール340の打球に失敗した場合(ステップS12でNO)、入力操作受付部111は、次の入力操作を受け付けるまで待機する。一方、操作キャラクタ310がボール340の打球に成功した場合(ステップS12でYES)、ゲーム進行処理部112はさらに、操作キャラクタ310とボール340との位置関係の良好度合いを判定する。ゲーム進行処理部112は、ボール340を第2の領域へ移動させる旨の指示と、位置関係の良好度合いとをオブジェクト制御部115に伝える。オブジェクト制御部115は、ゲーム進行処理部112からの指示に従って、ボール340を第2の領域へ移動させる(ステップS14)。
【0117】
ゲーム進行処理部112は、打球前のボール340の位置関係の良好度合いに応じて、操作キャラクタ310のスタミナの値を減少させる(ステップS16)。換言すると、ゲーム進行処理部112は、相手キャラクタ320により作用を与えられて移動するボール340に対して操作キャラクタ310が作用を与えた場合に、相手キャラクタ320がボール340に対して作用を与えたときの相手キャラクタ320とボール340との位置関係の良好度合いに応じて、操作キャラクタ310のスタミナの値を減少させる。また、ゲーム進行処理部112は表示制御部116に操作キャラクタ310のスタミナバー311の表示を更新するよう指示する。表示制御部116はタッチスクリーン15におけるスタミナバー311の表示を更新させることにより、減少後の操作キャラクタ310のスタミナの値(スタミナの現在値)を、タッチスクリーン15に表示させる(ステップS18)。
【0118】
一方、オブジェクト制御部115が第2の領域へ移動させたボール340は、相手キャラクタ320によって打球(返球)され得る。ゲーム進行処理部112は、相手キャラクタ320がNPCの場合は、ゲーム情報122またはユーザ情報123に記憶された相手キャラクタ320の行動パターンに従って、ボール340を返球するか否か、返球に成功したか否かを判定する(ステップS20)。一方、相手キャラクタ320が他のユーザ端末100で操作されている操作キャラクタである場合、ゲーム進行処理部112は、他のユーザ端末100から、当該他のユーザ端末100における操作または打球成否判定の結果を、サーバ200を介し受信する。そして、受信したデータに基づいて、相手キャラクタ320が返球したか否かを判定する(ステップS20)。
【0119】
相手キャラクタ320が返球しない(または、返球に失敗した)場合(ステップS20でNO)、ゲーム進行処理部112は、操作キャラクタ310に対戦における1ポイントを付与し、ゲームを進行させる。一方、相手キャラクタ320が返球した場合(ステップS20でYES)、ゲーム進行処理部112はさらに、相手キャラクタ320とボール340との位置関係の良好度合いを判定する。相手キャラクタの位置関係の良好度合いについては、操作キャラクタ310と同様、相手キャラクタ320とボール340との位置関係に基づいて決定すればよい。
【0120】
ゲーム進行処理部112は、ボール340を第1の領域へ移動させる旨の指示と、位置関係の良好度合いとをオブジェクト制御部115に伝える。オブジェクト制御部115は、ゲーム進行処理部112からの指示に従って、ボール340を第1の領域へ移動させる(ステップS22)。
【0121】
ゲーム進行処理部112は、相手キャラクタ320が打球する前のボール340の位置関係の良好度合いに応じて、相手キャラクタ320のスタミナの値を減少させる(ステップS24)。換言すると、ゲーム進行処理部112は、操作キャラクタ310により作用を与えられて移動するボール340に対して相手キャラクタ320が作用を与えた場合に、操作キャラクタ310がボール340に対して作用を与えたときの操作キャラクタ310とボール340との位置関係の良好度合いに応じて、相手キャラクタ320のスタミナの値を減少させる。
【0122】
また、ゲーム進行処理部112は表示制御部116に操作キャラクタ310のスタミナバー311を更新させることにより、減少後の操作キャラクタ310のスタミナの値(現在値)をタッチスクリーン15に表示させる(ステップS26)。
【0123】
以上の処理によれば、相手キャラクタ320の打球を返球する場合(ステップS12〜18)、相手キャラクタ320とボール340との位置関係に基づいて、操作キャラクタ310のスタミナの減少量が決まる。換言すると、相手キャラクタ320の挙動によって、操作キャラクタ310がボール340を返球した際のスタミナの減少量が変化する。したがって、ゲームの展開がより多様になり、ゲームの興趣性が向上する。
【0124】
また、以上の処理によれば、操作キャラクタ310の打球を相手キャラクタ320が返球する場合(ステップS20〜26)、操作キャラクタ310とボール340との位置関係に基づいて、相手キャラクタ320のスタミナの減少量が決まる。例えば、操作キャラクタ310が
図7の状態(B)に示した打球エリア350を持つ場合、ボール340が領域354に位置しているタイミングで打ち返すことで、相手キャラクタ320のスタミナを最も大きく減少させることができる。
【0125】
したがって、ユーザは対戦を有利にするため、操作キャラクタ310とボール340との位置関係がより良くなるように位置取りする。よって、現実のテニスでも対戦で重要な要素である「打球の飛来位置の先読み」や「位置取り」といった概念をゲームにおいて実現することができる。よって、ゲームの戦略性が高まり、ゲームの興趣性が向上する。
【0126】
(スタミナの回復)
ゲーム進行処理部112は、操作キャラクタ310または相手キャラクタ320の前記体力値を回復させることが可能な所定の範囲(回復範囲)を、所定のタイミングでゲーム空間内に設定してもよい。また、ゲーム進行処理部112は、回復簡易に操作キャラクタ310または相手キャラクタ320が接触した場合に、操作キャラクタ310または相手キャラクタ320のスタミナの値を回復させてもよい。また、ゲーム進行処理部112は回復範囲をユーザに提示するよう、オブジェクト制御部115または表示制御部116に指示してもよい。
【0127】
例えば、ゲーム進行処理部112は、オブジェクト制御部115に対し、回復範囲を示す回復オブジェクトを表示するよう指示してもよい。オブジェクト制御部115は指示に従い、回復オブジェクトを第1の領域または第2の領域に出現させてもよい。操作キャラクタ310または相手キャラクタ320が回復オブジェクトと接触したとき、ゲーム進行処理部112は、接触した操作キャラクタ310または相手キャラクタ320のスタミナの値を回復させる。
【0128】
図14は、回復オブジェクトの配置と利用を示す図である。
図14の状態(A)は、オブジェクト制御部115が第1の領域に回復オブジェクト390を配置した場合の、タッチスクリーン15の表示画面の一例を示す。
【0129】
ゲーム進行処理部112は、対戦中の所定のタイミングで回復範囲を設定し、当該回復範囲に回復オブジェクト390を配置するようにオブジェクト制御部115に指示する。例えば、ゲーム進行処理部112はランダムなタイミング、または対戦開始から所定時間が経過したタイミングで回復範囲を設定し、オブジェクト制御部115に回復オブジェクト390を配置するよう指示する。なお、オブジェクト制御部115が所定のタイミングで回復オブジェクト390の配置位置の決定および配置を行い、ゲーム進行処理部112が当該配置位置を回復範囲と設定してもよい。また、回復範囲はランダムで決定されてもよいし、操作キャラクタ310または相手キャラクタ320の位置等、予め定められた条件に応じて決定されてもよい。
【0130】
オブジェクト制御部115は指示を受けると、回復オブジェクト390を第1の領域に出現させる。例えば、オブジェクト制御部115は、回復オブジェクト390がテニスコート300の外から投げ入れられたように、当該回復オブジェクト390を動かしながら出現させる。
【0131】
図14の状態(B)は、操作キャラクタ310が回復範囲に入った、すなわち回復オブジェクト390に接触した直後の、表示画面の一例を示す。図示のように、ゲーム空間に回復オブジェクト390を配置した後、回復オブジェクト390に操作キャラクタ310が接触すると、ゲーム進行処理部112は、スタミナゲージ311に示す操作キャラクタ310のスタミナの値を回復させる。
【0132】
ゲーム進行処理部112が操作キャラクタ310のスタミナの値を回復させると、表示制御部116は操作キャラクタ310のスタミナゲージ311の表示を、回復後のスタミナの値を示すように更新する。また、表示制御部116は、スタミナの回復量を数値の表示、エフェクトの表示、音声の出力等、ユーザが知覚可能な態様で出力してもよい。例えば表示制御部116は図示のように、操作キャラクタ310の足元に、スタミナの回復量を示す数値を表示させてもよい。これにより、ユーザに操作キャラクタ310のスタミナの値が回復したことを容易に認識させることができる。
【0133】
なお、ゲーム進行処理部112はスタミナの回復量を、予め定められた回復量としてもよいし、操作キャラクタ310のスタミナの最大値または現在値に応じて決定してもよい。また、操作キャラクタ310が回復範囲に入ったか否かの判定は、ゲーム進行処理部112が行えば良いが、オブジェクト制御部115が行ってもよい。
【0134】
以上の説明では、操作キャラクタ310のスタミナの値の回復について例にとり説明を行った。しかしながら、回復オブジェクト390はコート302に配置されてもよい。また、ゲーム進行処理部112は、相手キャラクタ320が回復オブジェクト390に接触した場合に、相手キャラクタ320のスタミナの値を回復させてもよい。また、ゲーム進行処理部112またはオブジェクト制御部115は、回復オブジェクト390を、操作キャラクタ310側のコートと相手キャラクタ320側のコートのいずれに配置するかについても、ランダムまたは予め定められた条件に基づいて決定してもよい。
【0135】
表示制御部116は、相手キャラクタ320のスタミナの値が回復した場合に、相手キャラクタ320のスタミナゲージ321の表示を更新してもよいし、相手キャラクタ320のスタミナの回復量を数値の表示、エフェクトの表示、音声の出力等、ユーザが知覚可能な態様で出力してもよい。
【0136】
また、ゲーム進行処理部112は、回復オブジェクト390を配置する旨の指示とともに、回復オブジェクト390の配置位置をオブジェクト制御部115に指示してもよい。また、ゲーム進行処理部112は、回復オブジェクト390の配置位置を含む所定の領域を、スタミナの値を回復させることが可能な領域(回復領域)と設定してもよい。ゲーム進行処理部112は、操作キャラクタ310(または相手キャラクタ320)が回復領域の範囲内に入ったか否かを監視し、範囲内に入った場合は操作キャラクタ310(または相手キャラクタ320)のスタミナの値を回復させてもよい。
【0137】
〔変形例〕
各実施形態に係るゲームシステム1は、テニスゲーム以外のゲームを実現してもよい。ゲームシステム1が実現するゲームは、ゲーム空間内において、ユーザの操作に基づいて動作する操作キャラクタと、該操作キャラクタと対戦する相手キャラクタとが、移動体に作用を与えることで該移動体を移動させることを交互に行って対戦するゲームであればよい。例えば、本開示は、卓球、バレーボール、バドミントン等、複数人がボールを交互に打球するような現実のスポーツを模したゲームに好適に適用できる。
【0138】
〔ソフトウェアによる実現例〕
制御部110の制御ブロックは、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよく、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
【0139】
後者の場合、制御部110は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【0140】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【0141】
(項目1) 本実施形態において、プロセッサ(10)、メモリ(11)、および、タッチスクリーン(15)を備えるコンピュータ(ユーザ端末100)において実行されるゲームプログラムについて説明した。本開示のある局面によると、ゲームプログラム(121)に基づくゲームは、ゲーム空間内において、ユーザの操作に基づいて動作する操作キャラクタ(310)と、該操作キャラクタと対戦する相手キャラクタ(320)とが、移動体(ボール340)に作用を与えることで該移動体を移動させることを交互に行って対戦するものである。また、相手キャラクタには、該相手キャラクタの体力を示す体力値(スタミナの値)が設定されており、該体力値は相手キャラクタが移動体に作用を与えることで減少するものである。ゲームプログラム(121)は、プロセッサ(10)に、操作キャラクタが移動体に対して作用を与えるための入力操作を受け付けるステップ(ステップS10)と、操作キャラクタにより作用を受けて移動する移動体に対して相手キャラクタが作用を与えた場合に、操作キャラクタが移動体に対して作用を与えたときの操作キャラクタと移動体との位置関係の良好度合いに応じて、相手キャラクタの体力値を減少させるステップ(ステップS24)と、相手キャラクタの体力値を示す情報をタッチスクリーン(15)に表示するステップ(ステップS26)と、を実行させる。
【0142】
これにより、操作キャラクタが移動体に作用を与えるときの、操作キャラクタと移動体との位置関係を、相手キャラクタの体力値の減少量に反映させることができる。例えば、当該位置関係が良好なほど、相手キャラクタの体力値を大きく減少させることができる。そのため、ユーザは対戦中、操作キャラクタに、移動体との位置関係がより良くなるように位置取りさせることとなる。よって、ゲームの戦略性が高まり、ゲームの興趣性が向上する。
【0143】
(項目2) (項目1)において、良好度合いは、操作キャラクタから移動体までの方向、および操作キャラクタから移動体までの距離の少なくとも一方に応じて決定される。これにより、ユーザは対戦中、操作キャラクタから移動体までの方向と距離との少なくともいずれかを意識して、操作キャラクタに位置取りさせることとなる。よって、ゲームの戦略性が高まり、ゲームの興趣性が向上する。
【0144】
(項目3) (項目1)または(項目2)において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、良好度合いを示す情報を、操作キャラクタを操作するユーザが知覚可能な態様で出力するステップを実行させる。これにより、ユーザに、操作キャラクタが移動体に作用を与えたときの操作キャラクタおよび移動体の位置関係の良好度合いを認識させることができる。良好度合いを認識したユーザは、より良好な位置関係で当該作用を行えるように、操作キャラクタの位置を調整することができる。よって、ユーザがゲームの操作に習熟するのを助けることができる。
【0145】
(項目4) (項目3)において、良好度合いを示す情報を出力するステップにおいて、良好度合いが最良でない場合、操作キャラクタが移動体に対してどのような位置関係で作用を与えれば良好度合いが最良となったかを示す情報を、良好度合いを示す情報として出力する。これにより、ユーザは、操作キャラクタが移動体に作用を与えた後に、その作用時の位置関係がどうやれば最良になったかを知ることができる。よって、ユーザがゲームの操作を習熟する助けとなる。
【0146】
(項目5) (項目1)から(項目4)までのいずれか一項目において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、操作キャラクタにより与えられた作用を受けて移動する移動体に対して相手キャラクタが作用を与えた場合に、相手キャラクタの体力値の減少量を示す情報をユーザが知覚可能な態様で出力するステップを実行させる。これにより、ユーザに、相手キャラクタの体力値の減少量を認識させることができる。ユーザは当該減少量に基づいて、対戦で勝つための戦略を立てることができる。よってゲームの戦略性が高まり、ゲームの興趣性が向上する。
【0147】
(項目6) (項目1)から(項目4)までのいずれか一項目において、操作キャラクタには、該操作キャラクタの体力を示す体力値が設定されており、該体力値は操作キャラクタが移動体に作用を与えることで減少するものであり、ゲームプログラム(121)は、プロセッサ(10)に、相手キャラクタにより与えられた作用を受けて移動する移動体に対して操作キャラクタが作用を与えた場合に、相手キャラクタが移動体に対して作用を与えたときの相手キャラクタと移動体との位置関係の良好度合いに応じて、操作キャラクタの体力値を減少させるステップ(ステップS16)と、操作キャラクタの体力値を示す情報をタッチスクリーンに表示するステップ(ステップS18)と、を実行させる。これにより、相手キャラクタの挙動によって操作キャラクタの体力値の減少量が変化する。よって、ゲームの展開がより多様になり、ゲームの興趣性が向上する。
【0148】
(項目7) (項目6)において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、相手キャラクタが移動体に対して作用を与えたときの相手キャラクタと移動体との位置関係の良好度合いを示す情報を、操作キャラクタを操作するユーザが知覚可能な態様で出力するステップを実行させる。これにより、ユーザは操作キャラクタで移動体に作用を与えた場合に、操作キャラクタの体力値がどの程度減少するか予測することができる。よって、ユーザに体力値の減少を抑える立ち回り等、対戦の戦略を考えさせることができる。よって、ゲームの戦略性が高まり、ゲームの興趣性が向上する。
【0149】
(項目8) (項目6)または(項目7)において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、相手キャラクタにより与えられた作用を受けて移動する移動体に対して操作キャラクタが作用を与えた場合に、操作キャラクタの体力値の減少量を示す情報をユーザが知覚可能な態様で出力するステップを実行させる。これにより、ユーザに操作キャラクタで移動体に作用を与えた場合に、操作キャラクタの体力値がどの程度減少したか認識させることができる。よって、ゲームの戦略性が高まり、ゲームの興趣性が向上する。
【0150】
(項目9) (項目5)または(項目8)において、体力値の減少量を示す情報を出力するステップにおいて、良好度合いが最良である場合、良好度合いが最良でない場合と異なる態様で、体力値の減少量を示す情報を出力する。これにより、ユーザは操作キャラクタまたは相手キャラクタが移動体に作用を与えた時の位置関係が最良であったことを、直観的に認識することができる。
【0151】
(項目10) (項目1)から(項目9)までのいずれか一項目において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、操作キャラクタまたは相手キャラクタの体力値が所定の閾値以下に減少した場合、当該操作キャラクタまたは当該相手キャラクタが不利になるように、当該操作キャラクタまたは当該相手キャラクタのパラメータを変化させるステップを実行させる。これにより、ユーザに、操作キャラクタの体力値の減少を抑えるような立ち回りを考えさせること、および習熟させる動機づけができる。よって、ゲームの戦略性を高めることができ、興趣性を向上させることができる。
【0152】
(項目11) (項目10)において、パラメータを変化させるステップにおいて、パラメータとして操作キャラクタまたは相手キャラクタの移動速度を遅くなるように変化させる。
【0153】
移動速度が遅くなった操作キャラクタまたは相手キャラクタは、対戦で不利になる。したがって、ユーザに、操作キャラクタの体力値の減少を抑えるような立ち回りを考えさせることができる。もしくは、ユーザに、相手キャラクタの体力値をより減少させるような立ち回りを考えさせることができる。よって、ゲームの戦略性を高めることができ、興趣性を向上させることができる。
【0154】
(項目12) (項目9)から(項目11)までのいずれか一項目において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、操作キャラクタの体力値を回復させることが可能な所定の範囲を所定のタイミングでゲーム空間内に設定するステップと、所定の範囲に操作キャラクタが入った場合に、操作キャラクタの体力値を回復させるステップと、を実行させる。これにより、ユーザに、操作キャラクタの体力値の回復も考慮に入れた戦略を考えさせることができる。よって、ゲームの戦略性を高めることができ、興趣性を向上させることができる。
【0155】
(項目13) (項目12)において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、操作キャラクタの体力値を回復させた場合、体力値の回復量を示す情報を、操作キャラクタを操作するユーザが知覚可能な態様で出力するステップを実行させる。これにより、ユーザが、操作キャラクタの体力値の回復量を認識することができ、より戦略が立てやすくなる。
【0156】
(項目14) (項目1)から(項目13)までのいずれか一項目において、ゲームプログラム(121)は、プロセッサ(10)に、さらに、操作キャラクタの現在位置を基準とする、操作キャラクタが作用可能な移動体の範囲を示す指標(打球エリア350)、および、位置関係の良好度合いが最良になる移動体の位置を示す指標(ライン351)を、タッチスクリーンに表示させるステップを実行させる。これにより、ユーザは、操作キャラクタが移動体に作用を与えるときの、操作キャラクタと移動体との位置関係を、指標に基づき決定することができる。よって、ユーザがゲームの操作を習熟する助けとなる。
【0157】
(項目15) (項目1)から(項目14)までのいずれか一項目において、ゲームは、複数のキャラクタから選択された1体のキャラクタを、操作キャラクタとしてユーザに操作させるものであって、ゲームプログラム(121)は、プロセッサ(10)に、さらに、操作キャラクタを複数のキャラクタに含まれる他のキャラクタに交代させるための入力操作を受け付けるステップを実行させ、複数のキャラクタにはそれぞれ、体力値が設定されている。これにより、ユーザは、体力値の減少した操作キャラクタを、グループ内の別のキャラクタと交代させることも考慮して、戦略を立てることができる。よって、ゲームの戦略性を高めることができ、興趣性を向上させることができる。
【0158】
(項目16) プロセッサ(10)、メモリ(11)、および、タッチスクリーン(15)を備えるコンピュータ(100)がゲームを実行するための方法を説明した。本開示のある局面によると、ゲームは、ゲーム空間内において、ユーザの操作に基づいて動作する操作キャラクタと、該操作キャラクタと対戦する相手キャラクタとが、移動体に作用を与えることで該移動体を移動させることを交互に行って対戦するものである。相手キャラクタには、該相手キャラクタの体力を示す体力値が設定されており、該体力値は相手キャラクタが移動体に作用を与えることで減少するものである。方法は、プロセッサ(10)が、操作キャラクタが移動体に対して作用を与えるための入力操作を受け付けるステップ(ステップS10)と、操作キャラクタにより作用を受けて移動する移動体に対して相手キャラクタが作用を与えた場合に、操作キャラクタが移動体に対して作用を与えたときの操作キャラクタと移動体との位置関係の良好度合いに応じて、相手キャラクタの体力値を減少させるステップ(ステップS24)と、相手キャラクタの体力値を示す情報をタッチスクリーン(15)に表示するステップ(ステップS26)と、を含む。(項目16)に係る方法は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。
【0159】
(項目17) ゲームプログラムを記憶する記憶部(120)と、ゲームプログラム(121)を実行することにより、情報処理装置(ユーザ端末100)の動作を制御する制御部(110)と、タッチスクリーン(15)と、を備えた情報処理装置(ユーザ端末100)について説明した。本開示のある局面によると、ゲームプログラム(121)に基づくゲームは、ゲーム空間内において、ユーザの操作に基づいて動作する操作キャラクタと、該操作キャラクタと対戦する相手キャラクタとが、移動体に作用を与えることで該移動体を移動させることを交互に行って対戦するものである。また、相手キャラクタには、該相手キャラクタの体力を示す体力値が設定されており、該体力値は相手キャラクタが移動体に作用を与えることで減少するものである。制御部(110)は、操作キャラクタが移動体に対して作用を与えるための入力操作を受け付け、操作キャラクタにより作用を受けて移動する移動体に対して相手キャラクタが作用を与えた場合に、操作キャラクタが移動体に対して作用を与えたときの操作キャラクタと移動体との位置関係の良好度合いに応じて、相手キャラクタの体力値を減少させ、相手キャラクタの体力値を示す情報をタッチスクリーン(15)に表示させる。(項目17)に係る情報処理装置は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。
【解決手段】ゲームプログラム(121)は、プロセッサ(10)に、操作キャラクタ(310)がボール(340)を打球するための入力操作を受け付けるステップ(S10)と、打球されたボール(340)を相手キャラクタ(320)が返球した場合に、操作キャラクタ(310)がボール(340)を打球したときの操作キャラクタ(310)とボール(340)との位置関係の良好度合いに応じて、相手キャラクタ(320)のスタミナの値を減少させるステップ(S24)と、相手キャラクタ(320)のスタミナの値を前記タッチスクリーン(15)に表示するステップ(S26)と、を実行させる。