〔実施形態1〕
本開示に係るゲームシステムは、複数のユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
本開示に係るゲームシステムは、複数のユーザにゲームを提供するためのシステムである。以下、ゲームシステムについて図面を参照しつつ説明する。なお、本発明はこれらの例示に限定されるものではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が本発明に含まれることが意図される。以下の説明では、図面の説明において同一の要素には同一の符号を付し、重複する説明を繰り返さない。
<ゲームシステム1のハードウェア構成>
図1は、ゲームシステム1のハードウェア構成を示す図である。ゲームシステム1は図示の通り、複数のユーザ端末100(情報処理装置)と、サーバ200とを含む。各ユーザ端末100は、サーバ200とネットワーク2を介して接続する。ネットワーク2は、インターネットおよび図示しない無線基地局によって構築される各種移動通信システム等で構成される。この移動通信システムとしては、例えば、所謂3G、4G移動通信システム、LTE(Long Term Evolution)、および所定のアクセスポイントによってインターネットに接続可能な無線ネットワーク(例えばWi-Fi(登録商標))等が挙げられる。
(サーバ200)
サーバ200(コンピュータ、情報処理装置)は、ワークステーションまたはパーソナルコンピュータ等の汎用コンピュータであってよい。サーバ200は、プロセッサ20と、メモリ21と、ストレージ22と、通信IF23と、入出力IF24とを備える。サーバ200が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
(ユーザ端末100)
ユーザ端末100(コンピュータ、情報処理装置)は、スマートフォン、フィーチャーフォン、PDA(Personal Digital Assistant)、またはタブレット型コンピュータ等の携帯端末であってよい。ユーザ端末100は、ゲームプレイに適したゲーム装置であってもよい。ユーザ端末100は図示の通り、プロセッサ10と、メモリ11と、ストレージ12と、通信インターフェース(IF)13と、入出力IF14と、タッチスクリーン15(表示部)と、カメラ17と、測距センサ18とを備える。ユーザ端末100が備えるこれらの構成は、通信バスによって互いに電気的に接続される。
また、図1に示すように、ユーザ端末100は、1つ以上のコントローラ1020と通信可能に構成されることとしてもよい。コントローラ1020は、例えば、Bluetooth(登録商標)等の通信規格に従って、ユーザ端末100と通信を確立する。コントローラ1020は、1つ以上のボタン等を有していてもよく、該ボタン等に対するユーザの入力操作に基づく出力値をユーザ端末100へ送信する。また、コントローラ1020は、加速度センサ、および、角速度センサ等の各種センサを有していてもよく、該各種センサの出力値をユーザ端末100へ送信する。
なお、図1では、ユーザ端末100がカメラ17および測距センサ18を備える例を示したがこれに限定されない。例えば、ユーザ端末100ではなくコントローラ1020がカメラ17および測距センサ18を有していてもよいし、ユーザ端末100およびコントローラ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とは異なる入力装置(図示せず)から出力される信号をユーザの入力操作として特定し、受け付ける。
<ゲームシステム1に含まれる各装置のハードウェア構成要素>
(プロセッサ10、20)
プロセッサ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は展開したプログラムを実行する。
本実施形態においてプログラムとは、ゲームをユーザ端末100により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームをユーザ端末100とサーバ200との協働により実現するためのゲームプログラムであってもよい。あるいは、該プログラムは、該ゲームを複数のユーザ端末100の協働により実現するためのゲームプログラムであってもよい。また、各種データとは、ユーザ情報およびゲーム情報などのゲームに関するデータ、ならびに、ユーザ端末100とサーバ200との間または複数のユーザ端末100間で送受信する指示または通知を含んでいる。
(メモリ11、21)
メモリ11および21は主記憶装置である。メモリ11および21は、ROM(Read Only Memory)およびRAM(Random Access Memory)等の記憶装置で構成される。メモリ11は、プロセッサ10が後述するストレージ12から読み出したプログラムおよび各種データを一時的に記憶することにより、プロセッサ10に作業領域を提供する。メモリ11は、プロセッサ10がプログラムに従って動作している間に生成した各種データも一時的に記憶する。メモリ21は、プロセッサ20が後述するストレージ22から読み出した各種プログラムおよびデータを一時的に記憶することにより、プロセッサ20に作業領域を提供する。メモリ21は、プロセッサ20がプログラムに従って動作している間に生成した各種データも一時的に記憶する。
(ストレージ12、22)
ストレージ12および22は補助記憶装置である。ストレージ12および22は、フラッシュメモリまたはHDD(Hard Disk Drive)等の記憶装置で構成される。ストレージ12およびストレージ22には、ゲームに関する各種データが格納される。
(通信IF13、入出力IF14)
通信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は、例えば、マウスまたはキーボード等の情報入力機器である入力部と、画像を表示出力する機器である表示部とを含み得る。
(タッチスクリーン15)
ユーザ端末100のタッチスクリーン15は、入力部151と表示部152とを組み合わせた電子部品である。入力部151は、例えばタッチセンシティブなデバイスであり、例えばタッチパッドによって構成される。一方、表示部152は、例えば液晶ディスプレイ、または有機EL(Electro-Luminescence)ディスプレイ等によって構成される。
入力部151は、入力面に対しユーザの操作(主にタッチ操作、スライド操作、スワイプ操作、およびタップ操作等の物理的接触操作)が入力された位置を検知して、位置を示す情報を入力信号として送信する機能を備える。入力部151は、図示しないタッチセンシング部を備えていればよい。タッチセンシング部は、静電容量方式または抵抗膜方式等のどのような方式を採用したものであってもよい。
表示部152は、各種情報を表示してユーザに視認させる機能、およびユーザの操作を受け付けるグラフィックなどを表示する機能を備えている。
図示していないが、ユーザ端末100は、該ユーザ端末100の保持姿勢を特定するための1以上のセンサを備えていてもよい。このセンサは、例えば、加速度センサ、または、角速度センサ等であってもよい。ユーザ端末100がセンサを備えている場合、プロセッサ10は、センサの出力からユーザ端末100の保持姿勢を特定して、保持姿勢に応じた処理を行うことも可能になる。例えば、プロセッサ10は、ユーザ端末100が縦向きに保持されているときには、縦長の画像を表示部152に表示させる縦画面表示としてもよい。一方、ユーザ端末100が横向きに保持されているときには、横長の画像を表示部に表示させる横画面表示としてもよい。このように、プロセッサ10は、ユーザ端末100の保持姿勢に応じて縦画面表示と横画面表示とを切り替え可能であってもよい。
(カメラ17、測距センサ18)
カメラ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の機能的構成>
図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は、ゲームプログラム131、ゲーム情報132およびユーザ情報133を格納する。ゲームプログラム131は、ユーザ端末100およびサーバ200で実行するゲームプログラムである。ゲーム情報132は、制御部110および制御部210がゲームプログラム131を実行する際に参照するデータである。ユーザ情報133は、ユーザのアカウントに関するデータである。記憶部220において、ゲーム情報132およびユーザ情報133は、ユーザ端末100ごとに格納されている。
(サーバ200の記憶部220、ユーザ端末100の記憶部120)
記憶部120は、ゲームプログラム131、ゲーム情報132、およびユーザ情報133を格納する。記憶部220は、ゲームプログラム131、ゲーム情報232、およびユーザ情報233を格納する。
(ゲームプログラム131)
ゲームプログラム131は、ユーザ端末100およびサーバ200で実行するゲームプログラムである。ゲームプログラム131は、ゲームプログラム131に基づくゲームのプレイを希望するユーザのユーザ端末100へサーバ200から提供され得る。
(ユーザ情報233)
ユーザ情報133およびユーザ情報233は、ユーザのアカウントに関する情報(アカウント情報)である。ユーザ情報133は、ユーザ端末100と対応付けられているアカウント情報である。本実施形態では、1台のユーザ端末100に、1つのアカウントが対応付けられている例について説明する。
ユーザ情報233は、各ユーザ端末100から収集されたユーザ情報133をまとめたデータである。したがって、ユーザ情報133とユーザ情報233とが含む情報の項目は同一である。
図3は、ユーザ情報233のデータ構造の一例を示す図である。ユーザ情報233は、アカウントに紐付けられた複数項目の情報を含む。図3の例では、ユーザ情報233は1つのアカウントに関する情報(すなわち、各ユーザ端末100におけるユーザ情報133)を、データテーブルの1レコードとして保持している。ユーザ情報233に含まれる情報は図3の例に限定されない。ユーザ情報233は少なくとも、アカウントを一意に特定する識別子と、他の1以上の項目の情報とを含んでいればよい。しかしながら、ユーザ情報233はユーザIDとユーザ名とを含んでいることが望ましい。
ユーザ情報233は例えば、「ユーザID」列と、「ユーザ名」列と、「レベル」列と、「リーダー」列と、「最終ログイン時刻」列と、「メッセージ」列を含む。ユーザ情報233は、「ユーザID」列の情報に、他の列の情報が対応付けられたデータである。
「ユーザID」列には、アカウントを一意に特定する識別子であるユーザ名を示す情報が格納される。本実施形態に係るゲームでは、ユーザIDは、ユーザ端末100等を介してユーザがアカウントを作成したときに、サーバ200またはユーザ端末100において自動的に設定される。本実施形態では、ユーザIDとして、アットマーク(@)から始まり、該アットマーク、アルファベット、および数字を組み合わせた合計13文字から成る識別子を採用した場合について説明する。
「ユーザ名」列には、アカウントの名称を示す情報が格納される。本実施形態に係るゲームでは、ユーザ名はユーザによってユーザ端末100等を介して設定される文字列である。ユーザ名は、ゲームのプレイ中に何度でも変更可能であってもよい。また、アカウントを作成したときに、ユーザがユーザ名を特に指定しなかった場合は、サーバ200またはユーザ端末100が、予め定められた標準名(デフォルトネーム)をユーザ名として設定してもよい。
「レベル」列には、ゲームにおけるアカウントのレベルを示す情報が格納される。レベルとは、該アカウントのゲームの進行度合いを示す指標値である。どのような条件でレベルが変化するのかは、ゲームの特徴に応じて適宜設計されてよい。例えば、ゲームのプレイ内容(例えばスコア等)に応じてアカウントに対し経験値が付与され、該経験値が一定値を超えた場合に、レベルを1増加させることとしてもよい。
「リーダー」列には、ゲームにおいて該アカウントが使用可能なキャラクタのうち、ユーザが代表として指定したキャラクタを特定する情報が格納される。なお、ゲームの性質に応じて、人または動物等のキャラクタの代わりに、アイテム、建物などを示す情報をこの列に格納してもよい。
「最終ログイン時刻」列には、各アカウントが最後にログインした時刻を示す情報が格納される。
「メッセージ」列には、ユーザが設定したメッセージの文字列を示す情報が格納される。ユーザは、他のユーザへの挨拶、伝言、または自己紹介などをメッセージとして設定しておくことができる。挨拶の例としては、「よろしくお願いします」などが挙げられ、伝言の例としては、「レベル90以上の方、よろしくお願いします」などが挙げられる。例えば、後述するイベントにおいて自分に課されたミッションのクリアを委託する場合、そのミッションをクリア可能なユーザのレベルを指定する場合などに好適に使用され得る。なお、「メッセージ」列に情報が格納されていないアカウントがあってもよい。図3における空欄は、「メッセージ」列に情報が格納されていないことを示している。
なお、ユーザ情報133およびユーザ情報233は、ユーザ情報133に関連する他のユーザ情報を含むフレンド情報を含んでいてもよい。フレンド情報には、フレンドを構成する複数のユーザのユーザIDが含まれている。
例えば、ユーザAがユーザBをフレンド登録した場合、ユーザAのユーザ情報133には、ユーザBのユーザ情報133が含まれる。後述するイベントにおいて、ユーザに課せられたミッションの委託を行う場合、フレンド情報に含まれるユーザIDのユーザが委託先となり、受託するミッションは、フレンド情報に含まれるユーザIDのユーザが委託元となる。
(ゲーム情報132および232)
ゲーム情報132は、制御部110がゲームプログラム131を実行する際に参照するデータである。ゲーム情報232は、制御部210がゲームプログラム131を実行する際に参照するデータである。
ゲーム情報132およびゲーム情報232は、ゲームプログラム131に基づくゲームの進行状況に応じてクリア可能な複数のミッションをクリアするイベントに関連する情報を含んでいる。イベントに関する情報は、イベントにおいて課される各ミッションを識別するために付与されたミッションID、各ミッションの内容を表現する文字列、および各ミッションをクリアするための条件などを含んでいてもよい。また、イベントに関する情報は、マトリクス盤におけるマスのクリア状況と、ユーザに付与する報酬との対応関係を示す情報を含んでいてもよい。イベントに関する情報は、イベントにエントリーしたユーザのユーザ端末100に配信される。サーバ200から受信したミッションは、ゲーム情報132に記憶される。
ここで、イベントとは、マトリクス盤(図4の(B)参照)において、所定の配置の複数のマスがクリアされたことに応じて、ユーザに報酬を付与する、いわゆる「ビンゴ」を適用したビンゴイベントであってもよい。ユーザは、ゲームプログラム131に基づくゲームをプレイし、その進行状況に応じて、課されたミッションをクリアすることによって、クリアされたミッションに対応付けられたマスをクリアする。すなわち、ミッションのクリア状況は、マトリクス盤に含まれるマスのクリア状況として、ユーザに明確に認識される。このように、イベントでは、報酬を得るためにクリアすべき目標をユーザに明示することにより、ミッションをクリアすることに挑戦するユーザの意欲を継続させることができる。
図4は、ゲーム情報232のデータ構造の一例を示す図である。ユーザ情報233は、複数のミッションの内容およびクリア条件が、各ミッションのミッションIDに紐付けられた情報である。
例えば、ミッションIDがsa1のミッション(以下、ミッションsa1と記す)は、「1プレイでアイテムBを8コ使う」というものである。このミッションは、1回のゲームプレイにおいてアイテムBを8コ以上使用すればクリアすることができる。ミッションsa2は、「1プレイでスキルを3回使う」というものである。このミッションは、1回のゲームプレイにおいてスキルを3回以上使用すればクリアすることができる。
ミッション毎に難易度を示すインデックスが付与されており、イベントにおいてユーザに課されるミッションの難易度は、ユーザの、ゲームの進行度合いに応じて決定する構成であってもよい。例えば、ミッションsa1およびsa2は難易度が最も低く、難易度を示すインデックスは「1」が付与されており、ミッションsa22およびsa23の難易度は、ミッションsa1およびsa2よりも高く、難易度を示すインデックスは「2」が付与されている。
図示していないが、ミッションには、サブミッション(副ミッション)を規定回数クリアすることをクリア条件として規定されたミッション(主ミッション)も含まれ得る。このようなミッションでは、他のユーザと協力し合ってクリアすることが有効である。このようなミッションをユーザに課すことによって、ユーザ間の交流を活性化させることができる。
<サーバ200の機能的構成>
制御部210は、記憶部220に格納されたゲームプログラム131を実行することにより、サーバ200を統括的に制御する。例えば、制御部210は、ユーザ端末100に各種データおよびプログラム等を送信する。制御部210は、ゲーム情報もしくはユーザ情報の一部または全部をユーザ端末100から受信する。ゲームがマルチプレイゲームである場合には、制御部210は、ユーザ端末100からマルチプレイの同期の要求を受信して、同期のためのデータをユーザ端末100に送信してもよい。
制御部210は、ゲームプログラム131の記述に応じて、送受信部211、サーバ処理部212、およびデータ管理部213として機能する。制御部210は、実行するゲームの性質に応じて、ユーザ端末100におけるゲームの進行を支援するために、図示しないその他の機能ブロックとしても機能することができる。
送受信部211は各種データを送受信する。例えば、送受信部211は、ユーザ端末100からの各種データおよびプログラムの送信要求、マルチプレイの同期の要求、および同期のためのデータ等を受信する。また例えば、送受信部211は、サーバ処理部212からの指示に従って、ユーザ端末100に各種データおよびプログラムを送信する。
サーバ処理部212は、ゲームを提供するために必要な演算処理を行う。サーバ処理部212は、ユーザ端末100からの要求等に応じて、ゲームプログラム131に記述された演算処理を実行する。また例えば、サーバ処理部212は、ゲームの進行に係る各種判定処理を行う。
例えば、サーバ処理部212は、データ管理部213にゲーム情報132またはユーザ情報133のレコードの追加、更新、または削除を指示する。また例えば、サーバ処理部212は送受信部211に各種データまたはプログラムの送信を指示する。
データ管理部213は、記憶部220に格納されている各種データをサーバ処理部212の指示に従って管理する。例えば、データ管理部213は、サーバ処理部212からの指示に応じてゲーム情報132またはユーザ情報133のレコードを、追加、更新、または削除する。また例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲーム情報132およびユーザ情報133の少なくとも一方を記憶部220から読み出し、送受信部211を介しユーザ端末100に送信する。また例えば、データ管理部213は、サーバ処理部212からの指示に従って、ゲームプログラム131のうち、あるユーザ端末100で実行する分のプログラムを記憶部220から読み出し、送受信部211を介し該ユーザ端末100に送信する。
なお、制御部210は、ゲームがマルチプレイである場合、マルチプレイに係る同期処理を行ってもよい。制御部210は、送受信部211においてマルチプレイの同期の要求および同期のためのデータを受け取った場合、マルチプレイの同期処理を行う。制御部210は、送受信部211においてあるユーザ端末100から受信した同期のためのデータを、他のユーザのユーザ端末100に同期して送信する。これにより、複数のユーザ端末100の間の、ゲームに係る種々のデータを同期させることができる。なお、制御部210は、同期のタイミングおよび同期すべきデータをサーバ処理部212において判定してもよい。制御部210が以上の処理を行うことにより、サーバ200は、あるユーザ端末100において行われた入力操作によって引き起こされるゲーム内の作用または該作用の結果(スコア等)を、他のユーザ端末100において略リアルタイムで共有させることができる。
<ユーザ端末100の機能的構成>
制御部110は、記憶部120に格納されたゲームプログラム131を実行することにより、ユーザ端末100を統括的に制御する。例えば、制御部110は、ゲームプログラム131およびユーザの操作にしたがって、ゲームを進行させる。また、制御部110は、ゲームを進行させている間、必要に応じて、サーバ200と通信して、情報の送受信を行う。
制御部110は、ゲームプログラム131の記述に応じて、操作受付部111、ゲーム進行部112、画像生成部113、および表示制御部114として機能する。制御部110は、実行するゲームの性質に応じて、ゲームを進行させるために、図示しないその他の機能ブロックとしても機能することができる。
操作受付部111は、入力部151に対するユーザの入力操作を検知し受け付ける。操作受付部111は、タッチスクリーン15およびその他の入出力IF14を介したコンソールに対してユーザが及ぼした作用から、いかなる入力操作がなされたかを判別し、その結果を制御部110の各要素に出力する。例えば、操作受付部111は、入力部151に対する入力操作を受け付け、該入力操作の入力位置の座標を検出し、該入力操作の種類を特定する。操作受付部111は、入力操作の種類として、例えばタッチ操作、スライド操作、スワイプ操作、およびタップ操作等を特定する。また、操作受付部111は、連続して検知されていた入力が途切れると、タッチスクリーン15から接触入力が解除されたことを検知する。つまり、操作受付部111は、接触入力の開始、継続、および終了を検知する。換言すると、操作受付部111は、ユーザの入力操作の開始と、該入力操作の完了とを検知することができる。
ゲーム進行部112は、ゲームの進行に係る各種処理を実行する。例えば、ゲーム進行部112は、ゲームの進行に係る種々のパラメータの設定、演算処理、判定処理等を行う。また、ゲーム進行部112は、画像生成部113にゲーム画面の画像を生成させるよう指示する。ゲーム進行部112は、マトリクス盤生成部1121、ミッションクリア判定部1122、報酬付与部1123、および委託・受託管理部1124を含む。
(マトリクス盤生成部1121)
マトリクス盤生成部1121は、イベントにエントリーしたユーザに課されたミッションのクリア状況を示すために使用するマトリクス盤を生成する。マトリクス盤には、複数のマスが配列されている。各マスには、イベントにおいてユーザ毎に個別に課される複数のミッションのうちのいずれかが対応付けられている。
ここでは、マトリクス盤生成部1121によって生成されたマトリクス盤について、図4の(B)を用いて説明する。図4の(B)は、マトリクス盤の一例を示す図である。なお、図4の(B)には、縦5マス、横5マスの計25マスが配置されたマトリクス盤を例に挙げて説明するがこれに限定されない。例えば、マトリクス盤は、複数のマスが縦横に配置されていなくてもよく、所定の線上に各マスが配置されたものであってもよい。所定の線としては直線および曲線であってもよく、例えば、所定の図柄を構成する描線であってもよい。
マトリクス盤生成部1121は、ゲーム情報132から、複数のミッションを読み出して、各ミッションを、マトリクス盤に含まれるマスに対応付ける。マトリクス盤の各マスには互いに異なる記号または番号が付される。なお、マトリクス盤の各マスに付される番号として、各ミッションのミッションIDが用いられてもよい。例えば、図4の(B)に示すマトリクス盤において、マス「No.1」にはミッションsa1が対応付けられ、マス「No.22」にはミッションsa22が対応付けられていてもよい。
ゲーム情報132に格納されているミッションには、クリアすることが比較的容易なものから、クリアが困難なものまで含まれている。ミッションがユーザにとって過度に容易であれば、退屈なイベントとなりかねない。他方、ミッションがユーザにとって過度に困難であっても、イベントへの挑戦を継続する意欲を減退させてしまう可能性がある。
そこで、マトリクス盤生成部1121は、マトリクス盤を生成するために、ゲーム情報132から読み出すミッションの難易度を、ユーザの、ゲームの進行度合いに応じて決定する構成であってもよい。上記のように構成することにより、ゲームをプレイするユーザの上達レベルに適合した難易度のミッションを、ユーザに課すことができる。これにより、イベントの興趣性を維持し、ユーザにイベントへの挑戦を継続させることができる。
(ミッションクリア判定部1122)
ミッションクリア判定部1122は、イベントにおいてユーザに課されたミッションが、ユーザによってプレイされたゲームの進行状況においてクリアされたか否かを判定する。ミッションクリア判定部1122は、各ミッションがクリアされたか否かを判定するために、ゲーム132に記憶されている各ミッションのクリア条件と、ユーザによってプレイされたゲームの進行状況とを比較する。
また、ミッションクリア判定部1122は、ミッションがクリアされたと判定した場合、マトリクス盤におけるマスのクリア状況を更新する。すなわち、ミッションクリア判定部1122は、クリアされたミッションに対応するマスをクリア済に変更して、マトリクス盤を更新する。
例えば、図4の(A)に示すミッションsa1が課された状態において、ユーザがゲームをプレイする中でアイテムBが10コ使われた場合を例に挙げて説明する。この場合、ミッションクリア判定部1122は、ゲームにおいて使用されたアイテムBの数が、クリア条件である8コ以上であることに基づいて、ミッションsa1がクリアされたと判定する。
ミッションクリア判定部1122は、他のユーザに委託されたミッションが該他のユーザによってクリアされた旨の通知を受信したことに応じて、当該ミッションがクリアされたと判定してもよい。この判定は、他のユーザに対する委託がなされた時点から所定の時間(例えば、8時間)が経過した後に行われてもよい。
(報酬付与部1123)
報酬付与部1123は、イベントにおいて、ユーザに課せられた複数のミッションのうち、所定の2つ以上のミッションがクリアされたことに応じて報酬をユーザに付与する。より具体的には、報酬付与部1123は、ゲーム情報132を参照して、イベントにおいて課されたミッションに対応づけられたマスのクリア状況に対応する報酬を決定し、ユーザに付与する。所定の2つ以上のミッションとは、ミッションクリア判定部1122によって更新されたマトリクス盤において、所定の規則で配列する2つ以上のマスに対応付けられたミッションである。例えば、図4の(B)に示すマトリクス盤において、所定の規則で配列する2つ以上のマスは任意に設定され得る。例えば、所定の規則で配列する2つ以上のマスの例として、縦横の辺に平行な線、および対角線に沿って一列に配列する5つのマス、およびチェック柄のように、互いに頂点で接するように配列する複数のマスなどが挙げられる。
(委託・受託管理部1124)
委託・受託管理部1124は、イベントにおいて、ユーザに課されたミッション(以下、「自ミッション」と記す)を他のユーザに委託したり、他のユーザに課せられたミッション(以下、「他ミッション」と記す)を受託したりする処理を行う。
委託・受託管理部1124は、ミッションを委託する処理を検出したことに応じて、委託元のユーザID、委託するミッションのミッションID、および委託先として指定された他のユーザのユーザIDを対応付けた委託希望をサーバ200に送信する。一方、委託・受託管理部1124は、ミッションを受託する処理を検出したことに応じて、受託する旨をサーバ200に送信する。
また、委託・受託管理部1124は、ミッションのクリアを他のユーザに委託した時点から所定時間(例えば8時間)が経過するまでは次の委託を受け付けないように構成してもよい。委託した時点からの経過時間は、委託希望をサーバ200へ送信した時刻から委託・受託管理部1124が計測する構成でもよいし、受託希望を受け付けた時刻からサーバ200が計測する構成であってもよい。
なお、図2に示すサーバ200およびユーザ端末100の機能は一例にすぎない。サーバ200は、ユーザ端末100が備える機能の少なくとも一部を備えていてもよい。また、ユーザ端末100は、サーバ200が備える機能の少なくとも一部を備えていてもよい。さらに、ユーザ端末100およびサーバ200以外の他の装置をゲームシステム1の構成要素とし、該他の装置にゲームシステム1における処理の一部を実行させてもよい。すなわち、本実施形態においてゲームプログラムを実行するコンピュータは、ユーザ端末100、サーバ200、および他の装置の何れであってもよいし、これらの複数の装置の組み合わせにより実現されてもよい。
<ゲームの概要>
ゲームシステム1が実現するゲームのジャンルは特に限定されない。例えば、ゲームはパズルゲーム、クイズゲーム、RPG(ロールプレイングゲーム)、アドベンチャーゲーム、シューティングゲーム、シミュレーションゲーム、育成ゲーム、ならびに、アクションゲームなどであってもよい。また、ゲームシステム1が実現するゲームの題材も特に限定されない。例えば、ゲームはテニス、卓球、ドッジボール、野球、サッカーおよびホッケーなどのスポーツを題材としたゲームであってもよい。
また、ゲームシステム1は、特定のプレイ形態に限らず、あらゆるプレイ形態のゲームを実行するためのシステムであってもよい。例えば、単一のユーザによるシングルプレイゲーム、および、複数のユーザによるマルチプレイゲーム、また、マルチプレイゲームの中でも、複数のユーザが対戦する対戦ゲーム、および、複数のユーザが協力する協力プレイゲームなどであってもよい。
本実施形態に係るゲームは、少なくとも、ユーザの入力操作によって引き起こされるアクションの結果に応じて、あるパラメータが増減するゲームである。また、本実施形態に係るゲームは、このパラメータの値に応じて、ユーザのゲームにおける有利度合いが変化するゲームである。
入力操作に応じて引き起こされるアクションに関する各種演算処理は、ゲーム進行部112が実行する。アクションの内容は特に限定されない。また、アクションは、ユーザの入力操作によって直接的に引き起こされるものであってもよいし、間接的に引き起こされるものであってもよい。例えば、アクションとは、ユーザのタッチまたはフリック等の操作に応じた、ゲーム画面上のオブジェクトの移動である。また例えば、アクションとは、該オブジェクトの移動に起因して引き起こされる、他のオブジェクトの移動である。
パラメータの形式、すなわちパラメータのデータの型およびデータの示す内容は、特に限定されない。また、パラメータはゲーム画面に表示されるパラメータであっても良いし、ゲーム画面に表示されないマスクデータであってもよい。以降の説明では、ゲームシステム1がパズルゲームを実現する例について述べる。
例えば、パズルゲームは、ゲーム画面の少なくとも一部の領域をパズルの盤面として、該盤面に予め配置されたパズル要素(第1オブジェクト)を消去することで進行するゲームである。ユーザの入力操作に応じて、ゲーム進行部112は、盤面に更なるパズル要素(第2オブジェクト)を追加する。パズル要素が追加された際に、追加されたパズル要素が予め配置されていたパズル要素に作用するアクションが引き起こされる。具体的には、追加されたパズル要素によって、予め配置されたパズル要素同士、または該パズル要素と、追加されたパズル要素との位置関係が変わる。
パズル要素同士の位置関係が、特定の条件(第1条件)を満たす場合、ゲーム進行部112は、該条件を満たしたパズル要素を盤面から消去する。また、パズル要素同士が第1条件を満たす場合、ゲーム進行部112は、パズルゲームにおけるスコアを算出する。
本実施形態では、単一のユーザ端末100において実行されるパズルゲーム(シングルプレイ型パズルゲーム)が想定されている。この場合、シングルプレイ型パズルゲームをユーザ端末100において実行するために必要な情報のやりとりがユーザ端末100とサーバ200との間で行われる。
なお、本実施形態では、パズルゲームが2Dゲームである場合について説明する。しかしながら、パズルゲームは3Dゲームであってもよい。パズルゲームが3Dゲームである場合、上述の「盤面」はゲーム空間中の所定の空間領域に相当する。また、上述の「パズル要素」は、ゲーム空間に配置された立体のオブジェクトに相当する。その他の処理は、パズルゲームが3Dゲームである場合も同一であってよい。
<イベントの流れ:ミッションをユーザ自身がクリア>
以下、パズルゲームにおけるイベントの処理の流れについて、図7および図8に示す表示画面の具体例を、適宜参照しつつ、図5を用いて具体的に説明する。図5は、サーバ、および、イベントにエントリーしたユーザ端末が行う処理の流れの一例を示すシーケンス図である。
以下では、マトリクス盤において、所定の配置の複数のマスがクリアされたことに応じて、ユーザに報酬を付与する、いわゆる「ビンゴ」イベントを例に挙げて説明する。なお、図7〜図18には、ゲームを開始する前のメイン画面、およびイベント画面に表示される表示画面のうち、ゲームまたはイベントの盤面510のみを示す。以下では、ゲームの盤面510を「パズル画面」と記し、イベントの盤面510を「イベント画面」と記す。
ステップS101において、パズルゲームのゲームプログラム131を実行するユーザ端末100から、イベントへのエントリー要求が送信されると、サーバ200はイベントへのエントリーを受付ける(ステップS201)。エントリー要求には、ユーザ端末100のユーザのユーザIDが含まれていてもよい。
次に、サーバ200は、ユーザ端末100に対して、イベントにおいて使用するミッション、ミッションID、およびクリア条件などを配信する(ステップS202)。一方、ユーザ端末100は、サーバ200から、イベントにおいて使用するミッション、ミッションID、およびクリア条件などを受信する(ステップS102)。ユーザ端末100の制御部110は、受信したミッション、ミッションID、およびクリア条件などをゲーム情報132に格納する。
マトリクス盤生成部1121は、マス毎に異なる自ミッションが対応付けられているマトリクス盤を生成する(ステップS103)。具体的には、マトリクス盤生成部1121は、ゲーム情報132から、マトリクス盤を生成するために必要な数のミッションを読み出して、各ミッションを、マトリクス盤に含まれるマスに対応付けることにより、マトリクス盤を生成する。
続いて、イベント画面からパズルゲームを開始され、ユーザによるパズルゲームがプレイされる(ステップS104)。ミッションクリア判定部1122は、プレイされたゲームの進行状況において、ミッションがクリアされたか否かを判定する(ステップS105)。ミッションがクリアされた場合、ミッションクリア判定部1122は、クリアされたミッションに対応付けられたマスがクリアされたと判定し(ステップS106)、マトリクス盤554においてクリア済のマスを更新する。
次に、報酬付与部1123は、マスのクリア状況に応じてユーザに対し、報酬を付与する(ステップS107)。
(イベント画面におけるマトリクス盤554の表示)
ここでは、図5のステップS103において生成されたマトリクス盤554について図7を用いて説明する。図7の(A)は、ゲームのメイン画面からイベント画面へと移行するためのボタンの一例を示す図である。
図7の(A)に示すように、パズル画面の表示を開始する前のメイン画面には、イベント画面へと移行するためのボタン551が表示されている。表示制御部114は、ボタン551がタップされたことに応じて、図7の(B)に示すようなイベント画面を表示させる。イベント画面には、図7の(B)に示すように、マトリクス盤生成部1121によって生成されたマトリクス盤554が表示されている。なお、イベント画面には、マトリクス盤554の他に、スタートボタン552、おねがいボタン555、カードチェンジボタン556、および報酬ボタン557などが表示されていてもよい。ここで、「カードチェンジ」とは、マトリクス盤554の変更を意味している。これらのボタンについては後に説明する。
図7の(B)に示すイベント画面において、スタートボタン552がタップされたことに応じて、ユーザによるゲームプレイが開始される(図5のステップS104)。このとき、ゲーム進行部112は、マトリクス盤554に含まれるマスのいずれかに対応付けられたミッションをランダムに決定してもよい。あるいは、ゲーム進行部112はユーザによって選択されたマスに対応するミッションを、ユーザに課すミッションとして決定してもよい。この場合、マトリクス盤554に含まれるマスのうちの一部を、ユーザが選択可能なマスとして設定してもよい。例えば、図7の(B)に示すマトリクス盤554において、ユーザが選択可能なマス「No.2」、およびマス「No.23」などは、枠線が太く表示されている。
マトリクス盤生成部1121は、マトリクス盤554の中央に配置されるマス(例えば、図7の(B)におけるマス「No.5」)には、他のマスに対応付けられるミッションよりも難易度の低いミッションを対応付けてもよい。この場合、ゲーム進行部112は、マトリクス盤554が生成された後に、ユーザに最初に課すミッションとして、マトリクス盤554の中央のマスに対応付けられたミッションを選択してもよい。ユーザにマトリクス盤554の中央のマスを最初にクリアさせつつ、ミッションをクリアするためのガイダンスをユーザに提供してもよい。また、ユーザに、最初に中央のマスをクリアさせることによって、ビンゴイベントにおいて付与される報酬に対するユーザの期待感を高め、イベントへの挑戦を続けさせることが可能である。
なお、マトリクス盤生成部1121は、ビンゴイベントにおいて、マトリクス盤554の所定の数のマスがクリアされていれば、ユーザの要求に応じて新たなマトリクス盤554を生成する構成であってもよい。あるいは、マトリクス盤生成部1121は、ビンゴイベントにおいて、ユーザが達成したビンゴの数が所定数に到達していれば、ユーザの要求に応じて新たなマトリクス盤554を生成する構成であってもよい。このように構成すれば、ユーザの要求に応じて、新しいマトリクス盤554が過度に多数生成されることを回避することができる。ここで、新たなマトリクス盤554の生成要求は、カードチェンジボタン556がタップされることによって入力され得る。すなわち、マトリクス盤554を複数保有していないユーザによってカードチェンジボタン556がタップされた場合、上述の条件を満たしている場合に限り、マトリクス盤生成部1121は、マトリクス盤554を新たに生成する。なお、複数のマトリクス盤554を保有しているユーザによってカードチェンジボタン556がタップされた場合、マトリクス盤554が変更されてもよい。
なお、ビンゴとは、マトリクス盤554において、例えば、縦横の辺に平行な線、および対角線沿って一列に配列する5つのマスがすべてクリア済となった状態を意図している。ビンゴ数とは、一列に配列する5つのマスがすべてクリア済となった、縦横の辺に平行な線、および対角線の数である。マトリクス盤554の場合、縦の辺に平行な5列、横の辺に平行な5列、および対角線の2列の計12列がビンゴ対象である。マトリクス盤554の場合、縦の辺に平行な5列、横の辺に平行な5列、および対角線2列の計12列がビンゴ対象となり得る。
(ミッションのクリア、およびマトリクス盤554の更新)
ここでは、図5のステップS104〜S106におけるイベント画面について図8を用いて説明する。図8の(A)は、パズル画面の一例を示す図であり、(B)は、ミッションの達成結果を表示するイベント画面の一例を示す図であり、(C)は、マスのクリア状況が更新されたマトリクス盤554を表示するイベント画面の一例を示す図である。
図7の(B)に示すイベント画面において、スタートボタン552がユーザによって選択されると、ゲーム進行部112は、図8の(A)に示すようなパズルゲームのパズル画像を生成する。生成されたパズル画像は、表示部152に表示される。
以下、パズル画面について図8の(A)を用いて説明する。
ゲーム進行部112は、図8の(A)に示すパズル画面を表示させてから、実際にパズルゲームが開始されるまでの間に所定秒の期間を設けて、ユーザにプレイの開始を準備させる猶予を与えてもよい。この場合、パズル画面が表示されてから所定秒経過すると、ゲーム進行部112はステージを開始し、パズルゲームの進行に係る各種処理を行う。
図8の(A)に示すように、パズル画面には、パズル要素である風船512A〜Gが予め配置されている。例えば、図示のように5種類のキャラクタ入り風船512A〜Eが、ランダムに配置される。なお、パズル画面には、空の風船512Fおよびコイン入りの風船512Gがランダムに配置されていてもよい。また、風船512A〜Gの配置数は適宜定められてよい。コインを収集するミッションである場合、空の風船512Fから得られるコインは0である。
パズル画面は、風船512を配置するための領域とは異なる領域を含んでいてもよい。例えば、該異なる領域には、パズル画面における上方に示される天井513、および風船512の浮上を遮る障害物である中間障害物514が表示されていてもよい。また、異なる領域には、残り射出回数517、キャラクタ選択ボタン518、射出台519、スコア合計520、獲得コイン数521、および、スキルゲージ522などのオブジェクトが表示されていてもよい。
このパズルゲームは、盤面510に表示されている風船512に向けて射出風船を射出台519から射出して、風船512を割って消していくゲームである。ユーザは風船に入れるキャラクタを選択したり、スキルを使用したり、所持しているアイテムを使用したりしながら、パズルゲームをプレイする。パズルゲームをプレイすることによって、ユーザは、割れた風船からコインおよびキャラクタなどを落下させ、スコアを獲得していく。
風船512は、ゲーム画面の上方から下方へ風船を引っ張ろうとする仮想の重力に逆らう浮力を持ち、該浮力でゲーム画面上方へ浮上する性質を持つパズル要素である。図8の(A)に示すように風船512は、図示の通り膨らんでおり、パズル画面の上方に隙間があればその隙間を埋めるように浮上する。一方、後述するように風船が割れた場合、風船の中身、すなわちキャラクタまたはコインが、上述の仮想の重力にしたがってパズル画面の下方へ落下する。空の風船512Fは、中身が無いため割れた場合も何も落下しない。
キャラクタ入り風船は、パズル画面における位置関係が変わった場合に、同種の隣り合う風船同士で結合する性質を持つ。なお、空の風船512Fおよびコイン入り風船512Gは、該結合する性質を持たない。本実施形態では、結合後の風船は、風船の被膜が1つに繋がった状態で表示される。
本実施形態において、操作受付部111は、ユーザが風船を盤面に射出するための射出操作を受け付ける。射出操作は、例えば、ユーザがユーザ端末100の入力部151に対し行うドラッグ操作あるいはスライド操作である。以降、ユーザが盤面に向かって射出させる風船、および、射出後に盤面中を移動する風船を射出風船と称する。すなわち、射出風船とは、盤面に新たに追加される風船である。射出風船は、キャラクタ入りの風船である。射出風船に入っているキャラクタの種類は、盤面に配置されたキャラクタ入り風船に入っているキャラクタのいずれかである。射出風船の移動は、一例として、ドラッグ操作で選択されて、初期位置からずらされたキャラクタが、ずらされた後の現在位置からパズル画面に配置された風船512に向かって射出されることによって起こる。初期位置は、一例として、パズル画面の下方に設置された射出台519の上である。ずらされた後の現在位置は、一例として、上述のドラッグ操作によって最後に検出された接触位置である。射出操作は、ユーザが射出台519上の射出風船にタッチした際に開始され、該射出風船をドラッグ操作でずらした後にドロップ(リリース)操作を行ったときに完了する。換言すると、射出操作は、射出風船へのタッチダウンで開始し、該タッチダウンからタッチアップまでの間継続し、タッチアップによって完了する。
なお、本実施形態では、キャラクタ入り風船は、同種の風船が4個以上結合した場合、それぞれの風船が割れて中身のキャラクタが落下する。ここで、「同種の風船」とは、同じ種類のキャラクタが入った風船を意味する。換言すると、パズル画面において、キャラクタ入り風船は3つまでは結合した状態で浮上する。また、空の風船およびコイン入り風船512Gは、射出風船が接触した場合に割れる。コイン入り風船512Gは、割れると中身のコインが落下する。
なお、ゲーム進行部112は、風船の浮力と、風船にかかる重力とのどちらが強くなるように設定してもよいし、同じに設定してもよい。また、ゲーム進行部112は、結合した風船の数が多いほど、浮力または重力が大きくなるように設定してもよい。例えば、風船の浮力の方が大きい場合、該風船が割れてキャラクタが落下するときの落下軌道が、浮上形態のキャラクタで塞がれている場合は、キャラクタは風船に包まれていなくても、落下軌道を塞いでいる風船の浮力によって、盤面に残ることがあってもよい。反対に、重力の方が大きい場合、落下するキャラクタは、落下軌道が塞がれていても、風船を押しのけて、または風船を割りながら下方へ落下してもよい。
パズル画面には、射出風船とともに射出台519が表示される。また、ステージにおいてユーザが射出する風船の種類を選択可能な場合は、パズル画面には、射出する風船に入れるキャラクタを選択するキャラクタ選択ボタン518が表示されてもよい。また、パズル画面には、そのステージにおいて獲得されたスコアの合計を示すスコア合計520が表示されてもよい。また、パズル画面には、コイン入り風船を割って落下させたコインの枚数を示す獲得コイン数521が表示されてもよい。また、パズル画面には、キャラクタ毎のスキルゲージ522が表示されてもよい。スキルゲージ522が所定値以上溜まった状態でユーザによりスキルゲージ522がタッチされると、該ゲージに対応するキャラクタのスキルが発動する。
次に、ユーザが自分に課されたミッションの1つをクリアし、その結果、マトリクス盤554が更新される様子について、図8の(B)および(C)を用いて説明する。なお、ユーザは、「1プレイでスキルを3回使う」というミッション(図4のミッションsa2)が課された状況でパズルゲームをプレイしたものとする。
パズルゲームにおいて、ユーザがスキルを4回使った場合、ミッションクリア判定部1122は、ミッションのクリア条件である3回以上使用されたことに基づいて、該ミッションはクリアされたと判定する。また、ミッションクリア判定部1122は、クリアされたミッションに対応するマス「No.2」をクリア済と判定する。また、ミッションクリア判定部1122は、クリアされたミッション「No.2」に対応するマスをクリア済に変更して、マトリクス盤554を更新する。
図8の(B)に示すように、表示制御部114は、ミッションクリア判定部1122による判定結果に応じて、マス「No.2」のミッションがクリアされた旨をユーザに知らせる表示558をイベント画面に表示させる。また、表示制御部114は、図8の(C)に示すように、マス「No.2」が「クリア済」に更新されたマトリクス盤554をイベント画面に表示させる。
<イベントの流れ:ミッションのクリアを委託/受託>
以下、パズルゲームにおけるイベントの処理の流れの別の例について、図9〜18に示す表示画面の具体例を、適宜参照しつつ、図6を用いて具体的に説明する。図6は、サーバ、および、イベントにエントリーしたユーザ端末が行う処理の流れの別の一例を示すシーケンス図である。
なお、図6では、ユーザAはユーザ端末100aを用いてゲームをプレイし、ユーザBはユーザ端末100bを用いてゲームをプレイするものとする。したがってユーザ端末100aおよびユーザ端末100bはいずれも、図1に示すユーザ端末100に相当する。
また、ここではユーザAおよびユーザBの2人のユーザを例示的に示しているが、イベントにエントリーしているユーザであれば、その人数には制限されない。なお、以下ではユーザAおよびユーザBは、互いにフレンド登録されたユーザであってもよいし、なくてもよい。
図6では、ユーザAおよびBのそれぞれに課されたミッションを「自ミッション」と表記し、他のユーザから受託したミッションを「他ミッション」と表記している。
ステップS111およびS121において、パズルゲームのゲームプログラム131を実行するユーザ端末100aおよび100bから、イベントへのエントリー要求が送信されると、サーバ200はイベントへのエントリーを受付ける(ステップS201)。エントリー要求には、ユーザ端末100aおよび100bの各ユーザのユーザIDが含まれていてもよい。
次に、サーバ200は、ユーザ端末100に対して、イベントにおいて使用するミッション、ミッションID、およびクリア条件などを配信する(ステップS202)。一方、ユーザ端末100aおよび100bは、サーバ200から、イベントにおいて使用するミッション、ミッションID、およびクリア条件などを受信する(ステップS112およびS122)。ユーザ端末100aおよび100bの制御部110はそれぞれ、受信したミッション、ミッションID、およびクリア条件などをゲーム情報132に格納する。
ユーザ端末100aおよび100bのマトリクス盤生成部1121はそれぞれ、マス毎に異なる自ミッションが対応付けられているマトリクス盤554を生成する(ステップS113およびS123)。
ユーザ端末100aおよびユーザ端末100bのマトリクス盤生成部1121は、ユーザAおよびユーザBのそれぞれのゲームの進行度合いに適合した難易度のミッションを用いてマトリクス盤554を生成する。それゆえ、ユーザAに課されるミッションとユーザBに課されるミッションとが異なっていてもよい。また、ユーザ端末100aにおいて生成されるマトリクス盤554と、ユーザ端末100bにおいて生成されるマトリクス盤554とは異なっていてもよい。
(ミッションのクリアを委託)
本実施形態では、ユーザAが、自分に課されたミッションの中から、所望のミッションを選択して他のユーザに該ミッションのクリアを委託することができる。この場合、ユーザ端末100aからサーバ200にユーザAのユーザIDおよび委託するミッションのミッションIDが送信され、サーバ200は委託基部を受け付ける(ステップS203)。
図9の(A)は、ミッションのクリアを委託する場合のイベント画面の一例を示す図である。ここでは、ユーザAが、マス「No.22」に対応付けられたミッション「1プレイでアイテムAを8コ使う」を他のユーザに委託する場合を例に挙げる。
ユーザAが、マス「No.22」をタップすると、図9の(A)に示すように、メッセージ欄559が表示される。メッセージ欄559には、マス「No.22」のミッション、およびボタン559aが含まれていてもよい。ボタン559aは、他のユーザにミッションのクリアを委託するためのボタンである。なお、図9の(A)において、マス「No.22」のミッションを他のユーザに委託しない場合、ユーザAはスタートボタンをタップすればよい。
ユーザAによってボタン559aがタップされると、表示制御部114は、委託先の候補となる他のユーザの一覧560をイベント画面に表示させる。委託先の候補となるユーザとは、ユーザAによってフレンド登録されている他のユーザであってもよい。一覧560には他のユーザ名、イベントの進行具合(例えば、図中の「コンプリート枚数」)、最終ログイン時刻に関する表示の他に、ボタン561が含まれている。ボタン561は、該ボタン561が表示されているユーザを委託先として選択するためのボタンである。
ボタン561は、タップされる前には、「おねがいする」という文字列が示されており、タップされた後には、委託を受け付けたことを示す文字列に切り換わる構成であってもよい。図9の(B)には、ユーザAが委託先として「ばっち」を選択したときの例を示している。この場合、図6に示すユーザBのユーザ名は「ばっち」である。図9の(B)には、「ばっち」の欄のボタン561がタップされており、ミッションの委託希望が有効である所定時間のカウントダウンが開始されたことを示す「あと7時間」という表示に切り換わっている様子が示されている。委託・受託管理部1124は、ボタン559aがタップされて以降の処理を制御することによって、所望のミッションのクリアを他のユーザに委託する処理を行う(ステップS114)。
なお、ステップS114において、一度に他のユーザに委託できるミッションの数は所定数以下であり、前回、他のユーザに委託した時点から所定時間が経過するまでは次の委託ができない構成であってもよい。このように構成すれば、ユーザが、過度に委託に依存することを回避することができる。
ここで、完了ボタン561bがタップされると、図9の(C)に示すイベント画面に遷移し、マトリクス盤554の表示に戻る。図9の(C)に示すように、メッセージ欄562には、マス「No.22」に対応付けられたミッション「1プレイでアイテムAを8コ使う」を「ばっち」に委託する委託希望の処理が完了した旨を示す情報が表示される。
委託希望の処理が完了したミッションに対応付けられたマトリクス盤554のマス「No.22」には、委託中であることを示す表示を行う構成であってもよい。そのような表示の一例としては、当該マスに「おねがい中」、「委託中」、および「ばっちからの報告待ち」などの表示であってもよい。委託中のミッションをユーザがクリアすることはできない。
メッセージ欄562には、委託されたマス「No.22」のミッションの委託が完了した旨の情報の他に、ボタン562aが含まれていてもよい。ボタン562aは、委託希望を取り下げる(すなわち、キャンセルする)ためのボタンである。ボタン562aがタップされたことに応じて、委託・受託管理部1124は、マス「No.22」のミッションの委託を取り下げ、委託した時点からの経過時間の計測を中止する。なお、委託の取り下げをサーバ200に送信してもよいし、しなくてもよい。
サーバ200は、ユーザ端末100aを含む複数のユーザ端末100からの委託希望をまとめ、委託希望のミッションの一覧を作成する(ステップS204)。委託希望のミッションの一覧は、委託されたユーザに委託元のユーザID、および委託されたミッション、および委託希望が送信されてから経過した時間などを閲覧させるためのリストである。
委託先の「ばっち」が受託したミッションを、委託から所定時間が経過するまでにクリアした場合、ユーザ端末100aにミッションがクリアされた旨が、所定時間が経過したときに通知される(ステップS207)。この通知は、所定時間が経過した直後に送信されることが望ましい。これにより、ユーザAにミッションの委託が可能となったことを迅速に通知し、次の委託を促すことができる。委託・受託管理部1124は、委託から所定時間が経過する前に該通知を受信した場合、表示制御部114に指示し、ミッションが達成されたことを、当該ミッションを委託したユーザに通知する画面を表示させる。
図10は、ミッションを受託した他のユーザによってミッションが達成されたことを、当該ミッションを委託したユーザに通知する画面の一例を示す図である。図10に示すメッセージ欄563は、委託先のユーザ名「ばっち」、および委託したミッションが対応付けられたマスを示す「No.22」を含んでいる。なお、メッセージ欄563は、委託先の「ばっち」がミッションをクリアしたときにプレイしたゲームにおける結果に関する情報である「10コ」を含んでいてもよい。
図6に戻り、ミッションクリア判定部1122は、委託されたミッションが他のユーザによってクリアされた旨の通知を受信したことに応じて、当該ミッションがクリアされたと判定する(ステップS115)。その結果、ミッションクリア判定部1122は、図11に示すように、マス「No.22」をクリア済としてマトリクス盤554を更新する。
委託したミッションがクリアされたことは、所定時間が経過した後に判定される。しかし、委託したミッションがクリアされた場合に付与される報酬を早く獲得したい場合もあり得る。そこで、ステップS115において、所定時間が経過するまでにミッションが他のユーザによってクリアされた場合、所定の対価を支払ったユーザに対しては、所定時間が経過する前に、委託されたミッションがクリアされたと判定してもよい。これにより、ユーザは、ミッションが他のユーサによってクリアされたことによって付与される報酬を、早く獲得することができる。
続いて、報酬付与部1123は、所定の2つ以上のミッションがクリアされたことに応じて、ユーザAに報酬を付与する(ステップS116)。
(ミッションのクリアを受託)
本実施形態では、ユーザBが、他のユーザ(例えば、ユーザA)が委託したミッションの中から、所望のミッションを選択して、該ミッションのクリアを受託することができる(ステップS114)。以下では、ユーザBがユーザ端末100bを用いて他のユーザから委託されたミッションを受託してクリアする処理の流れについて図6を用いて説明する。
ユーザBは、ステップS204においてサーバ200が作成した委託希望のミッションのリストを参照し、受託するミッションを検索する(ステップS124)。
ユーザBが受託するミッションを決定すると(ステップS125)、サーバ200に対して受託連絡を送信する。サーバ200は、受託連絡を受信して(ステップS205)、該受託を受け付け、受託するミッションのミッションIDおよび該ミッションのクリア条件をユーザ端末200bに送信する(ステップS206)。
受託するミッションを検索してから、決定するまでの処理に関連するユーザ端末100bにおける表示画面について図12〜14を用いて説明する。
図12は、他のユーザからのミッションを受託することが可能である状態における、イベント画面の一例を示す図である。イベント画面には、おねがいボタン555が設けられている。おねがいボタン555がタップされた場合、表示制御部114は、他のユーザ(例えば、ユーザA)からユーザBへ委託されたミッション、すなわち、受託することが可能なミッションの一覧を表示させる。ユーザBは、この一覧を適宜参照し、他のユーザからの委託希望を検索することができる。
なお、表示制御部114は、ユーザ端末100bのおねがいボタン555には、受け付けた委託の数を示す表示555aが表示させてもよい。また、おねがいボタン555の近傍に、メッセージ欄555bを表示させる構成であってもよい。委託希望は所定時間を経過した後は失効してしまうため、委託されたミッションをユーザBにできるだけ早く知らせることが望ましい。そこで、表示制御部114は、表示555aおよびメッセージ欄555bを補助的に表示させることによって、委託希望をサーバ200が受け付けていることをユーザBに着実に伝えることができる。
図13の(A)は、受託することが可能なミッションの一覧564を表示する画面の一例を示す図である。一覧564は、ミッションを依頼したユーザのユーザ名、依頼されたミッション、および委託希望が失効するまでの残り時間などの情報を含んでいてもよい。図13の(A)に示す一覧564には、「こよーて」からの委託、および「たいち」からの委託が含まれている。
図13の(A)の一覧564において、「たいち」からの委託がタップされた場合、図13の(B)に示す画面に遷移する。メッセージ欄565は、受託処理についてユーザBに確認するためのものである。メッセージ欄565において、依頼元であるユーザのユーザIDを含むメッセージを表示させてもよい。メッセージ欄565に表示されるメッセージとしては、「おねがいを引き受けますか?」、「たいちからのおねがいを受託しますか?」、「たいちを選択しました。これでよろしいですか?」などであってもよい。
図12の(C)は、ミッションを受託していることを示す画面の一例を示す図である。ここでは、図12の(B)のメッセージ欄565において「はい」がタップされた場合を示している。図12の(B)のメッセージ欄565において「いいえ」がタップされた場合には、図12の(A)に示す一覧564を表示する画面に遷移する。
図14は、ミッションを受託している状態における、イベント画面の一例を示す図である。図14に示すイベント画面では、おねがいボタン555の代わりに、確認ボタン566が表示されている。そして、確認ボタン566の近傍には、受託したミッションに関する受託状況に関する情報を示すメッセージが表示されている。受託状況に関する情報としては、例えば、「お手伝い中」および「たいちからの委託を引き受け中」という受託中であること青示す情報であってもよい。また、「あと3時間」など、受託したミッションをクリアするまでに残された時間に関する情報を表示してもよい。
図6に戻り、ステップS126において、委託・受託管理部1124は、受託したミッションのミッションIDおよび該ミッションのクリア条件をサーバ200から受信する。なお、ユーザ端末100bのゲーム情報132において、ミッションIDにミッションのクリア条件が対応付けられている場合、ミッションIDのみをサーバ200から受信すればよい。
次にユーザBは、自分に課せられたミッション、および受託したミッションをクリアするために、パズルゲームをプレイする。まず、ミッションクリア判定部1122は、プレイしたゲームにおいて、ユーザBに課せられたミッションがクリアされたか否かを判定する(ステップS127)。図15の(A)は、図6のステップS127において、ユーザBに課せられたミッション(例えば、マス「No.28」)がクリアされた場合の画面の一例である。
次に、ミッションクリア判定部1122は、プレイした同ゲームにおいて、ユーザBが受託したミッションがクリアされたか否かを判定する(ステップS128)。メッセージ欄567には課されていたミッション、および該ミッションのクリア状況などが表示されている。そして、ミッションクリア判定部1122は、マス「No.28」をクリア済としてマトリクス盤554を更新する。
受託したミッションをクリアした場合、ミッションクリア判定部1122は、ユーザBに課せられたミッションのうち、少なくとも1つがクリアされたと判定する(ステップS129)。
受託したミッションが、マトリクス盤554のいずれかのマスに対応付けられているミッションのいずれとも異なる場合、ミッションクリア判定部1122は、クリア済になっていないマスをランダムに選択して、該マスをクリア済とする。他方、受託したミッションが、ユーザBのマトリクス盤554のいずれかのマスに対応付けられているミッションと同じであった場合、ミッションクリア判定部1122は、受託したミッションと同じミッション(第1の自ミッション)のマスをクリア済にするとともに、その他のクリア済になっていないマス(第2の自ミッション)をランダムに選択して、該マスをクリア済とする。すなわち、他のユーザのミッションを受託してクリアしたユーザBは、マトリクス盤554の2つのマスを一度にクリア済とする可能性を得ることになる。
報酬付与部1123は、所定の2つ以上のミッションがクリアされたことに応じて、ユーザBに報酬を付与する(ステップS130)。
図16は、所定の条件を満たす複数のミッションがクリアされた場合に、報酬が得られたことを表示する画面の一例である。図16に示す例では、ユーザBに付与された報酬のイメージ569、および報酬の名称および数を示す欄570などが表示され得る。報酬のイメージ569を表示することにより、所定の条件を満たす複数のミッションをクリアした結果として報酬を得たことに対する達成感および満足感を演出することができる。図16のボタン571をタップすると、図17に示すようなイベント画面に遷移する。受託したミッションをクリアしたため、図17に示すイベント画面では、確認ボタン566ではなく、おねがいボタン555が表示されている。
図18は、報酬リスト572を表示する画面の一例を示す図である。図17に示すイベント画面において、報酬ボタン557がタップされると、表示制御部114は、報酬リスト572を表示させる。報酬リスト572には、ボタン572aおよびボタン572bが含まれている。ボタン572aがタップされた場合、表示制御部114は、ユーザBが達成したビンゴ数と、ビンゴ数に応じて付与される報酬のリストが表示させる。
一方、ボタン572bがタップされた場合、表示制御部114は、ユーザBが達成したコンプリート数と、コンプリートした数に応じて付与される報酬のリストが表示させる。図18に示すような報酬リスト572をユーザに示すことによって、ユーザに対して、ミッションをクリアすることに挑戦する意義を明確に示すことができる。ここで、コンプリートとは、マトリクス盤554に含まれるすべてのマスがクリアされた状態を意図している。コンプリート数とは、すべてのマスがクリア済となったマトリクス盤554の枚数である。
なお、図5のステップS107、および図6のステップA116、およびステップS130において、達成したビンゴ数、およびコンプリートしたマトリクス盤554の数が増えるにつれて、ユーザにとって、より価値のある報酬を付与するように構成してもよい。達成したビンゴ数、およびコンプリート数は、ユーザの、イベントの進行具合を示しているといえる。このように構成すれば、イベントの進行具合に見合う報酬をユーザに付与することができる。よって、ユーザに、達成感を与えることができる。
このように、イベントにエントリーしているユーザに対して報酬リスト572を示すことにより、パズルゲームをプレイしてミッションをクリアすることへの動機づけを行うことができる。
ユーザに課された複数の自ミッションうち、所定の2つ以上の自ミッションがクリアされたことに応じて報酬を付与するゲームにおいて、ユーザが自分で自ミッションをクリアすることと並行して、他のユーザに課せられた他ミッションを受託してクリアすることにより、自ミッションのクリアを進めていくことができる。ユーザは、報酬を獲得するために、自分自身で自ミッションをクリアしてくことを促されるとともに、自ミッションのクリアをさらに進めるために、依頼された他ミッションをクリアするようにも促される。その結果、ユーザのゲームをプレイすることに対する動機付けを損なわずに、ユーザ間の交流を活性化させることができるという効果を奏する。
〔ソフトウェアによる実現例〕
ユーザ端末100およびサーバ200の制御ブロックは、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。
後者の場合、ユーザ端末100およびサーバ200は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するRAM(Random Access Memory)などをさらに備えていてもよい。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
〔付記事項〕
本発明の一側面に係る内容を列記すると、以下の通りである。
(項目1) プログラム(ゲームプログラム131)について説明した。本開示のある局面によると、プログラムは、プロセッサ(10、20)、およびメモリ(11、21)を備えるコンピュータにより実行されるプログラムである。プログラムは、プロセッサに、ゲームプログラムに基づくゲームの進行状況に応じてクリア可能なミッションである自ミッションをユーザに個別に複数課すステップ(S202)と、ユーザに課せられた複数の自ミッションのうち、所定の2つ以上の自ミッションがクリアされたことに応じて報酬を該ユーザに付与するステップ(S130)と、他のユーザに課せられたミッションである他ミッションをクリアすることをユーザが受託するステップ(S126)と、ユーザが受託した他ミッションが、ユーザによってクリアされた場合に、複数の自ミッションのうち少なくとも1つがクリアされたと判定するステップ(S129)と、を実行させる。
前記の構成によれば、ユーザに課された複数の自ミッションうち、所定の2つ以上の自ミッションがクリアされたことに応じて報酬を付与するゲームにおいて、ユーザが受託した他ミッションが、ユーザによってクリアされた場合に、複数の自ミッションのうち少なくとも1つがクリアされたと判定する。これにより、ユーザが自分で自ミッションをクリアすることと並行して、他ミッションを受託してクリアすることにより、自ミッションのクリアを進めていくことができる。すなわち、ユーザは、報酬を獲得するために、自分自身で自ミッションをクリアしてくことを促されるとともに、自ミッションのクリアをさらに進めるために、依頼された他ミッションをクリアするようにも促される。よって、ユーザのゲームをプレイすることに対する動機付けを損なわずに、ユーザ間の交流を活性化させることができるという効果を奏する。
(項目2) (項目1)において、ゲームプログラムは、プロセッサに、自ミッションのクリアを他のユーザに委託するステップ(S114)を、さらに実行させ、前記判定するステップにおいて、ユーザによって他のユーザに委託された自ミッションが、他のユーザによってクリアされた場合に、委託された自ミッションがクリアされたと判定(S115)してもよい。
これにより、他のユーザの協力を得て、ミッションをクリアすることができる、よって、ユーザ間の交流を活性化させることができる。
(項目3) (項目1)または(項目2)において、他ミッションをクリアしたユーザのゲームの進行状況が第1の自ミッションのクリア条件を満たした場合、第1の自ミッションがクリアされたと判定するとともに、第1の自ミッションとは別の第2の自ミッションがクリアされたと判定してもよい。
これにより、他ミッションを積極的に受託してクリアすることをユーザに促すことができる。よって、ユーザ間における委託と受託との連鎖を促進し、ユーザ間の交流を活性化させることができる。
(項目4) (項目1)から(項目3)までのいずれか1項目において、ユーザが他ミッションを受託した場合、該他ミッションを委託した他のユーザによって該他ミッションについての委託がキャンセルされた後も、ユーザが該他ミッションのクリアを受託したことは有効であり、前記判定するステップにおいて、ユーザによって該他ミッションがクリアされた場合に、複数の自ミッションのうち少なくとも1つがクリアされたと判定してもよい。
これにより、他ミッションの委託がキャンセルされても、受託した他ミッションをユーザがクリアしたことが無駄にならない。よって、ユーザは、委託および受託を円滑に活用することができる。
(項目5) (項目2)から(項目4)までのいずれか1項目において、ユーザによって自ミッションが委託された場合に、ユーザは、所定時間が経過するまで、委託された自ミッションをクリアできない構成であってもよい。
これにより、自ミッションを他のユーザにつぎつぎに委託することを回避することができる。よって、ゲームの難易度と快適さとのバランスを適切に維持することができる。
(項目6) (項目2)から(項目5)までのいずれか1項目において、前記委託するステップにおいて、一度に他のユーザに委託できる自ミッションの数は所定数以下であり、前回、他のユーザに委託した時点から所定時間が経過するまでは次の委託ができない構成であってもよい。
これにより、ユーザが、過度に委託に依存することを回避することができる。
(項目7) (項目6)において、前記判定するステップ(S115)において、所定時間が経過するまでに他のユーザによって自ミッションがクリアされた場合、所定時間が経過した後に、委託された該自ミッションがクリアされたと判定してもよい。
これにより、ユーザが、自ミッションをつぎつぎに委託することを回避することができる。
(項目8) (項目6)または(項目7)において、前記判定するステップ(S115)において、所定時間が経過するまでに自ミッションが他のユーザによってクリアされた場合、所定の対価を支払ったユーザに対しては、所定時間が経過する前に、委託された該自ミッションがクリアされたと判定してもよい。
委託したミッションがクリアされたことは、所定時間が経過した後に判定される。しかし、委託したミッションがクリアされた場合に付与される報酬を早く獲得したい場合もあり得る。前記の構成によれば、所定時間が経過する前に、委託された該自ミッションがクリアされたと判定する。これにより、ユーザは、ミッションがクリアされたときに付与される報酬を、早く獲得することができる。
(項目9) (項目6)から(項目8)までのいずれか1項目において、ゲームプログラムは、プロセッサに、所定時間が経過したときに、委託された自ミッションが他のユーザによってクリアされた旨をユーザに通知するステップ、をさらに実行させてもよい。
これにより、自ミッションを委託可能となったことをユーザに通知し、次の委託を促すことができる。
(項目10) (項目1)から(項目9)までのいずれか1項目において、自ミッションは、副ミッションがクリアされた回数が規定回数に到達することによってクリアされたと判定される主ミッションを含み、前記判定するステップにおいて、他のユーザによって副ミッションがクリアされた回数と、ユーザによって該副ミッションがクリアされた回数との合計が、規定回数に到達した場合、主ミッションがクリアされたと判定してもよい。
これにより、他のユーザと協力して1つの主ミッションをクリアすることができる。よって、ユーザ間の交流を活性化させることができる。
(項目11) (項目1)から(項目10)までのいずれか1項目において、複数のマスが配列されて成るマトリクス盤において、マス毎に互いに異なる自ミッションが対応付けられており、前記自ミッションをユーザに課すステップにおいて、ユーザ毎に異なるマトリクス盤を生成し、マトリクス盤に含まれるマスの各々に対応付けられる自ミッションの難易度は、ユーザの、ゲームの進行度合いに応じて決定され、前記報酬をユーザに付与するステップにおいて、自ミッションのクリア状況に対応する、マトリクス盤に含まれるマスのクリア状況に応じて、ユーザに対して所定の報酬を付与してもよい。
ミッションの難易度は、ユーザにとって適度であることが望ましい。上記のように構成することにより、ゲームをプレイするユーザのゲームの進行度合いに適合した難易度のミッションを、ユーザに課すことができる。上記の構成を適用することにより、ミッションのクリア状況に対応する、マトリクス盤に含まれるマスのクリア状況に応じた報酬をユーザに付与することができる。
また、上記の構成を適用することにより、ミッションのクリア状況は、マトリクス盤に含まれるマスのクリア状況として、ユーザに明確に認識させることができる。よって、報酬を得るためにクリアすべき目標をユーザに示し、ユーザの、ミッションをクリアすることに挑戦する意欲を継続させることができる。
(項目12) (項目11)において、前記報酬をユーザに付与するステップにおいて、マスがすべてクリアされたマトリクス盤の数に応じた報酬をユーザに付与してもよい。
すべてのマスをクリアしたマトリクス盤の数は、ユーザの、イベントの進行具合を示している。上記のように構成すれば、イベントの進行具合に見合う報酬を、ユーザに付与することができる。よって、報酬を得るためにクリアすべき目標をユーザに示し、ユーザの、ミッションをクリアすることに挑戦する意欲を継続させることができる。
プロセッサ(10、20)、およびメモリ(11、21)を備えるコンピュータがプログラム(ゲームプログラム131)を実行する方法について説明した。方法は、プロセッサが前記の(項目1)に記載の各ステップを実行する方法である。前記の構成によれば、(項目1)と同様の効果を奏する。
情報処理装置(ユーザ端末100)について説明した。情報処理装置は、(項目1)に記載のゲームプログラムを記憶するメモリ(11、21)と、該ゲームプログラムを実行することにより、情報処理装置の動作を制御するプロセッサと、を備えている。前記の構成によれば、(項目1)と同様の効果を奏する。