本開示に係るゲームシステムは、複数のユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
<ゲームシステム1のハードウェア構成>
図1は、ゲームシステム1のハードウェア構成を示す図である。ゲームシステム1は図示の通り、複数のユーザ端末100と、サーバ200とを含む。各ユーザ端末100は、サーバ200とネットワーク2を介して接続する。ネットワーク2は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution)、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が挙げられる。
サーバ200(コンピュータ、情報処理装置)は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ200は、プロセッサ20と、メモリ21と、ストレージ22と、通信IF23と、入出力IF24とを備える。サーバ200が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
ユーザ端末100(コンピュータ、情報処理装置)は、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末100は、ゲームプレイに適したゲーム装置であってもよい。ユーザ端末100は図示の通り、プロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチスクリーン15(表示部)と、カメラ17と、測距センサ18とを備える。ユーザ端末100が備えるこれらの構成は、通信バスによって互いに電気的に接続される。なお、ユーザ端末100は、タッチスクリーン15に代えて、または、加えて、ユーザ端末100本体とは別に構成されたディスプレイ(表示部)を接続可能な入出力IF14を備えていてもよい。
また、図1に示すように、ユーザ端末100は、1つ以上のコントローラ1020と通信可能に構成されることとしてもよい。コントローラ1020は、例えば、Bluetooth(登録商標)等の通信規格に従って、ユーザ端末100と通信を確立する。コントローラ1020は、1つ以上のボタン等を有していてもよく、該ボタン等に対するユーザの入力操作に基づく出力値をユーザ端末100へ送信する。また、コントローラ1020は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末100へ送信する。
なお、ユーザ端末100がカメラ17および測距センサ18を備えることに代えて、または、加えて、コントローラ1020がカメラ17および測距センサ18を有していてもよい。
ユーザ端末100は、例えばゲーム開始時に、コントローラ1020を使用するユーザに、該ユーザの名前またはログインID等のユーザ識別情報を、該コントローラ1020を介して入力させることが望ましい。これにより、ユーザ端末100は、コントローラ1020とユーザとを紐付けることが可能となり、受信した出力値の送信元(コントローラ1020)に基づいて、該出力値がどのユーザのものであるかを特定することができる。
ユーザ端末100が複数のコントローラ1020と通信する場合、各コントローラ1020を各ユーザが把持することで、ネットワーク2を介してサーバ200などの他の装置と通信せずに、該1台のユーザ端末100でマルチプレイを実現することができる。また、各ユーザ端末100が無線LAN(Local Area Network)規格等の無線規格により互いに通信接続する(サーバ200を介さずに通信接続する)ことで、複数台のユーザ端末100によりローカルでマルチプレイを実現することもできる。1台のユーザ端末100によりローカルで上述のマルチプレイを実現する場合、ユーザ端末100は、さらに、サーバ200が備える後述する種々の機能の少なくとも一部を備えていてもよい。また、複数のユーザ端末100によりローカルで上述のマルチプレイを実現する場合、複数のユーザ端末100は、サーバ200が備える後述する種々の機能を分散して備えていてもよい。
なお、ローカルで上述のマルチプレイを実現する場合であっても、ユーザ端末100はサーバ200と通信を行ってもよい。例えば、あるゲームにおける成績または勝敗等のプレイ結果を示す情報と、ユーザ識別情報とを対応付けてサーバ200に送信してもよい。
また、コントローラ1020は、ユーザ端末100に着脱可能な構成であるとしてもよい。この場合、ユーザ端末100の筐体における少なくともいずれかの面に、コントローラ1020との結合部が設けられていてもよい。該結合部を介して有線によりユーザ端末100とコントローラ1020とが結合している場合は、ユーザ端末100とコントローラ1020とは、有線を介して信号を送受信する。
図1に示すように、ユーザ端末100は、外部のメモリカード等の記憶媒体1030の装着を、入出力IF14を介して受け付けてもよい。これにより、ユーザ端末100は、記憶媒体1030に記録されるプログラム及びデータを読み込むことができる。記憶媒体1030に記録されるプログラムは、例えばゲームプログラムである。
ユーザ端末100は、サーバ200等の外部の装置と通信することにより取得したゲームプログラムをユーザ端末100のメモリ11に記憶してもよいし、記憶媒体1030から読み込むことにより取得したゲームプログラムをメモリ11に記憶してもよい。
以上で説明したとおり、ユーザ端末100は、該ユーザ端末100に対して情報を入力する機構の一例として、通信IF13、入出力IF14、タッチスクリーン15、カメラ17、および、測距センサ18を備える。入力する機構としての上述の各部は、ユーザの入力操作を受け付けるように構成された操作部と捉えることができる。
例えば、操作部が、カメラ17および測距センサ18の少なくともいずれか一方で構成される場合、該操作部が、ユーザ端末100の近傍の物体1010を検出し、当該物体の検出結果から入力操作を特定する。一例として、物体1010としてのユーザの手、予め定められた形状のマーカーなどが検出され、検出結果として得られた物体1010の色、形状、動き、または、種類などに基づいて入力操作が特定される。より具体的には、ユーザ端末100は、カメラ17の撮影画像からユーザの手が検出された場合、該撮影画像に基づき検出されるジェスチャ(ユーザの手の一連の動き)を、ユーザの入力操作として特定し、受け付ける。なお、撮影画像は静止画であっても動画であってもよい。
あるいは、操作部がタッチスクリーン15で構成される場合、ユーザ端末100は、タッチスクリーン15の入力部151に対して実施されたユーザの操作をユーザの入力操作として特定し、受け付ける。あるいは、操作部が通信IF13で構成される場合、ユーザ端末100は、コントローラ1020から送信される信号(例えば、出力値)をユーザの入力操作として特定し、受け付ける。あるいは、操作部が入出力IF14で構成される場合、該入出力IF14と接続されるコントローラ1020とは異なる入力装置(図示せず)から出力される信号をユーザの入力操作として特定し、受け付ける。
<各装置のハードウェア構成要素>
プロセッサ10は、ユーザ端末100全体の動作を制御する。プロセッサ20は、サーバ200全体の動作を制御する。プロセッサ10および20は、CPU(Central Processing Unit)、MPU(Micro Processing Unit)、およびGPU(Graphics Processing Unit)を含む。
プロセッサ10は後述するストレージ12からプログラムを読み出し、後述するメモリ11に展開する。プロセッサ20は後述するストレージ22からプログラムを読み出し、後述するメモリ21に展開する。プロセッサ10およびプロセッサ20は展開したプログラムを実行する。
メモリ11および21は主記憶装置である。メモリ11および21は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置で構成される。メモリ11は、プロセッサ10が後述するストレージ12から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ10に作業領域を提供する。メモリ11は、プロセッサ10がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ21は、プロセッサ20が後述するストレージ22から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ20に作業領域を提供する。メモリ21は、プロセッサ20がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
本実施形態においてプログラムとは、ゲームをユーザ端末100により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末100とサーバ200との協働により実現するためのゲームプログラムであってもよい。なお、ユーザ端末100とサーバ200との協働により実現されるゲームは、一例として、ユーザ端末100において起動されたブラウザ上で実行されるゲームであってもよい。あるいは、該プログラムは、該ゲームを複数のユーザ端末100の協働により実現するためのゲームプログラムであってもよい。また、各種データとは、ユーザ情報およびゲーム情報などのゲームに関するデータ、ならびに、ユーザ端末100とサーバ200との間または複数のユーザ端末100間で送受信する指示または通知を含んでいる。
ストレージ12および22は補助記憶装置である。ストレージ12および22は、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置で構成される。ストレージ12およびストレージ22には、ゲームに関する各種データが格納される。
通信IF13は、ユーザ端末100における各種データの送受信を制御する。通信IF23は、サーバ200における各種データの送受信を制御する。通信IF13および23は例えば、無線LAN(Local Area Network)を介する通信、有線LAN、無線LAN、または携帯電話回線網を介したインターネット通信、ならびに近距離無線通信等を用いた通信を制御する。
入出力IF14は、ユーザ端末100がデータの入力を受け付けるためのインターフェースであり、またユーザ端末100がデータを出力するためのインターフェースである。
入出力IF14は、USB(Universal Serial Bus)等を介してデータの入出力を行ってもよい。入出力IF14は、例えば、ユーザ端末100の物理ボタン、カメラ、マイク、または、スピーカ等を含み得る。サーバ200の入出力IF24は、サーバ200がデータの入力を受け付けるためのインターフェースであり、またサーバ200がデータを出力するためのインターフェースである。入出力IF24は、例えば、マウスまたはキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
ユーザ端末100のタッチスクリーン15は、入力部151と表示部152とを組み合わせた電子部品である。入力部151は、例えばタッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。表示部152は、例えば液晶ディスプレイ、または有機EL(Electro-Luminescence)ディスプレイ等によって構成される。
入力部151は、入力面に対しユーザの操作(主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作)が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部151は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
図示していないが、ユーザ端末100は、該ユーザ端末100の保持姿勢を特定するための1以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、または、角速度センサ等であってもよい。ユーザ端末100がセンサを備えている場合、プロセッサ10は、センサの出力からユーザ端末100の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ10は、ユーザ端末100が縦向きに保持されているときには、縦長の画像を表示部152に表示させる縦画面表示としてもよい。一方、ユーザ端末100が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ10は、ユーザ端末100の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
カメラ17は、イメージセンサ等を含み、レンズから入射する入射光を電気信号に変換することで撮影画像を生成する。
測距センサ18は、測定対象物までの距離を測定するセンサである。測距センサ18は、例えば、パルス変換した光を発する光源と、光を受ける受光素子とを含む。測距センサ18は、光源からの発光タイミングと、該光源から発せられた光が測定対象物にあたって反射されて生じる反射光の受光タイミングとにより、測定対象物までの距離を測定する。測距センサ18は、指向性を有する光を発する光源を有することとしてもよい。
ここで、ユーザ端末100が、カメラ17と測距センサ18とを用いて、ユーザ端末100の近傍の物体1010を検出した検出結果を、ユーザの入力操作として受け付ける例をさらに説明する。カメラ17および測距センサ18は、例えば、ユーザ端末100の筐体の側面に設けられてもよい。カメラ17の近傍に測距センサ18が設けられてもよい。カメラ17としては、例えば赤外線カメラを用いることができる。この場合、赤外線を照射する照明装置および可視光を遮断するフィルタ等が、カメラ17に設けられてもよい。これにより、屋外か屋内かにかかわらず、カメラ17の撮影画像に基づく物体の検出精度をいっそう向上させることができる。
プロセッサ10は、カメラ17の撮影画像に対して、例えば以下の(1)~(5)に示す処理のうち1つ以上の処理を行ってもよい。(1)プロセッサ10は、カメラ17の撮影画像に対し画像認識処理を行うことで、該撮影画像にユーザの手が含まれているか否かを特定する。プロセッサ10は、上述の画像認識処理において採用する解析技術として、例えばパターンマッチング等の技術を用いてよい。(2)また、プロセッサ10は、ユーザの手の形状から、ユーザのジェスチャを検出する。プロセッサ10は、例えば、撮影画像から検出されるユーザの手の形状から、ユーザの指の本数(伸びている指の本数)を特定する。プロセッサ10はさらに、特定した指の本数から、ユーザが行ったジェスチャを特定する。例えば、プロセッサ10は、指の本数が5本である場合、ユーザが「パー」のジェスチャを行ったと判定する。また、プロセッサ10は、指の本数が0本である(指が検出されなかった)場合、ユーザが「グー」のジェスチャを行ったと判定する。また、プロセッサ10は、指の本数が2本である場合、ユーザが「チョキ」のジェスチャを行ったと判定する。(3)プロセッサ10は、カメラ17の撮影画像に対し、画像認識処理を行うことにより、ユーザの指が人差し指のみ立てた状態であるか、ユーザの指がはじくような動きをしたかを検出する。(4)プロセッサ10は、カメラ17の撮影画像の画像認識結果、および、測距センサ18の出力値等の少なくともいずれか1つに基づいて、ユーザ端末100の近傍の物体1010(ユーザの手など)とユーザ端末100との距離を検出する。例えば、プロセッサ10は、カメラ17の撮影画像から特定されるユーザの手の形状の大小により、ユーザの手がユーザ端末100の近傍(例えば所定値未満の距離)にあるのか、遠く(例えば所定値以上の距離)にあるのかを検出する。なお、撮影画像が動画の場合、プロセッサ10は、ユーザの手がユーザ端末100に接近しているのか遠ざかっているのかを検出してもよい。(5)カメラ17の撮影画像の画像認識結果等に基づいて、ユーザの手が検出されている状態で、ユーザ端末100とユーザの手との距離が変化していることが判明した場合、プロセッサ10は、ユーザが手をカメラ17の撮影方向において振っていると認識する。カメラ17の撮影範囲よりも指向性が強い測距センサ18において、物体が検出されたりされなかったりする場合に、プロセッサ10は、ユーザが手をカメラの撮影方向に直交する方向に振っていると認識する。
このように、プロセッサ10は、カメラ17の撮影画像に対する画像認識により、ユーザが手を握りこんでいるか否か(「グー」のジェスチャであるか、それ以外のジェスチャ(例えば「パー」)であるか)を検出する。また、プロセッサ10は、ユーザの手の形状とともに、ユーザがこの手をどのように移動させているかを検出する。また、プロセッサ10は、ユーザがこの手をユーザ端末100に対して接近させているのか遠ざけているのかを検出する。このような操作は、例えば、マウスまたはタッチパネルなどのポインティングデバイスを用いた操作に対応させることができる。ユーザ端末100は、例えば、ユーザの手の移動に応じて、タッチスクリーン15においてポインタを移動させ、ユーザのジェスチャ「グー」を検出する。この場合、ユーザ端末100は、ユーザが選択操作を継続中であると認識する。選択操作の継続とは、例えば、マウスがクリックされて押し込まれた状態が維持されること、または、タッチパネルに対してタッチダウン操作がなされた後タッチされた状態が維持されることに対応する。また、ユーザ端末100は、ユーザのジェスチャ「グー」が検出されている状態で、さらにユーザが手を移動させると、このような一連のジェスチャを、スワイプ操作(またはドラッグ操作)に対応する操作として認識することもできる。また、ユーザ端末100は、カメラ17の撮影画像によるユーザの手の検出結果に基づいて、ユーザが指をはじくようなジェスチャを検出した場合に、当該ジェスチャを、マウスのクリックまたはタッチパネルへのタップ操作に対応する操作として認識してもよい。
<ゲームシステム1の機能的構成>
(サーバ200の機能的構成)
図2は、サーバ200の機能的構成を示すブロック図である。サーバ200は、ゲームを実現するために必要な各種データおよびプログラムを、各ユーザ端末100に提供する機能を有する。サーバ200は、各ユーザ端末100からゲームに関するデータを収集し管理する機能を有する。サーバ200は、複数のユーザ端末100間の同期処理を行う機能を有する。
なお、本実施形態では、サーバ200は事前に登録されたゲームのアカウントで各ユーザおよびユーザ端末100を識別する。アカウントの登録方法は特に限定されない。例えば、ユーザ端末100またはパーソナルコンピュータ等の他の装置が、ユーザの操作に従って、ユーザのアカウントの登録に必要な情報をサーバ200に送信すればよい。そして、サーバ200は、受信した情報に基づいて各ユーザのアカウントを作成および保存すればよい。
ユーザ端末100がいずれかのアカウントを用いてゲームシステム1のネットワーク2にログインすると、サーバ200はログインしたユーザ端末100を認識する。なお、ログインの方法およびログインに係る処理については特に限定しない。サーバ200およびユーザ端末100は、従来知られたログインの方法およびログインに係る各種処理を行えばよい。
サーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、入出力IF24等の協働によって、制御部210および記憶部220として機能する。
記憶部220は、制御部210が使用する各種データを格納する。記憶部220はゲームプログラム221と、ゲーム情報222と、ユーザ情報223とを格納している。
ゲームプログラム221は、ゲームを実現するためのプログラムである。ゲーム情報222およびユーザ情報223は、ゲームプログラム221が実行されるときに参照されるデータである。
なお、ゲームプログラム221は、サーバ200側で実行するゲームプログラムに加えて、ユーザ端末100に送信しユーザ端末100側で実行するプログラム(後述するゲームプログラム121)を含んでいてもよい。もしくは、記憶部220は、サーバ200側で実行するゲームプログラム221と、ユーザ端末側で実行するプログラムとの両方を格納していてもよい。
ゲーム情報222は、アカウント間で共通の情報である。ゲーム情報222は、例えば各種ゲーム空間を規定するための情報を含み得る。「ゲーム空間」とは、ユーザが操作可能な操作キャラクタのオブジェクトが配置される空間である。ゲーム情報222は、ゲーム空間内に配置される木・岩・建物等の背景オブジェクトやノンプレイヤキャラクタ(non player character:NPC)のオブジェクトの配置位置、大きさ、色、形状等、アカウント間で共通のオブジェクトに関する各種設定情報を含み得る。ゲーム情報222は、ノンプレイヤキャラクタの各種パラメータの設定値を含み得る。ゲーム情報222はクエストに係る情報を含み得る。ゲーム情報222は、ゲーム空間内において行われる抽選の当選確率に関する情報を含み得る。クエストとは、達成条件が設定されたゲーム内のイベントである。クエスト毎に、達成条件が設定されていてもよい。なお、クエストには達成条件に加え失敗条件が設定されていてもよい。また、以下では、ゲーム空間に配置されたキャラクタのオブジェクトを指して、単に「キャラクタ」と呼称する場合がある。
ユーザ情報223は、ゲームのアカウント毎に管理される情報である。ユーザ情報223は例えば、操作可能なキャラクタ(以下、操作キャラクタと称する)に関する情報、保有資産に関する情報、およびゲームの進行度合いを示す情報等を含み得る。ここで、保有資産の例としては、例えばゲーム内通貨、アイテム、キャラクタの装備品などが挙げられる。
制御部210は、記憶部220に格納されたゲームプログラム221を実行することにより、ゲームに関する各種処理を制御する。制御部210は、ゲームプログラム221を実行することにより、送受信部211、データ管理部213、およびサーバ処理部212として機能する。
送受信部211は各種データを送受信する。例えば、送受信部211は、ユーザ端末100からの各種データおよびプログラムの送信要求や、マルチプレイ機能に対応するための同期の要求および同期のためのデータ等を受信し、サーバ処理部212に送る。例えば、送受信部211は、サーバ処理部212からの指示に従って、ユーザ端末100に各種データおよびプログラムを送信する。
本実施形態において「マルチプレイ機能」とは、複数のアカウントにおけるゲームの進行を同期させた状態でゲームを進行させる機能である。ゲームシステム1のサーバ200およびユーザ端末100は、ゲームシステム1にログインしているアカウントが複数存在する場合には、マルチプレイ機能に対応するための各種処理を行う。
サーバ処理部212は、ゲーム進行に係る各種判定処理を行う。サーバ処理部212は、ゲームを提供するために必要な演算処理を行う。サーバ処理部212は、ユーザ端末100からの要求等に応じて、ゲームプログラム221に記述された演算処理を実行する。
例えば、サーバ処理部212は、データ管理部213にゲーム情報222またはユーザ情報223のレコードの追加、更新、または削除を指示する。例えば、サーバ処理部212は送受信部211に各種データまたはプログラムの送信を指示する。例えば、サーバ処理部212は、送受信部211を介しユーザ端末100からマルチプレイ機能に対応するための同期の要求および同期のためのデータを受け取ると、同期処理部214にマルチプレイ機能に対応するための同期処理を行うよう指示する。
データ管理部213は、記憶部220に格納されている各種データをサーバ処理部212の指示に従って管理する。例えば、データ管理部213は、サーバ処理部212からの指示に応じてゲーム情報222またはユーザ情報223のレコードを、追加、更新、または削除する。
例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲーム情報222およびユーザ情報223の少なくとも一方を記憶部220から読み出し、送受信部211を介しユーザ端末100に送信する。
例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲームプログラム221のうち、ユーザ端末100側で実行する分のプログラムを記憶部220から読み出し、送受信部211を介しユーザ端末100に送信する。
同期処理部214は、サーバ処理部212の指示に従って、ゲームのマルチプレイ機能に対応するための同期処理を行う。同期処理部214は、各アカウントに対応するユーザ端末100から受信する何らかの情報を、他のユーザ端末100に送信することでユーザ端末間の同期を行う。同期処理部214はサーバ200から複数のユーザ端末100に何らかの情報を送信する場合も、各ユーザ端末100に同期して情報を送信する。なお、同期処理部214は、同期のタイミングや同期すべき情報等をサーバ処理部212から受信すればよい。これにより、例えばあるユーザ端末100において行われた入力操作によって引き起こされるゲーム内の作用が、他のユーザ端末100において同期されて示される。
(ユーザ端末100の機能的構成)
図3は、ユーザ端末100の機能的構成を示すブロック図である。ユーザ端末100は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、および入出力IF14等の協働によって、制御部110および記憶部120として機能する。
記憶部120は、ゲームプログラム121と、ゲーム情報122と、ユーザ情報123とを格納する。ゲームプログラム121は、ユーザ端末100側で実行するゲームプログラムである。ゲーム情報122は、制御部110がゲームプログラム121を実行する際に参照するデータであって、サーバ200のゲーム情報222と同様の情報を含んでいる。ユーザ情報123は、ユーザ端末100のユーザのアカウントに関するデータであって、サーバ200のユーザ情報223と同様の情報を含んでいる。
制御部110は、記憶部120に格納されたゲームプログラム121を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲーム情報122に記憶された、ゲーム空間を規定するための情報を参照してゲーム空間を規定する。制御部110は、各種データを送受信する。例えば、制御部110はサーバ200から各種データ、プログラム、およびマルチプレイ機能に対応するための同期のためのデータ等を受信する。例えば、制御部110は、ゲーム情報122またはユーザ情報123の一部または全部や、マルチプレイ機能に対応するための同期の要求をサーバ200に送信する。
制御部110は、ゲームプログラム121の記述に応じて、ゲーム進行処理部111、入力操作受付部112、カメラ配置制御部113、表示制御部114、およびオブジェクト制御部115として機能する。
入力操作受付部112は、入力部151に対するユーザの入力操作を検知し受け付ける。入力操作受付部112は、タッチスクリーン15およびその他の入出力IF14を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部110の各要素に出力する。
例えば、入力操作受付部112は、入力部151に対する入力操作がなされた場合、入力位置の座標および操作の種類を検知する。例えば、入力操作受付部112は、タッチ操作、スライド操作、スワイプ操作、およびタップ操作等を検知する。入力操作受付部112は、連続して検知されていた入力が途切れると、タッチスクリーン15から接触入力が解除されたことを検知する。
ゲーム進行処理部111は、ゲームの進行に係る各種処理を行う。例えば、ゲーム進行処理部111は、入力操作受付部112が受け付けた入力操作の入力位置の座標と操作の種類とから示されるユーザの指示内容を解釈する。例えば、ゲーム進行処理部111は、ゲーム情報122またはユーザ情報123の追加、更新、または削除を行う。例えば、ゲーム進行処理部111は、ゲームの進行に係る各種判定処理を行う。
カメラ配置制御部113は、ゲーム空間のうちユーザに提示する領域を指定するための仮想カメラを規定する。カメラ配置制御部113は、仮想カメラのゲーム空間内での位置および向きを規定することにより、仮想カメラをゲーム空間に仮想的に配置する。さらに、カメラ配置制御部113は、仮想カメラで規定される視野領域および当該視野領域に配置されているオブジェクトを描画した画像を作成するよう、表示制御部114に指示する。
なお、カメラ配置制御部113は、仮想カメラの位置および向きを、ゲーム空間毎に適宜決定してよい。例えば、カメラ配置制御部113は特定のオブジェクトの位置や向きを基準として、当該オブジェクトが特定の向きで視野領域の中央に写るように、当該オブジェクトから一定の方向、距離、および角度で仮想カメラを配置してもよい。特定のオブジェクトとは、例えばユーザ端末100で操作キャラクタのオブジェクトであってもよいし、ノンプレイヤキャラクタ等他のキャラクタを示す動的なオブジェクトであってもよいし、建物や木、石などを示す静的なオブジェクトであってもよい。ここで、ゲーム空間における動的なオブジェクトには、ゲームプログラム121および221に基づいて動作するキャラクタ(例えば、ノンプレイヤキャラクタ、敵キャラクタなど)とユーザによる操作に基づいて動作する操作キャラクタとが含まれる。
表示制御部114は、表示部152に画像を表示させる。例えば、表示制御部114は、ゲーム空間のうち、カメラ配置制御部113が規定する仮想カメラの視野の領域と、当該領域に存在するオブジェクトとを描画した画像を生成し、表示部152に表示させる。さらに、表示制御部114は、このような画像に、アイコン、ボタン、各種パラメータを示すメニュー等、ゲームの種々の操作に必要なUI(user interface)に係るオブジェクトを重畳して描画してもよい。
オブジェクト制御部115は、ゲーム情報122に含まれる、オブジェクトの設定情報に基づきゲーム空間にオブジェクトを配置する。オブジェクト制御部115は、ゲーム空間に配置したオブジェクトを制御する。例えば、オブジェクト制御部115は、オブジェクトのゲーム空間内での位置、向き、形状、色等を変更したり、オブジェクトに所定の一連の動作を行わせたりする。
なお、ゲームシステム1は、ユーザ端末100が備える機能の少なくとも一部をサーバ200が備えるように構成されていてもよい。ゲームシステム1は、サーバ200が備える機能の少なくとも一部をユーザ端末100が備えるように構成されていてもよい。さらに、ユーザ端末100およびサーバ200以外の他の装置をゲームシステム1の構成要素とし、該ハードウェアにゲームシステム1における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラム121および221を実行するコンピュータは、ユーザ端末100、サーバ200、および他の装置の何れであってもよい。
<ゲーム概要>
本実施形態に係るゲームシステム1が実行するゲーム(以下、本ゲーム)は、一例として、ユーザによって操作される操作キャラクタ(第2種別のゲーム媒体)と、ゲームプログラムに従って動作する敵キャラクタとを仮想空間に登場させ、操作キャラクタに敵キャラクタとの対戦を行わせるゲームである。操作キャラクタには、経験値、魔力、潜在能力等のパラメータが関連付けられている。このうち、経験値は、操作キャラクタの戦闘レベルを特定可能にするためのパラメータである。また、魔力は、操作キャラクタが発動可能な魔法や魔術の種類、威力等を特定可能にするためのパラメータである。さらに、潜在能力は、操作キャラクタの内に潜んでいる能力のうち発動可能な能力の種類、威力等を特定可能にするためのパラメータである。
本ゲームには、複数のクエスト(ステージ)が用意されており、ユーザは、各クエストに関連付けられている所定の達成条件を成立させることにより、当該クエストをクリアすることができる。所定の達成条件としては、例えば、出現する敵キャラクタをすべて倒すこと、出現する敵キャラクタのうちボスキャラクタを倒すこと、所定位置に到達することなどにより成立する条件を含むものであってもよい。
達成条件が成立すると、操作キャラクタの経験値、魔力または潜在能力が増大する。また、達成条件が成立すると、達成条件の内容またはクエストの種別に応じた報酬がユーザに付与される。報酬としては、操作キャラクタの経験値、魔力または潜在能力を向上させるための強化アイテム(第1種別のゲーム媒体)が含まれる。このため、ユーザが所有する経験値強化アイテム、魔力強化アイテムまたは潜在能力強化アイテムの数は、クエストをクリアすることにより増大する。
操作キャラクタの経験値は、ユーザが所有する経験値強化アイテムを消費することにより増大する。この結果、操作キャラクタの戦闘レベルがアップする。また、操作キャラクタの魔力は、ユーザが所有する魔力強化アイテムを消費することにより増大する。この結果、操作キャラクタが発動可能な魔法や魔術の種類、威力等がアップする。さらに、操作キャラクタの潜在能力は、ユーザが所有する潜在能力強化アイテムを消費することにより増大する。この結果、操作キャラクタの内に潜んでいる能力のうち発動可能な能力の種類、威力等がアップする。
ゲームプレイにおける操作キャラクタの有利度合いは、当該操作キャラクタに関連付けられている経験値、魔力および潜在能力に基づいて特定される。このため、経験値強化アイテム、魔力強化アイテムおよび潜在能力強化アイテムは、当該有利度合いを高めるための強化素材といえる。なお、本実施形態においては、経験値は、10個の経験値強化アイテムを消費することにより1だけ増大し、魔力は、10個の魔力強化アイテムを消費することにより1だけ増大し、潜在能力は、10個の潜在能力強化アイテムを消費することにより1だけ増大する。ただし、10個の経験値強化アイテムを消費することにより経験値を1だけ増大させ、20個の魔力強化アイテムを消費することにより魔職を1だけ増大させ、30個の潜在能力強化アイテムを消費することにより潜在能力を1だけ増大させるなど、パラメータ値を増大させるために必要となる強化アイテムの数をパラメータ種別に応じて異ならせるようにしてもよい。
メモリ11には、図4(A)に示すキャラクタパラメータ管理テーブル301が記憶されている。キャラクタパラメータ管理テーブル301には、操作キャラクタの経験値、魔力および潜在能力の各々のパラメータ種別について、現在値と設定可能な最大値(上限値)とが登録されるとともに、当該現在値を当該最大値まで更新するために必要な強化アイテムの数が必要アイテム数として登録される。図4(A)には、キャラクタパラメータ管理テーブル301の記憶状態の一例が示されている。図4(A)によれば、経験値については、現在値は80であり、最大値は200であり、必要アイテム数は1200である。魔力については、現在値は120であり、最大値は200であり、必要アイテム数は800である。潜在能力については、現在値は40であり、最大値は200であり、必要アイテム数は1600である。なお、最大値は、パラメータ種別に応じて異ならせるようにしてもよい。
メモリ11には、アイテム数管理テーブル302が記憶されている。図4(B)または図4(C)は、アイテム数管理テーブル302の一例を示す図である。アイテム数管理テーブル302には、ユーザが所有している強化アイテムの数が所有アイテム数として登録される。図4(B)には、経験値強化アイテムに関する所有アイテム数が1000であり、魔力強化アイテムに関する所有アイテム数が1500であり、潜在能力強化アイテムに関する所有アイテム数が600であるときのアイテム数管理テーブル302の記憶状態が示されている。図4(C)には、経験値強化アイテムに関する所有アイテム数が1500であり、魔力強化アイテムに関する所有アイテム数が600であり、潜在能力強化アイテムに関する所有アイテム数が1200であるときのアイテム数管理テーブル302の記憶状態が示されている。
ユーザがタッチスクリーン15に対して所定のタッチ操作(例えば、所定アイコンへのタッチ操作)を行うと、図5(A)などに示すキャラクタ設定変更画面がタッチスクリーン15に表示される。図5(A)によれば、画面左上には、操作キャラクタの上半身画像IM1が表示される。画面右上には、当該操作キャラクタの経験値、魔力および潜在能力の各々のパラメータ種別について、現在値と設定可能な最大値とが表示される。画面中央には、横方向に延びるスライダSLD1~SLD3が縦方向に並んで表示される。画面下側には、「強化」ボタンB1と、「MAX」ボタンB2と、「閉じる」ボタンB3とが横方向に並んで表示される。
スライダSLD1は、経験値を変更するためのUI(User Interface)であり、横長のガイド枠G1と、移動操作(タッチスクリーン15に対するタッチ操作)により当該ガイド枠G1に沿って連続的に移動可能なつまみ(移動点)T1とによって構成される。また、スライダSLD2は魔力を変更するためのUIであり、横長のガイド枠G2と、移動操作により当該ガイド枠G2に沿って連続的に移動可能なつまみT2とによって構成される。さらに、スライダSLD3は潜在能力を変更するためのUIであり、横長のガイド枠G3と、移動操作により当該ガイド枠G3に沿って連続的に移動可能なつまみT3とによって構成される。
つまみT1の移動可能範囲は、ガイド枠G1の長さにより規定され、つまみT2の移動可能範囲は、ガイド枠G2の長さにより規定され、つまみT3の移動可能範囲は、ガイド枠G3の長さにより規定される。ガイド枠G1~G3の長さは互いに一致しており、この結果、つまみT1~T3の移動可能範囲もまた互いに一致する。キャラクタ設定変更画面の初期状態においては、つまみT1はガイド枠G1の左端に配置され、つまみT2はガイド枠G2の左端に配置され、つまみT3はガイド枠G3の左端に配置される。
ガイド枠G1~G3の各々の左端には、最小値である0が表示される。これに対して、ガイド枠G1~G3の各々の右端には、所有アイテム数と必要アイテム数との状況に応じて、所有アイテム数および必要アイテム数のいずれか一方が最大値として設定されて表示される。具体的に、パラメータに関する所有アイテム数が、当該パラメータを最大値まで更新するために必要となる必要アイテム数未満である状況(第1状況)であるときには、所有アイテム数が最大値として設定されて表示され、必要アイテム数以上である状況(第2状況)であるときには、必要アイテム数が最大値として設定されて表示される。
例えば、操作キャラクタの経験値、魔力および潜在能力の各々に関する現在値、最大値および必要アイテム数が図4(A)に示す記憶状態であり、所有アイテム数が図4(B)に示す記憶状態である場合、経験値強化アイテムおよび潜在能力強化アイテム各々の所有アイテム数は、最大値まで更新するために必要となる必要アイテム数未満であり、魔力強化アイテムの所有アイテム数は、必要アイテム数以上である。このため、図5(A)に示すように、ガイド枠G1の右端には所有アイテム数である1000が最大値として設定されて表示され、ガイド枠G2の右端には必要アイテム数である800が最大値として設定されて表示され、ガイド枠G3の右端には所有アイテム数である600が最大値として設定されて表示される。
一方、操作キャラクタの経験値、魔力および潜在能力の各々に関する現在値、最大値および必要アイテム数が図4(A)に示す記憶状態であり、所有アイテム数が図4(C)に示す記憶状態である場合、魔力強化アイテムおよび潜在能力強化アイテム各々の所有アイテム数は、最大値まで更新するために必要となる必要アイテム数未満であり、経験値強化アイテムの所有アイテム数は、必要アイテム数以上である。このため、図5(C)に示すように、ガイド枠G1の右端には必要アイテム数である1200が最大値として設定されて表示され、ガイド枠G2の右端には所有アイテム数である600が最大値として設定されて表示され、ガイド枠G3の右端には所有アイテム数である1200が最大値として設定されて表示される。
図5(A)に戻り、つまみT1~T3のうち、つまみT1およびT2を移動させるための移動操作がユーザにより行われると、図5(B)に示すように、当該つまみが当該移動操作に応じた位置に配置される。また、「MAX」ボタンB2に対するタップ操作が行われると、つまみT1~T3は、ガイド枠G1~G3の右端に配置される。
経験値、魔力または潜在能力を強化するために消費する強化アイテムの数、即ち消費アイテム数は、つまみの位置と、当該つまみに対応するガイド枠の右端に表示されているアイテム数とに基づいて特定される。具体的には、当該つまみに対応するガイド枠の左端から右端までの長さに対する当該左端から当該つまみの位置までの長さの割合が特定されるとともに、当該割合が当該右端に表示されているアイテム数に掛け算され、これによって当該消費アイテム数が特定される。
例えば、図5(A)に示すキャラクタ設定変更画面上で、つまみT1をガイド枠G1の長さに対して2割の長さだけ右側に移動させると、200(=1000×0.2)が、経験値に関する消費アイテム数として特定される。また、つまみT2をガイド枠G2の長さに対して5割の長さだけ右側に移動させると、400(=800×0.5)が、魔力に関する消費アイテム数として特定される。
つまみを移動させたときには、つまみの現在位置における消費アイテム数が、当該つまみの近傍に表示される。図5(B)に示す例では、200の数値がつまみT1の近傍に表示され、400の数値がつまみT2の近傍に表示される。
また、画面右上に表示されている現在値の近傍には、つまみの現在位置に応じて特定される消費アイテム数に相当する強化アイテムを消費した場合に更新されることとなるパラメータ値が表示される。即ち、つまみを移動させた段階では、当該パラメータ値は未確定であるため、当該パラメータ値の表示態様は確定しているときと異なる。
図5(B)に示す例では、経験値強化アイテムに関する消費アイテム数が200であるため、経験値が80から100に更新可能である旨が示され、魔力強化アイテムに関する消費アイテム数が400であるため、魔力が120から160に更新可能である旨が示される。これにより、つまみの現在位置に応じたアイテム数を消費した場合に、パラメータがどの程度向上するのかをユーザは把握しながら、つまみの位置を調整することができる。
この状態で「強化」ボタンB1に対するタップ操作(決定操作)が行われると、ユーザが所有している強化アイテムのうち、移動したつまみに対応するパラメータ種別の強化アイテムが、当該つまみに対応して特定された消費アイテム数だけ消費される。例えば、経験値に関する消費アイテム数として200が特定され、魔力に関する消費アイテム数として400が特定されると、ユーザが所有している強化アイテムのうちから、200個の経験値強化アイテムと400個の魔力強化アイテムとが消費される。
これにより、移動したつまみに対応するパラメータ値が、当該消費アイテム数に応じて更新される。具体的には、画面右上に表示されている経験値のパラメータが、80から100に向けて1ずつカウントアップ表示されて、100に到達したときに強調表示(確定表示)される。また、魔力のパラメータについても同様に、120から160に向けて1ずつカウントアップ表示されて、160に到達したときに強調表示(確定表示)される。また、図4(A)に示すキャラクタパラメータ管理テーブル301においては、経験値に関する現在値が100に更新されるとともに、必要アイテム数が1000に更新される。また、魔力に関する現在値が160に更新されるとともに、必要アイテム数が400に更新される。図4(B)に示すアイテム数管理テーブル302においては、経験値に関する所有アイテム数が800に更新され、魔力に関する所有アイテム数が1100に更新される。
キャラクタ設定変更画面は、移動したつまみに対応するパラメータ種別の強化アイテムが消費された後に非表示となる。なお、「閉じる」ボタンB3に対するタップ操作が行われた場合には、当該強化アイテムを消費することなく、キャラクタ設定変更画面が非表示となる。
このように、ガイド枠G1~G3の各々の右端には、所有アイテム数および必要アイテム数のうち、低い方のアイテム数が表示される。このため、つまみT1~T3をガイド枠G1~G3の右端に配置して「強化」ボタンB1をタップした場合に、必要アイテム数を上回る数の強化アイテムが消費されるのを防止することが可能となる。また、所有アイテム数と必要アイテム数とのいずれが低いかにかかわらず、ガイド枠G1~G3の左端から右端までの範囲がつまみT1~T3の移動可能範囲とされる。このため、つまみT1~T3の移動操作に違和感が生じるのを防止することができる。
<処理フロー及び画面例>
ユーザ端末100が、ゲームプログラムに基づいて実行する処理のうち、スライダ設定処理の流れについて、図6に示すフローチャートを用いて説明する。なお、この処理は、キャラクタ設定変更画面が表示されているときに、ゲーム進行処理部111、入力操作受付部112、表示制御部114等によって実行される。また、以下の説明において、フローチャートを用いて説明する一連の処理ステップの流れは、ユーザ端末100によって実行されるものとして記載しているが、これらの処理ステップの少なくとも一部が、サーバ200によって実行されてもよい。
図6を参照して、ステップS01では、経験値、魔力および潜在能力のうちのいずれかのパラメータ種別を指定する。ステップS02では、当該パラメータ種別に対応する必要アイテム数をキャラクタパラメータ管理テーブル301から特定する。ステップS03では、当該パラメータ種別に対応する所有アイテム数をアイテム数管理テーブル302から特定する。ステップS04では、当該所有アイテム数が当該必要アイテム数未満であるか否かを判定する。
当該所有アイテム数が当該必要アイテム数未満であると判定されたときは、ステップS05に進む。一方、当該所有アイテム数が当該必要アイテム数未満であると判定されなかったときは、ステップS06に進む。ステップS05では、当該所有アイテム数を当該パラメータ種別に対応するガイド枠の右端に表示するアイテム数として設定する。また、ステップS06では、当該必要アイテム数を当該パラメータ種別に対応するガイド枠の右端に表示するアイテム数として設定する。ステップS05またはS06の処理が完了すると、ステップS07に進む。
ステップS07では、ユーザからの入力操作に応じて、つまみT1~T3をガイド枠G1~G3内のいずれかの位置に移動させる。ステップS08では、ガイド枠G1~G3におけるつまみT1~T3の位置と、ガイド枠G1~G3の右端に表示されているアイテム数とに基づいて、消費アイテム数(「強化」ボタンB1のタップ操作により到達することとなるパラメータ値)を特定する。ステップS09では、「強化」ボタンB1がタップされたか否かをタッチスクリーン15に対する入力操作に基づいて判定する。
「強化」ボタンB1がタップされたと判定されなかったときはステップS07に戻り、「強化」ボタンB1がタップされたと判定されたときはステップS10に進む。ステップS10では、ステップS08で特定された消費アイテム数に応じて、パラメータ値を更新する。更新が完了すると、リターンする。
<本実施形態の効果>
本実施形態によれば、ユーザが所有する強化アイテムの数が、所有アイテム数として特定される。また、ユーザが所有する強化アイテムのうちから消費する強化アイテムの数が、消費アイテム数として特定される。さらに、操作キャラクタに関連付けられているパラメータの現在値を最大値まで更新するために必要な強化アイテムの数が、必要アイテム数として特定される。
ここで、所有アイテム数が必要アイテム数未満の状況(第1状況)では、ガイド枠の最大値(右端)として所有アイテム数が設定されて、当該所有アイテム数に基づいて消費アイテム数が特定される。一方、所有アイテム数が必要アイテム数以上の状況(第2状況)では、ガイド枠の最大値(右端)として必要アイテム数が設定されて、当該必要アイテム数に基づいて消費アイテム数が特定される。このため、所有アイテム数と必要アイテム数との大小関係にかかわらず、ガイド枠G1~G3の途中までしかつまみT1~T3を移動できないといった違和感を抱かせることなく、ガイド枠G1~G3各々の左端から右端までつまみT1~T3各々を移動可能としつつも、必要アイテム数以上に強化アイテムが消費されてしまうことを防止できる。この結果、ユーザに違和感を与えるのを防止でき、ひいてはゲームの好趣が低下するのを防止することができる。
また、本実施形態によれば、つまみT1~T3の移動可能範囲は、ガイド枠G1~G3の長さにより規定される。つまみT1~T3は、ユーザによる移動操作に応じて当該移動可能範囲内のいずれかの位置に配置される。第1状況においては、所有アイテム数が当該移動可能範囲の最大値として設定され、当該移動可能範囲の最大値が当該所有アイテム数であることが特定可能となる。あるパラメータ種別に関する消費アイテム数は、当該パラメータ種別に関する所有アイテム数とつまみの位置とに基づいて特定される。一方、第2状況においては、必要アイテム数が当該移動可能範囲の最大値として設定され、当該移動可能範囲の最大値が当該必要アイテム数であることが特定可能となる。あるパラメータ種別に関する消費アイテム数は、当該パラメータ種別に関する必要アイテム数とつまみの位置とに基づいて特定される。
このように、つまみT1~T3の移動可能範囲は、第1状況であるか第2状況であるかにかかわらず、ガイド枠G1~G3の長さにより規定される。この結果、つまみT1~T3の移動操作に違和感が生じるのを防止できる。また、移動可能範囲の最大値は、所有アイテム数および必要アイテム数のうち低い方のアイテム数とされる。この結果、つまみT1~T3をガイド枠G1~G3の右端に配置することにより必要以上の強化アイテムが消費されることを防止することができる。さらに、消費アイテム数は、移動可能範囲の最大値とつまみの位置とに基づいて特定される。これによって、当該最大値を参考にしてつまみの位置を調整することが可能となり、操作性が向上する。
また、本実施形態によれば、つまみT1~T3の位置に応じて特定される消費アイテム数は、「強化」ボタンB1のタップ操作を受け付けるまでの期間に、キャラクタ設定変更画面上に表示される。これによって、消費アイテム数を正確に指定することが可能となる。
さらに、本実施形態によれば、つまみT1~T3の位置に応じて特定される消費アイテム数の強化アイテムを消費した場合に更新されることとなるパラメータ種別の値(即ち、現在値を更新した後の値)が、「強化」ボタンB1のタップ操作を受け付けるまでの期間に、キャラクタ設定変更画面上に表示される。これによって、「強化」ボタンB1をタップした場合に現在値がどの程度増大するかを事前に把握することが可能となる。
また、本実施形態によれば、ユーザが所有する強化アイテムの数は、ユーザによるゲームプレイに応じて増大する。この結果、ゲームプレイにより多くの強化アイテムを獲得→当該強化アイテムの消費により操作キャラクタの有利度合いを高める→さらなるゲームプレイにより多くの強化アイテムを獲得→…といったゲームサイクルを回すことが可能となり、ゲームの好趣を向上させることができる。
<変形例>
以上説明した実施形態の変形例などを以下に列挙する。
(1) 上記実施形態においては、ガイド枠G1~G3の右端には、所有アイテム数および必要アイテム数のうち低い方のアイテム数が表示される。ここで、当該アイテム数の表示態様(例えば、フォント、色等)を、所有アイテム数を表示する場合と必要アイテム数を表示する場合とで異ならせるようにしてもよい。
(2) 上記実施形態においては、つまみT1~T3の移動操作により特定された数の強化アイテムは、「強化」ボタンB1へのタップ操作に応じて消費される。しかし、当該強化アイテムは、ゲームプレイにおいて特定の敵キャラクタを倒す、クエストを開始してから所定時間が経過するといった特定の条件が成立したタイミングで消費するようにしてもよい。
(3) 上記実施形態においては、操作キャラクタが敵キャラクタと対戦プレイを行うが、プレイ形態としては様々な形態を想定し得る。例えば、単一のユーザによるシングルプレイゲーム、および、複数のユーザによるマルチプレイゲーム、また、マルチプレイゲームの中でも、複数のユーザが対戦する対戦ゲーム、および、複数のユーザが協力する協力プレイゲームなどを想定し得る。
(4) 上記実施形態においては、ユーザが所有している強化アイテムを消費することにより、当該ユーザが操作するキャラクタの有利度合いを高めるようにしている。しかし、協力プレイゲームにおいては、他のユーザが操作するキャラクタの有利度合いを、当該強化アイテムの消費によって高めるようにしてもよい。
(5) 上記実施形態においては、つまみT1~T3はガイド枠G1~G3に沿って連続的に移動可能とされる。しかし、つまみT1~T3は、ガイド枠G1~G3に沿って段階的に移動可能(例えば、消費数が10単位となるように移動可能)とするようにしてもよい。
(6) 上記実施形態においては、消費アイテム数は、スライダSLD1~SLD3を構成するつまみT1~T3を操作することにより特定される。しかし、0から最大値までの数値が外周面に描かれているドラムロール型のUIをスライダの代わりに採用し、タッチ操作に応じて当該ドラムロールを周方向に回転させることにより消費アイテム数を特定するようにしてもよい。
(7) 上記実施形態においては、複数のパラメータ種別の各々に対応する強化アイテムがゲームプレイに応じてユーザに付与される。しかし、複数のパラメータ種別に共通の強化アイテムをゲームプレイに応じてユーザに付与するようにしてもよい。この場合、当該強化アイテムの消費に伴うパラメータ値の増大量は、パラメータ種別に応じて異ならせるようにしてもよい。
(8) 上記実施形態においては、複数のパラメータ種別の各々に対応する強化アイテムの種類は1つである。即ち、経験値は経験値強化アイテムの消費によって増大し、魔力は魔力強化アイテムの消費によって増大し、潜在能力は潜在能力強化アイテムの消費によって増大する。しかし、当該複数のパラメータ種別のうちの少なくとも1つについては、所定個数の強化アイテムを消費することによるパラメータ値の増大量が互いに異なる複数種類の強化アイテムを用意するようにしてもよい。例えば、2種類の経験値強化アイテムを用意し、一方の種類の経験値強化アイテムを10個消費すると経験値を1だけ増大させ、他方の種類の経験値強化アイテムを10個消費すると経験値を2だけ増大させるようにしてもよい。
(9) 上記実施形態においては、強化アイテムはゲームプレイに応じてユーザに付与される。しかし、当該強化アイテムは課金処理によってユーザに付与するようにしてもよい。
(10) 上記実施形態においては、キャラクタパラメータ管理テーブル301に登録されている最大値は固定的(=200)である。しかし、当該最大値は、課金処理によってより大きな値に更新するようにしてもよい。また、一旦最大値に到達することにより、当該最大値をより大きな値に更新(限界突破)して、より大きな値を目指してゲームプレイさせるようにしてもよい。さらに、一旦最大値に到達した後に、特定クエストをクリアしたり、特定アイテムを獲得したりすることにより、当該最大値をより大きな値に更新(限界突破)して、より大きな値を目指してゲームプレイさせるようにしてもよい。
(11) 上記実施形態においては、つまりT1~T3の移動量と消費アイテム数の増大量との関係は、1次関数により規定される。しかし、当該関係は2次関数等の他の関数により規定するようにしてもよい。
(12) 上記実施形態においては、操作キャラクタに敵キャラクタとの対戦を行わせるゲームを想定している。しかし、ゲームシステム1が実行するゲームは、特定のジャンルに限らず、あらゆるジャンルのゲームを実行するためのシステムであってもよい。例えば、テニス、卓球、ドッジボール、野球、サッカーおよびホッケーなどのスポーツを題材としたゲーム、パズルゲーム、クイズゲーム、RPG、アドベンチャーゲーム、シューティングゲーム、シミュレーションゲーム、育成ゲーム、ならびに、アクションゲームなどであってもよい。
<付記>
以上の各実施形態で説明した事項を、以下に付記する。
(付記1):
本開示に示す一実施形態のある局面によれば、プロセッサ、メモリ、入力部および表示部を備えるコンピュータ(図1のユーザ端末100)において実行されるゲームプログラムであって、前記ゲームプログラムは、前記プロセッサに、ユーザに関連付けられている第1種別のゲーム媒体(強化アイテム)の所有量(所有アイテム数)を特定するステップ(S03)と、第1状況であるときには、前記所有量を所定範囲の最大値として設定し、第2状況であるときには、前記ユーザに関連付けられている第2種別のゲーム媒体(操作キャラクタ)に関するパラメータの値を所定値まで更新するために必要となる前記第1種別のゲーム媒体の必要量(必要アイテム数)を前記所定範囲の最大値として設定するステップ(S05、S06)と、前記所定範囲内を移動可能な移動点(つまみ)を、ユーザからの入力操作に応じて前記所定範囲内のいずれかの位置に移動させるステップ(S07)と、前記所定範囲における前記移動点の位置に基づいて、前記第1種別のゲーム媒体の消費量を特定するステップ(S08)と、前記特定された消費量に応じて、前記パラメータの値を更新するステップ(S10)と、を実行させる。
(付記2):
(付記1)において、前記第1状況は、前記所有量が前記必要量未満である状況であり、前記第2状況は、前記所有量が前記必要量以上である状況である。
(付記3):
(付記1)または(付記2)において、前記ゲームプログラムは、前記プロセッサに、前記第1状況であるときには前記最大値が前記所有量であることを特定可能となるように表示し、前記第2状況であるときには前記最大値が前記必要量であることを特定可能となるように表示するステップを実行させる。
(付記4):
(付記3)において、前記表示するステップは、前記最大値が前記所有量であることを特定可能となるように表示する際の表示態様と、前記最大値が前記必要量であることを特定可能となるように表示する際の表示態様とを互いに異ならせる。
(付記5):
(付記1)から(付記4)のいずれかにおいて、前記更新するステップは、ユーザからの決定操作(「強化」ボタンB1に対するタップ操作)を受け付けることにより、前記特定された消費量に応じて前記所定パラメータの値を更新し、前記ゲームプログラムは、前記プロセッサに、前記決定操作を受け付けるまでにおいて、前記特定された消費量を表示するステップを実行させる。
(付記6):
(付記5)において、前記ゲームプログラムは、前記プロセッサに、前記決定操作を受け付けるまでにおいて、前記特定された消費量を消費した場合に更新されることとなる前記所定パラメータの値を表示するステップを実行させる。
(付記7):
(付記1)から(付記6)のいずれかにおいて、前記第2種別のゲーム媒体は、ゲームプレイの際にユーザにより操作されるキャラクタオブジェクトであり、前記ゲームプログラムは、前記プロセッサに、ユーザによるゲームプレイに応じて、前記第1種別のゲーム媒体をユーザに付与するステップを実行させ、前記更新するステップは、前記パラメータの値を更新することにより、ゲームプレイ上における前記キャラクタオブジェクトの有利度合いを向上させる。
(付記8):
本開示に示す一実施形態のある局面によれば、プロセッサ、メモリ、入力部および表示部を備えるコンピュータ(図1のユーザ端末100)により実行されるゲーム方法であって、前記ゲーム方法は、前記コンピュータが、ユーザに関連付けられている第1種別のゲーム媒体(強化アイテム)の所有量(所有アイテム数)を特定するステップ(S03)と、第1状況であるときには、前記所有量を所定範囲の最大値として設定し、第2状況であるときには、前記ユーザに関連付けられている第2種別のゲーム媒体(操作キャラクタ)に関するパラメータの値を所定値まで更新するために必要となる前記第1種別のゲーム媒体の必要量(必要アイテム数)を前記所定範囲の最大値として設定するステップ(S05、S06)と、前記所定範囲内を移動可能な移動点(つまみ)を、ユーザからの入力操作に応じて前記所定範囲内のいずれかの位置に移動させるステップ(S07)と、前記所定範囲における前記移動点の位置に基づいて、前記第1種別のゲーム媒体の消費量を特定するステップ(S08)と、前記特定された消費量に応じて、前記パラメータの値を更新するステップ(S10)と、を備える。
(付記9):
本開示に示す一実施形態のある局面によれば、情報処理装置(図1のユーザ端末100)であって、ゲームプログラムを記憶する記憶部(図3の120)と、前記ゲームプログラムを実行することにより、前記情報処理装置の動作を制御する制御部(図3の110)とを備え、前記制御部は、ユーザに関連付けられている第1種別のゲーム媒体(強化アイテム)の所有量(所有アイテム数)を特定するステップ(S03)と、第1状況であるときには、前記所有量を所定範囲の最大値として設定し、第2状況であるときには、前記ユーザに関連付けられている第2種別のゲーム媒体(操作キャラクタ)に関するパラメータの値を所定値まで更新するために必要となる前記第1種別のゲーム媒体の必要量(必要アイテム数)を前記所定範囲の最大値として設定するステップ(S05、S06)と、前記所定範囲内を移動可能な移動点(つまみ)を、ユーザからの入力操作に応じて前記所定範囲内のいずれかの位置に移動させるステップ(S07)と、前記所定範囲における前記移動点の位置に基づいて、前記第1種別のゲーム媒体の消費量を特定するステップ(S08)と、前記特定された消費量に応じて、前記パラメータの値を更新するステップ(S10)と、を実行する。
〔ソフトウェアによる実現例〕
ユーザ端末100およびサーバ200の各々における制御は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
後者の場合、ユーザ端末100およびサーバ200は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。