(57)【特許請求の範囲】
【請求項１】
端末に対して通信可能に接続されるゲームサーバであって、
楽曲に対して異なる難易度の操作タイミングのパターンが複数格納された記憶部と、
前記端末の動作に基づいて、複数の前記端末が属するグループを設定するグループ設定部と、
単一の前記グループに属する前記端末に対して前記難易度を設定する難易度設定部と、
前記難易度設定部が設定した前記難易度に基づいて前記操作タイミングのパターンを前記端末に送出する送出部と、
前記端末からの操作信号を受け入れ、この操作信号と前記操作タイミングとの時間差と、前記端末に設定した前記難易度とに基づいて、前記グループ単位での得点を算出する得点算出部と
前記難易度設定部により設定された端末ごとの前記難易度に基づいて、端末ごとに期待される動作を定める期待動作設定部と、
端末ごとに、当該端末における動作と、当該端末に対し前記期待動作設定部により定められた動作とを比較して、当該比較に基づいて端末を操作するプレイヤが意図的にミスをしたか否かを判断し、意図的にミスをしたと判断される場合に、当該端末のゲーム進行に対してペナルティを付与するペナルティ付与部と、
を備えるゲームサーバ。
【請求項２】
請求項１に記載のゲームサーバにおいて、前記ペナルティ付与部は、前記比較の結果、楽曲演奏中、前記期待動作設定部により定められた動作が行われなかった回数が予め定めた回数より多い場合に意図的にミスをしたと判断して、当該端末のゲーム進行に対してペナルティを付与するゲームサーバ。
【請求項３】
請求項１に記載のゲームサーバにおいて、
前記端末ごとにパラメータを算出するパラメータ算出部を備え、
前記期待動作設定部は、前記パラメータ算出部が算出した前記パラメータに基づいて、前記端末ごとの得点期待値を算出する期待値算出部を備え、
前記ペナルティ付与部は、前記得点算出部により算出された前記端末の得点と、前記期待値算出部が算出したこの端末の前記得点期待値との比較に基づいて、この端末のゲーム進行に対してペナルティを付与するゲームサーバ。
【請求項４】
請求項１または３に記載のゲームサーバにおいて、
前記ペナルティ付与部が、前記ペナルティを付与したときには、前記得点算出部は、当該ペナルティを付与した端末に対する得点を、当該端末で行われた操作によらずに算出するゲームサーバ。
【請求項５】
請求項４に記載のゲームサーバにおいて、
前記パラメータ算出部が算出した前記パラメータに基づいて、前記端末ごとの得点期待値を算出する期待値算出部を備え、
前記難易度設定部は、前記得点算出部により算出された前記端末の得点と、前記期待値算出部が算出したこの端末の前記得点期待値との比較に基づいて、この端末に設定した前記難易度を変更するゲームサーバ。
【請求項６】
請求項１から５のいずれか一項に記載のゲームサーバにおいて、
前記記憶部には、前記操作タイミングのパターンに対応した音源データが格納され、
前記送出部は、前記端末からの前記操作信号に基づいて前記音源データを前記端末に送出するゲームサーバ。
【請求項７】
請求項１から６のいずれか一項に記載のゲームサーバにおいて、
前記端末ごとにパラメータを算出するパラメータ算出部を備え、
前記難易度設定部は、前記パラメータ算出部が算出した前記パラメータに基づいて前記端末ごとの難易度を設定するゲームサーバ。
【請求項８】
請求項１から６のいずれか一項に記載のゲームサーバにおいて、
前記端末ごとにパラメータを算出するパラメータ算出部を備え、
前記難易度設定部は、前記パラメータ算出部が算出した前記パラメータに基づいて前記端末ごとに、設定可能な難易度を決定する手段と、
前記端末ごとに決定した、設定可能な難易度を端末へ送出し、設定する難易度を端末から受け入れる手段と、
前記受け入れた難易度により、前記端末ごとの難易度を設定する手段と、
を含むゲームサーバ。
【請求項９】
請求項７または８記載のゲームサーバにおいて、
前記得点算出部は前記端末ごとの得点を算出し、
前記パラメータ算出部は、前記得点算出部が算出した前記端末ごとの得点に基づいて、前記端末ごとの前記パラメータを算出するゲームサーバ。
【請求項１０】
請求項９記載のゲームサーバにおいて、
前記端末ごとにパラメータを算出するパラメータ算出部を備え、
前記期待動作設定部は、前記パラメータ算出部が算出した前記パラメータに基づいて、前記端末ごとの得点期待値を算出する期待値算出部を備え、
前記難易度設定部は、前記端末の得点と、前記期待値算出部が算出したこの端末の前記得点期待値とに基づいて、この端末を含む、前記グループに属する前記端末に設定した前記難易度を変更するゲームサーバ。
【請求項１１】
請求項１から１０のいずれか一項に記載のゲームサーバにおいて、
前記難易度設定部は、前記端末からの難易度に関する要求に基づいてこの端末に前記難易度を設定し、
前記端末からの楽曲に関する要求に基づいて、この楽曲に関する前記操作タイミングのパターンを決定するパターン決定部をさらに有するゲームサーバ。
【請求項１２】
請求項１から１１のいずれか一項に記載のゲームサーバにおいて、
前記記憶部には、前記操作タイミングのパターンに対応した音源データが格納され、
前記操作タイミングのパターンは、当該パターンに対応したタイミングで前記音源データが再生された際に、複数の前記操作タイミングのパターンに基づいて前記音源データが同時に再生されると楽曲が再生されるパターンであるゲームサーバ。
【請求項１３】
請求項１から１１のいずれか一項に記載のゲームサーバにおいて、
前記記憶部には、前記操作タイミングのパターンに対応した音源データが格納され、
前記操作タイミングのパターンは、当該パターンに対応したタイミングで前記音源データが再生された際に、複数の前記操作タイミングのパターンに基づいて前記音源データが順次再生されると楽曲が再生されるパターンであるゲームサーバ。
【請求項１４】
請求項１から１３のいずれか一項に記載のゲームサーバにおいて、
前記得点算出部は、複数の前記端末からの前記操作信号と前記操作タイミングとの時間差が、前記端末が切り替わったタイミングを挟んで所定時間内であるとき、前記グループ単位の得点を通常の得点よりも高く算出するゲームサーバ。
【請求項１５】
請求項１から１４のいずれか一項に記載のゲームサーバにおいて、
前記送出部は、単一の前記グループに属する複数の前記端末ごとに、楽曲のパートごとの操作タイミングのパターンを送出し、
前記グループに属する一の端末に送出された、操作タイミングのパターンを、前記一の端末とは異なる他の端末へ送出する手段と、
をさらに有するゲームサーバ。
【請求項１６】
端末に対して通信可能に接続されるゲームサーバによるゲームの制御方法であって、
楽曲に対して異なる難易度の操作タイミングのパターンが複数格納し、
前記端末の動作に基づいて、複数の前記端末が属するグループを設定し、
単一の前記グループに属する前記端末に対して前記難易度を設定し、
前記設定した前記難易度に基づいて前記操作タイミングのパターンを前記端末に送出し、
前記端末からの操作信号を受け入れ、この操作信号と前記操作タイミングとの時間差と、前記端末に設定した前記難易度とに基づいて、前記グループ単位での得点を算出し、
前記設定された端末ごとの前記難易度に基づいて、端末ごとに期待される動作を定め、
端末ごとに、当該端末における動作と、当該端末に対し前記定められた動作とを比較して、当該比較に基づいて端末を操作するプレイヤが意図的にミスをしたか否かを判断し、意図的にミスをしたと判断される場合に、当該端末のゲーム進行に対してペナルティを付与する
ゲームサーバにおけるゲームの制御方法。
【請求項１７】
端末に対して通信可能に接続され、楽曲に対して異なる難易度の操作タイミングのパターンが複数格納された記憶部を有するゲームサーバにおいて実行されるプログラムであって、
このプログラムがゲームサーバで実行されると、このゲームサーバを、
前記端末の動作に基づいて、複数の前記端末が属するグループを設定するグループ設定部と、
単一の前記グループに属する前記端末に対して前記難易度を設定する難易度設定部と、
前記難易度設定部が設定した前記難易度に基づいて前記操作タイミングのパターンを前記端末に送出する送出部と、
前記端末からの操作信号を受け入れ、この操作信号と前記操作タイミングとの時間差と、前記端末に設定した前記難易度とに基づいて、前記グループ単位での得点を算出する得点算出部と、
前記難易度設定部により設定された端末ごとの前記難易度に基づいて、端末ごとに期待される動作を定める期待動作設定部と、
端末ごとに、当該端末における動作と、当該端末に対し前記期待動作設定部により定められた動作とを比較して、当該比較に基づいて端末を操作するプレイヤが意図的にミスをしたか否かを判断し、意図的にミスをしたと判断される場合に、当該端末のゲーム進行に対してペナルティを付与するペナルティ付与部と、
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、互いに通信可能に構成されるゲームサーバ及び端末、さらにゲームサーバによるゲームの制御方法及びプログラムに関する。
【背景技術】
【０００２】
アーケードゲーム機において、表示部に提示された操作タイミングのパターンに合わせてプレイヤが操作部を操作すると、この操作部の操作タイミングに合致した楽曲の部分的なフレーズである楽曲データが再生されて楽曲が再生されるとともに、提示された操作タイミングのパターンと実際にプレイヤが操作部を操作した操作タイミングとの時間差に基づいて点数が計算される、いわゆる音楽ゲームは周知である（例えば特許文献１参照）。また、ドラムリズムゲーム装置とギターリズム装置との間を通信部で接続し、各楽器のパート毎に複数人でゲームを行う音楽ゲームシステムも提案されている（特許文献２参照）。
【０００３】
近年、スマートフォンやタブレット端末に代表される、通信機能を有する携帯型の情報処理装置において、インターネット上に存在するゲームサーバと通信して所定のゲームをプレイする、いわゆるソーシャルゲームが普及しており、このようなソーシャルゲームにおいても、いわゆる音楽ゲームが実現されている（例えば非特許文献１参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開平１１−２１８０５６号公報
【特許文献２】特開２０００−２３７４５４号公報
【非特許文献】
【０００５】
【非特許文献１】「ラブライブ！スクールアイドルフェスティバル｜スクフェス」［平成27年3月5日検索］、インターネット<URL: http://lovelive.bushimo.jp/>
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、ソーシャルゲームにおいて、複数人のプレイヤがいわゆる音楽ゲームをプレイすることの可能なソーシャルゲームは存在していなかった。特に、ソーシャルゲームにおいては、複数人のプレイヤが協力して単一のゲームをプレイして共感を得ることでゲームの興趣を高める側面があるが、プレイヤの習熟度やスキルが不均一であるために、単一の曲を複数人に協力してプレイさせることが困難であった。
【０００７】
本発明は上述した課題に鑑みてなされたものであり、いわゆるソーシャルゲームにおいて複数人のプレイヤが音楽ゲームをプレイすることの可能なゲームサーバ、端末、ゲームサーバによるゲームの制御方法及びプログラムの提供を、その目的の一つとしている。
【課題を解決するための手段】
【０００８】
本発明は、端末に対して通信可能に接続されるゲームサーバに適用される。そして、特定の楽曲に対して異なる難易度の操作タイミングのパターンが複数格納された記憶部と、端末の動作に基づいて、複数の端末が属するグループを設定するグループ設定部と、単一のグループに属する端末に対して、例えば、個々または一律に特定の難易度を設定する難易度設定部と、難易度設定部が設定した難易度に基づいて端末ごとの操作タイミングのパターンを決定するパターン決定部と、パターン決定部が決定した操作タイミングのパターンを端末に送出する送出部と、端末からの操作信号（例えば、端末がタッチパネルを備える場合、当該タッチパネルをタップする操作が行われたことを表す信号）を受け入れ、この操作信号と操作タイミングとの時間差と各端末に設定した難易度とに基づいて、グループ単位での得点を算出する得点算出部とを設けることにより、ソーシャルゲームにおいて複数人のプレイヤが音楽ゲームをプレイすることが可能となる。
【０００９】
ここで端末の動作とは、例えば、端末がプレイヤの操作に応じて行う処理をいい、ここではグループの設定操作に基づく処理をいう。また、複数の端末が属するグループとは、ゲーム上の仮想的なグループである。
【００１０】
ここで、ゲームサーバの記憶部に操作タイミングのパターンに対応した音源データ（例えば、楽器の音など、ＷＡＶ、ＭＰ３等の音声データフォーマットのデータ）を格納した場合、送出部は、端末からの操作信号に基づいて音源データを端末に送出することが好ましい。これより、端末にて、ゲームサーバから送出された操作タイミングパターンに応じてプレイヤが操作を行うことで、疑似的に楽器を演奏したかのようなサウンドを端末において提示できる。
【００１１】
また、端末ごとのパラメータを算出して、例えば記憶部等に格納するパラメータ算出部を設けた場合、難易度設定部は、パラメータ算出部が算出したパラメータに基づいて、例えば、端末ごとの難易度をプレイヤに選択させたり、当該難易度設定部で自動的に選択することにより設定することが好ましい。
【００１２】
端末ごとのパラメータとは、例えば、当該端末の操作履歴（ゲームのプレイにおける操作の履歴）に基づいて得られる、端末を利用するプレイヤのゲームの達成度等を表す情報である。
【００１３】
さらに、得点算出部は端末単位の得点を算出し、パラメータ算出部は、得点算出部が算出した端末単位の得点に基づいて、端末ごとのパラメータを算出することが好ましい。これにより端末ごとのプレイヤの操作履歴を考慮した難易度の設定が可能となる。
【００１４】
また、パラメータ算出部が端末ごとに算出したパラメータに基づいて、難易度設定部が、端末ごとに、設定可能な難易度を決定し、当該端末ごとに決定した、設定可能な難易度を端末へ送出し、設定する難易度を端末から受け入れて、当該受け入れた難易度により、端末ごとの難易度を設定してもよい。
【００１５】
このように、端末を操作するプレイヤにより難易度を選択させる場合、選択可能な難易度を制限することで、複数のプレイヤによるグループ合奏において、プレイヤごとに、プレイヤにとって難しすぎる難易度は選択できないよう制御でき、意図的に高い難易度を選択して、グループ全体の得点を低下させるといった行為を制限できる。
【００１６】
さらに、難易度設定部により設定された特定の端末の難易度に基づいてこの端末に期待される動作を定める期待動作設定部と、特定の端末の動作が、期待動作設定部により定められた動作と異なった場合、この端末のゲーム進行に対してペナルティ（例えば、一定期間のプレイの禁止やアイテムの没収等）を付与するペナルティ付与部とを設けることが好ましい。これよりプレイヤが意図的にグループの他のプレイヤとの協働によるゲームプレイを妨害することに対し、ペナルティを付与できる。
【００１７】
端末に期待される動作とは、例えば、プレイヤの操作履歴等から、当該端末を操作するプレイヤが通常通りプレイすれば得られるであろう得点等を意味する。例えば、グループでのプレイにおいて端末に期待される動作を次のように定めてもよい。すなわち、プレイヤが単独でプレイしているときの操作履歴から、単独でのプレイの平均得点の半分を、プレイヤが通常通りプレイすれば得られるであろう得点とする。この場合、グループでのプレイ中、当該単独でのプレイの平均得点の半分に達しないときにペナルティを付与する。
【００１８】
加えて、期待動作設定部が、パラメータ算出部が算出したパラメータに基づいて、端末ごとの得点期待値を算出する期待値算出部を備えるとき、ペナルティ付与部は、得点算出部により算出された前記端末の得点と、前記期待値算出部が算出したこの端末の前記得点期待値との比較に基づいて、例えば、得点算出部により算出された特定の端末の得点が、期待値算出部が算出したこの端末の得点期待値より所定値以上下回った場合、この端末のゲーム進行に対してペナルティを付与することが好ましい。得点期待値は、例えば、過去に得た得点などである。これより、プレイヤが意図的にグループの他のプレイヤとの協働によるゲームプレイを妨害することに対し、ペナルティを付与できる。
【００１９】
またここでペナルティ付与部がペナルティを付与した場合、得点算出部は、当該ペナルティを付与した端末に対する得点を、当該端末で行われた操作によらずに算出することとしてもよい。この場合に、グループで合奏を行っている場合は、当該ペナルティが付与された端末のプレイヤの操作により演奏されるはずであったパートを自動演奏とする（例えば当該端末が正しい操作タイミングで操作されたと仮定して処理する）こととしてもよい。
【００２０】
これにより、例えば意図的に操作を誤るプレイヤについては、楽曲の途中で自動演奏に切り替え、グループの得点に影響させないようにしてもよい。
【００２１】
さらに、パラメータ算出部が算出したパラメータに基づいて、端末ごとの得点期待値を算出する期待値算出部を設けた場合、難易度設定部は、得点算出部により算出された前記端末の得点と、前記期待値算出部が算出したこの端末の前記得点期待値との比較に基づいて、例えば、得点算出部により算出された特定の端末の得点が、期待値算出部が算出したこの端末の得点期待値より所定値以上下回った場合、この端末に設定した難易度を変更することが好ましい。これにより、プレイヤが無理に高い難易度を設定してグループでのプレイに支障が発生することを防止できる。
【００２２】
さらに、難易度設定部は、端末の得点と、前記期待値算出部が算出したこの端末の前記得点期待値とに基づいて、例えば、特定の端末の得点が、期待値算出部が算出したこの端末の得点期待値より例えば所定値以上下回った場合、この端末を含む、グループに属する端末に設定した難易度を変更することが好ましい。これにより、プレイヤが無理に高い難易度を設定してグループでのプレイに支障が発生することを防止できる。
【００２３】
また、難易度設定部は、端末からの難易度に関する要求に基づいてこの端末に例えば特定の難易度を設定し、端末からの楽曲に関する要求に基づいて、この楽曲に関する操作タイミングのパターンを決定するパターン決定部をさらに有してもよい。これによりプレイヤが自身の希望に応じた難易度でプレイできるようになり、上級者モードなどの高いレベルを希望している場合や、自由な演奏モードでの演奏が可能となって、プレイヤがそのテクニックを競うことができるようになる。
【００２４】
また、操作タイミングのパターンは、このパターンに対応したタイミングで音源データが再生された際に、複数の操作タイミングのパターンに基づいて音源データが同時に再生されると、例えば特定の楽曲が再生されるパターンであることが好ましい。
【００２５】
ここで同時とは、完全一致に限らず、所定の時間範囲内の意味である。また複数の操作タイミングのパターンに基づいて音源データが同時に再生されることで、操作パターンに従ったプレイヤの操作に応じて疑似的に楽器を演奏したかのようなサウンドを端末において提示できる。
【００２６】
あるいは、操作タイミングのパターンは、このパターンに対応したタイミングで音源データが再生された際に、複数の操作タイミングのパターンに基づいて音源データが順次再生されると特定の楽曲が再生されるパターンであることが好ましい。
【００２７】
複数の操作タイミングのパターンに基づいて音源データが順次再生されることで、プレイヤの操作に応じて疑似的に楽器を演奏したかのようなサウンドが端末において提示される。
【００２８】
そして、得点算出部は、複数の端末からの操作信号と操作タイミングとの時間差が、端末が切り替わったタイミングを挟んで所定時間内であるとき、グループ単位の得点を通常の得点よりも高く算出することが好ましい。これにより演奏パートをまたいだ前後で、操作が連続して行われ、つなぎ目がスムーズにつながっているか否かを評価でき、つなぎ目がスムーズにつながっているときにグループの親密度が高いものと評価できる。
【００２９】
さらに、送出部は、単一のグループに属する複数の端末ごとに、楽曲のパートごとの操作タイミングのパターンを送出し、グループに属する一の端末に送出された、操作タイミングのパターンを、当該一の端末とは異なる他の端末へ送出することとしてもよい。
【００３０】
これにより、当該他の端末を操作するプレイヤに、グループ内の他のプレイヤの演奏を差し替えさせることを可能とし、グループの演奏得点を上昇させる処理（いわば応援機能モードの処理）を行うことが可能となる。
【００３１】
この応援機能モードは、例えば曲の完成度（得点）が低いプレイヤを助けるために、曲の完成度の高いプレイヤに、得点が低いプレイヤと同じパートを演奏させ、チームの演奏得点を上げるものである。
【００３２】
また、本発明は、ゲームサーバに対して通信可能に接続される端末に適用される。そして、端末自身を含む複数の端末をグループに属させる指示信号をゲームサーバに送出するグループ指示部と、ゲームサーバから送出された特定の楽曲に対応する操作タイミングのパターンを受け入れ、この操作タイミングのパターンに基づいて、端末の操作タイミングを指示する画面を表示する表示部と、端末への操作入力を受け入れてこの操作入力に基づく操作信号をゲームサーバに送出する入力部とを設けることにより、上述した課題の少なくとも一つを解決している。
【００３３】
さらに、本発明は、端末に対して通信可能に接続されるゲームサーバによるゲームの制御方法に適用される。そして、楽曲に対して異なる難易度の操作タイミングのパターンが複数格納し、端末の動作に基づいて、複数の端末が属するグループを設定し、単一のグループに属する端末に対して難易度を設定し、難易度設定部が設定した難易度に基づいて操作タイミングのパターンを端末に送出し、端末からの操作信号を受け入れ、この操作信号と操作タイミングとの時間差と、端末に設定した難易度とに基づいて、グループ単位での得点を算出することにより、上述した課題を解決している。
【００３４】
さらに、本発明は、端末に対して通信可能に接続され、楽曲に対して異なる難易度の操作タイミングのパターンが複数格納された記憶部を有するゲームサーバにおいて実行されるプログラムに適用される。そして、このプログラムがゲームサーバで実行されると、このゲームサーバを、端末の動作に基づいて、複数の端末が属するグループを設定するグループ設定部と、単一のグループに属する端末に対して難易度を設定する難易度設定部と、難易度設定部が設定した難易度に基づいて操作タイミングのパターンを端末に送出する送出部と、端末からの操作信号を受け入れ、この操作信号と操作タイミングとの時間差と、端末に設定した難易度とに基づいて、グループ単位での得点を算出する得点算出部として機能させることにより、上述した課題を解決している。
【発明の効果】
【００３５】
本発明によれば、いわゆるソーシャルゲームにおいて複数人のプレイヤが音楽ゲームをプレイすることが可能となる。
【図面の簡単な説明】
【００３６】
【図１】本発明の一実施形態であるゲームシステムの概略構成を示す図である。
【図２】一実施形態のゲームシステムを構成するゲームサーバの概略構成を示すブロック図である。
【図３】一実施形態のゲームシステムを構成する端末の概略構成を示すブロック図である。
【図４】一実施形態のゲームシステムの機能構成を示す機能ブロック図である。
【図５】（ａ）：一実施形態のゲームサーバに格納されるゲームテーブルの詳細を示す図である。（ｂ）：一実施形態のゲームサーバに格納されるユーザテーブルの詳細を示す図である。
【図６】（ａ）：一実施形態のゲームサーバに格納される楽曲テーブルの例を示す図である。（ｂ）：一実施形態のゲームサーバに格納される操作タイミングのパターンを表す操作パターンテーブルを示す図である。
【図７】一実施形態の端末の動作の一例を示すフローチャートである。
【図８】一実施形態のゲームサーバの動作の一例を示すフローチャートである。
【図９】一実施形態のゲームサーバの動作の一例を示すフローチャートである。
【図１０】一実施形態のゲームサーバの難易度設定動作の一例を示すフローチャートである。
【図１１】一実施形態のゲームサーバのパラメータ算出動作の一例を示すフローチャートである。
【図１２】（ａ）：一実施形態の端末に表示される表示画面の一例を示す図である。（ｂ）：一実施形態の端末に表示される表示画面の別の一例を示す図である。
【図１３】（ａ）：一実施形態の端末に表示される表示画面の他の例を示す図である。（ｂ）：一実施形態の端末に表示される表示画面のまた他の例を示す図である。
【図１４】（ａ）：一実施形態の端末に表示される表示画面のさらに他の例を示す図である。（ｂ）：一実施形態の端末に表示される表示画面のさらにもう一つの例を示す図である。
【図１５】一実施形態のゲームサーバの得点演算動作の一例を示すフローチャートである。
【図１６】一実施形態のゲームサーバの動作の一例を示すフローチャートである。
【図１７】一実施形態のゲームサーバの期待情報設定動作の一例を示すフローチャートである。
【図１８】一実施形態のゲームサーバのゲーム処理の一例を示すフローチャートである。
【図１９】一実施形態のゲームサーバの別のゲーム処理の動作の一例を示すフローチャートである。
【図２０】一実施形態のゲームサーバの動作の別の一例を示すフローチャートである。
【図２１】一実施形態のゲームサーバのゲーム処理の別の一例を示すフローチャートである。
【発明を実施するための形態】
【００３７】
以下、図面を参照して、本発明の実施形態について説明する。
［用語定義］
以下の説明において用いる、主な用語の定義をしておく。
（１）プレイヤとは、端末を操作する現実のユーザを指す。
（２）グループとは、ゲーム内で構築される、複数のプレイヤの仮想的な集合である。
（３）アイテムとは、ゲームサーバ１において提供されるゲームのプレイにおいて何らかの利益を与えるものをいう。一例として、現在設定されている端末ごとの難易度を一時期的に低いレベルにするものの、得点算出は、端末ごとに設定した難易度のままにするといった利益を与える。
【００３８】
［概略構成］
図１は、本発明の一実施形態であるゲームシステムの概略構成を示す図である。この図において、本実施の形態のゲームシステムＳは、互いにインターネット５等の通信手段を介して通信可能に接続されたゲームサーバ１と、複数の端末２ａ，２ｂ，…とを含む。なお、以下の説明では、端末をそれぞれ区別する必要がない場合は、符号のサフィックスを省いて、「端末２」と表記する。また、図１では、ゲームシステムＳを構成する端末２を、端末２ａ，２ｂの２つ図示しているが、本実施形態のゲームシステムＳでは単数または３台以上の端末２がゲームサーバ１と通信を行うことが可能である。
【００３９】
ゲームサーバ１はサーバコンピュータであり、インターネット５を介して、端末２を含む他の情報処理装置と通信可能に接続されている。このゲームサーバ１では、本実施形態において行われるゲームの処理を実行するプログラムが動作している。本実施形態において、ゲームサーバ１は、互いに異なるプレイヤによって操作される複数の端末２に対してインターネット５を介して接続され、単数のプレイヤが制御し、または複数のプレイヤがグループを構成してそれぞれ制御するゲームを提供する。このゲームサーバ１の構成及び動作については後述する。
【００４０】
端末２ｂは、いわゆるスマートフォン、タブレット端末等の情報処理装置、端末２ａはＰＣ（Personal Computer）等の情報処理装置であり、ルータ６等を介してインターネット５に接続されている。端末２ｂは、基地局４及びそれが接続される移動体通信網を介して音声通話が可能な携帯電話機やＰＤＡ、パーソナルコンピュータ、タブレット等であり、通信手段であるインターネット５を介してゲームサーバ１との間で通信可能な装置である。これら端末２の詳しい構成及び動作についても後述する。
【００４１】
［ゲームの概要例］
本実施形態のゲームシステムＳでは、ゲームサーバ１が端末２に対して、いわゆる音楽ゲームを提供する。本実施形態における音楽ゲームは、端末２にプレイヤの操作タイミングを指示する表示画面を表示させ、プレイヤがこの操作タイミングに合わせて端末２を操作すると、プレイヤの操作に基づく操作信号に合わせて楽器を演奏した際の音源データが端末２で再生され、これにより、擬似的に楽器を演奏したようなサウンドが端末２によって再生される。また、プレイヤの操作に基づく操作信号と指示された操作タイミングとの時間差が逐次算出され、この時間差に基づいてプレイヤの得点が算出される。
【００４２】
本実施形態のゲームシステムＳにおいて提供される音楽ゲームでは、複数のプレイヤがグループを構成し、各々のプレイヤが楽器を分担して演奏し、グループを構成するプレイヤの操作によって単一の楽曲を擬似的に再生できるプレイを可能としている。
【００４３】
グループとして音楽ゲームをプレイする態様については種々のものが採用可能であるが、ここではまず一例として、グループを構成するプレイヤが同時に端末２を操作することで個々のプレイヤが一つの楽器を擬似的に演奏し、これら個々のプレイヤによる擬似的な楽器の演奏がほぼリアルタイムで合奏されることで楽曲が擬似的に再生される（本明細書では同時プレイと称する）態様について説明する。
【００４４】
上述した態様における操作タイミングのパターンは、このパターンに対応したタイミングで音源データが再生された際に、複数の操作タイミングのパターンに基づいて音源データが再生されると特定の楽曲が再生されるパターンである。
【００４５】
当然、周知の音楽ゲームのように、単一のプレイヤのみが楽器を演奏することで楽曲を再生してもよい。
【００４６】
［ゲームサーバの概略構成］
図２は、本実施形態のゲームシステムＳに用いられるゲームサーバ１の概略構成を示すブロック図である。図２において、ゲームサーバ１は、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、有線ＬＡＮインタフェース（Ｉ／Ｆ）１３及びＨＤＤ部１４を備え、ＣＰＵ１０、ＲＯＭ１１、ＲＡＭ１２、有線ＬＡＮインタフェース１３及びＨＤＤ部１４はそれぞれ共通のバスにより接続されている。
【００４７】
なお、図２では、ゲームサーバ１が一台の装置として図示されているが、本実施形態において、ゲームサーバ１は、複数台のサーバコンピュータを含むクラスタサーバであってもよい。この場合、各サーバコンピュータにはそれぞれＨＤＤ部１４等の記憶部を備えて、それぞれのサーバコンピュータの記憶部に、ゲームとしての処理に必要なデータが分散されて記憶されていてもよい。
【００４８】
ＣＰＵ１０は、ＲＯＭ１１内に格納されたファームウェア等のプログラムがＲＡＭ１２において展開された後で実行されることで、ゲームサーバ１全体の動作制御を行うとともに、図４に示す各機能部に示す機能を実行する。図４に示す各機能部については後述する。ＲＯＭ１１には、上述のファームウェア等の本発明のプログラムが格納されている。ＲＡＭ１２は、ゲームサーバ１のワークメモリとして動作し、各種プログラム及びデータが一時的に格納される。
【００４９】
有線ＬＡＮインタフェース１３は、例えばＩＥＥＥ（The Institute of Electrical and Electronics Engineers, Inc.）８０２．３規格に準拠して、インターネット５との間で有線による通信を行う。
【００５０】
ＨＤＤ部１４は、ＨＤＤ１４１とＨＤＤインタフェース（Ｉ／Ｆ）１４０とを備える。ＨＤＤ１４１は、記録媒体であるディスクと、このディスクの回転を行う回転部と、ディスクに対してデータの読み出し／書き込みを行うヘッド部とを備える（いずれも不図示）。ＨＤＤインタフェース１４０は、このＨＤＤ１４１に対するデータの読み出し／書き込み指令があった場合に、ＨＤＤ１４１全体の制御を行うとともに、データの読み出し／書き込み制御を行い、読み出されたデータを出力する。ＨＤＤ１４１には、図４に示されるように、ゲームシステムＳにおいてプレイされているゲームの途中経過及び結果であるゲームテーブル４１、端末２の登録結果であるユーザテーブル４２、端末２に提供される操作タイミングのパターン（以下、「操作パターン」と省略することがある）４３、音源データ４４等が格納されている。ゲームテーブル４１、ユーザテーブル４２、操作パターン４３及び音源データ４４の詳細については後述する。
【００５１】
［端末の構成］
図３は、本実施形態のゲームシステムＳを構成する端末２の概略構成を示すブロック図である。図３において、端末２は、ＣＰＵ（Central Processing Unit）２０、ＲＯＭ（Read Only Memory）２１、ＲＡＭ（Random Access Memory）２２、表示デバイス２３、内部ストレージ部２４、移動体通信モジュール２５０、音声インタフェース（Ｉ／Ｆ）２５１、マイクロフォン２５２、スピーカ２５３、アンテナ２５４及び入力デバイス２６を備え、ＣＰＵ２０、ＲＯＭ２１、ＲＡＭ２２、表示デバイス２３、内部ストレージ部２４、移動体通信モジュール２５０及び入力デバイス２６はそれぞれ共通のバスにより接続されている。
【００５２】
ＣＰＵ２０は、ＲＯＭ２１内に格納されたファームウェア等のプログラムがＲＡＭ２２において展開された後で実行されることで、端末２全体の動作制御を行う。また、ＣＰＵ２０は、ＲＯＭ２１内に格納されたプログラムが実行されることにより、図４に示すような各機能部としても動作する。図４に示す各機能部の動作については後述する。ＲＯＭ２１には、上述のファームウェア等のプログラムや、各種設定データが格納されている。ＲＡＭ２２は、端末２のワークメモリとして動作し、各種プログラム及びデータが一時的に格納される。
【００５３】
表示デバイス２３は、液晶パネル２３１とこの液晶パネル２３１を駆動させる液晶ドライバ２３０とを備える。液晶パネル２３１は、その表示面が端末２の表面に露出して設けられている。液晶ドライバ２３０は、表示画面を構成するデータがＣＰＵ２０からこの液晶ドライバ２３０に供給されると、液晶パネル２３１の表示面に所望の表示画面を表示するようにこの液晶パネル２３１を駆動する。
【００５４】
内部ストレージ部２４は、内部ストレージ２４１と内部ストレージインタフェース（Ｉ／Ｆ）２４０とを備える。内部ストレージ２４１は、例えばフラッシュメモリのような不揮発性半導体メモリであり、端末２において用いられるブラウザプログラム等のアプリケーションプログラム等が格納される。内部ストレージインタフェース２４０は、この内部ストレージ２４１に対するデータの読み出し／書き込み指令があった場合に、内部ストレージ２４１全体の制御を行うとともに、データの読み出し／書き込み制御を行い、読み出されたデータを出力する。なお、内部ストレージ２４１は、例えばｍｉｃｒｏＳＤのような挿脱可能な不揮発性メモリーカードであってもよく、この場合、内部ストレージインタフェース２４０は、このメモリーカードが装着されるメモリカードスロットをさらに備える。
【００５５】
移動体通信モジュール２５０は、例えば携帯電話回線との通信を行うものであり、具体的にはアンテナ２５４を介して移動体通信網との間で情報を授受する。すなわち、移動体通信モジュール２５０は、移動体通信網の基地局４との間で音声電話通信を行い、受信した情報に基づく音声信号を、音声インタフェース（Ｉ／Ｆ）２５１を介してスピーカ２５３から発音させ、音声インタフェース２５１を介してマイクロフォン２５２が集音して得た音声信号を、基地局４に送信する。また、移動体通信モジュール２５０は、パケット化されたデータを移動体通信網の基地局４との間で送受信をすることで、データ通信を行う。
【００５６】
入力デバイス２６は、入力インタフェース（Ｉ／Ｆ）２６０、入力指示部２６１及びタッチパネル２６２を備える。
【００５７】
入力インタフェース２６０には入力指示部２６１が接続され、ユーザが入力指示部２６１を操作することにより入力される入力信号を受信する。入力指示部２６１は、プッシュボタン等である。タッチパネル２６２は、本実施形態では液晶パネル２３１の表示面の上面に重畳されて設けられ、この液晶パネル２３１の表示面と略同一の大きさを有する。プレイヤがタッチパネル２６２の表面に触れると、当該プレイヤが触れたタッチパネル２６２の表面上の位置を表す情報が入力インタフェース２６０を介して出力される。
【００５８】
［ゲームシステムの機能構成］
次に本実施の形態に係るゲームシステムＳが実現する機能について説明する。本実施の形態では、ゲームサーバ１の制御部３０が記憶部３１に格納されたプログラムを実行するとともに、各端末２の制御部５０が記憶部５１に格納されたプログラムを実行することにより、図４に例示する各機能ブロックを実現する。図４は、本実施形態のゲームシステムＳの機能構成を示す機能ブロック図である。図４において、本実施形態のゲームシステムＳを構成するゲームサーバ１は、制御部３０、記憶部３１及び通信部３２を備える。
【００５９】
制御部３０は、複数の端末２との間で通信を行い、各端末２の利用者（プレイヤ）を認証する。また認証したプレイヤによる端末２でのゲームの操作に関する情報を端末２から受信し、ゲームの処理を実行して、その処理の結果に基づいて、ゲームの画像情報やサウンド情報（楽曲の情報等を含む）等を端末２へ送出する。本実施形態のゲームサーバ１の制御部３０は、グループ設定部３３、難易度設定部３４、パターン決定部３５、送出部３６、得点算出部３７、パラメータ算出部３８、期待動作設定部３９、及びペナルティ付与部４０を備える。
【００６０】
グループ設定部３３は、端末２の動作に基づいて、複数の端末２が属するグループを設定する。より詳細には、グループ設定部３３は、端末２のグループ指示部５６からの指示信号（例えば、グループの設定を開始する指示を表す指示信号等）を受け入れ、この指示信号に基づいて複数の端末２が属するグループを設定する。
【００６１】
グループ設定部３３によるグループの設定手法は例えば次のようなものである。すなわち、端末２からグループの設定を開始する指示信号を受け入れると、ゲームサーバ１の制御部３０は、記憶部３１に格納されたゲームテーブル４１を参照する。制御部３０は、ゲームテーブル４１を参照した時点でゲームサーバ１との間で当該音楽ゲームをプレイできる状態にある端末２を抽出する。制御部３０は、プレイできる状態にある端末２をグループ構成可能な端末２の候補として、グループの設定を開始する指示信号を出力した端末２に提示する。そして、この端末２のグループ指示部５６から送出されたグループ設定の指示信号に基づいて、複数の端末２が属するグループを設定する。
【００６２】
また、グループの設定方法は、これに限られない。グループの設定方法の別の例では、端末２が、移動体通信モジュール２５０等を用いて端末２が所在する現在地情報を取得し、グループの設定を開始する指示信号とともにゲームサーバ１へ送出する。ゲームサーバ１は、端末２の現在地情報を受信し、当該現在地情報が表す現在位置が所定距離（例えば１０ｋｍ）以下である他の端末２（グループの設定を開始する指示信号を出力した端末２とは異なる端末２）をグループ構成可能な端末２の候補として、グループの設定を開始する指示信号を出力した端末２に提示することとしてもよい。
【００６３】
さらに、ゲームサーバ１にグループの登録をする際に、他のプレイヤから入手した（教えてもらった）コードを入力することで、この他のプレイヤが操作する端末２をグループ構成可能な端末２の候補として、グループの設定を開始する指示信号を出力した端末２に提示することによっても、グループを設定できる。
【００６４】
難易度設定部３４は、単一のグループに属する端末２に対して、操作タイミングのパターンである操作パターン４３に関連付けられた特定の難易度を設定する。詳細は後述するが、記憶部３１には、楽曲ごとに、難易度が異なる複数の操作パターン４３が関連付けられて格納されている。
【００６５】
難易度設定部３４は、所定の方法で、難易度を設定する。一例として難易度設定部３４は、単一のグループに属する端末２の少なくとも一つ、好ましくは全ての端末２から難易度を設定するべき旨の要求を受けて、端末２の操作履歴等に基づいて難易度を決定する。この、操作履歴等に基づいて難易度設定部３４が具体的な難易度を決定する手順については後に詳述する。
また、難易度設定部３４は、プレイヤからの指示により難易度を定めてもよい。一例としてこの難易度設定部３４は、例えばある端末２から楽曲の指定を受け、当該楽曲の指定を行った端末２と同じグループに属する端末２に対して、指定された楽曲に関連付けられている複数の操作パターン４３の難易度を一覧として提示し、端末２に対して難易度の指定を促してもよい。この例では、難易度設定部３４は、単一のグループに属する端末２の少なくとも一つ、好ましくは全ての端末２から、プレイヤがプレイを希望する操作パターン４３の難易度を指定する指定信号を受け入れ、この指定信号に基づいて、実際に端末２において音楽ゲームをプレイする際に個々の端末２に送出する操作パターン４３の難易度（つまり指定された楽曲についてどの操作パターン４３を送出するか）を設定することとしてもよい。
【００６６】
パターン決定部３５は、難易度設定部３４が設定した難易度に基づいて、端末２毎の操作タイミングのパターンである操作パターン４３を決定する。図６に例示するように、楽曲ごとに操作パターン４３と難易度とは関連付けられて記憶部３１に記憶されており、パターン決定部３５は、難易度設定部３４が設定した難易度に関連付けて記憶部３１に格納されている操作パターン４３を抽出し、端末２毎の操作パターン４３を決定する。好ましくは、パターン決定部３５は、端末２からの楽曲に関する要求に基づいて、この楽曲に関する操作タイミングのパターンである操作パターン４３を決定する。
【００６７】
［操作パターンの例］
図６は、本実施形態のゲームサーバ１の記憶部３１に格納されている操作パターン４３の構成を示す図である。本実施形態において、操作パターン４３は、楽曲に関する情報が格納された楽曲テーブル４３０と、各楽曲に用意された操作パターンテーブル４３１とを備える。
【００６８】
図６（ａ）は、本実施形態のゲームサーバ１の記憶部３１に格納されている楽曲テーブル４３０の構成例を示す図である。この楽曲テーブル４３０には、楽曲名欄４３０ａ、パターン識別子欄４３０ｂ及び設定難易度欄４３０ｃが設けられている。
【００６９】
楽曲名欄４３０ａの個々のセルには、楽曲名を示すテキストデータが格納される。パターン識別子欄４３０ｂの個々のセルには、楽曲名欄４３０ａのセルに格納された楽曲名に対応する、操作パターンテーブル４３１を識別するための識別子（ＩＤ）が格納される。設定難易度欄４３０ｃの個々のセルには、楽曲名欄４３０ａのセルに格納された楽曲名の楽曲に対応する操作パターン４３に設定された難易度の初期値が格納される。ここで、単一の楽曲には複数の（レベルの）難易度の初期値が設定されることが好ましく、この設定難易度欄４３０ｃの個々のセルには、複数の難易度の初期値が格納される。
【００７０】
次に、図６（ｂ）は、本実施形態のゲームサーバ１の記憶部３１に格納されている操作パターンテーブル４３１の構成を示す図である。ここでの例では、操作パターンテーブル４３１は、パターン識別子ごとに、所定の区切り単位を表す情報である（ここでは一例として小節を区切り単位とする）小節番号４３１ｃと、タイミング情報４３１ｄとを関連付けたものとなっている。
【００７１】
小節番号４３１ｃの個々のセルには、楽曲の小節に対応する、整数値を取る小節番号が格納される。小節番号４３１ｃは、列の上から下に進むに従って昇順となる等差数列（好ましくは等差が１の）の値とされており、より好ましくは、初期値は０または１である。そして、最大の小節番号は、例えば、対応する楽曲の長さにより定められる。
【００７２】
タイミング情報４３１ｄは、関連付けられている小節番号４３１ｃの小節において、プレイヤに対してどのような端末２の操作を要求するか、より詳細には、この小節番号の小節においてタイミングを合わせて端末２の操作を要求する場合に、タイミングを示す情報が格納される。具体的にここでのゲームにおいて複数の楽器が演奏され、さらに、各々の楽器においてそれぞれ操作を要求する場合、このタイミング情報４３１ｄには、楽器毎に、どのタイミングで、どのような操作を要求するかを示す情報（操作タイミング）が格納される。
【００７３】
どのような操作を要求するかを表す情報には、操作の継続時間や、連続的に操作する（連打）か否か、連打する場合はその連打の継続時間を表す情報が含まれる。
【００７４】
送出部３６は、パターン決定部３５が端末２ごとに決定した操作パターン４３を、好ましくは通信部３２を介して端末２に送出する。ここで操作パターン４３を送出するとは、送出することとして決定されたパターン識別子に係る小節番号４３１ｃとタイミング情報４３１ｄとの組を送出することを意味する。また好ましくは、送出部３６は、端末２からの操作信号に基づいて、記憶部３１に格納されている音源データ４４を端末２に送出する。あるいは、送出部３６は、操作パターン４３に伴って音源データ４４を端末２に送出する。どのタイミングで送出部３６が音源データ４４を端末２に送出するかは任意である。操作パターン４３に従ってプレイヤが端末２を操作して擬似的に楽器演奏を行いうるならば、端末２による楽曲を指定する指定信号の送出、難易度を指定する指定信号の送出に応答して、また、操作パターン４３の送出に伴って、さらには端末２からの操作信号に応答して、音源データ４４を送出してもよい。
【００７５】
得点算出部３７は、端末からの操作信号を受け入れ、この操作信号と操作タイミングとの時間差と各端末２に設定した難易度とに基づいて、グループ単位での得点を算出する。
【００７６】
より詳細には、得点算出部３７は、図１５に例示するように、送出部３６が端末２に送出した操作パターン４３と、端末２からの操作信号を、特定の時間（音楽ゲームのプレイ開始時）を起点とした時間軸上で対比し（Ｓ１０１）、この操作信号と操作タイミングとの時間差とを、好ましくは操作タイミング毎に算出する（Ｓ１０２）。そして、操作タイミング毎に算出した時間差に基づいて操作タイミングごとの基本得点を決定する（Ｓ１０３）。この操作タイミングごとの得点の決定は、時間差の大きさに応じて行えばよい。例えば、時間差が０、あるいは０とみなせる程度の絶対値であった（以下、ヒットと呼ぶ）時の得点を一番高い値に設定し、時間差の絶対値が所定範囲内であった場合の得点を次に高い値に設定し、それ以外の時間差の絶対値については得点を加算しない、あるいは、得点をマイナスの値に（つまり得点を減点）する。
【００７７】
またここで、ヒットが所定回数連続したなど、いわゆるコンボ状態が発生しているか否かを調べ（Ｓ１０４）、コンボ状態となっていれば（Ｓ１０４：Yes）、基本得点にボーナス点を加算して操作タイミングごとの得点とする（Ｓ１０５）。そして、得点算出部３７は、当該操作タイミングごとに決定した得点を累算して楽曲単位の得点を算出する（Ｓ１０６）。また処理Ｓ１０４においてコンボ状態でなければ（Ｓ１０４：No）、処理Ｓ１０６に移行し、基本得点をそのまま操作タイミングごとの得点として、累算する。
【００７８】
なお、ボーナス点の加算方法は、コンボ状態の場合に限られず、楽曲単位の得点が一定値以上になっているときにもボーナス点を加算するようにしてもよい。
【００７９】
また処理Ｓ１０３で決定する基本得点は、各端末２に設定した難易度に基づいて決定してもよい。また処理Ｓ１０５で加算するボーナス点の値も難易度に基づいて決定してもよい。
【００８０】
得点算出部３７はさらに、処理Ｓ１０６で端末２ごとに得た得点をグループ単位で累算して、グループ単位の得点を算出する（Ｓ１０７）。得点算出部３７は楽曲が終了したか否かを判断し（Ｓ１０８）、終了していなければ（Ｓ１０８：No）、処理Ｓ１０１に戻って処理を続ける。また、処理Ｓ１０８において楽曲が終了したと判断すると（Ｓ１０８：Yes）、得点算出部３７は、楽曲をクリアしたか否かを判断する（Ｓ１０９）。この処理Ｓ１０９において、楽曲をクリアしたと判断すると（Ｓ１０９：Yes）、得点算出部３７は、処理Ｓ１０７で算出したグループ単位の得点に、楽曲をクリアしたとしてさらに加点するなど特典を付与して（Ｓ１１０）、処理を終了する。また、処理Ｓ１０８において楽曲をクリアしなかったと判断すると（Ｓ１０９：No）、特典を付与することなく処理を終了する。
【００８１】
この処理Ｓ１０９での楽曲をクリアしたか否かの判断は、楽曲についての満点、つまり、全ての操作タイミングについてヒットであった場合の楽曲単位の得点に対する実際の得点の比に基づいて行うことができる。例えばこの比の値が一定以上（例えば５０％以上）であった場合、楽曲をクリアしたと判断する。なお、この楽曲クリアの基準となる比の値は、端末２毎に設定された難易度に基づいて設定してもよい。一例として、難易度のレベルが上であるほど、基準となる比の値を大きな値にする。また、端末２毎の得点の加算値ではなく、端末２毎の得点の平均値を用いて、上記の比を算出してもよい。さらに処理Ｓ１１０において付与する特典は、加点に限られず、グループのプレイヤに対してアイテムを付与するものであってもよい。
【００８２】
パラメータ算出部３８は、端末２毎のパラメータを算出して記憶部３１に格納する。パラメータ算出部３８が算出する端末２毎のパラメータは、好ましくは、プレイヤが音楽ゲームをプレイするために端末２を操作した操作履歴に基づいて算出され、より好ましくは、操作履歴を様々な側面から数値化したパラメータである。従って、パラメータ算出部３８が算出するパラメータは、複数の値の集合体であることが好ましい。
【００８３】
パラメータ算出部３８が算出するパラメータの基礎となる端末２毎の操作履歴とは、一例として、プレイヤが行った操作が、操作パターン４３（操作パターン４３に含まれる小節番号ごとの操作タイミング）ごとに、過去、当該プレイヤがプレイしたときの得点（得点算出部３７が算出した得点）や、当該得点を楽曲単位で累算した値に基づく楽曲の達成度、言い換えれば、得点算出部３７が算出した端末２単位の得点の、満点に対する比を収集したものが含まれる。加えて、端末２毎の操作履歴には、過去、当該プレイヤがプレイした楽曲やその際に難易度設定部３４がこの端末２に設定した難易度、さらには得点算出部３７が算出した端末２単位及びグループ単位の得点そのものが含まれてもよい。
【００８４】
そして、パラメータ算出部３８は、上述した操作履歴に基づいて、全体としてこのプレイヤがどのような操作が得意なのか（つまり達成度が高いのか）不得意なのか（つまり達成度が低いのか）を分析し、その分析結果をパラメータという定量化した値として算出する。具体的にこのパラメータは、操作履歴において所定のしきい値より高い得点となっている操作タイミングを表すパターン識別子に関連付けられた難易度（設定難易度）の平均値をパラメータとしてもよい。もっとも、このパラメータは絶対的な数値である必要はなく、幾つかの値（レベル）からなる相対的な数値であってもよい。
【００８５】
本実施の形態の一例に係る難易度設定部３４は、パラメータ算出部３８が算出したパラメータに基づいて端末２毎の難易度を設定する。すなわち、難易度設定部３４は、端末２毎の操作履歴及びこの結果としてのパラメータに基づいて端末２毎の難易度を設定する。具体的に、プレイヤが音楽ゲームを複数回プレイしているにもかかわらず、上述の達成度が一定値に達しない場合、操作履歴により判断される、過去にプレイされた難易度よりも低い難易度を難易度設定部３４が設定してもよい。加えて、端末２から指定があった難易度よりも低い難易度を難易度設定部３４が設定した場合、この端末２と同じグループに属する他の端末２の操作履歴を参照し、上述の達成度が一定値を上回る端末２に対して、指定があった難易度よりも高い難易度を難易度設定部３４が設定し、グループ全体の難易度を維持または大きく下がるのを緩和してもよい。
【００８６】
またプレイヤからの指示により難易度を定める場合も、難易度設定部３４は、パラメータ算出部３８が算出したパラメータを用いてもよい。すなわちこの例では、難易度設定部３４は、指定された楽曲に関連付けられている複数の操作パターン４３の難易度の一覧をそのまま提示するのではなく、パラメータ算出部３８が端末２ごとに算出したパラメータに基づいて、端末２ごとに、設定可能な難易度を決定する。具体的に、プレイヤが音楽ゲームを複数回プレイしているにもかかわらず、上述の達成度が一定値に達しない場合、操作履歴により判断される、過去にプレイされた難易度未満の難易度を、設定可能な難易度とする。
【００８７】
そして難易度設定部３４は、端末２ごとに決定した、設定可能な難易度の一覧を端末へ送出し、設定する難易度を端末２から受け入れて、当該受け入れた難易度により、端末２ごとの難易度を設定する。
【００８８】
このように、端末２を操作するプレイヤにより難易度を選択させる場合にも、選択可能な難易度を制限することで、複数のプレイヤによるグループ合奏において、プレイヤごとに、プレイヤにとって難しすぎる難易度は選択できないよう制御でき、意図的に高い難易度を選択して、グループ全体の得点を低下させるといった行為を制限できる。
【００８９】
期待動作設定部３９は、難易度設定部３４により設定された特定の端末２の難易度に基づいてこの端末２に期待される動作を定める。より詳細には、期待動作設定部３９は、端末２に設定された難易度に基づいて、端末２に期待される動作を表す情報（期待情報）を決定する。一例として、高い難易度が設定されている場合には、当該楽曲に対する音楽ゲームのプレイに高得点を取得する可能性が高いものと期待して、期待される得点を表す期待情報を定める。また、比較的高い難易度が設定された端末２については、当該端末２からの操作信号と操作タイミングとの時間差が小さくなる操作、動作がされるものと期待して、当該時間差として比較的短い時間を表す情報を、期待情報とする。
【００９０】
具体的に期待動作設定部３９は、パラメータ算出部３８が算出したパラメータに基づいて、端末２毎の得点期待値を算出する期待値算出部３９ａを備えてもよい。この期待値算出部３９ａは、パラメータ算出部３８が算出したパラメータ、一例として、端末２の操作履歴に基づいた達成度に基づいて、端末２が指定した操作パターン４３であればこの端末２が取得するであろう得点期待値を、期待情報として算出する。
【００９１】
そして、ペナルティ付与部４０は、特定の端末２の動作が、期待動作設定部３９により定められた動作と異なった場合、つまり、期待情報が表す情報通りの情報が得られない場合、当該端末２のゲーム進行に対してペナルティを付与する。一例として、特定の端末２からの操作信号と操作タイミングとの時間差を算出した結果と、当該時間差に係る期待情報とを比較し、実際に算出された結果が、期待情報の表す時間差よりも大きいことが、一曲の楽曲演奏の間に多発した（予め定めた回数より多かった）ときに、特定の端末２を操作したプレイヤが意図的にこの時間差を大きくする操作をした、言い換えれば意図的にミスをする操作をした、また、グループに属する他の端末２の操作を邪魔した（例えば、特定の端末２に操作パターンが割り当てられていないのに、他の端末２の操作タイミングに合わせて特定の端末２の操作をした）とペナルティ付与部４０が判断する。このように判断したときには、ペナルティ付与部４０は、特定の端末２のゲーム進行に対してペナルティを付与する。
【００９２】
またペナルティ付与部４０は、期待情報が得点期待値である場合は、得点算出部３７により算出された特定の端末２の得点が、期待値算出部３９ａが算出した当該端末２の得点期待値より下回った（かつその差が所定値以上であることを条件としてもよい）場合、この端末２のゲーム進行に対してペナルティを付与する。つまり、特定の端末２の得点が、期待値算出部３９ａが算出したこの端末２の得点期待値より下回ったとき、この端末２を操作するプレイヤが意図的にミスをする操作をした、また、グループに属する他の端末２の操作を邪魔したと判断して、ペナルティを付与する。
【００９３】
例えば、期待情報としての得点期待値は演奏の終了時に、期待される得点（例えば端末２のプレイヤが単独でプレイしているときの平均得点）Ｓeとして演算しておき、楽曲の演奏時間Ｔtotalに対して現在の演奏開始からの経過時間Ｔlapseの比を、得点期待値に乗じて得られる値Ｓe×Ｔlapse／Ｔtotalと、現在の得点との差（の絶対値）が所定のしきい値（０以上の正の値とする）以上ある場合に、ペナルティ付与部４０がこの端末２のゲーム進行に対してペナルティを付与することとしてもよい。
【００９４】
ペナルティ付与部４０により付与されるペナルティは任意であるが、一例として、ペナルティが付与されるべき特定の端末２において一定時間、例えば１曲の楽曲分だけ音楽ゲームのプレイを禁止する（プレイできない）、特定の端末２に付与されているアイテムを没収する（没収してグループに属する他のプレイヤの端末２にアイテムを付与する）、グループから除名する、端末２に表示される画面の一部を非表示にする、特定の端末２の操作履歴の一部を変更して、例えば達成度を低くする、などのペナルティが挙げられる。
【００９５】
あるいは、難易度設定部３４が、得点算出部３７により算出された特定の端末２の得点が、期待値算出部３９ａが算出したこの端末２の得点期待値より所定値以上下回った場合、この端末２に設定した難易度を変更することとしてもよい。好ましくは、難易度設定部３４は、特定の端末２の得点が、期待値算出部３９ａが算出したこの端末２の得点期待値より所定値以上下回った場合、この端末２を含む、グループに属する端末２に設定した難易度を変更する。
【００９６】
つまり、本実施の形態によると、図１６に例示するように、パラメータ算出部３８が、上述した操作履歴に基づいて、全体としてこのプレイヤがどのような操作が得意なのか（つまり達成度が高いのか）不得意なのか（つまり達成度が低いのか）を表すパラメータを算出する（Ｓ１２１）。
【００９７】
そして難易度設定部３４が、当該算出されたパラメータに基づいて端末２毎の難易度を設定する（Ｓ１２２）。ここで難易度設定部３４により設定された特定の端末２の難易度に基づき、期待動作設定部３９が各端末２に期待される動作を表す期待情報を定める（Ｓ１２３）。
【００９８】
そして、ペナルティ付与部４０は、楽曲の演奏中、各端末２の動作と、期待情報が表す動作とを比較して、期待動作設定部３９により定められた動作と異なっている端末２があるか否かを調べ（Ｓ１２４）、そのような端末２があれば（Ｓ１２４：Yes）、当該端末２を特定する情報を、ゲーム進行に対してペナルティを付与して（Ｓ１２５）処理を終了する。また、処理Ｓ１２４において、期待動作設定部３９により定められた動作と異なっている端末２がなければ（Ｓ１２４：No）、処理を終了する。
【００９９】
またここでペナルティ付与部４０がペナルティを付与した場合は、ペナルティ付与部４０は、得点算出部３７に対して当該ペナルティを付与した端末２を特定する情報を出力してもよい。この場合は得点算出部３７は、当該情報で特定される端末２の得点については、当該端末２で行われた操作によらずに算出する。
【０１００】
具体的に得点算出部３７は、ペナルティ付与部４０によりペナルティが付与された端末２の得点を、当該端末２について期待値算出部３９ａが算出した得点期待値そのものとしてもよい。また、ペナルティ付与部４０によりペナルティが付与された端末２の得点を「０」、あるいは予め定めておいた一定の値としてもよい。
【０１０１】
これにより、例えば意図的に操作を誤るプレイヤについては、その操作がグループの得点に影響されないようにしておく。
【０１０２】
この例において、グループで合奏を行っている場合は、当該ペナルティが付与された端末２のプレイヤの操作により演奏されるはずであったパートを自動演奏としてもよい。ここで自動演奏は、例えばペナルティが付与された端末２が正しい操作タイミングで操作されたと仮定して、このペナルティが付与された端末２と、同じグループの他の端末２に対して情報を送出することで、ペナルティが付与された端末２における実際の操作に関わらず、正しい操作に基づく演奏が、ペナルティが付与された端末２以外の端末２において鳴動されるよう制御することを意味する。
【０１０３】
記憶部３１は制御部３０等の動作に必要な各種データ、プログラムを少なくとも一時的に格納するものである。また、この記憶部３１には、ゲームシステムＳにおいてプレイされているゲームの途中経過及び結果であるゲームテーブル４１、端末２の登録結果であるユーザテーブル４２、端末２に提供される操作パターン４３、及び音源データ４４が格納されている。
【０１０４】
通信部３２は、インターネット５を介して端末２との間で種々の情報を送受する。具体的にこの通信部３２は、インターネット５を介して端末２から受信した情報（操作の内容を表す情報等を含む）を制御部３０に出力する。またこの通信部３２は、制御部３０から入力される指示に従い、指示された宛先となった端末２に対して画像情報等を送出する。
【０１０５】
一方、本実施形態のゲームシステムＳを構成する端末２は、制御部５０、記憶部５１、入力部５２、表示部５３、出力部５４及び通信部５５を備える。
【０１０６】
制御部５０は、ゲームサーバ１に対してゲームの画像情報やサウンド情報を要求するよう通信部５５に指示し、通信部５５がゲームサーバ１から受信する画像情報を受け入れて、当該画像情報を表示部５３に表示し、またゲームサーバ１から通信部５５が受信した指示に従って出力部５４を制御し、サウンド情報の鳴動処理を行う。またこの制御部５０は、プレイヤである利用者が行った操作の情報をゲームサーバ１に対して送出するよう通信部５５に指示する。本実施形態の端末２の制御部５０は、グループ指示部５６及び音声制御部５７を備える。
【０１０７】
グループ指示部５６は、端末２自身を含む複数の端末２をグループに属させる指示信号をゲームサーバに送出する。好ましくは、グループ指示部５６は、グループ設定部３３から提示されたグループ構成可能な端末２の候補を表示部５３に表示させ、プレイヤが入力部５２を介して入力した、プレイヤがグループに属させることを希望する他の端末２の入力信号に基づいて、端末２自身を含む複数の端末２をグループに属させる指示信号をゲームサーバに送出する。
【０１０８】
音声制御部５７は、プレイヤが入力部５２を介して入力した入力信号と、ゲームサーバ１から提供される音源データ４４とに基づいて、入力信号のタイミングに応じて音源データ４４を再生して出力部５４から出力させることで、擬似的な楽器演奏を行うサウンドを再生する。
【０１０９】
記憶部５１は制御部５０等の動作に必要な各種データ、プログラムを少なくとも一時的に格納するものである。また、この記憶部５１には、端末２においてプレイされる音楽ゲームを実行するためのアプリケーションソフトウェア４５が格納されている。このアプリケーションソフトウェア４５は、音楽ゲームのプレイに先立って、ゲームサーバ１を含むインターネット上のサーバから入手（ダウンロード）したものである。
【０１１０】
入力部５２は、プレイヤからの指示入力操作を受け入れて、当該指示操作の内容を示す入力信号を制御部５０に出力する。表示部５３は、制御部５０から出力される画像情報表示用信号に従い、画像情報を表示する。出力部５４は、制御部５０から出力される再生信号に従い、サウンドを再生する。
【０１１１】
通信部５５は、インターネット５を介してゲームサーバ１との間で種々の情報を送受する。具体的にこの通信部５５は、インターネット５を介してゲームサーバ１から受信した情報を制御部５０に出力する。またこの通信部５５は、制御部５０から出力される指示に従い、指示された宛先となったゲームサーバ１に対して操作の情報等を送出する。
【０１１２】
以上の構成において、制御部３０及び制御部３０を構成するグループ設定部３３、難易度設定部３４、パターン決定部３５、送出部３６、得点算出部３７、パラメータ算出部３８、期待動作設定部３９、及びペナルティ付与部４０は主にＣＰＵ１０により構成され、記憶部３１は主にＲＯＭ１１、ＲＡＭ１２及びＨＤＤ部１４により構成され、そして、通信部３２は主に有線ＬＡＮインタフェース１３により構成される。
【０１１３】
また、制御部５０及び制御部５０を構成するグループ指示部５６及び音声制御部５７は主にＣＰＵ２０により構成され、記憶部５１は主にＲＯＭ２１、ＲＡＭ２２及び内部ストレージ部２４により構成され、入力部５２は主に入力デバイス２６により構成され、表示部５３は主に表示デバイス２３により構成され、出力部５４は主にスピーカ２５３により構成され、そして、通信部５５は主に移動体通信モジュール２５０により構成される。図４に示す各機能部の動作については後に詳述する。
【０１１４】
［一実施形態のユーザテーブル及びゲームテーブルの構成］
図５は、本実施形態のゲームサーバ１の記憶部３１に格納されているユーザテーブル４２及びゲームテーブル４１の構成を示す図である。
【０１１５】
まず、図５（ａ）は、本実施形態のゲームサーバ１の記憶部３１に格納されているゲームテーブル４１の構成を示す図である。このゲームテーブル４１には、プレイヤ識別子欄４１ａ、グループ識別子欄４１ｂ、選択曲欄４１ｃ、設定難易度欄４１ｄ、得点欄４１ｅ、期待値欄４１ｆ及び操作履歴パラメータ欄４１ｇが設けられている。
【０１１６】
プレイヤ識別子欄４１ａの個々のセルには、端末２を操作しているプレイヤを識別するための識別子（ＩＤ）が格納される。グループ識別子欄４１ｂの個々のセルには、端末２が属するグループを識別するための識別子（ＩＤ）が格納される。選択曲欄４１ｃの個々のセルには、端末２において現在プレイされている音楽ゲームにおいて演奏されている（端末２によって選択されている）楽曲名が格納される。
【０１１７】
設定難易度欄４１ｄの個々のセルには、難易度設定部３４によりプレイヤが操作する端末２に設定された難易度が格納される。得点欄４１ｅの個々のセルには、得点算出部３７により算出された端末２毎の得点、及び、この端末２が属するグループの得点が格納される。期待値欄４１ｆの個々のセルには、期待値算出部３９ａにより算出された期待値が格納される。操作履歴パラメータ欄４１ｇの個々のセルには、パラメータ算出部３８により算出された端末２毎の操作履歴及びこの操作履歴に基づくパラメータが格納される。
【０１１８】
そして、このゲームテーブル４１の個々の行（図５（ａ）においてセルを横方向に並べた一行）には、プレイヤ識別子欄４１ａのセルに格納されたプレイヤ識別子により識別される端末２に関連するデータが格納される。
【０１１９】
次に、図５（ｂ）は、本実施形態のゲームサーバ１の記憶部３１に格納されているユーザテーブル４２の構成を示す図である。このユーザテーブル４２には、プレイヤ識別子欄４２ａ、ネットワークアドレス欄４２ｂ、及びセッション情報欄４２ｃが設けられている。
【０１２０】
プレイヤ識別子欄４２ａの個々のセルには、端末２を操作しているプレイヤを識別するための識別子（ＩＤ）が格納される（プレイヤ識別子欄４１ａに対応）。ネットワークアドレス欄４２ｂには、ゲームサーバ１にアクセスした際の端末２のネットワークアドレスが格納される。セッション情報欄４２ｃには、端末２とゲームサーバ１との通信のセッションに関する情報が格納される。
【０１２１】
そして、このユーザテーブル４２の個々のカラム（図５（ｂ）においてセルを横方向に並べた一列）には、プレイヤ識別子欄４２ａのセルに格納されたプレイヤ識別子により識別される端末２に関連するデータが格納される。
【０１２２】
なお、ゲームテーブル４１及びユーザテーブル４２の個々のセルに格納すべき各種情報を入手及び算出する機能は、ゲームサーバ１及び端末２のそれぞれの制御部３０、５０が有している。
【０１２３】
［一実施形態のゲームシステムの動作］
次に、図７〜図１１のフローチャート、及び図１２〜図１４を参照して、本実施形態のゲームシステムＳの動作について説明する。
【０１２４】
まず、図７は、本実施形態の端末２の動作の一例を示すフローチャートである。図７に示すフローチャートは、端末２の記憶部５１に格納されたアプリケーションソフトウェア４５が起動され、ゲームサーバ１との通信が可能な状態になった後開始される。
【０１２５】
まず、ステップＳ１では、ゲームサーバ１から送出された画像情報に基づいて、端末２の制御部５０が、音楽ゲームのプレイ人数を指定するためのプレイ人数指定画面に係る画像情報を表示部５３に表示させる。
【０１２６】
ステップＳ１において端末２の表示部５３に表示されるプレイ人数指定画面の一例を図１２（ａ）に示す。図１２（ａ）に示すプレイ人数指定画面においては、単独のプレイヤで音楽ゲームのプレイを選択するためのボタン６０、及び複数人でグループを構成して音楽ゲームのプレイを選択するためのボタン６１が表示されている。
【０１２７】
プレイヤは、端末２の入力部５２を操作する。一例として、タッチパネル２６２をタッチすることで、これらボタン６０、６１のうちのいずれかを選択する。入力部５２は、プレイヤによるボタン６０、６１の選択を受け入れ、この選択に基づいて入力信号を制御部５０に出力し、制御部５０は、入力部５２からの入力信号を、通信部５５を介してゲームサーバ１に送出する。
【０１２８】
ステップＳ２では、ステップＳ１においてグループを構成して音楽ゲームのプレイを選択するボタン６１がプレイヤにより選択されたか否かが判定され、ボタン６１が選択された（Ｓ２：Yes）場合は、プログラムはステップＳ３に移行し、ボタン６０が選択された（Ｓ２：No）場合は、プログラムはステップＳ４に移行する。
【０１２９】
ステップＳ３では、ゲームサーバ１が、操作履歴やパラメータに基づいてグループを設定する。あるいは、このステップ３ではゲームサーバ１は端末２にてグループを構成する仲間を選択させてもよい。この場合、ゲームサーバ１から送出された画像情報に基づいて、端末２の制御部５０が、グループを構成する仲間を選択するための処理を実行する。
【０１３０】
ステップＳ３において端末２の表示部５３に表示される仲間選択画面の一例を図１２（ｂ）に示す。図１２（ｂ）に示す仲間選択画面においては、現在音楽ゲームがプレイできる状態にある他のプレイヤのリストをゲームサーバ１から取得するためのボタン６２、及び、以前同じグループで音楽ゲームをプレイした履歴がある他のプレイヤのリストをゲームサーバ１から取得する指示をするためのボタン６３が表示されている。
【０１３１】
プレイヤは、端末２の入力部５２を操作することで、これらボタン６２、６３のうちのいずれかを選択する。入力部５２は、プレイヤによるボタン６２、６３の選択を受け入れ、この選択に基づいて入力信号を制御部５０に出力し、制御部５０は、入力部５２からの入力信号を、通信部５５を介してゲームサーバ１に送出する。
【０１３２】
ゲームサーバ１の制御部３０は、いずれのボタン６２、６３が選択されたかに基づいて、端末２に対して他のプレイヤのリストに関する情報を送出し、端末２の制御部５０はこのリストを表示部５３に表示する。そして、プレイヤは、端末２の入力部５２を操作することで、リストの中からグループに属させる候補である他のプレイヤを選択する。入力部５２は、他のプレイヤの選択入力を受け入れ、この選択入力に基づいた入力信号（以下、プレイヤ選択入力信号という）を制御部５０に出力し、制御部５０は、入力部５２からのプレイヤ選択入力信号を、通信部５５を介してゲームサーバ１に送出する。
【０１３３】
ゲームサーバ１の制御部３０は、このプレイヤ選択入力信号に基づいて、当該選択入力信号を送出した端末２を操作するプレイヤと、上記選択入力により選択された他のプレイヤとを同一のグループに属させるために、記憶部３１に格納されたゲームテーブル４１のグループ識別子欄４１ｂに同一のグループ識別子を入力する。
【０１３４】
ステップＳ４では、ゲームサーバ１から送出された画像情報に基づいて、端末２の制御部５０が、音楽ゲームの楽曲を選択するための楽曲選択画面に係る画像情報を表示部５３に表示させる。
【０１３５】
ステップＳ４において端末２の表示部５３に表示される楽曲選択画面の一例を図１３（ａ）に示す。図１３（ａ）に示す楽曲選択画面においては、ゲームサーバ１の記憶部３１に格納されている楽曲テーブル４３０（図６）の楽曲名欄４３０ａに記述された楽曲名が表示された複数のボタン６４が表示されている。
【０１３６】
プレイヤは、端末２の入力部５２を操作することで、これらボタン６４のうちのいずれかを選択する。入力部５２は、プレイヤによるボタン６４の選択を受け入れ、この選択に基づいた入力信号（以下、楽曲選択入力信号という）を制御部５０に出力し、制御部５０は、入力部５２からの楽曲選択入力信号を、通信部５５を介してゲームサーバ１に送出する。
【０１３７】
ゲームサーバ１の制御部３０は、この楽曲選択入力信号に基づいて、選択入力信号を送出した端末２が属するグループが特定の楽曲を選択したことを有効にするために、記憶部３１に格納されたゲームテーブル４１（図５）の選択曲欄４１ｃに選択された楽曲名を入力する。
【０１３８】
ステップＳ５では、ゲームサーバ１から送出された画像情報に基づいて、端末２の制御部５０が、音楽ゲームにおいてプレイヤが擬似的に演奏する楽器を選択するための難易度選択画面に係る画像情報を表示部５３に表示させる。
【０１３９】
ステップＳ５において端末２の表示部５３に表示される楽器選択画面の一例を図１３（ｂ）に示す。図１３（ａ）に示す楽器選択画面においては、ステップＳ４において選択された楽曲においてプレイ可能な楽器が表示された複数のボタン６５が表示されている。
【０１４０】
プレイヤは、端末２の入力部５２を操作することで、これらボタン６５のうちのいずれかを選択する。入力部５２は、プレイヤによるボタン６５の選択を受け入れ、この選択に基づいた入力信号（以下、楽器選択入力信号という）を制御部５０に出力し、制御部５０は、入力部５２からの楽器選択入力信号を、通信部５５を介してゲームサーバ１に送出する。
【０１４１】
ステップＳ６では、ゲームサーバ１が、ステップＳ４で選択した楽曲及びステップＳ５で選択した楽器により擬似的な演奏を行う際の、操作パターン４３の難易度を選択する。
【０１４２】
なお、このステップＳ６においては、ゲームサーバ１が操作パターン４３の難易度を選択する代わりに、ゲームサーバ１から送出された画像情報に基づいて、端末２の制御部５０が表示部５３に難易度選択画面を表示して、プレイヤに難易度を選択させ、選択された難易度をゲームサーバ１に通知してもよい。この場合の端末２の表示部５３に表示される難易度選択画面の一例を図１４（ａ）に示す。図１４（ａ）に示す難易度選択画面においては、ゲームサーバ１の記憶部３１に格納されている楽曲テーブル４３０の設定難易度欄４３０ｃに記述された難易度に対応する難易度の程度が表示された複数のボタン６６が表示されている。
【０１４３】
このように端末２にてプレイヤが難易度を選択する場合は、端末２の入力部５２を操作することで、これらボタン６６のうちのいずれかを選択する。入力部５２は、プレイヤによるボタン６６の選択を受け入れ、この選択に基づいて選択入力信号を制御部５０に出力し、制御部５０は、入力部５２からの選択入力信号を、通信部５５を介してゲームサーバ１に送出する。
【０１４４】
ゲームサーバ１の難易度設定部３４は、記憶部３１に格納されたゲームテーブル４１の設定難易度欄４１ｄに、設定した難易度を入力する。
【０１４５】
ステップＳ７では、ゲームサーバ１から送出された画像情報及びサウンド情報等に基づいて、端末２の制御部５０が、音楽ゲームをプレイさせるための画像情報を表示部５３に表示させ、擬似的な楽器演奏効果を得るためのサウンドを出力部５４から出力させ、さらに、プレイヤが入力部５２を操作した結果、入力部５２が出力する入力信号をゲームサーバ１に送出することで、端末２を用いてプレイヤに音楽ゲームをプレイさせる。
【０１４６】
ステップＳ７において端末２の表示部５３に表示される音楽プレイ画面の一例を図１４（ｂ）に示す。図１４（ｂ）に示す音楽プレイ画面においては、操作タイミングを示すアイコン６７が、一定の速度で図中左から右に移動している。そして、このアイコン６７がタイミングライン６９と重畳したタイミングが、端末２を操作するタイミングであることがプレイヤに知らされる。音楽プレイ画面の下部には、プレイヤがタッチパネル２６２をタッチすべき領域である操作領域画像６８が表示され、図示例であれば、プレイヤは、操作領域画像６８のうち特定領域７０をタッチすることで、操作タイミングに合わせた操作入力を行う。
【０１４７】
入力部５２は、プレイヤによる操作領域画像６８の特定領域７０のタッチ動作を受け入れ、このタッチ動作に基づいた入力信号を制御部５０に出力し、制御部５０は、入力部５２からの入力信号を、通信部５５を介してゲームサーバ１に送出する。ゲームサーバ１の得点算出部３７は、端末２からの入力信号に基づいてこの端末２及び端末２が属するグループ全体の得点を算出し、パラメータ算出部３８は、得点算出部３７が算出した得点等に基づいてパラメータを算出する。
【０１４８】
なお、既に述べたように図７において仲間選択処理（ステップＳ３）等の処理は、端末２からの操作に応じて行う例だけでなく、ゲームサーバ１にて行われてもよい。また、楽曲や楽器の選択も、ゲームサーバ１にて行われても構わない。
【０１４９】
次に、図８〜図１１は、本実施形態のゲームサーバ１の動作の一例を示すフローチャートである。図８に示すフローチャートは、端末２の記憶部５１に格納されたアプリケーションソフトウェア４５が起動され、ゲームサーバ１がこの端末２から音楽ゲームの開始指示を受け入れたら開始される。
【０１５０】
ステップＳ１０では、ゲームサーバ１の制御部３０が、音楽ゲームの開始指示を送出した端末２に係るプレイヤ識別子をユーザテーブル４２（図５（ｂ））を参照して特定し、このプレイヤ識別子をキーとしてゲームテーブル４１（図５（ａ））を参照することで、プレイヤのデータを参照する。ステップＳ１１では、上述のステップＳ１で端末２から送出された入力信号を、ゲームサーバ１の制御部３０が通信部３２を介して受け入れる。
【０１５１】
ステップＳ１２では、ステップＳ１１において受け入れた入力信号が、グループを構成して音楽ゲームのプレイを選択することを示す入力信号であるか否かが判定され、グループを構成して音楽ゲームのプレイを選択した（Ｓ１２：Yes）場合は、プログラムはステップＳ１３に移行し、単独のプレイヤで音楽ゲームのプレイを選択した（Ｓ１２：No）場合は、プログラムはステップＳ１４に移行する。
【０１５２】
ステップＳ１３では、ゲームサーバ１のグループ設定部３３が、グループを構成する他のプレイヤの候補に関する情報を端末２に対して送出し、端末２からのグループ選択入力を受け入れたら、グループに属する端末２に係るプレイヤ識別子がゲームテーブル４１のプレイヤ識別子欄４１ａに記載されている行を特定し、この行のグループ識別子欄４１ｂに同一のグループ識別子を格納する。なお、既に述べたように、ゲームサーバ１にて端末２からの操作なしにグループを構成してもよい。この場合は、ステップＳ１１，Ｓ１２は必ずしも必要でない。
【０１５３】
ステップＳ１４では、上述のステップＳ４で端末２から送出された楽曲選択入力信号を、ゲームサーバ１の制御部３０が通信部３２を介して受け入れ、さらに、制御部３０は、楽曲選択入力信号を送信した端末２と同じグループに属する端末２に係るプレイヤ識別子がゲームテーブル４１のプレイヤ識別子欄４１ａに記載されている行を特定し、この行の選択曲欄４１ｃに同一の楽曲名に係る情報を格納する。
【０１５４】
ステップＳ１５では、難易度設定部３４が難易度を設定する難易度設定処理動作を行う（後述）。
【０１５５】
ステップＳ１６では、期待値算出部３９ａが、ステップＳ１５で難易度設定部３４が設定した端末２の難易度、及びステップＳ１４で受け入れた楽曲選択入力信号等に基づいて、端末２の得点期待値を算出し、ゲームテーブル４１の期待値欄４１ｆに格納する。この処理は図１７に例示するように、端末２の操作履歴に基づく達成度等のパラメータを読み込み（Ｓ１３１）、当該読み込んだパラメータに基づいて、ステップＳ１４で選択された楽曲の、ステップＳ１５にて選択された難易度に対応する操作パターンの満点に、ステップＳ１３１で得た達成度を乗じるなどして、得点期待値を、期待情報として算出する（Ｓ１３２）ことで行われる。
【０１５６】
ステップＳ１７では、ゲームサーバ１のパターン決定部３５が、ステップＳ１５で難易度設定部３４が設定した端末２の難易度、及びステップＳ１４で受け入れた楽曲選択入力信号等に基づいて、端末２に送出すべき操作パターン４３を決定し、送出部３６が、パターン決定部３５が決定した操作パターン４３、及び記憶部３１に格納された音源データ４４を端末２に送出する。
【０１５７】
ステップＳ１８では、ゲームの処理が行われる。具体的に、この処理は、図１８に例示するように、上述のステップＳ７で端末２から送出されたプレイヤの操作を表す信号を、ゲームサーバ１の得点算出部３７が通信部３２を介して受け入れ（Ｓ１５０）、この受け入れた信号と操作タイミングとの時間差と、各端末に設定した難易度とに基づいて、操作入力信号毎の得点を算出する（Ｓ１５１）。この処理は、図１５に示した通りである。つまり、ここではプレイヤの操作を評価してその得点を演算する。具体的には、時間差が短いほど、また難易度が高いほど得点が高くなるような数式により得点を演算すればよい。
【０１５８】
また、端末２から送出されたプレイヤの操作を表す信号を、当該プレイヤと同じグループに属しているプレイヤの端末２宛に送出する（Ｓ１５２）。端末２では、この信号を受けて、音源を鳴動して、グループ内のプレイヤによる楽曲の演奏をプレイヤに提供する。
【０１５９】
図９に示すステップＳ１９では、制御部３０により、端末２から、音楽ゲームのプレイを終了する信号（プレイ終了信号と呼ぶ）を受け入れたか否かが判定され、プレイ終了信号を受け入れた（受信した）（Ｓ１９：Yes）場合は、制御部３０はステップＳ２０に移行し、端末２からの音楽ゲームのプレイ終了信号をまだ受け入れていない（Ｓ１９：No）場合は、ステップＳ１８に戻る。
【０１６０】
ステップＳ２０では、ゲームサーバ１の得点算出部３７が、ステップＳ１８で算出した操作入力信号毎の得点に基づいて、端末２毎、及びグループ単位での得点を算出し、その結果をゲームテーブル４１の得点欄４１ｅに格納する。
【０１６１】
ステップＳ２１では、ゲームサーバ１のパラメータ算出部３８がパラメータ算出処理動作を行う。パラメータ算出処理動作の詳細を、図１１のフローチャートを参照して説明する。
【０１６２】
ステップＳ４０では、パラメータ算出部３８が、ゲームテーブル４１の得点欄４１ｅ及び設定難易度欄４１ｄに格納されている、端末２の得点及び難易度設定部３４により設定された難易度を読み込む。ステップＳ４１では、パラメータ算出部３８が、ゲームテーブル４１の期待値欄４１ｆに格納されている、端末２の得点期待値を読み込む。そして、ステップＳ４２では、パラメータ算出部３８が、これら得点、難易度、得点期待値、及び、端末２の操作履歴に基づいて、例えば難易度ごとの平均得点や、得点期待値と得点との比など端末２のパラメータを算出する。ここで、算出されたパラメータは、操作履歴パラメータ欄４１ｇに格納される。
【０１６３】
図９のフローチャートに戻って、ステップＳ２２では、ペナルティ付与部４０が、端末２の得点及び得点期待値等に基づいて、この端末２に対してペナルティを設定するか否かを判断する。ここでペナルティを設定すると判断したときには（Ｓ２２：Yes）、ペナルティの具体的内容について決定し（Ｓ２３）、端末２にペナルティを付与する（Ｓ２４）。また、ステップＳ２２にてペナルティを設定しないと判断したときは（Ｓ２２：No）、そのまま処理を終了する。
【０１６４】
なお、ここまでの説明において図８ないし図９で示した処理うち、ステップＳ１６の期待値算出処理や、ステップＳ２０の得点算出、Ｓ２１のパラメータ算出処理、Ｓ２２のペナルティ算出処理等は、端末２において実行されても構わない。
【０１６５】
また、ステップＳ１５では、難易度設定部３４が難易度を設定する難易度設定処理動作を行う際に図１０に示す処理を行ってもよい。この例では、ステップＳ３０では、上述のステップＳ６で端末２から送出された、難易度を選択する信号（難易度選択入力信号と呼ぶ）を、ゲームサーバ１の制御部３０が通信部３２を介して受け入れる。受け入れた難易度選択入力信号に基づく、端末２が選択した難易度に関する情報は、一時的にゲームテーブル４１の設定難易度欄４１ｄに格納される。
【０１６６】
ステップＳ３１では、難易度設定部３４が、ゲームテーブル４１の操作履歴パラメータ欄４１ｇに格納されている、端末２のパラメータを読み込み、一時的に記憶部３１に格納する。次いで、ステップＳ３２では、難易度設定部３４が、ゲームテーブル４１の得点欄４１ｅに格納されている端末２の前回の得点に関する情報と、ゲームテーブル４１の期待値欄４１ｆに格納されている前回の得点期待値に関する情報とを読み込み、一時的に記憶部３１に格納する。
【０１６７】
そして、ステップＳ３３では、難易度設定部３４が、これら情報に基づいて、例えば、前回の得点期待値よりも前回の得点が高いか否かを判断し、高い場合（Ｓ３３：Yes）、ゲームテーブル４１の設定難易度欄４１ｄに格納した難易度の情報をそのままとして、ステップＳ３５で、設定した難易度に関する情報を通信部３２を介して端末２に送出し、処理を終了する。
【０１６８】
また、ステップＳ３３で前回の得点期待値よりも前回の得点が高くない場合（Ｓ３３：No）、ステップＳ３４で、端末２に設定すべき難易度を、ゲームテーブル４１の設定難易度欄４１ｄに格納した難易度より低く設定し、ステップＳ３５に移行する。ステップＳ３５で、設定した難易度に関する情報を通信部３２を介して端末２に送出し、処理を終了する。
【０１６９】
［実施形態の効果］
以上詳細に説明したように、本実施形態のゲームシステムＳによれば、複数の端末２によりグループを構成し、このグループに属する端末２を用いて、複数のプレイヤが音楽ゲームをプレイすることができる。これにより、いわゆるソーシャルゲームにおいて複数人のプレイヤが音楽ゲームをプレイすることが可能となる。
【０１７０】
［変形例］
なお、本発明のゲームシステム等は、その細部が上述の一実施形態に限定されず、種々の変形が可能である。一例として、上述の一実施形態では、端末２に提示される楽曲は特段ジャンル分けをしていなかったが、ジャンル単位で区分した状態で楽曲を端末２に提示してもよい。また、ジャンル分けをした場合、操作パターン４３や端末２に提供する画像情報等もこのジャンルに合わせたものにしてもよい。
【０１７１】
一例として、ジャズ、テクノといったジャンル分けがされていた場合、ジャズに区分された楽曲に対応する操作パターン４３では、一定時間プレイヤが端末２を自由に操作する（アドリブ演奏に対応する）ことを可能にしてもよく、テクノに区分された楽曲に対応する操作パターン４３では、端末２の表示部５３が表示する画像情報においてミキサーとターンテーブルを配置し、これらミキサー等を操作することで擬似的な演奏を行えるようにしてもよい。
【０１７２】
加えて、同一の楽曲であってもジャンル別の操作パターン４３を予め用意してもよい。一例として、ジャズ風の操作パターン４３であればジャズ風のリズム（タイミング）に沿って擬似的な演奏を行うようにしてもよい。
【０１７３】
また、得点算出部３７は、グループ単位あるいは端末２単位での得点の平均値毎にグループやプレイヤを分類し、この分類毎に、端末２の操作履歴に基づく擬似的な合奏結果をゲームサーバ１の記憶部３１に一定期間保存し、他のプレイヤからの投票に基づいて、グループ単位または端末２単位での演奏のテクニックを競えるようにしてもよい。加えて、一定数以上の投票を得たグループまたは端末２に対して得点を加算する、アイテムを付与する等してもよい。
【０１７４】
さらに、本実施の形態は、一人のプレイヤが、演奏すべき楽曲において一つの楽器に割り当てられた操作タイミングの全てについて端末２を操作して擬似的な楽器演奏を行う態様に限られない。例えば一つの楽曲に対応する操作タイミングを所定の単位、例えば数小節〜数十小節（演奏パートと称する）単位で分割し、各演奏パートごとにプレイヤを交替する（パート別プレイと称する）こととしてもよい。
【０１７５】
このパート別プレイにおいては、ステップＳ２０の得点算出処理では、演奏パートを跨いだ前後においてパートのつなぎ目の部分がうまくつながっていたと得点算出部３７が判定した場合、得点を加算するのみならずアイテムを付与する。
【０１７６】
具体的には図１９に例示するように、ゲームサーバ１は、ある演奏パートの最後の所定数個の操作タイミングと、それに続く演奏パートの最初の所定数個の操作タイミングとにおいて、それぞれの演奏パートを担当するプレイヤが行った操作との時間差を取得する（演奏パートを跨ぐ前後での操作の時間差の情報を取得：Ｓ１４１）。
【０１７７】
そしてゲームサーバ１は、当該取得した所定数個の時間差の情報のうち、予め定めた割合の個数の時間差の情報が、しきい値を下回る時間差を表すものとなっているか否か（つまり、つなぎ目がスムーズであるか否か）を調べる（Ｓ１４２）。そして、ステップＳ１４２にてつなぎ目がスムーズであると判断すると（Ｓ１４２：Yes）、第１の得点を加点する（Ｓ１４３）。またステップＳ１４２にてつなぎ目がスムーズでなかったと判断すると（Ｓ１４２：No）、第２の得点を加点する（Ｓ１４４）。ここで第１の得点は第２の得点よりも高い得点としておく。
【０１７８】
これより、分担してプレイした各プレイヤの演奏が、つなぎ目の部分を跨いでスムーズにつながっていると評価される場合に、グループでのコンボが決まったことなどとして比較的高い得点を付与できる。
【０１７９】
そして、本発明のゲームシステムは、音楽ゲームへの適用のみならず、ＲＰＧ（ロールプレイングゲーム）においてリアルタイムバトルを実施している際の攻撃入力方法としても適用可能である。この場合、得点算出部３７は、得点のみならず、グループを構成する端末２間に設定された親交度（親密度）を上げる、攻撃力を上昇させる等の特典を、端末２を操作するプレイヤに与えてもよい。
【０１８０】
そして、上述の実施形態において、ゲームサーバ１及び端末２を動作させるプログラムはＲＯＭ１１、２１等に格納されて提供されていたが、不図示の光学ディスクドライブ、等を用いて、プログラムが格納されたＤＶＤ（Digital Versatile Disc）等の記録媒体、ＵＳＢ外部記憶装置、メモリーカード等を接続し、このＤＶＤ等からゲームサーバ１、端末２に読み込んで動作させてもよい。また、インターネット５上の他のサーバ装置内にプログラムを格納しておき、このプログラムをゲームサーバ１、端末２に読み込んで動作させてもよい。さらに、上述の実施形態において、ゲームサーバ１、端末２は複数のハードウェア要素により構成されていたが、これらハードウェア要素の一部の動作をＣＰＵ１０、２０がプログラムの動作により実現することも可能である。
【０１８１】
また、本実施の形態の別のゲームの態様の例として、個々のプレイヤは同時に端末を操作して一つの楽器を擬似的に演奏するものの、プレイヤには他のプレイヤの楽器の擬似的演奏結果であるサウンドは聞こえず、グループのプレイヤによる擬似的な楽器演奏が終了した後で、全てのプレイヤによる擬似的な楽器演奏を合奏した結果に基づくサウンドが端末２で再生される（本明細書では個別プレイ後の合体と称する）態様が挙げられる。
【０１８２】
この例では、図１８に示したゲームの処理においてステップＳ１５２が省略される。そして、図９に代えて、図２０に例示するようにプレイ終了後（ステップＳ１９：Yes）の所定の時点（図２０ではＳ２０に先行することとしているが、どの時点であってもよい）で、プレイ中に行われたグループ内のプレイヤの操作を表す情報を端末２に対して送出し（Ｓ１６１）、端末２にて全てのプレイヤによる擬似的な楽器演奏を合奏した結果に基づくサウンドを鳴動させる。
【０１８３】
さらに、本実施の形態の別のゲームの態様では、数名のプレイヤによる擬似的な楽器演奏の後、これら擬似的楽器演奏を合奏した結果に、別の擬似的な楽器演奏を重ねて（つまりアレンジ等を加えて）最終的な合奏結果を得る（本明細書では段階別プレイと称する）態様が挙げられる。
【０１８４】
この場合、図１８に示したゲームの処理に代えて図２１に例示するように、ステップＳ７で端末２から送出されたプレイヤの操作を表す信号を、ゲームサーバ１の得点算出部３７が通信部３２を介して受け入れ（Ｓ１５０）、この受け入れた信号と操作タイミングとの時間差と、各端末に設定した難易度とに基づいて、操作入力信号毎の得点を算出する（Ｓ１５１）。
【０１８５】
そして、過去に行われ、既に終了しているプレイにおけるプレイヤの操作を表す信号の記録を取得し（Ｓ１７１）、ステップＳ１５０にて受け入れた、端末２から送出されたプレイヤの操作を表す信号と、ステップＳ１７１にて取得した信号とを、当該プレイヤと同じグループに属しているプレイヤの端末２宛に送出する（Ｓ１７２）。端末２では、この信号を受けて、音源を鳴動して、グループ内のプレイヤによる楽曲の演奏をプレイヤに提供する。
【０１８６】
これにより、擬似的楽器演奏を合奏した結果に、別の擬似的な楽器演奏を重ねたプレイが実現される。
【０１８７】
［差し替え演奏］
また本実施の形態では、個別プレイ後の合体を行う場合に、個別プレイにおいて得点が比較的低いプレイヤを助けるため、得点の比較的高いプレイヤに対し、得点が比較的低いプレイヤと同じパートを演奏させて、得点の比較的低いプレイヤの演奏に差し替えさせ、グループの演奏得点を上げる処理（応援動作）を行ってもよい。
【０１８８】
この例では、例えばゲームサーバ１が、図２０に例示したプレイ終了後（ステップＳ１９：Yesの後）の所定の時点（図２０ではＳ２０に先行することとしているが、どの時点であってもよい）で、プレイ中に行われたグループ内のプレイヤの操作する端末２ごとに算出された得点情報に基づいて、比較的得点の低い端末２（グループに属する一の端末に相当する、以下低得点端末と呼ぶ）を操作するプレイヤ（例えば最低得点であった端末２、または得点が低いことを表す所定の低得点しきい値を下回る得点の端末２を操作するプレイヤ）の得点や、当該プレイヤがプレイしたパートを特定する情報を、比較的得点の高い端末２（一の端末とは異なる他の端末に相当する。以下、高得点端末と呼ぶ）を操作するプレイヤ（例えば高得点であることを表す所定の高得点しきい値を超える得点の端末２を操作するプレイヤ）に対して提供し、差し替え演奏を行うか否かを問い合せる。
【０１８９】
そして差し替え演奏を行うとして、高得点端末から応答があったときに、当該高得点端末に対して、ゲームサーバ１が、低得点端末に対して送出していた操作タイミングのパターンを送出して個別プレイを行わせる（差し替え演奏プレイ）。
【０１９０】
この例では、高得点端末において行われた差し替え演奏プレイの得点が、低得点端末において行われた個別プレイの得点を上回る場合に、低得点端末の個別プレイの得点を、差し替え演奏プレイの得点に置き換えて、グループの得点を算出することとする。また、端末２にて全てのプレイヤによる擬似的な楽器演奏を合奏した結果に基づくサウンドを鳴動させる際にも、低得点端末において行われた個別プレイの内容を、差し替え演奏プレイの内容で置き換える。
【符号の説明】
【０１９１】
Ｓ    ゲームシステム
１    ゲームサーバ
２、２ａ、２ｂ    端末
５    インターネット
１０、２０    ＣＰＵ
１１、２１    ＲＯＭ
１２、２２    ＲＡＭ
１３    有線ＬＡＮインタフェース
１４    ＨＤＤ部
２３    表示デバイス
２４    内部ストレージ部
２６    入力デバイス
３０、５０    制御部
３１、５１    記憶部
３２、５２    通信部
３３    グループ設定部
３４    難易度設定部
３５    パターン決定部
３６    送出部
３７    得点算出部
３８    パラメータ算出部
３９    期待動作設定部
３９ａ  期待値算出部
４０    ペナルティ付与部
４１    ゲームテーブル
４２    ユーザテーブル
４３    操作パターン
４４    音源データ
４５    アプリケーションソフトウェア
５２    入力部
５３    表示部
５４    出力部
５５    通信部
５６    グループ指示部
５７    音声制御部
【要約】
【課題】いわゆるソーシャルゲームにおいて複数人のプレイヤが音楽ゲームをプレイすることを可能にする。
【解決手段】端末の動作に基づいて、複数の前記端末が属するグループを設定するグループ設定部と、単一の前記グループに属する前記端末に対して難易度を設定する難易度設定部と、難易度設定部が設定した難易度に基づいて操作タイミングのパターンを端末に送出する送出部と、端末からの操作信号を受け入れ、この操作信号と操作タイミングとの時間差と、端末に設定した難易度とに基づいて、グループ単位での得点を算出する得点算出部とを設けた。
【選択図】図４【図１】
0005936757.tif 000002
【図２】
0005936757.tif 000003
【図３】
0005936757.tif 000004
【図４】
0005936757.tif 000005
【図５】
0005936757.tif 000006
【図６】
0005936757.tif 000007
【図７】
0005936757.tif 000008
【図８】
0005936757.tif 000009
【図９】
0005936757.tif 000010
【図１０】
0005936757.tif 000011
【図１１】
0005936757.tif 000012
【図１２】
0005936757.tif 000013
【図１３】
0005936757.tif 000014
【図１４】
0005936757.tif 000015
【図１５】
0005936757.tif 000016
【図１６】
0005936757.tif 000017
【図１７】
0005936757.tif 000018
【図１８】
0005936757.tif 000019
【図１９】
0005936757.tif 000020
【図２０】
0005936757.tif 000021
【図２１】
0005936757.tif 000022