以下、本発明の実施形態を図面に基づいて説明する。
[1.ゲームシステムの構成]図1は本発明の実施形態に係るゲームシステムの構成を示す。図1に示すように、本実施形態に係るゲームシステム1はサーバ10と複数のゲーム端末30−1,・・・,30−Nとを含む。複数のゲーム端末30−1,・・・,30−Nはサーバ10とネットワークNを介して相互にデータ通信を行うことが可能である。また、複数のゲーム端末30−1,・・・,30−NはネットワークNを介して相互にデータ通信を行うことも可能である。以下では、ゲーム端末30−1,・・・,30−Nを総称して「ゲーム端末30」と記載する。
サーバ10は例えばサーバコンピュータである。サーバ10は制御部11、記憶部12、及び通信部13を含む。制御部11は少なくとも一つのマイクロプロセッサ(CPU)を含み、記憶部12に記憶されたプログラムに従って情報処理を実行する。記憶部12は、主記憶部(例えばRAM)及び補助記憶部(例えば、不揮発性の半導体メモリ、ハードディスクドライブ、又はソリッドステートドライブ)を含む。記憶部12はプログラムやデータを記憶するためのものである。通信部13は、ネットワークNを介して他の装置とデータ通信するためのものである。
サーバ10はデータベース14にアクセス可能である。データベース14はサーバ10内に構築されてもよいし、サーバ10とは別のサーバコンピュータ内に構築されてもよい。
ゲーム端末30は、ユーザがゲームをプレイするために使用するコンピュータである。例えば、ゲーム端末30は、携帯電話機(スマートフォンを含む)、携帯情報端末(タブレット型コンピュータを含む)、携帯用ゲーム機、家庭用ゲーム機(据置型ゲーム機)、業務用ゲーム機(遊戯施設等に設置されるゲーム機)、ラップトップ型コンピュータ、又はデスクトップ型コンピュータである。なお、複数のゲーム端末30−1,・・・,30−Nは同じ種類のコンピュータでなくてもよく、異なる種類のコンピュータが複数のゲーム端末30−1,・・・,30−Nに含まれていてもよい。
ゲーム端末30は制御部31、記憶部32、通信部33、操作部34、表示部35、音声出力部36、及び振動発生部37を含む。制御部31、記憶部32、及び通信部33はサーバ10の制御部11、記憶部12、及び通信部13と同様である。
操作部34は、ユーザが各種操作を行うためのものである。表示部35は各種画面画像を表示するためのものであり、例えば液晶ディスプレイ又は有機ELディスプレイ等である。図1では操作部34と表示部35とが別個に示されているが、操作部34と表示部35とはタッチパネルとして一体的に形成されてもよい。操作部34は、マウス等のポインティングデバイス、ボタン(キー)、又はレバー(スティック)等であってもよい。また、操作部34は、ユーザが音声又はジェスチャによって操作を行うためのものであってもよい。音声出力部36は音声データを出力するためのものであり、例えばスピーカ又はヘッドホン等である。操作部34、表示部35、及び音声出力部36はゲーム端末30自体に設けられてもよいし、ゲーム端末30に接続された外部装置として設けられてもよい。
振動発生部37はゲーム端末30において振動を発生させるためのものであり、例えば振動モータ等である。例えば、携帯電話機(スマートフォン)、携帯情報端末(タブレット型コンピュータ)、又は携帯用ゲーム機では、これらに内蔵される振動モータが振動発生部37に相当する。また例えば、家庭用ゲーム機(据置型ゲーム機)、ラップトップ型コンピュータ、デスクトップ型コンピュータでは、これらに接続されるゲームコントローラ(ゲームパッド)に内蔵される振動モータが振動発生部37に相当する。
プログラムやデータはネットワークNを介して遠隔地からサーバ10又はゲーム端末30に供給されて、記憶部12又は記憶部32に記憶される。なお、情報記憶媒体(例えば光ディスク又はメモリカード等)に記憶されたプログラムやデータを読み取るための構成要素(例えば光ディスクドライブ又はメモリーカードスロット等)がサーバ10又はゲーム端末30に備えられてもよい。そして、プログラムやデータが情報記憶媒体を介してサーバ10又はゲーム端末30に供給されてもよい。
以下では、ゲームシステム1の一例として、複数のゲーム端末30−1,・・・,30−Nの各々が、タッチパネルを備えたスマートフォン又はタブレット型コンピュータである場合について説明する。
[2.ゲームの概要]ゲームシステム1では各種ゲームを実行可能である。例えば、複数のユーザが参加するゲームがゲームシステム1で実行される。
ここで、「複数のユーザが参加するゲーム」とは、複数のユーザが対戦するゲームである。具体的には、ユーザが他のユーザと対局を行う麻雀ゲーム、将棋ゲーム、囲碁ゲーム、又はチェスゲーム等が「複数のユーザが対戦するゲーム」の一例に相当する。また、ユーザが他のユーザと試合を行うサッカーゲーム又は野球ゲーム等のスポーツゲームも「複数のユーザが対戦するゲーム」の一例に相当する。
また、「複数のユーザが参加するゲーム」とは、複数のユーザが協力して共通のゲーム目標を達成することを目指すゲームであってもよい。具体的には、複数のユーザが同じチームを操作して対戦相手チームとの試合に勝利することを目指すスポーツゲーム(サッカーゲーム又は野球ゲーム等)が「複数のユーザが協力して共通のゲーム目標を達成することを目指すゲーム」の一例に相当する。また、複数のユーザがグループ(パーティ、チーム、ギルド等)を形成して敵と戦い、敵を退治したり、敵に勝利したりすることを目指すゲームも「複数のユーザが協力して共通のゲーム目標を達成することを目指すゲーム」の一例に相当する。
以下では、ゲームシステム1で実行されるゲームの一例として、4名のユーザが参加して対局を行うことが可能な麻雀ゲームについて説明する。麻雀ゲームは、2名又は3名のユーザが参加して対局を行うことが可能なものであってもよい。
[2−1]麻雀ゲームは、現実の麻雀と同様に、麻雀における最小単位である「局」が繰り返し実行されることによって進行していく。なお、配牌から、いずれかの者が和了するまで、又は、いずれの者も和了できずに流局になるまでの期間が一つの「局」である。
図2は、ゲーム端末30の表示部35に表示される麻雀ゲームの対局画像の一例を示す。なお図2は、ユーザU1,U2,U3,U4が対局している場合にユーザU1のゲーム端末30の表示部35に表示される対局画像G10を示す。
図2に示すように、対局画像G10は麻雀卓を模した画像である。対局画像G10は、ユーザU1の手牌を示す要素P101や、対戦相手であるユーザU2〜U4の各々の手牌を示す要素P102−1,P102−2,P102−3を含む。
個々の局では、ユーザU1〜U4の各々のターンが順番に繰り返される。すなわち、摸打(自摸及び打牌)を行う摸打機会がユーザU1〜U4の各々に対して順番に繰り返し与えられる。なお、ユーザU1の摸打機会では、自摸牌がユーザU1の手牌に加えられてから制限時間(例えば5秒間)が経過するまでにユーザU1が打牌を行わないと、自動的に自摸牌が打牌される。ユーザU2〜U4の摸打機会も同様である。
図2に示す対局画像G10は、ユーザU1の摸打機会における対局画像G10を示しており、制限時間が経過するまでの残り時間(図2に示す例では2秒)を示す要素P103を含む。
ユーザU1が立直、チー、ポン、カン、又は和了を行うことが可能な状態になると、立直、チー、ポン、カン、又は和了を行うことが可能な機会がユーザU1に与えられる。図3は、ユーザU1がポンを行うことが可能なポン機会における対局画像G10の一例を示す。
図3に示す対局画像G10は、立直、チー、ポン、カン、又は和了を行うためのメニューを示す要素P104を含む。要素P104は立直ボタン、チーボタン、ポンボタン、カンボタン、及び和了ボタンを含む。なお、図3はユーザU1がポンを行うことが可能な機会を示すため、ポンボタン以外のボタンに斜線が付されており、それらのボタンを選択できない状態になっている。
また、図3に示す対局画像G10は、ポン機会をパスする(ポンを行わない)ための要素P105(パスボタン)を含む。ユーザU1は、ポンを行う場合に要素P104内のポンボタンを選択し、ポンを行わない場合に要素P105を選択する。ユーザU1のポン機会では、他のユーザによって打牌されてから制限時間(例えば5秒間)が経過するまでにユーザU1がポンボタンを選択しないと、自動的にポン機会がパスされる。図3に示す対局画像G10は、この制限時間が経過するまでの残り時間(図3に示す例では2秒)を示す要素P106を含む。
[2−2]以上に説明した麻雀ゲームでは、ユーザが眠ってしまうと、ユーザの摸打機会では、他のユーザの状況(捨牌や立直等)が一切考慮されることなく、自摸牌が打牌されるため、対局自体の興趣が損なわれてしまう。また、ユーザの摸打機会が回ってくるごとに、他のユーザは制限時間が経過するのを待たなければならなくなるため、対局が緩慢になったり(対局のテンポが悪くなったり)、対局の終了までにかかる時間が長くなってしまったりする。この点、麻雀ゲームは上記課題を解決するための機能を備える。
図4は上記機能について説明するための図であり、上記課題を解決するために対局中に実行される処理の概要を示す。以下に説明するように、麻雀ゲームでは、各ユーザについて、対局中に眠ってしまったか否かを判定し、いずれかのユーザが眠ってしまったと判定された場合にそれに対処するようになっている。以下では、ユーザU1が眠ってしまったか否かを判定する場合や、ユーザU1が眠ってしまったらそれに対処する場合を例として、上記機能について説明するが、ユーザU2〜U4についても同様の処理が実行される。
図4に示すように、麻雀ゲームでは、ユーザU1のゲーム操作機会においてユーザU1によって操作が行われたか否かを判定する(S10)。
ここで、「ユーザU1のゲーム操作機会」とは、ユーザU1がゲーム操作を行うことが可能な機会である。例えば、ユーザU1が摸打、ポン、チー、カン、又は和了を行うことが可能な機会が「ユーザU1のゲーム操作機会」に相当する。すなわち、ユーザU1の摸打機会、ポン機会、チー機会、カン機会、又は和了機会が「ユーザU1のゲーム操作機会」に相当する。
また、「操作」とは、ゲーム操作機会でユーザU1が行うべき操作(ゲーム操作)に限られず、単にタッチパネルをタッチするような操作であってもよい。すなわち、「操作」とは、打牌操作(捨牌を選択して打牌を行う操作)、ポン操作(ポンボタンを選択する操作)、チー操作(チーボタンを選択する操作)、カン操作(カンボタンを選択する操作)、及び和了操作(和了ボタンを選択する操作)に限られず、単にタッチパネルのいずれかの位置をタッチするような操作であってもよい。なお、「操作」は、ゲーム操作機会でユーザU1が行うべき操作(ゲーム操作)に限ってもよい。
ユーザU1によって操作が行われることなく、制限時間(例えば5秒)が経過し、自動的に、摸打機会における打牌やポン機会、チー機会、カン機会、又は和了機会のパスが行われた場合には、ユーザU1のゲーム操作機会においてユーザU1によって操作が行われなかったと判定される。
ユーザU1のゲーム操作機会(以下「ゲーム操作機会A」と呼ぶ。)においてユーザU1によって操作が行われなかったと判定された場合、ゲーム操作機会Aの次のユーザU1のゲーム操作機会(以下「ゲーム操作機会B」と呼ぶ。)においてユーザU1によって操作が行われたか否かを判定する(S20)。
ゲーム操作機会Aの後、ユーザU1のポン機会、チー機会、カン機会、又は和了機会が生じることなく、ユーザU1の摸打機会が回ってきた場合、当該摸打機会が「ゲーム操作機会B」に相当する。一方、ゲーム操作機会Aの後、ユーザU1の摸打機会が回ってくる前に、ユーザU1のポン機会、チー機会、カン機会、又は和了機会が生じた場合、当該機会が「ゲーム操作機会B」に相当する。
ゲーム操作機会BにおいてユーザU1によって操作が行われなかったと判定された場合、ゲーム操作機会Bの次のユーザU1のゲーム操作機会(以下「ゲーム操作機会C」と呼ぶ。)においてユーザU1によって操作が行われたか否かを判定する(S30)。
ゲーム操作機会Bの後、ユーザU1のポン機会、チー機会、カン機会、又は和了機会が生じることなく、ユーザU1の摸打機会が回ってきた場合、当該摸打機会が「ゲーム操作機会C」に相当する。一方、ゲーム操作機会Bの後、ユーザU1の摸打機会が回ってくる前に、ユーザU1のポン機会、チー機会、カン機会、又は和了機会が生じた場合、当該機会が「ゲーム操作機会C」に相当する。
ゲーム操作機会CにおいてユーザU1によって操作が行われなかったと判定された場合とは、ユーザU1のゲーム操作機会でユーザU1によって操作が行われなかったとの判定結果が3回連続して得られた場合である。すなわち、自動打牌又は自動パスの自動動作が3回連続して行われた場合である。このような場合、ユーザU1が眠ってしまったとみなし、ユーザU1を眠りから覚まさせるための制御を実行する(S40)。
例えば、ユーザU1を眠りから覚まさせるために、ユーザU1のゲーム端末30で振動を発生させたり、目覚まし音声を出力させたりする。なお、ユーザU1のゲーム端末30における出力音量を上げてもよい。または、ユーザU1のゲーム端末30の画面の輝度を上げてもよい。あるいは、ユーザU1のゲーム端末30の画面を点滅させてもよい。なお、ユーザU1のゲーム端末30が発光部を備えるのであれば、当該発光部を発光させてもよい。
そして、ステップS40が実行された直後のユーザU1のゲーム操作機会(以下「ゲーム操作機会D」と呼ぶ。)においてユーザU1によって操作が行われたか否かを判定する(S50)。
例えば、ステップS40の実行後、ユーザU1のポン機会、チー機会、カン機会、又は和了機会が生じることなく、ユーザU1の摸打機会が回ってきた場合、当該摸打機会が「ゲーム操作機会D」に相当する。一方、ステップS40の実行後、ユーザU1の摸打機会が回ってくる前に、ユーザU1のポン機会、チー機会、カン機会、又は和了機会が生じた場合、当該機会が「ゲーム操作機会D」に相当する。
ゲーム操作機会DにおいてユーザU1によって操作が行われなかったと判定された場合、ユーザU1を眠りから覚まさせるための制御を行ったにもかかわらず、ユーザU1を眠りから覚まさせることができなかったとみなし、ユーザU1の代わりにコンピュータに麻雀ゲームのプレイ(対局)を代行させる(S60)。
図5は、コンピュータがユーザU1の代わりにプレイしている場合にユーザU1のゲーム端末30で表示される対局画像G10の一例を示す。図5に示す対局画像G10は、コンピュータによる代行プレイ中であることを示す要素P107(代行メッセージ)を含む。また、図5に示す対局画像G10は、コンピュータによる代行プレイを中止してユーザU1によるプレイを再開するための要素P108(代行中止ボタン)も含む。コンピュータによる代行プレイが行われている間も、ユーザU1を眠りから覚まさせるための制御は続行する。ユーザU1は眠りから覚めた場合に、要素P107によって、コンピュータによる代行プレイが行われていることを把握でき、要素P108によって、コンピュータによる代行プレイを中止して麻雀ゲームのプレイを再開できる。
なお、コンピュータがユーザU1の代わりにプレイしている場合には、その旨がユーザU2〜U4の各々に通知される。例えば、コンピュータがユーザU1の代わりにプレイしていることを示す要素(メッセージ等)が、ユーザU2〜U4の各々のゲーム端末30における対局画像G10に表示される。このため、ユーザU2〜U4はコンピュータがユーザU1の代わりに対局を行っていることを把握できる。コンピュータがユーザU1の代わりにプレイしている場合には、ユーザU1自身がプレイしている場合と比較して、麻雀の打ち方が変わる。コンピュータがユーザU1の代わりにプレイしていることをユーザU2〜U4に通知しないと、ユーザU1自身がプレイしていないにも関わらず、ユーザU2〜U4はユーザU1の麻雀の打ち方や癖を考慮してプレイしてしまうため、不利になってしまうが、上記通知を行うようにすれば、このような不公平が生じないようになる。
以上のように、麻雀ゲームでは、例えば、ユーザU1が対局中に眠ってしまったか否かが判定される。また、ユーザU1が対局中に眠ってしまった場合には、ユーザU1を眠りから覚まさせるための制御が実行される。さらに、ユーザU1を眠りから覚まさせることができなかった場合にはユーザU1の代わりにコンピュータが対局を行う。その結果、ユーザU1が対局中に眠ってしまったとしても、ユーザU2〜U4にとって対局自体の興趣が損なわれてしまわないように図ることができる。また、対局が緩慢になったり(対局のテンポが悪くなったり)、対局の終了までにかかる時間が長くなってしまったりしないように図ることができる。
以上では、麻雀ゲームについて説明したが、先述の通り、麻雀ゲーム以外のゲーム(例えばサッカーゲーム等)をゲームシステム1で実行することも可能である。例えばサッカーゲームでは、試合中において、ユーザによって操作が行われない状態が所定時間にわたって継続した場合に、当該ユーザが眠ってしまったとみなし、当該ユーザを眠りから覚まさせるための制御を行うようにしてもよい。また、当該ユーザを眠りから覚まさせることができなかった場合には、当該ユーザの代わりにコンピュータにゲームのプレイを代行させるようにしてもよい。
[2−3]上記課題を解決するための機能は以上に説明した態様に限られない。以下、変形例について説明する。
[2−3−1]例えば、ゲーム操作機会においてユーザU1によって操作が行われなかったとの判定結果が3回連続して得られた場合に、ユーザU1を眠りから覚まさせるための制御を実行していたが、上記回数は「3回」でなくてもよい。例えば、4回以上にしてもよいし、2回にしてもよい。
[2−3−2]また例えば、図4に示す処理の代わりに図6に示す処理を実行してもよい。
図6に示す処理はステップS22,S24を含む点で図4に示す処理と異なる。すなわち、図6に示す処理では、ゲーム操作機会BにおいてユーザU1によって操作が行われなかったと判定された場合(S20:No)、ユーザU1に眠っていないか否かを問い合わせる(S22)。図7は、この場合にユーザU1のゲーム端末30で表示される対局画像G10の一例を示す。図7に示す対局画像G10は、ユーザU1が眠っていないか否かを問い合わせるための要素P109(問い合わせメッセージ)や、眠っていないとの応答を行うための要素P110(応答ボタン)を含む。
ステップS22の実行後、ユーザU1から応答があったか否かを判定する(S24)。例えば、要素P110が選択された場合にはユーザU1から応答があったと判定される。一方、要素P110が選択されなかった場合にはユーザU1から応答がなかったと判定される。ユーザU1から応答があった場合には、ユーザU1は眠っていないことになるため、ステップS30を実行せずに、ステップS10に戻る。一方、ユーザU1から応答がなかった場合にはステップS30を実行する。なお、要素P110を表示せずに、タッチパネルのいずれかの位置をタッチするようにユーザU1に要求してもよい。この場合、タッチパネルのいずれかの位置がタッチされたら、ユーザU1からの応答があったと判定するようにしてもよい。
このようにすれば、ユーザU1が対局中に眠ってしまった可能性が高い場合に、ユーザU1が眠っていないか否かをユーザU1自身に確認した上で、ユーザU1を眠りから覚まさせるための制御を実行できる。ユーザU1が眠っていないことの確認がとれた場合には、ユーザU1を眠りから覚まさせるための制御を実行しないようにできる。
[2−3−3]また例えば、コンピュータがユーザの代わりにプレイする場合には、ゲームキャラクタがユーザの代わりにプレイするようにしてもよい。
例えば麻雀ゲームでは、現実世界における複数のプロ雀士にそれぞれ対応する複数のゲームキャラクタである複数の雀士キャラクタが用意される。例えば、プロ雀士Aをキャラクタ化した雀士キャラクタA、プロ雀士Bをキャラクタ化した雀士キャラクタB、プロ雀士Cをキャラクタ化した雀士キャラクタCや、プロ雀士Dをキャラクタ化した雀士キャラクタD等が用意される。
また麻雀ゲームでは、上記複数の雀士キャラクタのうちの少なくとも1つがユーザに付与される。例えば、ユーザは所定のアイテム(例えば抽選券)を使用することによって、雀士キャラクタの抽選を行うことができ、抽選によって複数の雀士キャラクタのうちのいずれかがユーザに付与される。また例えば、ユーザに抽選の機会を1日に1回与え、抽選によって複数の雀士キャラクタのうちのうちのいずれかが付与されるようにしてもよい。以下では、ユーザU1がプロ雀士A,C,Dに対応する雀士キャラクタA,C,Dを所有している場合を想定する。
ユーザU1の所有する雀士キャラクタA,C,Dの各々には、親密度パラメータ及びレベルパラメータが関連付けられる。親密度パラメータはユーザU1と雀士キャラクタとの間の親密度を示す。なお、親密度パラメータはユーザU1のゲームプレイ内容に基づいて増加し、雀士キャラクタの親密度パラメータが、段階的に設定された複数の所定値(例えば10,50,100,150,・・・等)のいずれかに達するごとに、当該雀士キャラクタのレベルパラメータが1つ上がる。このため、親密度パラメータはいわゆる「経験値」としての役割も有している。
ユーザU1は自らの所有している雀士キャラクタのうちのいずれかをパートナーとして設定する。図8及び図9は、ユーザU1が自らの所有している雀士キャラクタのうちのいずれかをパートナーとして設定する際にユーザU1のゲーム端末30の表示部35に表示される画像の一例を示す。
図8は雀士キャラクタ一覧画像の一例を示す。図8に示す雀士キャラクタ一覧画像G20は、ユーザU1の所有している雀士キャラクタの一覧を示す。図8に示す例では、要素P201,P202,P203が雀士キャラクタ一覧画像G20に含まれている。要素P201は雀士キャラクタAに対応する。図8では省略しているが、実際には雀士キャラクタAのサムネイル画像が要素P201に描かれる。同様に、要素P202は雀士キャラクタCに対応し、要素P203は雀士キャラクタDに対応する。
ユーザU1は要素P201,P202,P203のいずれかを選択することによって、自らの所有している雀士キャラクタA,C,Dのうちのいずれかを選択する。いずれかの雀士キャラクタが選択されると、選択された雀士キャラクタに関する情報を示す雀士キャラクタ情報画像が表示部35に表示される。
図9は雀士キャラクタ情報画像の一例を示す。図9に示す雀士キャラクタ情報画像G30は、雀士キャラクタ一覧画像G20で雀士キャラクタAが選択された場合を示す。図9に示す例では、要素P301,P302,P303,P304,P305,P306が雀士キャラクタ情報画像G30に含まれている。なお、図9では省略しているが、実際の雀士キャラクタ情報画像G30には、雀士キャラクタ一覧画像G20で選択された雀士キャラクタの画像も描かれる。
要素P301は雀士キャラクタの名称を示す。要素P302は雀士キャラクタの親密度パラメータ及びレベルパラメータを示す。先述のように、雀士キャラクタの親密度パラメータが、段階的に設定された複数の所定値(例えば10,50,100,150,・・・等)のいずれかまで増加すると、雀士キャラクタのレベルパラメータが1つ上がる。この点、要素P302は、親密度パラメータが現在値からどれだけ増加するとレベルパラメータが上がるのかについても示す。図9に示す例では、親密度パラメータが4ポイント増加するとレベルパラメータが1つ上がることが示されている。
要素P303は、雀士キャラクタ一覧画像G20に戻るためのものである。要素P303がユーザによって選択されると、雀士キャラクタ情報画像G30から雀士キャラクタ一覧画像G20に遷移し、雀士キャラクタ一覧画像G20が表示部35に表示される。
要素P304は、雀士キャラクタ情報画像G30に表示されている雀士キャラクタをパートナーとして設定するためのものである。図9に示す例では、雀士キャラクタAが雀士キャラクタ情報画像G30に表示されているため、要素P304がユーザU1によって選択された場合、雀士キャラクタAがパートナーとして設定される。なお、雀士キャラクタA以外の他の雀士キャラクタがパートナーとして設定されている状態で要素P304が選択された場合には、当該他の雀士キャラクタがパートナーからはずれ、その代わりに、雀士キャラクタAがパートナーとして設定される。
なお、対局画像G10には、パートナーとして選定されている雀士キャラクタを表示してもよい。例えば手が進んだ(シャンテン数が減った)ことをユーザU1に伝える等、ユーザU1を補助する役割をパートナーとして選定されている雀士キャラクタが果たしてもよい。
ユーザU1はパートナーとして設定されている雀士キャラクタのパラメータを更新できる。例えば、ユーザU1は雀士キャラクタAをパートナーとして設定することによって、後述するように、雀士キャラクタAの親密度パラメータ及びレベルパラメータを上げることができる。
要素P305,P306は、パートナーとして設定されている雀士キャラクタの親密度パラメータ及びレベルパラメータを上げるためのものである。
ユーザU1は図9に示す雀士キャラクタ情報画像G30の要素P305を選択することによって、雀士キャラクタAに対して、ユーザU1の所有している他の雀士キャラクタを合成できる。雀士キャラクタAに対して他の雀士キャラクタが合成されると、当該他の雀士キャラクタがユーザの所有している雀士キャラクタのリストから削除されるのと引き替えにして、雀士キャラクタAの親密度パラメータが増加する。また、この際、親密度パラメータが所定値に達すると、雀士キャラクタAのレベルパラメータが1つ上がる。
また、ユーザU1が図9に示す雀士キャラクタ情報画像G30の要素P306を選択することによって、雀士キャラクタAにプレゼントアイテムを与えることができる。雀士キャラクタAに対してプレゼントアイテムが与えられると、当該プレゼントアイテムを消費するのと引き替えにして、雀士キャラクタAの親密度パラメータが増加する。また、この際、親密度パラメータが所定値に達すると、雀士キャラクタAのレベルパラメータが1つ上がる。
ユーザU1が麻雀ゲームをプレイした場合(すなわち、ユーザU1が他のユーザ又はコンピュータと対局した場合)にも、パートナーとして設定されている雀士キャラクタの親密度パラメータが増加するようにしてもよい。また、この際、親密度パラメータが所定値に達すると、パートナーとして設定されている雀士キャラクタのレベルパラメータが1つ上がるようにしてもよい。
コンピュータがユーザU1の代わりにプレイする場合には(図4参照)、ユーザU1の所有する雀士キャラクタのいずれかがユーザU1の代わりに対局を行うようにしてもよい。例えば、ユーザU1のパートナーとして設定されている雀士キャラクタがユーザU1の代わりに対局を行うようにしてもよいし、ユーザU1の所有する雀士キャラクタのうちで、レベルパラメータ(又は親密度パラメータ)の最も高い雀士キャラクタがユーザU1の代わりに対局を行うようにしてもよい。この際、麻雀の打ち方(アルゴリズムやAI等)は雀士キャラクタによらず同じとしてもよいし、麻雀の打ち方が雀士キャラクタごとに異なるようにしてもよいし、レベルパラメータや親密度パラメータによって異なるようにしてもよい。
[2−3−4]また例えば、対局するユーザのマッチングを行う際に、ユーザが対局中に眠ってしまう傾向があるか否かを考慮するようにしてもよい。具体的には、対局中に眠ってしまったと判定された回数又は頻度を示す情報をユーザごとに保存しておき、対局を行うユーザの組み合わせを決定する際に当該情報を考慮するようにしてもよい。例えば、対局中に眠ってしまう傾向のあるユーザ(対局中に眠ってしまったと判定された回数又は頻度の多いユーザ)を、対局中に眠ってしまう傾向のないユーザ(対局中に眠ってしまったと判定された回数又は頻度の少ないユーザ)と対局させないようにしてもよい。言い換えれば、対局中に眠ってしまう傾向のあるユーザに関しては、同じく対局中に眠ってしまう傾向のあるユーザのみと対局させるようにしてもよい。対局中にユーザが眠ってしまうと、他のユーザにとってゲームの興趣が損なわれてしまうが、以上のようにすれば、対局中に眠ってしまう傾向のないユーザが上記のような不都合を被ることがないように図ることが可能になる。なお、対局を行うユーザの組み合わせを決定する際には、直近の所定期間(例えば直近3ヶ月)の情報のみを考慮してもよい。このようにすることによって、以前は対局中に眠ってしまう傾向があったが、最近は対局中に眠ってしまう傾向がなくなったユーザが他のユーザと制限なく対局できるようにしてもよい。
[2−4]なお以上では、ゲーム操作機会においてユーザによって操作が行われなかった場合にユーザが眠ってしまった可能性があるとみなすようになっていたが、ゲーム操作機会においてユーザによって操作が行われなかった場合には、ユーザが眠ってしまった場合に限られず、ユーザの意識が麻雀ゲームの対局以外のこと(例えばテレビ番組、ラジオ番組、又は家族や友人との会話等)に向けられてしまった可能性もある。この点、以上に説明した機能によれば、このような場合にも、ユーザの意識を麻雀ゲームの対局に戻すことができる。
[3.機能ブロック]次に、以上のような機能を実現するための構成について説明する。図10はゲームシステム1で実現される機能ブロックの一例を示す。
[3−1]図10に示すように、ゲームシステム1はデータ記憶部100を含む。例えば、データ記憶部100は記憶部12とデータベース14との少なくとも一方によって実現される。
データ記憶部100は、ゲームを実行するために必要な各種データを記憶する。図11〜図13はデータ記憶部100に記憶されるデータの一例を示す。なお、図11〜図13は、先述の麻雀ゲームを実行するためにデータ記憶部100に記憶されるデータの一例を示す。
[3−1−1]図11はユーザテーブルの一例を示す。図11に示すように、ユーザテーブルTBL101は、ゲームシステム1の各ユーザに関する情報を示すデータである。ユーザテーブルTBL101は「ユーザID」、「ユーザ名」、「メールアドレス」、「段位」、「所属リーグ」、及び「プレイ履歴」フィールドを含む。
「ユーザID」フィールドは、ユーザを一意に識別する識別情報を示す。「ユーザ名」及び「メールアドレス」フィールドはユーザの名前及びメールアドレスを示す。ゲームシステム1ではユーザの戦績に応じてユーザに段位が付与されるようになっており、「段位」フィールドはユーザの段位を示す。またゲームシステム1ではユーザが自らの段位に応じて複数のリーグのうちのいずれかに所属できるようになっており、「所属リーグ」フィールドはユーザの所属するリーグを示す。「プレイ履歴」フィールドはユーザのプレイ履歴を示す。
[3−1−2]図12は雀士キャラクタテーブルTBL102の一例を示す。雀士キャラクタテーブルTBL102は、ゲームシステム1で用意されている雀士キャラクタのリストを示すデータである。雀士キャラクタテーブルTBL102は「雀士キャラクタID」、「雀士キャラクタ名」、「プロ雀士」、及び「画像」フィールドを含む。
「雀士キャラクタID」フィールドは、ゲームシステム1で用意されている雀士キャラクタを一意に識別する識別情報を示す。「雀士キャラクタ名」フィールドは、雀士キャラクタの名前を示す。「プロ雀士」フィールドは、雀士キャラクタと関連付けられているプロ雀士を示す。「画像」フィールドは、雀士キャラクタの画像を示す。
[3−1−3]図13は所有雀士キャラクタテーブルTBL103の一例を示す。例えば、所有雀士キャラクタテーブルTBL103は各ユーザのユーザIDに関連付けて記憶され、各ユーザの所有している雀士キャラクタのリストを示す。所有雀士キャラクタテーブルTBL103は「シリアル番号」、「雀士キャラクタID」、「親密度」、「レベル」、及び「パートナーフラグ」フィールドを含む。
「シリアル番号」フィールドは、各ユーザの所有する雀士キャラクタを一意に識別する識別情報を示し、「雀士キャラクタID」フィールドは、雀士キャラクタの雀士キャラクタIDを示す。例えば、一人のユーザが複数の同一種類の雀士キャラクタを所有する場合があるが、この場合、これら雀士キャラクタの雀士キャラクタIDは同一であり、シリアル番号が異なる。同様に、複数のユーザが同一種類の雀士キャラクタを所有する場合もあるが、この場合も、それら雀士キャラクタの雀士キャラクタIDは同一であり、シリアル番号が異なる。
「親密度」フィールドは雀士キャラクタの親密度パラメータの値を示し、「レベル」フィールドは雀士キャラクタのレベルパラメータの値を示す。「パートナーフラグ」フィールドは、雀士キャラクタがパートナーとして設定されているか否かを示す。例えば、雀士キャラクタがパートナーとして設定されていない場合には値「0」が「パートナーフラグ」フィールドに設定され、雀士キャラクタがパートナーとして設定されている場合には値「1」が「パートナーフラグ」フィールドに設定される。
[3−2]また図10に示すように、ゲームシステム1は参加ユーザ決定部110を含む。例えば、参加ユーザ決定部110はサーバ10で実現される。すなわち、制御部11がプログラムに従って処理を実行することによって、制御部11がこれらの機能ブロックとして機能する。
参加ユーザ決定部110はゲームに参加する複数のユーザの組み合わせを決定する。複数のユーザが対戦するゲームの場合であれば、参加ユーザ決定部110は、対戦するユーザの組み合わせを決定する。また、複数のユーザが協力して共通のゲーム目標を達成することを目指すゲームの場合であれば、参加ユーザ決定部110は、協力して共通のゲーム目標の達成を目指すユーザの組み合わせを決定する。
先述の麻雀ゲームの場合であれば、参加ユーザ決定部110は、各ユーザの段位又は所属リーグに基づいて、対局を行うユーザの組み合わせを決定する。例えば、参加ユーザ決定部110は、対局を行うユーザの組み合わせとして、同じ段位を有する又は同じ所属リーグに属する4名のユーザを決定する。
[3−3]また図10に示すように、ゲームシステム1は判定部120、制御実行部130、代行制御実行部140、及び代行中止部150を含む。これらの機能ブロックはゲームの実行中に機能する機能ブロックであり、これらの機能ブロックはサーバ10又はゲーム端末30で実現される。
例えば、複数のユーザが参加するゲームがピアツーピア方式で実行される場合、上記の機能ブロックはマスター装置(ゲーム制御装置)で実現される。ここで、「マスター装置」とは、ゲームサーバとしての役割を担い、他のゲーム端末30(スレーブ装置)を制御するゲーム端末30である。複数のユーザが参加するゲームがピアツーピア方式で実行される場合には、複数のユーザがそれぞれ使用する複数のゲーム端末30のうちのいずれかがマスター装置として選出され、他のゲーム端末30がスレーブ装置として設定され、マスター装置と各スレーブ装置との間でデータ通信を行うことによってゲームが実行される。例えば、マスター装置は、各スレーブ装置で行われた操作に関するデータを各スレーブ装置から受信し、マスター装置で行われた操作と、各スレーブ装置で行われた操作とに基づいて、ゲームの現在の状況を更新し、更新された状況を示すデータを各スレーブ装置に送信する。マスター装置がこのような役割を果たすことによって、複数のユーザのゲーム端末30の間でゲームの現在の状況が共有(共通化)される。このような場合、マスター装置の制御部31がプログラムに従って処理を実行することによって、制御部31が上記の機能ブロックとして機能する。
また例えば、複数のユーザが参加するゲームがクライアント/サーバ方式で実行される場合、上記の機能ブロックはサーバ10(ゲーム制御装置)で実現される。複数のユーザが参加するゲームがクライアント/サーバ方式で実行される場合には、サーバ10が、各ゲーム端末30で行われた操作に関するデータを各ゲーム端末30から受信し、各ゲーム端末30で行われた操作に基づいて、ゲームの現在の状況を更新し、更新された状況を示すデータを各ゲーム端末30に送信する。クライアント/サーバ方式では、このようにして、複数のユーザのゲーム端末30の間でゲームの現在の状況が共有(共通化)される。このような場合、サーバ10の制御部11がプログラムに従って処理を実行することによって、制御部11が上記の機能ブロックとして機能する。
[3−3−1]判定部120は、ゲームの実行中において、ユーザがゲーム操作を行うことが可能なゲーム操作期間内に、ユーザによって操作が行われない状態が所定期間にわたって継続したか否かを判定する。例えば、判定部120は、ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したか否かを判定する。
ここで、「ゲームの実行中」とは、ゲームのプレイ中と言い換えることができる。すなわち、「ゲームの実行中」とは、ゲーム目標の達成を目指してゲームを遊んでいる最中と言い換えることができる。なお、「ゲーム目標」とは、ゲームにおいてユーザが達成すべき目標であり、ゲームの内容に応じて設定される。例えば、対戦(対局)に勝利すること、特定の敵を倒すことや、ユーザ又はユーザの分身たるキャラクタ(主人公キャラクタ)のレベルを上げること等が「ゲーム目標」の一例に相当する。
「ゲーム操作期間」とは、ユーザがゲーム操作を行うことが可能な期間である。言い換えれば、ユーザによるゲーム操作が受け付けられる期間である。例えば、麻雀ゲーム、将棋ゲーム、囲碁ゲーム、又はトレーディングカードゲームのように、ユーザ及び対戦相手のターンが順番に繰り返し行われるゲームの場合、ユーザのターンが「ゲーム操作期間」の一例に相当する。なお、麻雀ゲームの場合、ユーザのターン(打牌を行うことが可能な期間)だけでなく、他のユーザの捨牌を使用してポン、チー、カン(ミンカン)を行うことが可能な期間も「ゲーム操作期間」の一例に相当する。また例えば、サッカーゲームの場合、試合の開始から終了までの期間が「ゲーム操作期間」の一例に相当する。なお、サッカーゲームの場合、試合開始前において、ユーザが試合に出場する選手キャラクタを選択したり、サッカーチームの戦術(フォーメーション等)を設定したりする期間も「ゲーム操作期間」の一例に相当する。
「ゲーム操作」とは、ゲーム上意味のある操作である。言い換えれば、「ゲーム操作」とは、ゲームの進行に影響を与える操作である。例えば、麻雀ゲームの場合、ユーザのターンにおいて、手牌のうちからいずれかの牌をタッチすることによって打牌することや、他のユーザの捨牌を使用してポン、チー、カン(ミンカン)を行うことが可能な場面でタッチパネルの所定位置をタッチすることによってポン、チー、カン(ミンカン)を行うことが「ゲーム操作」の一例に相当する。一方、ユーザのターンにおいて、手牌以外の領域(すなわち、タッチしても何も起きない領域)をタッチすることが「ゲーム操作以外の操作」の一例に相当する。また例えば、サッカーゲームの場合、試合中において選手キャラクタに所望の動作を行わせる操作や、試合開始前において、ユーザが試合に出場する選手キャラクタを選択したり、サッカーチームの戦術(フォーメーション等)を設定したりする操作が「ゲーム操作」の一例に相当する。
「ユーザによって操作が行われない状態」との記載のうちの「操作」は、ゲーム操作に限定しなくてもよいし、ゲーム操作に限定してもよい。
例えば、「ユーザによって操作が行われない状態」とは、操作部に対する操作が行われない状態である。「操作部」とは、ユーザが操作を行うためのものである。言い換えれば、ユーザの操作を受け付けるためのものである。例えば、タッチパネル、ボタン、キー、レバー、マウス、トラックパッド等が「操作部」の一例に相当する。また例えば、装置本体又はコントローラ本体を傾けたり、移動させたりことによって操作を行うような場合には、装置本体又はコントローラ本体も「操作部」の一例に相当する。
例えば、操作部がタッチパネルである場合、タッチパネルがタッチされていない状態が「ユーザによって操作が行われない状態」の一例に相当する。また例えば、操作部がボタン又はキーである場合、ボタン又はキーが押下されていない状態が「ユーザによって操作が行われない状態」の一例に相当する。また例えば、操作部が装置本体又はコントローラ本体である場合、装置本体又はコントローラ本体の傾き又は位置の変化が全くない又はほとんどない状態が「ユーザによって操作が行われない状態」の一例に相当する。
なお、「ユーザによって操作が行われない状態」とは、ゲーム操作が行われない状態であってもよい。すなわち、何らかの操作が行われた場合であっても、その操作がゲーム操作でなければ、「ユーザによって操作が行われない状態」であると判定するようにしてもよい。
「所定期間」とは、ゲーム操作期間全体であってもよいし、ゲーム操作期間の一部であってもよい。「ゲーム操作期間の一部」とは、ゲーム操作期間が開始されてから所定時間が経過するまでの期間であってもよいし、ゲーム操作期間内の途中の所定時間の期間であってもよい。例えば、麻雀ゲームの場合、ユーザの一つのターンが「所定期間」の一例に相当する。また例えば、サッカーゲームの場合、試合中の所定時間(例えば1分間等)が「所定期間」の一例に相当する。
「ユーザによって操作が行われない状態がゲーム操作期間にわたって継続した」場合とは、ゲーム操作期間が開始されてから終了するまでの間、ユーザによって操作が行われなかった場合である。
先述の麻雀ゲームの場合、摸打機会、ポン機会、チー機会、カン機会、又は和了機会等のゲーム操作機会が開始されてから終了するまでの期間が「ゲーム操作期間」に相当する。また、図4又は図6のステップS10,S20,S30における判定が判定部120による判定に相当する。すなわち、判定部120は、ユーザU1のゲーム操作機会(摸打機会、ポン機会、チー機会、カン機会、又は和了機会等)においてユーザU1によって操作が行われたか否かを判定する。ユーザU1によって操作が行われることなく制限時間が経過してゲーム操作機会が終了した場合に、判定部120は、ユーザU1のゲーム操作機会においてユーザU1によって操作が行われなかったと判定する。すなわち、判定部120は、ユーザU1によって操作が行われない状態がゲーム操作期間にわたって継続したと判定する。
[3−3−2]制御実行部130は、判定部120の判定結果に基づいて、ユーザの意識がゲームに向いた状態に戻すための制御を実行する。
「判定結果に基づいて制御を実行する」とは、制御を実行するか否かを判定結果に基づいて決定することである。すなわち、「判定結果に基づいて制御を実行する」とは、ユーザによって操作が行われない状態が所定期間にわたって継続したと判定された場合に制御を実行することである。例えば、「判定結果に基づいて制御を実行する」とは、ユーザによって操作が行われない状態が所定期間にわたって継続したと判定されることが所定回数連続した場合に制御を実行することである。
「ユーザの意識がゲームに向いた状態に戻すための制御を実行する」とは、ゲーム端末30自身が、ユーザの意識がゲームに向いた状態に戻すための処理を実行することである。または、ユーザの意識がゲームに向いた状態に戻すための処理を実行させるための指示をゲーム端末30に対して送信することによって、ユーザの意識がゲームに向いた状態に戻すための処理をゲーム端末30に実行させることであってもよい。
「ユーザの意識がゲームに向いた状態に戻すための制御」とは、「ユーザの意識がゲームから離れている状態」から「ユーザの意識がゲームに向いた状態」へと戻すための制御である。
「ユーザの意識がゲームから離れている状態」とは、ユーザがゲーム操作(ゲームプレイ)を行わない状態と言い換えることができる。このため、「ユーザの意識がゲームに向いた状態に戻すための制御」とは、ユーザをゲーム操作(ゲームプレイ)に復帰させるための制御(ユーザがゲーム操作(ゲームプレイ)を行う状態に戻すための制御)である。
「ユーザの意識がゲームから離れている状態」とは、ユーザがゲーム画面を見ていない状態と言い換えることもできる。このため、「ユーザの意識がゲームに向いた状態に戻すための制御」とは、ユーザがゲーム画面を見る状態に戻すための制御である。
例えば、「ユーザの意識がゲームから離れている状態」とは、ユーザが眠っている状態である。すなわち、「ユーザの意識がゲームに向いた状態に戻すための制御」とは、ユーザを眠りから覚まさせるための制御を含む。
また例えば、「ユーザの意識がゲームから離れている状態」とは、ユーザの意識がゲーム以外のことに向けられている状態である。すなわち、「ユーザの意識がゲームに向いた状態に戻すための制御」とは、ユーザの意識がゲーム以外のことに向けられている状態から、ユーザの意識がゲームに向いた状態へと戻すための制御を含む。
「ユーザの意識がゲームに向いた状態に戻すための制御」は、例えば下記のような制御のうちの少なくとも一つを含む。
・ユーザが操作を行うために使用する操作部34を振動させる制御
・所定の音声を音声出力部36から出力させる制御
・音声出力部36から出力される音声の音量を上げる制御
・画面の輝度を上げる制御
・画面を点滅させる制御
・発光部を発光させる制御
「ユーザが操作を行うために使用する操作部34を振動させる制御」とは、ユーザの意識がゲームに向いた状態に戻すのに十分な強さで操作部34を振動させる制御である。例えば、操作部34を振動させる振動発生部37を直接制御することによって、操作部34を振動させることである。また例えば、振動発生部37を備えたゲーム端末30に対して、操作部34を振動させるように指示する指示を送信することによって、操作部34を振動させることであってもよい。
「所定の音声を音声出力部36から出力させる制御」とは、ユーザの意識がゲームに向いた状態に戻すための所定の音声を音声出力部36から出力させる制御である。例えば、音声出力部36を直接制御することによって、ユーザの意識がゲームに向いた状態に戻すための音声を音声出力部36から出力させることである。また例えば、音声出力部36を備えたゲーム端末30に対して、ユーザの意識がゲームに向いた状態に戻すための音声を音声出力部36から出力させるように指示する指示を送信することによって、ユーザの意識がゲームに向いた状態に戻すための音声を音声出力部36から出力させることであってもよい。
「音声」は、人間の声を予め録音したものであってもよいし、人間の声を模して生成されたものであってもよいし、単なる音であってもよい。例えば、「起きて下さい」や「あなたの番ですよ」等のようなものであってもよいし、時計の目覚まし音や携帯電話の着信音のようなものであってもよい。また、「所定の音声」は、ユーザの意識がゲームに向いた状態に戻すために予め用意された専用の音声であってもよいし、ゲーム中に出力されるゲーム音声のうちから予め選択された音声であってもよい。すなわち、ゲーム中に使用される音声のうちの、ユーザの意識がゲームに向けられる状態に戻すのに適した音声であってもよい。なお、「ゲーム音声」とは、ゲームの進行に応じて出力される音声である。言い換えれば、ゲームが所定の状況になった場合に出力される音声である。
「音声出力部36から出力される音声の音量を上げる制御」とは、音声出力部36から出力されるBGM等の音量をユーザの意識がゲームに向いた状態に戻すのに十分な音量まで上げる制御である。例えば、音声出力部36を直接制御することによって、音声出力部36から出力される音声の音量を上げることである。また例えば、音声出力部36を備えたゲーム端末30に対して、音声出力部36から出力される音声の音量を上げるように指示する指示を送信することによって、音声出力部36から出力される音声の音量を上げることであってもよい。
「画面の輝度を上げる制御」とは、ユーザの意識がゲームに向いた状態に戻すのに十分な輝度まで画面の輝度を上げる制御である。例えば、表示部35を直接制御することによって、画面の輝度を上げることである。また例えば、表示部35を備えたゲーム端末30に対して、画面の輝度を上げるように指示する指示を送信することによって、画面の輝度を上げることであってもよい。
「画面を点滅させる制御」とは、ユーザの意識がゲームに向いた状態に戻すのに十分な程度で画面を点滅させる制御である。例えば、表示部35を直接制御することによって、画面を点滅させることである。また例えば、表示部35を備えたゲーム端末30に対して、画面を点滅させるように指示する指示を送信することによって、画面を点滅させることであってもよい。
「発光部を発光させる制御」とは、ユーザの意識がゲームに向いた状態に戻すのに十分な程度で発光部を発光(点滅を含む)させる制御である。例えば、発光部を直接制御することによって、発光部を発光させることである。また例えば、発光部を備えたゲーム端末30に対して、発光部を発光させるように指示する指示を送信することによって、発光部を発光させることであってもよい。なお、「発光部」とは、制御部31による制御に従って発光するものである。「発光部」はゲーム端末30本体に設けられていてもよいし、ゲーム端末30と有線接続又は無線接続された外部装置であってもよい。
ゲーム操作期間が繰り返し設けられるゲームでは、制御実行部130は、ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したと判定部120によって判定されることが所定回数連続した場合に、上記制御を実行するようにしてもよい。
ここで、「ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したと判定部120によって判定されることが所定回数連続した場合」とは、ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したとの判定結果が連続して所定数回のゲーム操作期間で得られた場合である。先述の麻雀ゲームの場合、ユーザのゲーム操作機会と、当該ユーザの次のゲーム操作機会と、当該ユーザのさらに次のゲーム操作機会とが、連続した3回のゲーム操作期間に相当する。
先述の麻雀ゲームの場合、図4又は図6のステップS40における制御が制御実行部130による制御に相当する。すなわち、ユーザU1のゲーム操作機会(摸打機会、ポン機会、チー機会、カン機会、又は和了機会等)においてユーザU1によって操作が行われなかったとの判定結果が判定部120によって3回連続して得られた場合に、制御実行部130はユーザU1を眠りから覚まさせるための制御を実行する。
[3−3−3]代行制御実行部140は、ユーザの代わりにゲームのプレイをコンピュータに代行させるための制御を実行する。例えば、制御実行部130による制御が実行された後においても判定部120による判定が行われる。代行制御実行部140は、制御実行部130による制御が実行された後の判定部120の判定結果に基づいて、ユーザの代わりにゲームのプレイをコンピュータに代行させるための制御を実行する。
ここで、「ユーザの代わりにゲームのプレイをコンピュータが代行する」とは、例えば、麻雀ゲームの場合、打牌する牌の選択や、チー、ポン、カン、又は立直を行うか否かの選択をユーザの代わりにコンピュータが行うことである。また例えば、サッカーゲームの場合、選手キャラクタに動作を行わせるための操作をユーザの代わりにコンピュータが行うことである。
「ユーザの代わりにゲームのプレイをコンピュータが代行するための制御を実行する」とは、例えば、ユーザの代わりにゲームのプレイを代行することである。または、ユーザの代わりにゲームのプレイを代行するように指示する指示をゲーム端末30に対して送信することによって、ユーザの代わりにゲームのプレイをゲーム端末30に代行させることである。
「制御実行部130による制御が実行された後の判定部120の判定結果に基づいて、ユーザの代わりにゲームのプレイをコンピュータが代行するための制御を実行する」とは、ユーザの代わりにゲームのプレイをコンピュータが代行するための制御を実行するか否かを、ユーザの意識がゲームに向いた状態に戻すための制御が実行された後の判定部120の判定結果に基づいて決定することである。
先述の麻雀ゲームの場合、図4又は図6のステップS50における判定が、制御実行部130による制御が実行された後の判定部120による判定に相当する。また、図4又は図6のステップS60における制御が、代行制御実行部140による制御に相当する。すなわち、ユーザU1に対して制御実行部130による制御が実行された直後のユーザU1のゲーム操作機会においてユーザU1によって操作が行われなかった場合に、代行制御実行部140は、ユーザU1の代わりにコンピュータがゲームのプレイを代行するための制御を実行する。
[3−3−4]代行中止部150は、コンピュータによる代行が行われている状態でユーザによって操作が行われた場合に、コンピュータによる代行を中止し、ユーザ自身がゲームがプレイする状態に戻す。
ここで、「ユーザによって操作が行われた場合」とは、例えば、コンピュータによる代行を中止する(言い換えれば、ユーザ自身がゲームをプレイする)ことを示す所定の操作がユーザによって操作が行われた場合である。例えば、コンピュータによる代行を中止することを示す要素(ボタン)がユーザによって選択された場合である。または、ゲーム操作がユーザによって行われた場合であってもよい。すなわち、ゲーム操作がユーザによって行われた場合に限って、コンピュータによる代行を中止するようにしてもよい。あるいは、ゲーム操作以外の操作が行われた場合であってもよい。すなわち、ゲーム操作だけでなく、ゲーム操作以外の操作がユーザによって行われた場合にも、コンピュータによる代行を中止するようにしてもよい。すなわち、何らかの操作がユーザによって行われたら(例えば、タッチパネルのいずれか位置がユーザによってタッチされたら、又は、いずれかボタンがユーザによって押下されたら)、コンピュータによる代行を中止するようにしてもよい。
先述の麻雀ゲームの場合、図5に示す対局画像G10の要素P108が選択された場合が「コンピュータによる代行が行われている状態でユーザによって操作が行われた場合」に相当する。すなわち、コンピュータがユーザU1の代わりに対局を代行している状態でユーザU1によって要素P108が選択された場合に、代行中止部150は、コンピュータによる代行を中止し、ユーザU1自身が対局を行う状態に戻す。
[3−4]また図10に示すように、ゲームシステム1は通知部160を含んでもよい。判定部120等と同様、通知部160もゲームの実行中に機能する機能ブロックであり、サーバ10又はゲーム端末30で実現される。
通知部160は、制御実行部130による制御が実行される前に、ユーザへの通知を実行する。制御実行部130は、当該通知に対する応答操作が行われた場合に上記制御を実行しない。
ここで、「ユーザへの通知」とは、例えば、ユーザの意識がゲームから離れているかもしれないとゲーム側で判定した旨の通知である。この場合、「通知に対する応答操作」とは、ユーザの意識がゲームから離れていない旨を示す操作である。または、「ユーザへの通知」とは、例えば、ユーザの意識がゲームから離れているか否かをユーザに問い合わせるための通知である。この場合、「通知に対する応答操作」とは、ユーザの意識がゲームから離れていない旨を示す操作である。あるいは、「ユーザへの通知」とは、例えば、ユーザの意識がゲームから離れていると判定された場合にユーザの代わりにゲームのプレイをコンピュータが代行するようになっている場合であれば、ユーザの代わりにゲームのプレイをコンピュータが代行することを予告するための通知である。言い換えれば、コンピュータによる代行を実行してもよいか否かをユーザに問い合わせるための通知である。この場合、「通知に対する応答操作」とは、コンピュータによる代行を不要である旨を示す操作である。
先述の麻雀ゲームの場合、図6のステップS22における問い合わせが通知部160による通知に相当する。すなわち、図7に示す対局画像G10の要素P109が「ユーザへの通知」に相当し、要素P110を選択する操作が「通知に対する応答操作」に相当する。要するに、制御実行部130による制御が実行される前に、通知部160は、要素P109,P110を含む対局画像G10をユーザU1のゲーム端末30の表示部35に表示させるための制御を行う。また、要素P110がユーザU1によって選択された場合、制御実行部130は、ユーザU1を眠りから覚まさせるための制御を実行しない。
[3−5]また図10に示すように、ゲームシステム1は計数部170とリセット部175とを含んでもよい。判定部120等と同様、計数部170及びリセット部175もゲームの実行中に機能する機能ブロックであり、サーバ10又はゲーム端末30で実現される。
ゲーム操作期間が繰り返し設けられるゲームでは、計数部170は、ユーザによって操作が行われない状態が所定期間にわたって継続したと判定部120によって判定された回数を計数する。計数部170によって計数された回数が第1の回数に達した場合に、前述の通知部160はユーザへの通知を実行する。また、リセット部175は、通知部160による通知に対する応答操作がユーザによって行われた場合に、計数部170によって計数された回数を所定値にリセットする。一方、計数部170によって計数された上記回数が第1の回数よりも多い第2の回数に達した場合に、前述の制御実行部130は上記制御を実行する。
ここで、「第2の回数」は、ユーザの意識がゲームから離れていると判定されるような回数である。「第1の回数」は「第2の回数」よりも少ない回数であり、例えば、「第2の回数」よりも1回少ない回数である。また、「回数を所定値にリセットする」とは、回数を所定の初期値(例えば零)に設定することである。
先述の麻雀ゲームでは(図6参照)、「第1の回数」が2回(ステップS10,S20)に設定されている。また、ステップS22における問い合わせが通知部160による通知に相当する。さらに、「第2の回数」が3回(ステップS10,S20,S30)に設定されている。また、ステップS24においてユーザU1から応答があったと判定された場合にステップS10に戻ることが、リセット部175によるリセットに相当する。
[3−6]また図10に示すように、ゲームシステム1はパラメータ更新部180とオブジェクト選択部185とを含んでもよい。パラメータ更新部180及びオブジェクト選択部185はサーバ10又はゲーム端末30で実現される。
パラメータ更新部180は、複数のオブジェクトの各々に関するゲームにおけるユーザのプレイ内容に基づいて、複数のオブジェクトの各々のパラメータを更新する。オブジェクト選択部185は、複数のオブジェクトの各々のパラメータに基づいて、複数のオブジェクトのうちのいずれかを選択する。
ここで、「オブジェクト」とは、ユーザの代わりにゲームのプレイを代行するように演出するために使用され得るものである。例えば、キャラクタ等である。「キャラクタ」は、現実の人又は動物を模したキャラクタであってもよいし、ゲーム開発者によって作成されたキャラクタであってもよいし、小説、漫画、アニメーション、又は映画等に登場するキャラクタであってもよい。
「パラメータ」とは、例えば、ユーザとオブジェクトとの間の関係の近さ又は深さを示す情報である。具体的には、ユーザとオブジェクトとの間の親密度(又は友好度等)が「パラメータ」の一例に相当する。また例えば、オブジェクトの性能の高低を示す情報であってもよい。具体的には、オブジェクトのレベル等が「パラメータ」の一例に相当する。なお、「パラメータ」は数値情報以外の情報であってもよい。
「オブジェクトに関するゲーム」とは、オブジェクトが登場するゲームである。言い換えれば、オブジェクトがゲーム画面に表示されるようなゲームである。例えば、ユーザがオブジェクトを使用又は操作するゲーム、ユーザがオブジェクトを育成する(又は鍛える)ゲーム、ユーザがオブジェクトとコミュニケーションを図って親密度を上げるゲーム、ユーザがゲーム内で獲得したポイントや仮想通貨をオブジェクトに対して使用する(又は付与する)ゲーム、ユーザがオブジェクトによる補助を受けながらプレイするゲーム等が「オブジェクトに関するゲーム」の一例に相当する。なお、「オブジェクトに関するゲーム」は、オブジェクトのパラメータがユーザのプレイ内容に基づいて更新されるようなゲームと言い換えることもできる。
「ゲームにおけるユーザのプレイ内容」とは、ゲームにおいてユーザによって行われた操作、選択、又は指示等である。
「パラメータを更新する」とは、例えば、パラメータがユーザとオブジェクトとの間の関係の近さ又は深さを示す場合であれば、ユーザとオブジェクトとの間の関係が近く又は深くなる(例えば親密度又は友好度が上がる)ようにパラメータを更新することである。ユーザとオブジェクトとの間の関係が遠く又は浅くなる(例えば親密度又は友好度が下がる)ようにパラメータを更新することであってもよい。また例えば、パラメータがオブジェクトの性能の高低を示す場合であれば、オブジェクトの性能が高くなる(例えばレベルが上がる)ようにパラメータを更新することである。オブジェクトの性能が低くなる(例えばレベルが下がる)ようにパラメータを更新することであってもよい。
「複数のオブジェクトの各々のパラメータに基づいて、複数のオブジェクトのうちのいずれかを選択する」とは、例えば、複数のオブジェクトのうちでパラメータの値が最も高いオブジェクトを選択することである。または、複数のオブジェクトのうちでパラメータの値が最も低いオブジェクトを選択することであってもよい。
先述の代行制御実行部140は、ユーザの代わりに、ゲームのプレイを、オブジェクト選択部185によって選択されたオブジェクトに代行させるための制御を実行する。
「ユーザの代わりにゲームのプレイをオブジェクトに代行させる」とは、ユーザの代わりにオブジェクトがゲームのプレイを行っているかのように演出することである。すなわち、ユーザの代わりにオブジェクトがゲームのプレイを行っているかのようにゲーム画面に表示することである。
先述の麻雀ゲームの場合、ユーザの所有する雀士キャラクタが「オブジェクト」の一例に相当し、雀士キャラクタのパートナーフラグ、親密度パラメータ、又はレベルパラメータが「パラメータ」の一例に相当する。すなわち、雀士キャラクタAの情報を示す雀士キャラクタ情報画像G30の要素P305,P306がユーザU1によって選択された場合に、パラメータ更新部180は、ユーザU1の所有している雀士キャラクタAの親密度パラメータを上昇させる。また、当該親密度パラメータが所定値に達した場合に、パラメータ更新部180は、ユーザU1の所有している雀士キャラクタAのレベルパラメータを1つ上昇させる。ユーザU1の代わりに対局をコンピュータに代行させる場合、オブジェクト選択部185は、ユーザU1の所有している雀士キャラクタのうちのいずれかを選択する。例えば、オブジェクト選択部185は、ユーザU1の所有している雀士キャラクタのうちで、ユーザU1のパートナーとして設定されている雀士キャラクタを選択する。または、オブジェクト選択部185は、ユーザU1の所有している雀士キャラクタのうちで、レベルパラメータ(又は親密度パラメータ)の最も高い雀士キャラクタを選択する。そして、代行制御実行部140は、ユーザU1の代わりに、対局を、オブジェクト選択部185によって選択された雀士キャラクタに代行させるための制御を実行する。
[3−7]また図10に示すように、ゲームシステム1は履歴情報保存部190を含んでもよい。履歴情報保存部190はサーバ10又はゲーム端末30で実現される。
履歴情報保存部190は、制御実行部130による制御の実行履歴に関する履歴情報を各ユーザの識別情報と関連付けてデータ記憶部100に記憶させる。
ここで、「履歴情報」とは、制御実行部130による制御の実行履歴を示す情報である。例えば、制御実行部130による制御が実行された回数又は頻度等を示す情報である。
「ユーザの識別情報」とは、ユーザを一意に識別するための情報である。例えば、ユーザID又はユーザ名等が「ユーザの識別情報」の一例に相当する。
「履歴情報をユーザの識別情報と関連付けてデータ記憶部100に記憶させる」とは、履歴情報をユーザの識別情報と結びつけてデータ記憶部100に記憶させることである。データ記憶部100に直接アクセスして、履歴情報をユーザの識別情報と関連付けて記憶させることであってもよいし、データ記憶部100にアクセス可能な他の装置に対して、履歴情報をユーザの識別情報と関連付けてデータ記憶部100に記憶させるように要求することであってもよい。
先述の参加ユーザ決定部110は、ユーザの参加するゲームに参加する他のユーザを、当該他のユーザの識別情報と関連付けて記憶される履歴情報に基づいて決定するようにしてもよい。なお、参加ユーザ決定部110は、直近の所定期間(例えば直近3ヶ月)の履歴情報に基づいて上記決定を行うようにしてもよい。
ここで、「ユーザの参加するゲームに参加する他のユーザ」とは、例えば、ユーザと対戦する他のユーザである。また例えば、ユーザと協力して共通のゲーム目標の達成を目指す他のユーザである。具体的には、ユーザが所属するグループ(チーム、パーティ、ギルド等)と同じグループに所属する他のユーザである。
「ユーザの参加するゲームに参加する他のユーザを、当該他のユーザの識別情報と関連付けて記憶される履歴情報に基づいて決定する」とは、他のユーザの識別情報と関連付けて記憶される履歴情報が所定条件を満足する場合に、ユーザの参加するゲームに当該他のユーザを参加させないと決定することである。例えば、他のユーザの実行回数(制御実行手段による制御が実行された回数)又は実行頻度(制御実行手段による制御が実行された頻度)が閾値よりも多い場合には、ユーザの参加するゲームに当該他のユーザを参加させないと決定することである。また例えば、ユーザの実行回数(又は実行頻度)と他のユーザの実行回数(又は実行頻度)とが同程度である場合、ユーザの参加するゲームに当該他のユーザを参加させないと決定することである。ユーザの実行回数(又は実行頻度)と他のユーザの実行回数(又は実行頻度)とが同程度である場合とは、それらの実行回数(又は実行頻度)が同じである場合や、それらの実行回数(又は実行頻度)の差が閾値よりも小さい場合を含む。
先述の麻雀ゲームの場合、例えば、履歴情報保存部190は、ゲーム操作機会においてユーザによって操作がなされなかったとの判定結果が3回連続して得られた回数又は頻度(すなわち、図4又は図6のステップS10,S20,S30のすべてにおいて、ゲーム操作機会においてユーザによって操作がなされなかったと判定された回数又は頻度)を示す情報を、ユーザテーブルTBL101の当該ユーザの「プレイ履歴」フィールドに登録する。そして、ユーザU1の対戦相手を決定する際、参加ユーザ決定部110は他のユーザの上記回数又は頻度に基づいて対戦相手を決定する。例えば、ユーザU1の上記回数又は頻度が基準値よりも少ない場合、参加ユーザ決定部110は、上記回数又は頻度が基準値よりも多い他のユーザをユーザU1の対戦相手として決定しない。すなわち、参加ユーザ決定部110は、上記回数又は頻度が基準値よりも少ない他のユーザのうちから、ユーザU1の対戦相手を決定する。
[4.処理]次に、図10に示す機能ブロックを実現するためにゲームシステム1で実行される処理の一例について説明する。
[4−1]図14A、図14B、及び図14Cは、麻雀ゲームの対局中に実行される処理のうち、本発明に関連する処理を主に示すフロー図である。なお、図14A〜図14Cに示す処理は図6に示した態様に対応している。
麻雀ゲームの対局中には、各ユーザのゲーム操作に基づいて、対局の状況を更新する処理が実行されるが、図14A〜図14Cではこのような処理を省略している。図14A〜図14Cでは、各ユーザが眠ってしまったか否かを判定したり、いずれかのユーザが眠ってしまった場合に対処したりするための処理のみについて示す。
麻雀ゲームの対局がピアツーピア方式で実行される場合、図14A〜図14Cに示す処理がマスター装置で実行される。一方、麻雀ゲームの対局がクライアント/サーバ方式で実行される場合、図14A〜図14Cに示す処理がサーバ10で実行される。以下では、ユーザU1〜U4が参加する対局がピアツーピア方式で実行される場合を想定して、図14A〜図14Cに示す処理について説明する。
図14A〜図14Cに示す処理を実行する際には、図15に示すようなデータが記憶部32(又は記憶部12)に記憶される。図15に示すデータは、ユーザU1〜U4の各々のカウンタ及び代行プレイフラグを示す。「カウンタ」は、ユーザが自らのゲーム操作機会において操作を行わなかったと判定された回数を計数するために使用される。対局開始時に各ユーザのカウンタは「0」に初期化される。「代行プレイフラグ」は、コンピュータによる代行プレイが行われているか否かを示す。例えば、ユーザの代わりにコンピュータが対局を行っていない(すなわち、ユーザ自身が対局を行っている)場合には、値「0」が代行プレイフラグにセットされ、ユーザの代わりにコンピュータが対局を行っている場合には、値「1」が代行プレイフラグにセットされる。対局開始時に各ユーザの代行プレイフラグは「0」に初期化される。
なお、図14A〜図14Cに示す処理はユーザU1〜U4の各々に関して実行される。以下では、便宜上、ユーザU1に関する処理についてのみ説明するが、ユーザU2〜U4に関しても同様の処理が実行される。
図14Aに示すように、マスター装置の制御部31は、ユーザU1のゲーム操作機会が到来したか否かを判定する(S300)。ユーザU1のゲーム操作機会が到来した場合、制御部31は、当該ゲーム操作機会においてユーザU1によって操作が行われたか否かを判定する(S302)。例えば、ユーザU1のゲーム操作機会においてユーザU1によってタッチパネルがタッチされた場合に、制御部31はユーザU1のゲーム操作機会においてユーザU1によって操作が行われたと判定する。一方、ユーザU1のゲーム操作機会においてユーザU1によってタッチパネルがタッチされなかった場合(すなわち、ユーザU1によってタッチパネルがタッチされることなく、制限時間が経過して、ユーザU1のゲーム操作機会が終了した場合)、制御部31はユーザU1のゲーム操作機会においてユーザU1によって操作が行われなかったと判定する。
ユーザU1のゲーム操作機会においてユーザU1によって操作が行われなかったと判定された場合、制御部31はユーザU1のカウンタに1を加算する(S304)。そして、制御部31はユーザU1のカウンタが「2」になったか否かを判定する(S306)。ユーザU1のカウンタが「2」になった場合、制御部31は、ユーザU1が眠っていないか否かをユーザU1自身に問い合わせるための問い合わせメッセージ(要素P109)を応答ボタン(要素P110)とともにユーザU1のゲーム端末30の表示部35に表示させる(S308)。ユーザU1のゲーム端末30がマスター装置である場合には、制御部31は問い合わせメッセージ及び応答ボタンを表示部35に表示する。一方、ユーザU1のゲーム端末30がスレーブ装置である場合には、制御部31は問い合わせメッセージ及び応答ボタンの表示指示をユーザU1のゲーム端末30に送信する。
ステップS302において、ユーザU1のゲーム操作機会においてユーザU1によって操作が行われたと判定された場合、制御部31はユーザU1のカウンタを「0」にリセットし(S310)、ステップS300に戻る。
ステップS308の実行後、図14Bに示すように、制御部31は、ユーザU1によって応答ボタン(要素P310)が選択されたか否かを判定する(S312)。ユーザU1によって応答ボタンが選択されたと判定された場合、制御部31はユーザU1のカウンタを「0」にリセットし(S324)、ステップS300に戻る。なお、この際、問い合わせメッセージ及び応答ボタンはユーザU1のゲーム端末30の表示部35から消される。
一方、ユーザU1によって応答ボタンが選択されていないと判定された場合、制御部31はユーザU1のゲーム操作機会が到来したか否かを判定する(S314)。ユーザU1のゲーム操作機会が到来した場合、問い合わせメッセージ及び応答ボタンがユーザU1のゲーム端末30の表示部35から消され、制御部31は、当該ゲーム操作機会においてユーザU1によって操作が行われたか否かを判定する(S316)。ステップS316における判定はステップS302と同様である。
ゲーム操作機会においてユーザU1によって操作が行われたと判定された場合、制御部31はユーザU1のカウンタを「0」にリセットし(S324)、ステップS300に戻る。一方、ゲーム操作機会においてユーザU1によって操作が行われなかったと判定された場合、制御部31はユーザU1のカウンタに1を加算する(S318)。そして、制御部31はユーザU1のカウンタが「3」になったか否かを判定する(S320)。ユーザU1のカウンタが「3」になった場合、制御部31は、ユーザU1を眠りから覚まさせるための制御を実行する(S322)。例えば、ユーザU1のゲーム端末30がマスター装置である場合、制御部31は音声出力部36から所定音声(目覚まし音声)を出力させたり、振動発生部37に振動を発生させたりする。一方、ユーザU1のゲーム端末30がスレーブ装置である場合、制御部31は、所定音声(目覚まし音声)の出力指示や振動発生指示をユーザU1のゲーム端末30に送信する。
ステップS322の実行後、図14Cに示すように、制御部31はユーザU1のゲーム操作機会が到来したか否かを判定する(S326)。ユーザU1のゲーム操作機会が到来した場合、制御部31は、当該ゲーム操作機会においてユーザU1によって操作が行われたか否かを判定する(S328)。ステップS328における判定はステップS302と同様である。
ゲーム操作機会においてユーザU1によって操作が行われたと判定された場合、制御部31はユーザU1のカウンタを「0」にリセットし(S336)、ステップS300に戻る。一方、ゲーム操作機会においてユーザU1によって操作が行われなかったと判定された場合、制御部31はコンピュータによる代行プレイを開始させる(S330)。すなわち、制御部31はユーザU1の代行プレイフラグを「1」に更新し、ユーザU1の代わりにコンピュータに対局を行わせる。また、制御部31は、コンピュータによる代行プレイが行われていることを示す代行メッセージ(要素P307)や代行中止ボタン(要素P308)をユーザU1のゲーム端末30の表示部35に表示させる。この際、制御部31は、ユーザU1の所有する雀士キャラクタのうちの、ユーザU1のパートナーとして設定された雀士キャラクタ(または、レベルパラメータが最も高い雀士キャラクタ)を選択し、ユーザU1の代わりに当該雀士キャラクタに対局を行わせるようにしてもよい。
ステップS330の実行後、制御部31は、ユーザU1によって代行中止ボタンが選択されたか否かを判定する(S332)。ユーザU1によって代行中止ボタンが選択されたと判定された場合、制御部31はコンピュータによる代行プレイを中止し、ユーザU1自身によるプレイを再開させる(S334)。この際、制御部31はユーザU1の代行プレイフラグを「0」に更新し、代行メッセージや代行中止ボタンをユーザU1のゲーム端末30の表示部35から消す。また、制御部31はユーザU1のカウンタを「0」にリセットし(S336)、ステップS300に戻る。
[4−2]図16は、雀士キャラクタ情報画像G30の要素P304が選択された場合に実行される処理の一例を示す。なお以下では、ユーザU1の所有している雀士キャラクタAが表示された雀士キャラクタ情報画像G30の要素P304をユーザU1が選択した場合を想定して説明する。
図16に示すように、ゲーム端末30の制御部31はパートナー設定要求を送信し(S340)、サーバ10は当該要求を受信する(S100)。当該要求には、ユーザU1のユーザIDと、雀士キャラクタAのシリアル番号とが含まれる。
上記要求がサーバ10で受信された場合、サーバ10の制御部11は、ユーザU1の所有している雀士キャラクタAをユーザU1のパートナーとして設定する(S102)。すなわち、制御部11は、ユーザU1のユーザIDと関連付けられた所有雀士キャラクタテーブルTBL103にアクセスし、雀士キャラクタAのパートナーフラグを「1」に設定し、他の雀士キャラクタのパートナーフラグを「0」に設定する。
ステップS102が実行された後、制御部11は、パートナー設定が完了したことを示す完了通知をゲーム端末30に送信し(S104)、ゲーム端末30は当該完了通知を受信する(S342)。当該完了通知がゲーム端末30で受信された場合、制御部31は、パートナー設定が完了したことを示す完了メッセージを表示部35に表示する(S344)。
[4−3]図17は、雀士キャラクタの親密度パラメータを増加させるための操作がユーザによって行われた場合に実行される処理の一例を示す。なお以下では、ユーザU1の所有している雀士キャラクタAがユーザU1のパートナーとして設定されている状態で、当該雀士キャラクタAの親密度パラメータを増加させるための操作(例えば、雀士キャラクタAに他の雀士キャラクタを合成する操作、又は、雀士キャラクタAにプレゼントアイテムを与える操作等)がユーザU1によって行われた場合を想定して説明する。
図17に示すように、ゲーム端末30の制御部31は親密度パラメータの更新要求をサーバ10に送信し(S350)、サーバ10は当該要求を受信する(S110)。当該要求には、ユーザU1のユーザIDと、雀士キャラクタAのシリアル番号とが含まれる。
上記要求がサーバ10で受信された場合、サーバ10の制御部11は、ユーザU1の所有している雀士キャラクタAの親密度パラメータを増加させる(S112)。すなわち、制御部11は、ユーザU1のユーザIDと関連付けられた所有雀士キャラクタテーブルTBL103にアクセスし、雀士キャラクタAの親密度パラメータに所定値を加算する。
また、制御部11は、ユーザU1の所有している雀士キャラクタAの親密度パラメータが、段階的に設定された複数の所定値(例えば10,50,100,150,・・・等)のいずれかに達したか否かを判定する(S114)。そして、ユーザU1の所有している雀士キャラクタAの親密度パラメータが上記複数の所定値のいずれかに達した場合、制御部11は、ユーザU1の所有している雀士キャラクタAのレベルパラメータを1つ上げる(S116)。つまり、制御部11は、ユーザU1のユーザIDと関連付けられた所有雀士キャラクタテーブルTBL103にアクセスし、雀士キャラクタAのレベルパラメータに1を加算する。
ステップS116が実行された場合、又は、ステップS114でユーザU1の雀士キャラクタAの親密度パラメータが上記複数の所定値のいずれかに達したと判定されなかった場合に、制御部11は親密度パラメータ等の更新結果をゲーム端末30に送信し(S118)、ゲーム端末30は当該更新結果を受信する(S352)。当該更新結果がゲーム端末30で受信された場合、制御部31は親密度パラメータ等の更新結果を表示部35に表示する(S354)。すなわち、制御部31はその時点の親密度パラメータ及びレベルパラメータを表示部35に表示する。
[5.まとめ]以上説明したゲームシステム1では、麻雀ゲームの対局中において、ゲーム操作機会にユーザによって操作が行われなかったとの判定結果が3回連続して得られた場合に、ユーザが眠ってしまった可能性が高いとみなし、ユーザを眠りから覚まさせるための制御を実行する。ゲームシステム1によれば、ユーザが眠ってしまった可能性が高い場合に、ユーザを眠りから目覚めさせることが可能になる。
またゲームシステム1では、ゲーム端末30に備えられる機能(操作部34、表示部35、音声出力部36、又は振動発生部37等)を使用して、ユーザが対局中に眠ってしまったかを判定したり、対局中に眠ってしまったユーザを眠りから覚まさせたりすることができる。
またゲームシステム1では、ユーザを眠りから覚まさせるための制御が実行される前に、ユーザへの通知が実行され(ステップS308)、当該通知に対する応答操作(応答ボタンの選択)がユーザによって行われた場合には上記制御が実行されない(ステップS312:No)。このため、ユーザが眠っていない場合には、ユーザを眠りから覚まさせるための制御が実行されない。
またゲームシステム1では、ユーザを眠りから覚まさせるための制御が実行された後のゲーム操作機会においてもユーザによって操作が行われなかった場合には、コンピュータによる代行プレイが開始される(ステップS330)。ゲームシステム1によれば、上記制御によってユーザを眠りから覚まさせることができず、依然としてユーザが眠ってしまっている可能性が高い場合に、ユーザの代わりにコンピュータに対局を代行させることができる。
またゲームシステム1では、コンピュータによる代行プレイが行われている状態で代行メッセージ及び代行中止ボタンが表示されるため(図5)、ユーザは眠りから覚めた場合に、コンピュータによる代行プレイが行われていることを把握でき、コンピュータによる代行プレイを中止して、自らによる対局を再開できる。
またゲームシステム1では、コンピュータによる代行プレイが行われる場合に、ユーザの所有する雀士キャラクタに対局を代行させることができる。すなわち、ユーザにとって愛着のある雀士キャラクタに対局を代行させることができる。
またゲームシステム1では、ユーザと対局する他のユーザを、当該他のユーザに対する制御実行部130による制御の実行履歴に基づいて決定できる。例えば、制御実行部130による制御の実行回数が多いユーザは、対局中に眠ってしまう傾向のあるユーザである。対局中に眠ってしまう傾向のある他のユーザが対局に参加してしまうと、ユーザのゲームの興趣が損なわれてしまう可能性があるが、ゲームシステム1によれば、対局中に眠ってしまう傾向のある他のユーザをユーザと対局させないことができ、上記のような不都合の発生を抑えることができる。
なお、以上では、ゲーム操作機会にユーザによって操作が行われなかった場合にはユーザが眠ってしまった可能性があるとみなすようになっていたが、ゲーム操作機会にユーザによって操作が行われなかった場合には、ユーザが眠ってしまった場合に限られず、ユーザの意識が麻雀ゲームの対局以外のこと(例えばテレビ番組、ラジオ番組、又は家族や友人との会話等)に向けられてしまった可能性もある。この点、ゲームシステム1によれば、このような場合にも、ユーザの意識を麻雀ゲームの対局に戻すことができる。
[6.変形例]本発明は以上に説明した実施形態に限定されるものではない。
例えば、代行制御実行部140及び制御実行部130の一方を省略してもよい。
また、以上では本発明を麻雀ゲームに適用した例について主に説明したが、先述した通り、本発明は麻雀ゲーム以外のゲームにも適用できる。
[7.付記]以上のような記載から、本発明は例えば以下のように把握される。なお、本発明の理解を容易にするために、適宜図面に記載された符号を括弧書きで記載するが、それにより本発明が図示の態様に限定されるものではない。
1)本発明の一態様に係るゲーム制御装置(30又は10)は、ゲームの実行中において、ユーザがゲーム操作を行うことが可能なゲーム操作期間内に、前記ユーザによって操作が行われない状態が所定期間にわたって継続したか否かを判定する判定手段(120)と、前記判定手段(120)の判定結果に基づいて、前記ユーザの意識が前記ゲームに向いた状態に戻すための制御を実行する制御実行手段(130)と、を含む。
12)本発明の一態様に係るゲームシステム(1)は、ゲームの実行中において、ユーザがゲーム操作を行うことが可能なゲーム操作期間内に、前記ユーザによって操作が行われない状態が所定期間にわたって継続したか否かを判定する判定手段(120)と、前記判定手段(120)の判定結果に基づいて、前記ユーザの意識が前記ゲームに向いた状態に戻すための制御を実行する制御実行手段(130)と、を含む。
13)また、本発明の一態様に係るプログラムは、1)〜10)のいずれかに記載のゲーム制御装置(30又は10)、又は、12)に記載のゲームシステム(1)としてコンピュータを機能させるためのプログラムである。
14)また、本発明の一態様に係る情報記憶媒体は、13)に記載のプログラムを記録したコンピュータで読み取り可能な情報記憶媒体である。
15)また、本発明の一態様に係るゲーム制御方法(ゲーム制御装置又はゲームシステムの制御方法)は、ゲームの実行中において、ユーザがゲーム操作を行うことが可能なゲーム操作期間内に、前記ユーザによって操作が行われない状態が所定期間にわたって継続したか否かを判定する判定ステップ(S302等)と、前記判定ステップ(S302等)における判定結果に基づいて、前記ユーザの意識が前記ゲームに向いた状態に戻すための制御を実行する制御実行ステップ(S322)と、を含む。
上記1)、12)〜15)に記載の発明によれば、ゲームの実行中において、ユーザがゲーム操作を行うことが可能なゲーム操作期間内に、ユーザによって操作が行われない状態が所定期間にわたって継続したか否かが判定され、判定結果に基づいて、ユーザの意識がゲームに向いた状態に戻すための制御が実行される。ユーザがゲーム操作を行うことが可能なゲーム操作期間内であるにもかかわらず、ユーザによって操作が行われない状態が所定期間にわたって継続した場合には、ユーザの意識がゲームから離れている可能性がある。本発明によれば、ユーザの意識がゲームから離れている可能性がある場合に、ユーザの意識がゲームに向いた状態に戻すことが可能になる。
2)本発明の一態様では、前記判定手段(120)は、前記ユーザによって操作が行われない状態が前記ゲーム操作期間にわたって継続したか否かを判定するようにしてもよい。
ユーザが操作を行うことが可能なゲーム操作期間であるにもかかわらず、ユーザによって操作が行われない状態がゲーム操作期間の開始から終了まで継続した場合には、ユーザの意識がゲームから離れている可能性が高い。2)に記載の発明によれば、ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したか否かの判定結果に基づいて、ユーザの意識がゲームに向いた状態に戻すための制御を行うため、ユーザの意識がゲームから離れている可能性が高い場合に限って、ユーザの意識がゲームに向いた状態に戻すための制御を実行することができる。
3)本発明の一態様では、前記ゲームでは、前記ゲーム操作期間が繰り返し設けられ、前記制御実行手段(130)は、前記ユーザによって操作が行われない状態が前記ゲーム操作期間にわたって継続したと前記判定手段(120)によって判定されることが所定回数連続した場合に、前記制御を実行するようにしてもよい。
ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したと連続して複数回のゲーム操作期間で判定された場合には、ユーザの意識がゲームから離れている可能性が非常に高い。3)に記載の発明によれば、ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したと連続して所定数回のゲーム操作期間で判定された場合に、ユーザの意識がゲームに向いた状態に戻すための制御を行うため、ユーザの意識がゲームから離れている可能性が非常に高い場合に限って、ユーザの意識がゲームに向いた状態に戻すための制御を実行することができる。
4)本発明の一態様では、前記制御実行手段(130)による制御が実行された後においても前記判定手段(120)による判定が行われ、前記ゲーム制御装置(30又は10)は、前記制御実行手段(130)による制御が実行された後の前記判定手段(120)の判定結果に基づいて、前記ユーザの代わりに前記ゲームのプレイをコンピュータに代行させるための制御を実行する代行制御実行手段(140)を含むようにしてもよい。
4)に記載の発明によれば、ユーザの意識がゲームに向いた状態に戻すための制御が実行された後の判定手段の判定結果に基づいて、ユーザの代わりにゲームのプレイをコンピュータに代行させるための制御が実行される。ユーザの意識がゲームに向いた状態に戻すための制御が実行された後においても、ユーザによって操作が行われない状態が所定期間にわたって継続したと判定された場合とは、上記制御によって、ユーザの意識がゲームに向いた状態に戻すことができず、依然としてユーザの意識がゲームから離れている場合である。本発明によれば、このような場合に、ユーザの代わりにゲームのプレイをコンピュータに代行させることができる。
5)本発明の一態様では、前記コンピュータによる代行が行われている状態で前記ユーザによって操作が行われた場合に、前記コンピュータによる代行を中止し、前記ユーザ自身が前記ゲームがプレイする状態に戻す代行中止手段(150)を含むようにしてもよい。
5)に記載の発明によれば、コンピュータによる代行が行われている状態でユーザによって操作が行われた場合に、コンピュータによる代行を中止し、ユーザ自身によってゲームがプレイする状態に戻るため、ユーザの意識がゲームに向いた状態に戻った場合にゲームのプレイを再開できるようになる。
6)本発明の一態様では、複数のオブジェクトの各々に関するゲームにおける前記ユーザのプレイ内容に基づいて、前記複数のオブジェクトの各々のパラメータを更新する更新手段(180)と、前記複数のオブジェクトの各々のパラメータに基づいて、前記複数のオブジェクトのうちのいずれかを選択する選択手段(185)と、を含み、前記代行制御実行手段(140)は、前記ユーザの代わりに、前記ゲームのプレイを、前記選択手段(185)によって選択されたオブジェクトに代行させるための制御を実行するようにしてもよい。
6)に記載の発明によれば、複数のオブジェクトの各々に関するゲームにおけるユーザのプレイ内容に基づいて、複数のオブジェクトの各々のパラメータが更新され、複数のオブジェクトの各々のパラメータに基づいて、複数のオブジェクトのうちのいずれかが選択され、選択されたオブジェクトがユーザの代わりにゲームのプレイを代行する。このため、本発明によれば、ユーザのプレイ内容に基づいてパラメータが更新されたオブジェクトがユーザの代わりにゲームのプレイを代行するようにできる。例えば、ユーザにとって愛着のあるオブジェクトがユーザの代わりにゲームのプレイを代行するようにできる。
7)本発明の一態様では、前記制御実行手段(130)による制御が実行される前に、前記ユーザへの通知を実行する通知手段(160)を含み、前記制御実行手段(130)は、前記通知に対する応答操作が行われた場合に前記制御を実行しないようにしてもよい。
7)に記載の発明によれば、制御実行手段による制御が実行される前に、ユーザへの通知が実行され、当該通知に対する応答操作がユーザによって行われた場合に当該制御が行われない。通知に対する応答操作がユーザによって行われた場合とは、ユーザの意識がゲームから離れておらずゲームに向いている場合である。この点、本発明では、応答操作がユーザによって行われた場合には、ユーザの意識がゲームに向いた状態に戻すための制御が行われないため、ユーザの意識がゲームから離れていない場合に上記制御が行われないように担保できる。
8)本発明の一態様では、前記ゲームでは、前記ゲーム操作期間が繰り返し設けられ、前記ゲーム制御装置(30又は10)は、前記ユーザによって操作が行われない状態が前記所定期間にわたって継続したと前記判定手段(120)によって判定された回数を計数する計数手段(170)を含み、前記通知手段(160)は、前記回数が第1の回数(例えば2回)に達した場合に前記ユーザへの通知を実行し、前記ゲーム制御装置(30又は10)は、前記通知に対する応答操作が前記ユーザによって行われた場合に、前記回数を所定値(例えば0回)にリセットするリセット手段(175)を含み、前記制御実行手段(130)は、前記回数が前記第1の回数よりも多い第2の回数(例えば3回)に達した場合に前記制御を実行するようにしてもよい。
8)に記載の発明によれば、ユーザによって操作が行われない状態がゲーム操作期間にわたって継続したと判定された回数が第2の回数に達した場合に、ユーザの意識がゲームに向いた状態に戻すための制御が行われる。また本発明では、ユーザによって操作が行われない状態が操作期間にわたって継続したと判定された回数が第1の回数(第2の回数よりも少ない回数)に達した場合にユーザへの通知を実行され、当該通知に対する応答操作がユーザによって行われた場合に回数がリセットされる。通知に対する応答操作がユーザによって行われた場合とは、ユーザの意識がゲームから離れておらずゲームに向いている場合である。この点、本発明では、応答操作がユーザによって行われた場合に回数がリセットされるため、ユーザの意識がゲームから離れていない場合には、ユーザの意識がゲームに向いた状態に戻すための制御が行われないように担保できる。
9)本発明の一態様では、前記ゲームは複数のユーザが参加可能なゲームであり、前記制御実行手段(130)による制御の実行履歴に関する履歴情報を各ユーザの識別情報と関連付けて記憶手段(100)に記憶させる履歴情報保存手段(190)と、前記ユーザの参加するゲームに参加する他のユーザを、当該他のユーザの識別情報と関連付けて記憶される履歴情報に基づいて決定する参加ユーザ決定手段(110)と、を含むようにしてもよい。
9)に記載の発明によれば、ユーザが参加するゲームに参加する他のユーザを、当該他のユーザに対する制御実行手段による制御の実行履歴に基づいて決定できる。例えば、制御実行手段による制御の実行回数が多いユーザは、ゲームの実行中に意識がゲームから離れてしまう傾向のあるユーザである。このため、本発明によれば、ゲームの実行中に意識がゲームから離れてしまう傾向のある他のユーザを、ユーザの参加するゲームに参加させないことができる。ユーザの参加するゲームに、ゲームの実行中に意識がゲームから離れてしまう傾向のある他のユーザが参加してしまうと、ゲームの興趣が損なわれてしまう可能性があるが、本発明によれば、このような不都合の発生を抑えることができる。
10)本発明の一態様では、前記制御実行手段(130)は、前記制御として、前記ユーザを眠りから覚まさせるための制御を実行するようにしてもよい。
ユーザがゲーム操作を行うことが可能なゲーム操作期間内であるにもかかわらず、ユーザによって操作が行われない状態が所定期間にわたって継続した場合には、ユーザが眠っている可能性がある。10)に記載の発明によれば、ユーザが眠っている可能性がある場合にユーザを眠りから覚まさせることが可能になる。
11)本発明の一態様では、前記制御実行手段(130)による制御は、前記ユーザが操作を行うために使用する操作手段(34)を振動させる制御と、所定の音声を音声出力手段(36)から出力させる制御と、音声出力手段(36)から出力される音声の音量を上げる制御と、画面の輝度を上げる制御と、画面を点滅させる制御と、発光手段を発光させる制御と、の少なくとも一つを含むようにしてもよい。
11)に記載の発明によれば、ゲームをプレイしている最中に意識がゲームから離れてしまったユーザの意識をゲーム端末に備えられる機能を使用してゲームに向けることができる。