〔実施形態1〕
本開示に係るゲームシステムは、複数のユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
<ゲームシステム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は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。なお、タッチスクリーン15に対し入力操作を行うための指示体は特に限定されない。例えば、指示体はユーザの手指であっても、スタイラスペン等であってもよい。
図示していないが、ユーザ端末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が実現するゲームは、ゲーム空間にキャラクタオブジェクト(以降、単にキャラクタと称する)を配置し、該ゲーム空間内で、該キャラクタをユーザの入力操作に応じて動作させるゲームである。ゲームシステム1に基づくゲームは、3次元のゲーム空間および3次元のオブジェクトで表現される3Dゲームであってもよいし、2次元のゲーム空間および2次元のオブジェクトで表現される2Dゲームであってもよい。なお、以降、ユーザの入力操作に応じて動作するキャラクタを「操作キャラクタ」と称する。
詳しくは後述するが、ゲームシステム1が実現するゲームでは、ユーザは、操作キャラクタを操作して、該キャラクタを、同じゲーム空間に配置される敵キャラクタと戦闘させることにより、ゲームを進行させる。また、ゲームシステム1が実現するゲームでは、ユーザは、キャラクタを獲得するための抽選を行うことができる。
ゲームシステム1が実現するゲームの一例としては、仮想的なゲーム空間内に配置されたキャラクタを、ユーザが自由に操作して移動および戦闘させることができる、オープンワールドのゲームであってもよい。本実施形態では一例として、ゲームシステム1がオープンワールドのRPG(Role-Playing Game)を実現する場合について説明する。
なお、ゲームシステム1が実現するゲームは、マルチプレイが可能であってもよい。例えば、該ゲームは、複数のユーザが、各自のユーザ端末100を介して同時に同じゲーム空間内で各自の操作キャラクタを動作させてゲームを進行させる、MMORPG(Massively Multiplayer Online Role-Playing Game)であってもよい。ただし、ゲームシステム1が実現するゲームのジャンルおよびゲーム内容は、上述したタイプのものに限定されない。
<ゲームシステム1の機能的構成>
図2は、ゲームシステム1に含まれるサーバ200およびユーザ端末100の機能的構成を示すブロック図である。サーバ200およびユーザ端末100のそれぞれは、図示しない、一般的なコンピュータとして機能する場合に必要な機能的構成、および、ゲームにおける公知の機能を実現するために必要な機能的構成を含み得る。
ユーザ端末100は、ユーザの入力操作を受け付ける入力装置としての機能と、ゲームの画像や音声を出力する出力装置としての機能を有する。ユーザ端末100は、プロセッサ10、メモリ11、ストレージ12、通信IF13、および入出力IF14等の協働によって、制御部110および記憶部120として機能する。
サーバ200は、各ユーザ端末100と通信して、ユーザ端末100がゲームを進行させるのを支援する機能を有する。例えば、有価データの販売、サービスの提供などを実行する。ゲームがマルチプレイゲームである場合には、サーバ200は、ゲームに参加する各ユーザ端末100と通信して、ユーザ端末100同士のやりとりを仲介する機能を有していてもよい。サーバ200は、プロセッサ20、メモリ21、ストレージ22、通信IF23、および入出力IF24等の協働によって、制御部210および記憶部220として機能する。
記憶部120および記憶部220は、ゲームプログラム231、ゲーム情報232、およびユーザ情報233を格納する。ゲームプログラム231は、ユーザ端末100およびサーバ200が実行するゲームプログラムである。
ゲーム情報232は、制御部110および制御部210がゲームプログラム231を実行する際に参照するデータである。
ユーザ情報233は、ユーザのアカウント毎に記憶される情報である。ある1アカウントについてのユーザ情報233は、少なくとも1台のユーザ端末100と対応付けられている。本実施形態では、1台のユーザ端末100に、1つのアカウントが対応付けられている例について説明する。記憶部120は、ユーザ端末100に対応するアカウントのユーザ情報233を記憶する。一方、記憶部220は、各ユーザ端末100から収集したユーザ情報233をまとめて記憶している。ユーザ情報233は、キャラクタデータ233Aを含む。キャラクタデータ233Aは、ユーザが所持しているキャラクタについてのデータである。キャラクタデータ233Aの詳細については後述する。
(サーバ200の機能的構成)
制御部210は、記憶部220に格納されたゲームプログラム231を実行することにより、サーバ200を統括的に制御する。例えば、制御部210は、ユーザ端末100に各種データおよびプログラム等を送信する。ゲームがマルチプレイゲームである場合には、制御部210は、ユーザ端末100からマルチプレイの同期の要求を受信して、同期のためのデータをユーザ端末100に送信してもよい。
制御部210は、ゲームプログラム231の記述に応じて、送受信部211、サーバ処理部212、およびデータ管理部213として機能する。制御部210は、実行するゲームの性質に応じて、ユーザ端末100におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能することができる。
送受信部211は、ユーザ端末100から各種データおよびリクエストを受信する。例えば、送受信部211は、ゲーム情報232もしくはユーザ情報233の一部または全部を、ユーザ端末100から受信する。また、送受信部211は、ユーザ情報233の一部として、ユーザ端末100からキャラクタデータ233Aを受信してもよい。また、送受信部211は、ユーザ端末100から抽選の実行リクエストを受信してもよい。
送受信部211は、ユーザ端末100に対し各種データおよびリクエストを送信する。例えば、送受信部211は、抽選の実行リクエストの送信元であるユーザ端末100に対して、抽選結果を送信してもよい。また例えば、送受信部211は、抽選の実行リクエストの送信元であるユーザ端末100に対して、更新後のキャラクタデータ233Aを送信してもよい。
サーバ処理部212は、ゲームを提供するために必要な演算処理を行う。サーバ処理部212は送受信部211に対し、各種データの送信を指示する。サーバ処理部212は、データ管理部213に対し、ゲーム情報232、およびユーザ情報233に含まれる各種情報の追加、更新、または削除を指示する。サーバ処理部212は、抽選に係る処理を実行してもよい。
データ管理部213は、記憶部220に格納されているデータを管理する。データ管理部213は、サーバ処理部212からの指示に応じてゲーム情報232およびユーザ情報233に含まれる各種情報の、追加、更新、または削除を実行する。データ管理部213は、サーバ処理部212の指示に従って、記憶部220からゲーム情報232およびユーザ情報233のうち少なくとも一方の情報を読み出してもよい。データ管理部213は、サーバ処理部212の指示に従って、ゲームプログラム231のうち、あるユーザ端末100で実行する分のプログラムを記憶部220から読み出して、送受信部211を介し該ユーザ端末100に送信してもよい。
(ユーザ端末100の機能的構成)
制御部110は、記憶部120に格納されたゲームプログラム231を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲームプログラム231およびユーザの操作にしたがって、ゲームを進行させる。また、制御部110は、ゲームを進行させている間、必要に応じて、サーバ200と通信して、情報の送受信を行う。
制御部110は、ゲームプログラム231の記述に応じて、操作受付部111、ゲーム進行部112、カメラ配置制御部113、オブジェクト制御部114、表示制御部115、および通信部116として機能する。制御部110は、実行するゲームの性質に応じて、ゲームを進行させるために、図示しないその他の機能ブロックとしても機能することができる。
操作受付部111は、入力部151に対するユーザの入力操作を検知し受け付ける。操作受付部111は、タッチスクリーン15およびその他の入出力IF14を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部110の各要素に出力する。
例えば、操作受付部111は、入力部151に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部111は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部111は、連続して検知されていた入力が途切れると、タッチスクリーン15から接触入力が解除されたことを検知する。
通信部116は、サーバ200に対し各種データおよびリクエストを送信する。例えば、通信部116はサーバ200に対し、ゲーム情報232もしくはユーザ情報233の一部または全部を送信する。例えば、通信部116は抽選の実行リクエストをサーバ200に送信する。また、通信部116はサーバ200に対して、ユーザ情報233の一部としてキャラクタデータ233Aを送信してもよい。
通信部116は、サーバ200から各種データおよびリクエストを受信する。例えば、通信部116はサーバ200から、ゲーム情報232もしくはユーザ情報233の一部または全部を受信する。また、通信部116は、サーバ200から抽選結果を示す情報を受信してもよい。また、通信部116は、サーバ200から更新後のキャラクタデータ233Aを受信してもよい。
ゲーム進行部112は、ゲームの進行に係る各種処理を行う。例えば、ゲーム進行部112は、操作受付部111が受け付けた入力操作の位置の座標と、操作の種類と、ゲームの進行状況とに基づいて、ユーザの指示内容を特定する。また、ゲーム進行部112は、ゲームの進行に係る各種判定処理を行う。また、ゲーム進行部112は、記憶部120に記憶された、ゲーム情報232およびユーザ情報233に含まれる各種情報の追加、更新、または削除を行う。ゲーム進行部112は、戦闘処理部112A、抽選部112B、およびモンスター付与部112Cを含む。
戦闘処理部112Aは、操作キャラクタおよび自動戦闘キャラクタと、敵キャラクタとの戦闘に係る処理を実行する。また、戦闘処理部112Aは、戦闘の結果、所定の条件が満たされた場合、ユーザに付与するキャラクタを決定する。戦闘処理部112Aは付与するキャラクタを決定すると、該キャラクタをモンスター付与部112Cに通知する。
抽選部112Bは、キャラクタを獲得するための抽選に係る処理を実行する。抽選の方法は特に限定されない。例えば、抽選部112Bは、ユーザの所定の入力操作に応じてゲーム情報232に含まれている筐体(抽選のデータテーブル)を参照し、該テーブルに基づいて抽選結果を定めてよい。抽選部112Bは、抽選の結果、すなわち、ユーザに付与するキャラクタをモンスター付与部112Cに通知する。
モンスター付与部112Cは、戦闘処理部112Aの処理の結果、または抽選部112Bの抽選の結果、付与すると決定されたキャラクタを、ユーザに付与する。モンスター付与部112Cは、戦闘処理部112Aまたは抽選部112Bが付与するキャラクタを決定すると、該キャラクタに対応するキャラクタの初期データをゲーム情報232から読み出して、該データをユーザ情報233のキャラクタデータ233Aに追加する。
カメラ配置制御部113は、ゲーム空間のうちユーザに提示する領域を指定するための仮想カメラを規定する。カメラ配置制御部113は、仮想カメラのゲーム空間内での位置および向きを規定することにより、仮想カメラをゲーム空間に仮想的に配置する。カメラ配置制御部113は、仮想カメラで規定される視野領域および当該視野領域に配置されているオブジェクトを描画した画像を作成するよう、表示制御部115に指示する。なお、カメラ配置制御部113は、仮想カメラの位置および向きを、随時変更してよい。
オブジェクト制御部114は、ゲーム情報232に含まれる、オブジェクトの設定情報に基づきゲーム空間にオブジェクトを配置する。また、オブジェクト制御部114は、ゲーム空間に配置したオブジェクトを制御する。例えば、オブジェクト制御部114は、オブジェクトのゲーム空間内での位置、向き、形状、色等を変更したり、オブジェクトに所定の一連の動作を行わせたりする。例えば、オブジェクト制御部114は、操作キャラクタをゲーム進行部112が決定した移動方向、移動速度、および移動距離で移動させる。
表示制御部115は、表示部152に画像を表示させる。例えば、表示制御部115は、ゲーム空間のうち、カメラ配置制御部113が規定する仮想カメラの視野の領域と、当該領域に存在するオブジェクトとを含む画像を生成し、表示部152に表示させる。
オブジェクト制御部114は、UI(user interface)を構築するためのオブジェクト(UIオブジェクト)をゲーム空間に配置して、該UIオブジェクトを制御してもよい。また、表示制御部115は、画像にアイコン、ボタン、リスト、メニュー画面等、ゲームの種々の操作に必要なUIに係る画像(UI画像)を重畳して表示させてもよい。UI画像およびUIオブジェクトとは、ユーザが、ゲームの進行上必要な入力をユーザ端末100に対して行うためのツールである。また、UI画像およびUIオブジェクトとは、ユーザが、ゲームの進行中に出力される情報をユーザ端末100から得るためのツールである。
なお、図2に示すサーバ200およびユーザ端末100の機能は一例にすぎない。サーバ200は、ユーザ端末100が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末100は、サーバ200が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末100およびサーバ200以外の他の装置をゲームシステム1の構成要素とし、該他の装置にゲームシステム1における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末100、サーバ200、および他の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
(ゲーム空間とオブジェクトの配置)
ユーザ端末100のゲーム進行部112は、ゲームプログラム231に基づくゲームを開始させる。ゲームが開始すると、オブジェクト制御部114は、ゲーム進行部112の指示に従って、所定のゲーム空間を構築し、該ゲーム空間に、予め定められた操作キャラクタを配置する。また、オブジェクト制御部114は該ゲーム空間に、木、岩、建物等、ゲーム空間の背景となる背景オブジェクトを配置してもよい。また、オブジェクト制御部114は該ゲーム空間に、操作キャラクタの戦闘相手である敵キャラクタ(他のキャラクタ)を配置してもよい。
なお、本実施形態では、ゲームシステム1が実現するゲームの一例として、ユーザが、自分の所持しているキャラクタのうち、操作可能なキャラクタの中から1体のキャラクタを選んで、該キャラクタを操作する例について説明する。しかしながら、ゲームシステム1が実現するゲームでは、ユーザに、一度に複数のキャラクタ(例えば、後述する人間キャラクタと騎乗モンスター、または複数の人間キャラクタ等)を操作可能とさせてもよい。また、各キャラクタの全ての動きをユーザの入力操作に応じて行うのではなく、攻撃のタイミング、移動の方向等、一部の動きのみをユーザに操作させてもよい(所謂、セミオート操作)。
本実施形態では、一例として、ゲームの開始時に草原等、屋外の空間に相当するゲーム空間(フィールド空間と称する)がオブジェクト制御部114によって構築され、該フィールド空間に操作キャラクタ等が配置される場合について説明する。
なお、オブジェクト制御部114が構築するゲーム空間は、上述したフィールド空間に限られない。例えば、オブジェクト制御部114は、ゲーム進行部112の指示に応じて、洞窟または建物の中など、屋内(所謂、ダンジョン)の空間に相当するゲーム空間(ダンジョン空間と称する)を構築し、該空間に操作キャラクタ等を配置してもよい。例えば操作受付部111がダンジョンに入ることを指示する入力操作を受け付けた場合、ゲーム進行部112は、オブジェクト制御部114にダンジョン空間の構築および該空間への操作キャラクタ等の配置を指示してもよい。
図3は、ゲーム空間の一種である、フィールド空間を描画した画面の一例を示す図である。フィールド空間には、少なくとも操作キャラクタが1体配置される。図3の状態(A)は、フィールド空間において、人間キャラクタ301が、該キャラクタの武器302を背に持った状態で配置された状態を示す図である。
ここで、「人間キャラクタ」とは、操作可能なキャラクタの一種である。なお、「人間キャラクタ」はあくまで名称の一例であり、人間キャラクタ301は必ずしも人間または人型のキャラクタでなくてもよい。また、武器302は必須ではない。
(騎乗モンスターと自動戦闘モンスター)
図3の状態(B)は、フィールド空間において、人間キャラクタ301が騎乗モンスター303に騎乗した状態を示す図である。騎乗モンスター303とは、操作可能なキャラクタの一種であり、人間キャラクタ301の仲間(すなわち、戦闘における味方)となるキャラクタの一種である。また、騎乗モンスター303は、人間キャラクタ301の代わりに戦闘に参加可能であってよい。
人間キャラクタ301は、騎乗モンスター303に騎乗することができる。換言すると、騎乗モンスター303は、人間キャラクタ301の乗り物となるキャラクタである。なお、「戦闘に参加するキャラクタ」とは、ある敵キャラクタ(後述)との戦闘中に、該ゲーム空間内に配置されているキャラクタであって、該戦闘中にユーザの操作キャラクタの味方となるキャラクタである。なお、戦闘に参加するキャラクタは、敵キャラクタに対し必ずしも攻撃等のアクションを実行しなくてもよい。また、戦闘に参加するキャラクタは、敵キャラクタからのアクションを受けなくてもよい。例えば、人間キャラクタ301が騎乗モンスター303に騎乗しているが、入力操作に基づく攻撃等の各種アクションは騎乗モンスター303のみが行う場合でも、人間キャラクタ301は戦闘に参加していることとする。
ユーザが騎乗モンスター303を指定する操作、および騎乗を指示する入力操作を行うと、操作受付部111はこれらの操作を受け付け、ゲーム進行部112は人間キャラクタ301を、指定された騎乗モンスター303と関連付ける。さらに、ゲーム進行部112は人間キャラクタ301と騎乗モンスター303を関連付けたことをオブジェクト制御部114に通知する。オブジェクト制御部114は該通知を受けて、人間キャラクタ301を騎乗モンスター303に騎乗させた体制および位置に配置する。これにより、ユーザは、ある人間キャラクタ301に対し、乗り物としての騎乗モンスター303の関連付けを変えてゲームを楽しむことができる。したがって、ゲームの興趣性が向上する。
ゲーム進行部112の戦闘処理部112Aは、人間キャラクタ301を騎乗モンスター303に騎乗させた場合、騎乗している人間キャラクタ301を以降の戦闘で攻撃、防御等のアクションをさせないようにしてもよい。換言すると、戦闘処理部112Aは、騎乗モンスター303および人間キャラクタ301の両方を戦闘に参加させるが、いずれか片方しか戦闘での種々のアクションに係る入力操作は行えないようにしてもよい。
なお、ゲーム進行部112はユーザの所定の入力操作に応じて、人間キャラクタ301の騎乗状態を解除してもよい。この場合、騎乗モンスター303はフィールド空間から削除され、人間キャラクタ301のみが該空間に残る。
本発明に係る人間キャラクタ301と騎乗モンスター303との見かけの関係性は「騎乗」に限定されず、騎乗モンスター303の外観に応じて適宜定められてよい。例えば、人間キャラクタ301と鳥型の騎乗モンスター303とが関連付けられた場合、騎乗モンスター303は人間キャラクタ301を掴んで飛び上がってもよい。
なお、操作受付部111がユーザの自動戦闘モンスター304を操作キャラクタと関連付ける(自動戦闘モンスター304を召喚する)入力操作を受け付けた場合、ゲーム進行部112は、自動戦闘モンスター304を操作キャラクタ(人間キャラクタ301または騎乗モンスター303)に関連付けてもよい。そして、ゲーム進行部112は、フィールド空間に自動戦闘モンスター304を配置するよう、オブジェクト制御部114に指示してもよい。そして、オブジェクト制御部114は自動戦闘モンスター304をフィールド空間に配置してもよい。
自動戦闘モンスター304とは、ユーザが操作不可能なキャラクタの一種である。また、自動戦闘モンスター304は騎乗モンスター303と異なり、人間キャラクタ301が騎乗することができないキャラクタである。後述する戦闘において、ゲーム進行部112およびオブジェクト制御部114が所定の行動パターンで自動戦闘モンスター304を動かすことにより、自動戦闘モンスター304は、自動的に戦闘に参加する。なお、以降の説明では、騎乗モンスター303と自動戦闘モンスター304をまとめて「モンスター」とも称する。
なお、フィールド空間における仮想カメラの位置は、ユーザの操作キャラクタ(人間キャラクタ301または騎乗モンスター303)がユーザ端末100の略中央に表示されるような位置であることが望ましい。これにより、表示部152の表示画面上で、ユーザがタッチスクリーン15をタッチ操作する領域(例えば、図3の状態(A)および(B)の領域A)を確保することができる。
(戦闘)
図4は、戦闘時のフィールド空間を描画した画面の一例を示す図である。ユーザは、フィールド空間内を、人間キャラクタ301または騎乗モンスター303を操作して移動する。一方、フィールド空間内には、所定のタイミングで配置され、所定の行動パターンで移動等の行動を行う、敵キャラクタが配置されている。人間キャラクタ301(および騎乗モンスター303)と、敵キャラクタとの位置関係(例えば距離および各キャラクタの向き)が第1条件を満たした場合、戦闘処理部112Aは、人間キャラクタ301(および騎乗モンスター303)が敵キャラクタ305と遭遇して戦闘が開始したと判定し、戦闘に係る各種処理を開始する。一方、敵キャラクタが倒された(フィールド空間から削除された)、または人間キャラクタ301(および騎乗モンスター303)と敵キャラクタとの位置関係が第2条件を満たした場合、戦闘処理部112Aは、戦闘が終了したと判定し、該戦闘に係る各種処理を終了してもよい。
なお、戦闘処理部112Aは、戦闘の開始および終了を定めず、フィールド空間での移動からシームレスに戦闘が開始されるようにしてもよい。この場合、戦闘処理部112Aは、操作受付部111が人間キャラクタ301または騎乗モンスター303の所定の動作(例えば、攻撃)を指示する入力操作を受け付けた場合に、戦闘に係る各種処理を開始してよい。
図4の状態(A)は、人間キャラクタ301と敵キャラクタ305との戦闘が開始した状態を示す図である。戦闘処理部112Aにより戦闘が開始したと判定された場合、オブジェクト制御部114は、図示の通り人間キャラクタ301が武器302を構えた状態となるように、人間キャラクタ301および武器302の配置を調整してもよい。
敵キャラクタ305は、所定の行動パターンに従って戦闘処理部112Aにより行動が制御されているNPC(non player character)である。敵キャラクタ305は、騎乗モンスター303または自動戦闘モンスター304の一種と同様の外見および能力(移動および攻撃方法等)を有していてもよい。
戦闘処理部112Aは、操作受付部111の受け付ける、戦闘時の攻撃、防御、回避、移動等の入力操作に応じて、人間キャラクタ301と敵キャラクタ305との戦闘を進める。例えば、攻撃を指示する入力操作を操作受付部111が受け付けた場合、戦闘処理部112Aは、人間キャラクタ301の攻撃力の値と、敵キャラクタ305の防御力の値とに応じて敵キャラクタ305に与えられるダメージを計算する。オブジェクト制御部114は、戦闘処理部112Aの進める各種処理に応じて、人間キャラクタ301、武器302、および敵キャラクタ305の配置、移動、ポーズ等を制御する。
図4の状態(B)は、人間キャラクタ301が騎乗モンスター303に騎乗した状態で敵キャラクタ305と戦闘している状態を示す図である。上述の通り、人間キャラクタ301は騎乗モンスター303に騎乗すると、攻撃等の諸動作が出来なくなり、人間キャラクタ301に代わり騎乗モンスター303が該諸動作を実行する。
例えば、ユーザの入力操作に応じて、騎乗モンスター303は図示のように、その外見および能力に応じた攻撃方法で、敵キャラクタ305に攻撃する。これにより、騎乗モンスター303に応じたアクションを実行させることができるため、戦闘における戦略性を高めることができる。したがって、ゲームの興趣性を向上させることができる。
戦闘処理部112Aは、騎乗モンスター303の能力に応じて騎乗モンスター303と敵キャラクタ305との戦闘を進める。なお、自動戦闘モンスター304が配置されている場合、戦闘処理部112Aは、自動戦闘モンスター304と敵キャラクタ305との戦闘に係る処理も実行する。
図4の状態(C)は、戦闘に勝利した状態を示す図である。例えば図示のように、人間キャラクタ301が1人で戦闘し、敵キャラクタ305に勝利したとする。この場合、戦闘処理部112Aは、戦闘の内容または結果に応じた報酬アイテムを、ユーザに付与する。具体的には、戦闘処理部112Aは、ユーザ情報233に含まれている該報酬アイテムの個数を示す値を増加させる。なお、戦闘処理部112Aは、付与される報酬アイテムの種類および数を、敵キャラクタ305の種類およびレベル等に応じて変化させてもよい。また、オブジェクト制御部114または表示制御部115は、ユーザが入手した(ユーザに付与された)報酬アイテムの種類および数を示すUIオブジェクト306またはUI画像306を、配置して表示してもよい。
詳しくは後述するが、戦闘処理部112Aは、該報酬アイテムを付与することで、報酬アイテムの所持数が所定数以上になった場合、ユーザに付与するキャラクタを決定してもよい。なお、付与するキャラクタは、人間キャラクタ301、騎乗モンスター303、および自動戦闘モンスター304のいずれであってもよいが、騎乗モンスター303または自動戦闘モンスター304であることが望ましい。
人間キャラクタ301、騎乗モンスター303、および自動戦闘モンスター304はそれぞれの個体に応じた能力が予め設定されている。該能力の設定は、キャラクタデータ233Aとして、記憶部120に格納されている。
(キャラクタデータ)
図5は、キャラクタデータ233Aのデータ構造を示す図である。キャラクタデータ233Aは、図示の通り、キャラクタ1個体を一意に示す識別コードに対して、該キャラクタの種類を示す情報と、名称と、希少度を示す情報と、戦闘に係る種々のパラメータ(戦闘パラメータ)の値と、該キャラクタが装備している(該キャラクタに対応付けられている)装備品を示す情報と、が対応付けられたデータである。キャラクタデータ233Aの1レコードは、キャラクタ1個体を示している。なお、キャラクタデータ233Aには同一名称のモンスターが含まれていてもよい。換言すると、ユーザが、同じ外見のモンスターを複数所持することが可能であってもよい。
キャラクタの種類とは、キャラクタが人間キャラクタ、騎乗モンスター、および自動戦闘モンスターのいずれであるかを示す情報である。キャラクタの名称は、該キャラクタの名称を示す。本実施形態では、同じ名称のキャラクタは、同じ外見である。希少度は、該キャラクタの入手難易度(所謂、レアリティ)を示す。図示の例では、Dが最も希少度が低く、Aが最も希少度が高い。戦闘パラメータは、戦闘処理部112Aが戦闘の際に参照して戦闘に係る処理を実行するためのパラメータである。
装備品を示す情報は、該キャラクタに対応付けられている(すなわち、該キャラクタが装備している)装備品を示している。なお、図示の例では人間キャラクタのみが装備品を装備しているが、騎乗モンスターおよび自動戦闘モンスターも装備品を装備可能であってよい。キャラクタに装備品が対応付けられている場合、戦闘処理部112Aは、該装備品の攻撃力または防御力等のパラメータも参照して、戦闘に係る処理を行う。例えば、戦闘処理部112Aは、キャラクタの攻撃力に、装備品の攻撃力を足し合わせた値を、該キャラクタの攻撃に係るダメージ計算の際に用いる。なお、ユーザが所持している装備品および該装備品のパラメータを示す情報は、ユーザ情報233に含まれている。
(戦闘によるキャラクタ付与)
ゲームシステム1が実現するゲームでは、以下で説明する、戦闘付与処理または抽選付与処理のうちいずれか一方が実行された場合に、ユーザにモンスターを付与する。
戦闘付与処理とは、操作キャラクタと敵キャラクタとを戦闘させた結果に応じて、ユーザにモンスターを付与する処理である。図6は、ゲームシステム1における戦闘付与処理の流れの一例を示すフローチャートである。
ユーザ端末100のゲーム進行部112がゲームを開始させると、オブジェクト制御部114は所定のゲーム空間(例えば、フィールド空間)に操作キャラクタを配置し、ゲーム進行部112およびオブジェクト制御部114は、ユーザの入力操作に応じて該操作キャラクタを動作させる(S100)。以降、ゲーム進行部112は、ユーザの入力操作に応じて、操作キャラクタの移動、騎乗、自動戦闘モンスター304の召喚等を実行する。また、オブジェクト制御部114は、ゲーム進行部112からの指示に従って、操作キャラクタが配置されたゲーム空間に配置されると定められている敵キャラクタとを動作させる。
戦闘処理部112Aが、操作キャラクタが敵キャラクタと遭遇したと判定するまで、ゲーム進行部112およびオブジェクト制御部114は上述した制御を実行する(S102でNO)。操作キャラクタと敵キャラクタとの位置関係が第1条件を満たした場合、戦闘処理部112Aは、操作キャラクタがある敵キャラクタと遭遇したと判定する(S102でYES)。この場合、戦闘処理部112Aは、戦闘に係る各種処理を進め、操作キャラクタ(および自動戦闘モンスター)と、該ある敵キャラクタとを戦闘させる(S104)。戦闘において、所定の条件(第2条件)が満たされるまで、戦闘は継続される(S106でNO)。第2条件が満たされた場合(S106でYES)、戦闘処理部112Aは、該ある敵キャラクタとの戦闘が終了したと判定する。なお、敵キャラクタが複数存在する場合、戦闘処理部112Aは、操作キャラクタと他の敵キャラクタとの戦闘は継続させる。
戦闘が終了したと判定すると、戦闘処理部112Aは、該戦闘の内容に応じて、ユーザに報酬アイテムを付与する(S108)。さらに、戦闘処理部112Aは、報酬アイテムが所定数貯まったか否かを判定する(S110)。報酬アイテムが所定数貯まっていない場合(S110でNO)、戦闘処理部112Aは、以降の処理を行わない。一方、報酬アイテムが所定数貯まっている場合(S110でYES)、戦闘処理部112Aは、ユーザの所持する報酬アイテムを該所定数だけ消費し(S112)、該報酬アイテムに応じて、ユーザに付与するモンスターを決定する(S114)。例えば、戦闘処理部112Aは、報酬アイテムの種類に応じてユーザに付与するモンスターを決定する。モンスター付与部112Cは、決定したモンスターをユーザに付与する(S116)。
このように、戦闘により獲得したキャラクタをユーザに付与する仕様とすることで、ユーザに、戦闘を行う動機を与えることができる。さらに、戦闘でユーザに付与され得る(ユーザが獲得できる)キャラクタは、戦闘に参加可能である。したがって、ユーザに、獲得したキャラクタを戦闘に参加させようとする、すなわち、さらに戦闘を行う動機を与えることができる。そして、該戦闘の結果に応じて、さらにキャラクタがユーザに付与される。このように、このように、モンスターの獲得と、戦闘という2つの目的を循環的にユーザに提示することができるため、ユーザにゲームを飽きずに継続させることができる。
また、報酬アイテムが所定数貯まった場合にモンスターを付与することとすることで、ユーザに戦闘を繰り返し、報酬アイテムを収集するという目的を持たせることができる。
なお、報酬アイテムの種類は、敵キャラクタの種類(例えば、敵キャラクタの名称)と1対1で対応していることが望ましい。例えば、ある騎乗モンスターが敵キャラクタとして出現した場合、戦闘処理部112Aは、該騎乗モンスターに対応する報酬アイテムを付与することが望ましい。そして、該報酬アイテムが所定数以上貯まった場合、戦闘処理部112Aは、前記敵キャラクタとしての騎乗モンスターを、ユーザに付与する対象のモンスターとして決定してもよい。
これにより、ユーザは戦闘に勝利したとき、戦った敵キャラクタを獲得することができる。したがって、戦闘により、獲得できるキャラクタが容易に判別できる。
(抽選によるキャラクタ付与)
一方、抽選付与処理とは、抽選結果に応じてユーザにモンスターを付与する処理である。図7は、ゲームシステム1における抽選付与処理の流れの一例を示すフローチャートである。図7に示す抽選付与処理は、ゲームにおいて、ユーザが任意のタイミングで、抽選を指示する入力操作を行うことにより、開始される。
ユーザ端末100の操作受付部111は、抽選を指示する入力操作を受け付ける(S200)。操作受付部111が該入力操作を受け付けると、抽選部112Bは、ユーザに付与するモンスターを、抽選により決定する(S202)。モンスター付与部112Cは、抽選部112Bが決定したモンスターを、ユーザに付与する(S204)。すなわち、モンスター付与部112Cは、ユーザ端末100のユーザ情報233に含まれている、キャラクタデータ233Aに、抽選部112Bが決定したモンスターのデータ(図3における1レコード)を追加する。最後に、ゲーム進行部112はS202における抽選結果を表示制御部115に通知し、表示制御部115は該抽選結果を示す画像を作成して、表示部152に表示させる(S206)。
なお、ユーザが抽選を実行するためには、何らかの対価が必要であってもよい。例えば、ゲーム進行部112は、ユーザが所定の抽選アイテムを所定数以上所持している場合は、S202以降の処理を実行し、ユーザが所定の抽選アイテムを所定数以上所持していない場合は、S202以降の処理を実行しないこととしてもよい。さらに、ゲーム進行部112は、S202以降の処理を行う場合は、記憶部120のユーザ情報233に記憶されている該抽選アイテムの数を、該所定数分だけ減少させてもよい。すなわち、ゲーム進行部112は、S202以降の処理を行う場合、抽選アイテムを所定数分だけ消費させてもよい。
このように、抽選により決定したキャラクタをユーザに付与することで、ユーザに、抽選を行う動機を与えることができる。さらに、抽選でユーザに付与され得る(ユーザが獲得できる)キャラクタは、操作キャラクタと関連付けることで戦闘に参加可能である。したがって、ユーザに、獲得したキャラクタを戦闘に参加させようとする、すなわち、さらに戦闘を行う動機を与えることができる。そして、該戦闘の結果に応じて、図6に示したようにキャラクタがユーザに付与される。このように、ユーザに抽選でモンスターを獲得させることで、該ユーザに操作キャラクタを操作して戦闘を行う動機も与えることができる。したがって、ユーザに継続的な目標を与え、ゲームを飽きずに継続させることができる。
〔実施形態2〕
<モンスターの成長>
ユーザ端末100のゲーム進行部112は、あるモンスターを戦闘に参加させた場合、または、あるモンスターに所定の成長アイテムが使用された場合に、該モンスターを成長させてもよい。以下、本発明の実施形態2について説明する。なお、上記実施形態にて説明した内容と同じ内容については、その説明を繰り返さない。これは、以降の実施形態でも同様である。
本実施形態に係るゲーム進行部112は、あるモンスターを戦闘に参加させた場合、該モンスターを成長させる。「モンスターを成長させる」とは、該モンスターの能力を変化させることを意味する。なお、ゲーム進行部112は、単に戦闘に参加しただけでなく、戦闘中、または戦闘終了時に所定の成長条件を満たしていた場合に、該モンスターを成長させてもよい。また、ゲーム進行部112は、モンスターだけでなく、人間キャラクタを成長させてもよい。
また、ゲーム進行部112は、あるモンスターに所定の成長アイテムが使用された場合に、該モンスターを成長させてもよい。「所定の成長アイテム」とは、ゲームにおいて所定の条件が満たされた場合に、ユーザに、または該ユーザが所有する人間キャラクタに対して付与されるアイテムである。
操作受付部111は、成長対象のモンスターを選択する入力操作を受けつける。操作受付部111が該入力操作を受け付けると、ゲーム進行部112は選択されたモンスターを成長対象のモンスターと決定する。続いて、操作受付部111は、成長アイテムの使用を指示する入力操作を受け付ける。操作受付部111が該入力操作を受け付けると、ゲーム進行部112は、キャラクタデータ233Aに含まれている、成長対象のモンスターのキャラクタデータを更新することで、該モンスターの能力を変化させる。
(モンスターの能力の例)
モンスターの能力は、例えば、モンスターの体力、攻撃力、攻撃速度、および防御力等、モンスターに設定された各種パラメータの値、または該値の限界値で示される。ゲーム進行部112は、これらのパラメータの値および限界値の少なくとも1つを増加または減少させることで、モンスターの能力を変化させてもよい。
また、モンスターの能力は、例えば、モンスターに付与されている属性、ならびに該属性の影響の強さを示すパラメータの値で示される。ゲーム進行部112は、モンスターに属性を付与する、もしくはモンスターに付与されている属性を削除することにより、該モンスターの能力を変化させてもよい。また、ゲーム進行部112は、属性に係るパラメータの値を増加または減少させることで、該モンスターの能力を変化させてもよい。
また、モンスターの能力は、例えば、該モンスターが実行可能なスキルの数、種類、および各スキルの性能で示される。スキルとは、例えばモンスターの何らかのアクションに関するアクションスキル、ならびに、常時効果を発揮するパッシブスキル等である。ゲーム進行部112は、実行可能なスキルの数および種類を増加させること、ならびに、各スキルの性能を向上させるまたは低下させることにより、該モンスターの能力を変化させてもよい。
また、モンスターが騎乗モンスターである場合、「モンスターの能力」とは、例えば、人間キャラクタが該モンスターに騎乗した場合の、モンスターの移動速度または移動可能な地形の種類等であってもよい。ゲーム進行部112は、モンスターの移動速度を速くする、または遅くすること、ならびに、移動可能な地形の種類を増加または減少させることにより、該モンスターの能力を変化させてもよい。
成長させることが可能なモンスターを戦闘または抽選によって獲得できるようにすることで、モンスターを獲得したユーザに、該モンスターを成長させるという目的および楽しみを与えることができる。したがって、ゲームシステム1は、ゲームの興趣性を向上させることができる。
また、獲得したモンスターを成長させて、成長させたモンスターを使用して、更に別のモンスターと戦闘することで、該別のモンスターの獲得を狙うことができる。このように、モンスターの獲得と、モンスターの成長という2つの目的を循環的にユーザに提示することができるため、ユーザにゲームを飽きずに継続させることができる。
<モンスターの限界突破>
戦闘処理部112Aまたは抽選部112Bにおいて、ユーザに付与済のモンスターと同じモンスターを前記ユーザに付与するモンスターとして決定した場合、モンスター付与部112Cは、前記モンスターを前記ユーザに付与する代わりに、該付与済のモンスターを限界突破させてもよい。「限界突破」は、成長と同様に、モンスターの能力を変化させることを意味する。
(限界突破に係る処理の流れ)
図8は、ゲームシステム1における、限界突破に係る処理の流れの一例を示すフローチャートである。図8に示す各処理は、ゲーム進行部112がモンスターをユーザに付与する処理の代わりに実行される。すなわち、図8に示す各処理は、図6に示すフローチャートのS116、または、図7に示すフローチャートのS204の処理の代わりに実行される。
戦闘処理部112Aまたは抽選部112Bが付与するモンスターを決定すると(図6のS114または図8のS202)、モンスター付与部112Cは、該モンスターがユーザに付与済みのモンスターであるか否かを判定する(S300)。例えば、モンスター付与部112Cは、は、決定されたモンスターを特定する情報(例えば、ゲーム情報232に記憶されている、該モンスターの識別コード)をキーとして用いて、キャラクタデータ233Aを検索する。キャラクタデータ233Aに、キャラクタ特定情報が示すモンスターについてのデータが含まれていた場合、モンスター付与部112Cは、該モンスターがユーザに付与済みのモンスターであると判定する(S300でYES)。一方、キャラクタデータ233Aに、キャラクタ特定情報が示すモンスターについてのデータが含まれていない場合、モンスター付与部112Cは、該モンスターがユーザに付与していない(すなわち、未付与の)モンスターであると判定する(S300でNO)。
戦闘処理部112Aまたは抽選部112Bが決定したモンスターが、ユーザに未付与のモンスターであった場合(S300でNO)、モンスター付与部112Cは、S114およびS204と同様に、該モンスターをユーザに付与する(S302)。
一方、戦闘処理部112Aまたは抽選部112Bが決定したモンスターが、ユーザに付与済みのモンスターであった場合(S300でYES)、モンスター付与部112Cは該モンスター(すなわち、付与する予定であったモンスター)をユーザに付与しない。そして、ゲーム進行部112は、該モンスターを限界突破対象のモンスターと決定する。ゲーム進行部112は、限界突破対象のモンスターを限界突破させる(S304)。具体的には、ゲーム進行部112は例えば、キャラクタデータ233Aに含まれている、限界突破対象のモンスターのキャラクタデータを更新することで、該モンスターの能力を変化させる。
以上の処理によれば、戦闘または抽選によって、ユーザに付与済みのモンスターが再度付与される状況になった場合に、同じモンスターを重複して付与する代わりに、付与済みのモンスターの能力を変化させる。
これにより、例え同じモンスターが付与される状況になった場合でも、所持しているモンスターが強化されるという利点をユーザに与えることができる。これにより、ユーザに一度獲得したモンスターを再度戦闘または抽選で獲得する動機を与えることができる。
なお、モンスター付与部112Cは、人間キャラクタもモンスターと同様に限界突破させてもよい。人間キャラクタを限界突破させる場合の処理も、以上で説明した、モンスターの限界突破に係る処理と同様である。
図8のS304の処理は、S116、または、S204のタイミング以外のタイミングで実行されてもよい。例えば、ゲーム進行部112は、戦闘処理部112Aまたは抽選部112Bが決定したモンスターが付与済みか否かに関わらず、一旦ユーザに付与してもよい(S302)。この場合、S300の判定処理は行われなくてよい。そして、ゲーム進行部112は、操作受付部111がユーザの、限界突破を指示する一連の入力操作を受け付けたときに、ユーザが重複して所持しているモンスターの限界突破を実行してもよい。
限界突破を指示する一連の入力操作には、限界突破対象のモンスターを指定する入力操作と、該モンスターの限界突破のために消費される消費対象のモンスターを指定する入力操作が含まれている。なお、限界突破対象のモンスターと消費対象のモンスターとは、同じまたは同種のモンスターであることが望ましい。
ゲーム進行部112は、該複数のレコードのうち、ユーザが消費対象に指定したモンスターを示すレコードを削除し、ユーザが限界突破対象に指定したモンスターを示すレコードを更新することで、該限界突破対象のモンスターの能力を変化させる。
モンスターを成長または限界突破させた場合、該モンスターの外見を変化させてもよい。成長または限界突破に合わせてモンスターの外見を変更することで、モンスターの成長段階、または限界突破の段階を一見して判別できるようにすることができる。また、モンスターの成長または限界突破させたときに外見がどのように変化するか、ユーザに期待感を持たせることができる。
例えば、モンスターを成長または限界突破させたときに、より強そうな、またはより華やかな外見に変更することが望ましい。これにより、ユーザに、モンスターを成長または限界突破させた事に対する満足感をより多く感じさせることができる。また、ユーザに、モンスターを成長または限界突破させるための動機をより強く与えることができる。
なお、人間キャラクタについても、モンスターと同様に、成長および限界突破の少なくとも一方が可能であってもよい。人間キャラクタの成長および限界突破に係る処理の流れは、本実施形態で説明した、モンスターの成長および限界突破の処理の流れと同様である。
〔実施形態3〕
本発明に係るゲームシステムは、操作キャラクタの装備品に、戦闘に参加可能な仲間キャラクタを関連付けてもよい。そして、装備品に仲間キャラクタが関連付けられた場合、仲間キャラクタを以降の戦闘に参加不可能とするとともに、前記装備品に該仲間キャラクタに応じた効果を付与してもよい。
ユーザは、人間キャラクタまたは騎乗モンスターを操作キャラクタとして操作することができる。したがって、操作キャラクタの装備品とは、例えば人間キャラクタ301の武器302、防具、およびアクセサリ、ならびに、騎乗モンスター303の武器、防具、アクセサリ等である。
ユーザは、人間キャラクタとともに、該人間キャラクタが騎乗する騎乗モンスターを戦闘に参加させることができる。また、ユーザは人間キャラクタまたは騎乗モンスターとともに、自動戦闘モンスターを戦闘に参加させることができる。したがって、仲間キャラクタとは、騎乗モンスターまたは自動戦闘モンスターである。なお、人間キャラクタをNPCとして戦闘に参加させることが可能である場合、人間キャラクタも仲間キャラクタに含まれる。
図9は、本実施形態に係るゲームシステム1に含まれる、ユーザ端末300およびサーバ200の機能的構成を示すブロック図である。本実施形態に係るゲームシステム1は、ユーザ端末100の代わりにユーザ端末300を備える。ユーザ端末300は、ゲーム進行部112に武器強化部112Dを含む点において、ユーザ端末100と異なる。
武器強化部112Dは、ユーザ情報233に含まれている、装備品のパラメータを示す情報を更新することで、装備品を強化する。ここで、「装備品を強化する」とは、装備品に何らかの効果(本来、装備品には備わっていない、付加的効果)を付与することを示す。
ここで言う「効果」とは、例えば、装備品の能力の向上効果、および装備品を装備することにより使用可能なスキルの増加効果等であってよい。また、上記効果とは、装備品の外見および属性等を変化させることであってもよい。
また、武器強化部112Dは、装備品の強化に使用する仲間キャラクタの、所持する能力およびスキルの少なくとも一方に応じた効果を装備品に付与することが望ましい。これにより、使用する仲間キャラクタに応じて、装備品に多彩な効果を付与することができる。したがって、ゲームの興趣性がいっそう向上する。
(装備品強化処理の流れ)
図10は、装備品を強化する処理(装備品強化処理)の流れの一例を示すフローチャートである。なお、以下の例では、仲間キャラクタとして、モンスターが装備品強化に使用可能であることとするが、人間キャラクタを装備品の強化に用いる場合も処理の流れは同様である。
操作受付部111は、装備品の強化に使うモンスターを選択する入力操作を受け付ける(S400)。また、操作受付部111は、強化対象の装備品を選択する入力操作を受け付ける(S402)。その後、操作受付部111は、装備品の強化を指示する入力操作を受け付ける(S404)。ゲーム進行部112は、操作受付部111がS404の入力操作を受け付けた場合、S402で選択された装備品と、S400で選択されたモンスターとを関連付ける(S406)。なお、この関連付けは、モンスターに装備品を装備させるための関連付けとは区別されて管理される。ゲーム進行部112はさらに、上記関連付けたモンスター、すなわち装備品の強化に使ったモンスターを、使用不可能とする(S408)。なお、該モンスターは戦闘時のみ使用不可能(すなわち、戦闘に参加不可能)であってもよいし、常時使用不可能であってもよい。
最後に、ゲーム進行部112は、S406で関連付けられた装備品、すなわち強化対象の装備品に、強化に使うモンスターに応じた効果を付与する(S410)。例えば、ゲーム進行部112は、強化に使うモンスターの能力またはスキルに応じた効果を装備品に付与する。
なお、装備品に関連付けられる(すなわち、装備品の強化に使用される)仲間キャラクタは、実施形態2で説明したように、戦闘または所定の成長アイテムを使用することによって能力を変化させることが可能なキャラクタであることが望ましい。このようなキャラクタを装備品の強化に使用することにより、該キャラクタの成長状態に応じた効果を装備品に付与することができる。したがって、どこまでキャラクタを成長させてから、装備品の強化に用いるかをユーザに考えさせることができる。このようにユーザに戦略性をもって装備品強化を行わせることで、ゲームの興趣性をいっそう向上させることができる。
装備品に関連付けられる仲間キャラクタは、人間キャラクタまたは騎乗モンスター(副キャラクタ)等、ユーザが操作可能なキャラクタであることが望ましい。本実施形態に係るゲームでは、ユーザが一度に操作可能なキャラクタは1体(例えば、図3の状態(B)における人間キャラクタ301または騎乗モンスター303)である。また、この例に限らず、ユーザが一度に操作可能なキャラクタの数は、自ずと限られる。一度に操作可能なキャラクタが多いほど、ユーザの判断速度および判断能力が求められるからである。
したがって、ユーザの所持する人間キャラクタおよび騎乗モンスターの数が増えてきた場合、あまり使用しないキャラクタが発生する。また、すでに戦闘に強い人間キャラクタまたは騎乗モンスター等、欲しいキャラクタをユーザが所持している場合など、ユーザの、キャラクタを獲得および収集しようという動機が薄れてしまう。
上記の処理によれば、あまり使用しない人間キャラクタまたは騎乗モンスターでも、装備品の強化に使用するという役割を持たせることができる。したがって、ユーザのキャラクタ収集意欲を高めることができる。これにより、ゲームの興趣性がいっそう向上する。
さらに言えば、装備品に関連付けられる仲間キャラクタは、騎乗モンスターであることが望ましい。人間キャラクタは、例えばゲームのストーリーの進行に関わるキャラクタであったり、該ストーリーの進行に応じて獲得できる(すなわち、「仲間に加わる」)キャラクタであったりする場合がある。一方、騎乗モンスターは、操作可能なキャラクタと関連付けられることで、初めて戦闘に参加可能である。換言すると、騎乗モンスターは、それ自体で戦闘に参加することはできない。したがって、主たるキャラクタが装備品に関連付けられて戦闘に参加不可能となってしまうことを防止できる。また、人間キャラクタの装備品強化への使用を避け、騎乗モンスターを使用することとすることで、ストーリーの進行、およびユーザのストーリーの理解に支障が出ないようにすることができる。
〔実施形態4〕
本実施形態に係るゲームシステム1は、ユーザのタッチスクリーン15に対する連続した操作に応じて、操作キャラクタに連続したアクション(コンボアクションと称する)を実行させることが可能なゲームを実現してもよい。
本実施形態に係るユーザ端末100もしくは300、またはサーバ200は、予めアクション(1つのアクション)と、該アクションを起こすためのユーザの入力操作(指示操作と称する)とを対応付けた情報である操作設定情報を記憶部120または220のユーザ情報233として記憶している。操作設定情報は、操作キャラクタになり得るキャラクタ(すなわち、人間キャラクタまたは騎乗キャラクタ)毎に、生成および更新される。
そして、本実施形態に係るユーザ端末100または300は、タッチスクリーン15に対して、ある指示操作がなされてから所定時間(例えば、0.5秒)以内に、同じまたは別のアクションと対応付けられた指示操作が行われた場合、各指示動作が示す2アクションを連続して実行する。
このようなゲームの例としては、移動または戦闘時にコンボアクションを実行するアクションゲーム、アクションRPG(Role-Playing Game)、または、アクションゲームの要素(またはアクションゲームパート)を含んだ、他ジャンルのゲーム等が挙げられる。
さらに、ゲームシステム1が実現するゲームでは、上述した操作設定情報はユーザが変更可能である。本実施形態に係る表示制御部115は、連続する操作よりなる操作列に含まれる各操作に対して、該操作の操作列における順序に応じたアクションを関連付ける編集画面の画像(以下、単に編集画面と称する)を生成し、該編集画面を表示部152に表示させる。なお、該編集画面は、ゲーム中の任意のタイミングでユーザが所定の入力操作を実行することにより生成および表示されてよい。
図11は、編集画面の一例を示す図である。図示の例では、希少度Aの騎乗モンスターである「ドラゴンX1」についての編集画面を示している。編集画面は、操作の種類毎の操作列コンポーネント601と、アクションアイコン612の一覧とを含む。この例では、5種類の操作(タップ操作、上フリック操作、下フリック操作、左右フリック操作及び回転操作)のそれぞれの操作列コンポーネント601が含まれている。ただし、編集画面に含まれる操作列コンポーネント601の個数は、図示した個数に限定されない。また、表示し得るアクションアイコン612の個数が、同時に表示可能な個数(図11では6つ)を超える場合には、スクロールバー611が表示されるようになっている。スクロールバー611に対する操作により、表示し得るアクションアイコン612のうち、隠れていたアクションアイコン612が表示される。
まず、操作列コンポーネント601について説明する。操作列コンポーネント601は、該当する種類の連続した操作のうち、順序iの操作に関連付けられたアクションを表すスロット602_i(iは1以上N以下の自然数)を、1段目からN段目まで順に配列したコンポーネントである。すなわち、図11に示すドラゴンX1の操作設定情報とは、図11に示す5つの操作列コンポーネント601をまとめた情報である。
なお、Nは、1以上の整数であり、当該種類の操作列に含まれ得る操作の最大数を表す。最大数Nは、当該種類の連続する操作により連続してアクションを繰り出すことが可能な連続数の上限値となる。以降、最大数Nを、最大連続数Nとも記載する。最大連続数Nは、該当する編集可能キャラクタの希少度に応じて異なる場合がある。例えば、最大連続数Nは、希少度が低い編集可能キャラクタほど、多くなっていてもよい。また、最大連続数Nは、例えば、該当する編集可能キャラクタの特性に応じて異なっていてもよい。また、最大連続数Nは、該当する操作の種類の特性に応じて異なっていてもよい。また、最大連続数Nは、所定の条件が満たされた場合に増加可能である。最大連続数Nを増加させる条件としては、例えば、仮想通貨等の消費アイテムとの引き換えが挙げられる。また、最大連続数Nを増加させる条件としては、例えば、その編集可能キャラクタがレベルアップすることが挙げられる。ただし、最大連続数Nを増加させる条件は、これらに限られない。
例えば、図11に示すように、希少度AのドラゴンX1の編集画面において、タップ操作の操作列コンポーネント601の最大連続数Nは、3である。なお、ユーザ端末100またはユーザ端末300は、希少度がより低いモンスターほど、タップ操作の操作列コンポーネント601の最大連続数Nを多く設定することとしてもよい。
また、操作列コンポーネント601に含まれるN個のスロット602_iのうち、編集可能数Mまでのスロット602_iに対して、アクションの関連付けが可能(すなわち、編集可能)である。編集可能数Mを超えるスロット602_iは、編集不可能であり、アクションの関連付けができない。編集不可能なスロット602_iは、編集不可能であることを表すよう表示される。図11の例では、カギマークが表示されたスロット602_i(例えば、602_3)は、編集不可能であることを表している。また、当該種類の連続する操作により連続してアクションを繰り出すことが可能な連続数は、編集可能数Mまでとなる。ただし、編集可能数Mは、編集可能キャラクタが満たす条件に応じて最大連続数Nまで増加可能である。なお、編集可能数Mは、編集可能キャラクタにより異なっていてもよい。編集可能数Mを増加させる条件としては、例えば、仮想通貨等の消費アイテムとの引き換えが挙げられる。また、編集可能数Mを増加させる条件としては、例えば、その編集可能キャラクタがレベルアップすることが挙げられる。ただし、編集可能数Mを増加させる条件は、これらに限られない。
次に、アクションアイコン612について説明する。アクションアイコン612は、操作列情報の各操作に対して関連付け得るアクションを表している。関連付け得るアクションの種類としては、前述のように、敵キャラクタに作用を与えるもの、操作キャラクタを移動するもの、サブキャラクタを召喚するもの等がある。
アクションアイコン612の一覧は、スロット602_iに対応する操作に関連付けが可能なアクションの一覧を表す。関連付けが可能なアクションは、該当する編集可能キャラクタによって取得済みのアクションを含む。さらに、関連付けが可能なアクションは、該当する編集可能キャラクタと同グループの他の編集可能キャラクタによって取得済みのアクションを含んでいてもよい。以降、あるキャラクタによって取得済みのアクションのことを、当該キャラクタによって使用可能なアクション、と記載することもある。
なお、編集可能キャラクタは、条件を満たすことにより新たなアクションを取得するようになっていてもよい。新たなアクションを取得する条件とは、例えば、該当する編集可能キャラクタの操作キャラクタとしてのプレイ期間が閾値を超えることであってもよい。これは、ゲームの進行に伴い操作キャラクタが新たな技を閃いたことを表現している。また、アクションを取得する条件とは、例えば、操作キャラクタが所定のアイテムを取得することであってもよい。これは、操作キャラクタが所定のアイテムを用いて新たな技を覚えることを表現している。
次に、アクションアイコン612の一覧について説明する。アクションアイコン612の一覧は、編集対象のスロット602_iに対応する操作の種類に応じた特性を有するアクションの一覧を表す。例えば、タップ操作に応じた特性とは、ホーミング性能が高いことであってもよい。また、例えば、上フリック操作または下フリック操作に応じた特性とは、攻撃力が高いことであってもよい。また、例えば、左右フリックに応じた特性とは、攻撃範囲が広いことであってもよい。また、関連付け得るアクションの特性を、操作の種類に応じて変化させてもよい。例えば、上、下または左右フリック操作に比べて、タップ操作に関連付け得るアクションのホーミング性能を高くし、回転操作に関連付け得るアクションのホーミング性能を低くしてもよい。また、例えば、上または下フリック操作に比べて、左右フリック操作に関連付け得るアクションのホーミング性能を高くしてもよい。
例えば、図11では、タップ操作の操作列コンポーネント601に含まれる何れかのスロット602_iがタップされたことにより、アクションアイコン612の一覧が表示される。これらのアクションアイコン612が表すアクションは、タップ操作に応じた特性を有するアクションであって、当該ドラゴンX1又はグループXの他のキャラクタにより使用可能なアクションである。例えば、アクションX1_a、X1_b、X1_cは、ドラゴンX1によって使用可能なアクションを表す。また、例えば、アクションX2_a、X2_bは、グループXの他のキャラクタであるドラゴンX2によって使用可能なアクションを表す。また、例えば、アクションX3_aは、グループXの他のキャラクタであるドラゴンX3によって使用可能なアクションを表す。なお、実線のアクションアイコン612は、該当するキャラクタによって取得済みのアクションを表し、破線のアクションアイコン612は、未取得のアクションを表している。
次に、編集画面における操作列情報の編集方法の一例について説明する。編集可能なスロット602_iには、アクションアイコン612を嵌め込むことが可能となっている。嵌め込まれたアクションアイコン612が表すアクションは、スロット602_iの順序の操作に関連付けられる。スロット602_iにアクションアイコン612を嵌め込むための操作は、例えば、ドラッグ操作であってもよい。また、嵌め込むための操作は、スロット602_i及びアクションアイコン612をこの順または逆順にタップ操作することであってもよい。ただし、嵌め込むための操作は、これらの操作に限定されない。
また、スロット602_iに嵌め込まれたアクションアイコン612は、所定の操作によりクリアされ、空きスロットとなることが可能である。クリアのための操作は、例えば、既に嵌め込まれたアクションアイコン612が、スロット602_iの枠外にドラッグ操作されることであってもよい。ただし、クリアのための操作は、このような操作に限定されない。また、編集画面において、各種類の操作列コンポーネント601における各スロット602_iを空きスロットとする「オールクリア」の機能が提供されていてもよい。この場合、編集画面は、オールクリアを指示する操作ボタン(図示せず)を含む。
なお、スロット602_iは、該当する順序のアクションが関連付けられていない場合には、空きスロットであることを表すよう表示される。図11の例では、斜線で塗りつぶされたスロット602_2は、空きスロットである。
例えば、図11において、タップ操作に関する操作列コンポーネント601を参照すると、3つのスロット602_iが配列されている。すなわち、最大連続数Nは3である。また、スロット602_1~602_2までが編集可能であり、そのうち、スロット602_2は空きスロットである。また、スロット602_3は、編集不可能となっている。すなわち、編集可能数Mは2である。換言すると、この例では、この編集可能キャラクタについては、タップ操作の最大連続数3のうち編集可能数の2段目まで、連続したアクションを実行させることが可能となっている。
また、各操作列情報において各操作に対して関連付けられたアクションのコストの総和は、コストの上限値を超えないよう定められている。例えば、各種類の操作列コンポーネント601における各スロット602_iに嵌め込まれたアクションアイコン612のコストの総和が上限値を超えているか否かは、操作列情報の編集を終了する際に判断される。例えば、ゲーム進行部112は、編集終了を指示する操作が行われた際に、コストの総和が上限値を超えていなければ、編集内容を反映した操作列情報を、ユーザ情報233として記憶部120に保存する。もし、コストの総和が上限値を超えていれば、ゲーム進行部112は、操作列情報を保存しない。この場合、ゲーム進行部112は、コストの総和が上限値を超えていることを表示した上で、編集画面の表示を継続してもよい。また、スロットによっては、キャラクタに固有のアクションが割り当てられており、当該スロットについて編集を不可としてもよい。すなわち、キャラクタに固有のアクションが割り当てられているスロットについて、アクションをクリアすることも、他のアクションを割り当てることも不可能であることとしてもよい。
ユーザによって、編集画面における編集の完了を指示する入力操作がなされると、操作受付部111は該入力操作を受け付ける。ゲーム進行部112は該入力操作に応じて、編集画面において編集された操作列コンポーネント601の情報をまとめて、操作設定情報を作成し、この新しい操作設定情報で、記憶部120のユーザ情報233に含まれている操作設定情報を更新する。
以上の処理によれば、ユーザは、連続する入力操作に応じて実行されるアクションを、試行錯誤しながら変化させることができる。その結果、ユーザは、連続する操作に応じて多様なゲーム展開を楽しむことができ、ゲームの興趣性がより高まる。
〔ソフトウェアによる実現例〕 制御部110および制御部210の制御ブロックは、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
後者の場合、制御部210または制御部110、もしくはその両方を備えた情報処理装置は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
〔付記事項〕 本発明の一側面に係る内容を列記すると以下のとおりである。
(項目1) 上記各実施形態では、ゲームプログラム(231)について説明した。ゲームプログラム(231)は、プロセッサ(10)と、メモリ(11)と、ユーザの入力操作を受け付ける操作部(入力部151等)と、を備えるコンピュータにおいて実行される。ゲームプログラムは、プロセッサに、ゲーム空間に配置される第1のキャラクタ(モンスター)をユーザの入力操作に応じてゲーム空間内で動作させるステップ(S100)と、抽選を指示する入力操作を受け付けるステップ(S200)と、ユーザに付与する対象となる第1のキャラクタを抽選により決定するステップ(S202)と、ゲーム空間において、ユーザが操作対象とするキャラクタと他のキャラクタとを戦闘させた結果に応じて、ユーザに付与する対象となる第1のキャラクタを決定するステップ(S114)と、を実行させる。
戦闘の結果に応じてキャラクタをユーザに付与することで、ユーザに、戦闘を行おうという動機付けを行うことができる。また、抽選により決定したキャラクタをユーザに付与することで、ユーザに、抽選を行う動機付けを行うことができる。さらに、付与された(ユーザが獲得した)キャラクタは、戦闘に参加可能である。したがって、ユーザに、獲得したキャラクタを戦闘に参加させようとする、すなわち、さらに戦闘を行う動機を与えることができる。そして、該戦闘の結果に応じて、さらにキャラクタがユーザに付与される。このように、このように、モンスターの獲得と、戦闘という2つの目的を循環的にユーザに提示することができるため、ユーザにゲームを飽きずに継続させることができる。したがって、ユーザにゲームをプレイする動機を継続的に与え、これによりゲームの興趣性を向上させることができる。
(項目2) (項目1)において、ゲームプログラムは、プロセッサに、さらに、第1のキャラクタを、ユーザの入力操作に応じて操作可能な第2のキャラクタと関連付ける操作を受け付けるステップと、関連付ける操作を受け付けた場合に、第1のキャラクタを第2のキャラクタと関連付けるステップと、を実行させてもよい。また、ゲーム空間内で動作させるステップでは、第2のキャラクタと関連付けられた第1のキャラクタをゲーム空間内で動作させてもよい。
これにより、ユーザに第2キャラクタを第1キャラクタと関連付けることができる。したがって、第2キャラクタと第1キャラクタとに関係性を持たせることができる。
(項目3) (項目2)において、決定するステップでは、戦闘を行うことまたは所定の成長アイテムを使用することによって、能力を変化させることが可能な第1のキャラクタを、ユーザに付与するキャラクタとして決定してもよい。
これにより、ユーザに、獲得したキャラクタの能力を変化させるという目的および楽しみを与えることができる。したがって、ゲームの興趣性を向上させることができる。
(項目4) (項目3)において、ゲームプログラムは、プロセッサに、さらに、決定するステップにおいて、ユーザに付与済の第1のキャラクタと同じキャラクタをユーザに付与するキャラクタとして決定した場合(S300でYES)、第1のキャラクタをユーザに付与するステップの代わりに、該付与済の第1のキャラクタの、能力を変化させるステップ(S304)を実行させてもよい。
以上の処理によれば、戦闘または抽選によって、ユーザに付与済みの第1のキャラクタが再度付与される状況になった場合に、第1のキャラクタを重複して付与する代わりに、付与済みの第1のキャラクタの能力を変化させる。
これにより、例え第1のキャラクタが重複して付与される状況になった場合でも、該重複を起こさずに、ユーザの所持している第1のキャラクタを強化することができる。これにより、ユーザに一度獲得した第1のキャラクタを再度戦闘または抽選で獲得する動機を与えることができる。したがって、ゲームにおいてユーザに継続的な目的を与えることができる。
(項目5) (項目2)から(項目4)までのいずれか1項目において、ゲームプログラムは、プロセッサに、さらに、第1のキャラクタまたは第2のキャラクタと、他のキャラクタとしての第1のキャラクタとを戦闘させるステップと、戦闘させるステップにおいて、第1のキャラクタまたは第2のキャラクタを他のキャラクタとしての第1のキャラクタと戦闘させた結果に応じて、第1のキャラクタに対応する報酬アイテムをユーザに付与するステップと、を実行させてもよい。また、第1のキャラクタをユーザに付与するステップでは、所定数の報酬アイテムを消費して第1のキャラクタをユーザに付与してもよい。
これにより、ユーザは戦闘に勝利したとき、戦った敵キャラクタを獲得することができる。したがって、戦闘により、獲得できるキャラクタが容易に判別できる。
(項目6) (項目2)から(項目5)までのいずれか1項目において、決定するステップでは、第2のキャラクタの乗り物となる第1のキャラクタをユーザに付与するキャラクタとして決定してもよい。
これにより、ユーザは、ある第2のキャラクタに対し、乗り物としての第1キャラクタの関連付けを変えてゲームを楽しむことができる。したがって、ゲームの興趣性が向上する。
(項目7) (項目6)において、戦闘に参加させるステップでは、第1のキャラクタに、第2のキャラクタに代わり戦闘に係るアクションを実行させてもよい。
これにより、第2のキャラクタに応じたアクションを実行させることができる。したがって、戦闘における戦略性を高めることができるため、ゲームの興趣性を向上させることができる。
(項目8) (項目7)において、ゲームプログラムは、プロセッサに、さらに、第1のキャラクタが戦闘に参加している場合に、ユーザの連続した入力操作に応じて、連続した入力操作それぞれの操作の種類および操作順序に関連付けられたアクションを、第1のキャラクタに連続して実行させるステップと、入力操作の種類および操作順序と、アクションとの対応付けを編集するステップと、を実行させてもよい。
これにより、ユーザは、連続する入力操作に応じて実行されるアクションを、試行錯誤しながら変化させることができる。その結果、ユーザは、連続する操作に応じて多様なゲーム展開を楽しむことができ、ゲームの興趣性がより高まる。
(項目9) ゲームプログラム(231)を実行する方法を説明した。本開示のある局面によると、ゲームプログラムを実行する方法は、プロセッサ、メモリ、ディスプレイ、およびユーザの入力操作を受け付ける操作部を備えるコンピュータがゲームプログラムを実行する方法である。ゲームプログラムを実行する方法は、ゲーム空間に配置される第1のキャラクタをユーザの入力操作に応じてゲーム空間内で動作させるステップ(S100)と、抽選を指示する入力操作を受け付けるステップ(S200)と、ユーザに付与する対象となる第1のキャラクタを抽選により決定するステップ(S202)と、ゲーム空間において、ユーザが操作対象とするキャラクタと他のキャラクタとを戦闘させた結果に応じて、ユーザに付与する対象となる第1のキャラクタを決定するステップ(S114)と、を含む。(項目9)に係る方法は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。
(項目10) 情報処理装置(ユーザ端末100、ユーザ端末300、またはサーバ200)について説明した。本開示のある局面によると、情報処理装置は、ゲームプログラムを実行することにより、情報処理装置の動作を制御するプロセッサと、ゲームプログラムを記憶するメモリと、ユーザの入力操作を受け付ける操作部と、を備える。プロセッサは、ゲーム空間に配置される第1のキャラクタをユーザの入力操作に応じてゲーム空間内で動作させるステップ(S100)と、抽選を指示する入力操作を受け付けるステップ(S200)と、ユーザに付与する対象となる第1のキャラクタを抽選により決定するステップ(S202)と、ゲーム空間において、ユーザが操作対象とするキャラクタと他のキャラクタとを戦闘させた結果に応じて、ユーザに付与する対象となる第1のキャラクタを決定するステップ(S114)と、を実行する。(項目10)に係る情報処理装置は、(項目1)に係るゲームプログラムと同様の作用効果を奏する。