(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0005】
家庭用据置機において、基本的に無料でゲームプレイできるF2Pとは、例えば、初回時に上限値(例えば、5)の特定パラメータ(プレイ権パラメータ)をプレーヤに付与し、1プレイあたり特定パラメータを1消費(減算)することによって無料でゲームを提供するものである。そして、この特定パラメータが0になると、プレーヤは無料で遊ぶことはできなくなり、プレーヤは無料で遊ぶために特定パラメータが回復(増加)するのを待つことになる。例えば、30分経過する度に特定パラメータを1回復(増加)することによって、再び、プレーヤに無料でゲームを提供できるようにしている。
【0006】
ところで、スマートフォンなどの携帯端末で遊べるソーシャルゲーム等では、いつでも、どこでもゲームを実行できる便利さがあり、行動ポイントが回復すれば、すぐに再びログインし、ゲームを始めることができる。また、携帯端末の通知機能を使えば、プレーヤは、ポイントが回復した際に、すぐにそのことを知ることができる。
【0007】
しかし、家庭用据置機の場合、携帯して持ち運ぶようなものではなく、また、家庭に設置されているテレビなどのディスプレイに繋いで利用する場合が多い。そのため、プレーヤは、行動ポイント(特定パラメータ)が回復してもすぐにゲームを始められるとは限らない。また、家庭用据置機はゲームプレイを目的とするものであるため、プレイしていない間は電源をOFFにするのが通常であり、家庭用据置機でゲームを再開するためには、電源投入して再ログインする必要があるため、携帯端末と比べて、手軽にゲームを再開することは困難である。そのため、マッチングを行って対戦ゲームを行わせる場合、対戦相手となるマッチング候補のプレーヤの絶対数が減ってしまい、マッチングのバリエーションが少なくなってしまうという難点が生じる。
【0008】
本発明は以上の課題に鑑みたものであり、その目的は、マッチング候補のプレーヤ数の減少を抑制或いは回避することが可能なプログラム、サーバを提供することにある。
【課題を解決するための手段】
【0009】
(1)本発明は、
ネットワークを介して端末と接続され、ゲーム処理を行うサーバのプログラムであって、
プレーヤ毎に、プレーヤの特定パラメータを時間経過に応じて増加させる処理を行うパラメータ制御部と、
特定パラメータが所定値以上である一のプレーヤの端末からマッチング申込み要求情報を受信した場合に、特定パラメータが所定値以上の他の複数のプレーヤをマッチング候補とし、当該マッチング候補の中からマッチング相手を選択し、前記一のプレーヤと前記マッチング相手とのマッチングを設定する処理を行うマッチング処理部として、コンピュータを機能させ、
前記パラメータ制御部が、
前記マッチング処理部においてマッチングが設定された場合に、前記一のプレーヤの特定パラメータ及び前記マッチング相手の特定パラメータそれぞれから、所定消費値を減算する処理を行い、
前記マッチング処理部が、
マッチング候補数が所定候補数未満である場合に、前記特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるプログラムに関する。
【0010】
また、本発明は、コンピュータに読み取り可能であって、上記プログラムを記憶した情報記憶媒体に関係する。また、本発明は、上記各部を含むサーバに関する。
【0011】
本発明によれば、マッチング候補数が所定候補数未満である場合に、特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるので、対戦相手となるマッチング候補数の減少を、抑制或いは回避することが可能となる。
【0012】
(2)また、本発明のプログラム、情報記憶媒体、及びサーバにおいて、
前記パラメータ制御部が、
前記マッチング処理部においてマッチングが設定された前記マッチング相手の前記特定パラメータが所定値未満である場合には、前記マッチング相手の前記特定パラメータを減算せずに、前記一のプレーヤの前記特定パラメータから前記所定消費値の倍数を減算する処理を行うようにしてもよい。
【0013】
本発明によれば、マッチング申込みを行った一のプレーヤは、自分の分だけでなくマッチング相手の分も含めて特定パラメータを減算することになる。つまり、本発明によれば、特定パラメータの値を、自他問わず一のプレーヤが1回分のゲームをプレイすることができる権利数にすることができる。
【0014】
(3)また、本発明のプログラム、情報記憶媒体、及びサーバにおいて、
前記パラメータ制御部が、
前記マッチング処理部においてマッチングが設定された場合に、前記一のプレーヤと前記相手プレーヤとの対戦ゲームにおいて勝利したプレーヤの特定パラメータを、増加させるようにしてもよい。
【0015】
本発明によれば、対戦ゲームにおいて勝利したプレーヤに、特定パラメータを増加させるチャンスを与えることができ、ゲームの面白みが向上する。また、本発明によれば、例えば、マッチング申込みを行った一のプレーヤがマッチング相手の分も含めて自身の特定パラメータを減算したとしても、そのマッチング相手に勝利すれば、自身の特定パラメータを増加させる機会を得ることができる。そのため、マッチング申込み者のゲームに対す
る意欲を損なうことなく、マッチング候補数の減少を抑制或いは回避することができる。
【0016】
(4)また、本発明のプログラム、情報記憶媒体、及びサーバにおいて、
前記マッチング処理部が、
イベント期間内であって、イベント開始時点、一のゲーム期間、及び前記特定パラメータの上限値に基づいて決められる特定期間に、前記特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにしてもよい。
【0017】
本発明によれば、イベント開始時点、一のゲーム期間、及び前記特定パラメータの上限値に基づいて、マッチング候補数が減少する傾向にある特定期間を決定し、当該特定期間に、特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにすることができる。これにより、本発明は、最適な期間において、マッチング候補数の減少を抑制或いは回避できる。
【0018】
(5)また、本発明のプログラム、情報記憶媒体、及びサーバにおいて、
前記マッチング処理部が、
イベント期間内であって、一のゲーム期間及びイベント終了時点に基づいて決められる特定期間に、前記特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにしてもよい。
【0019】
本発明によれば、一のゲーム期間、及びイベント終了時点に基づいて、マッチング候補数が減少する傾向にある特定期間を決定し、当該特定期間に、特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにすることができる。これにより、本発明は、最適な期間において、マッチング候補数の減少を抑制或いは回避できる。例えば、イベント終盤のゲームが盛り上がる期間に、マッチング候補数の減少を抑制或いは回避できる。
【0020】
(6)また、本発明のプログラム、情報記憶媒体、及びサーバにおいて、
プレーヤの端末においてプレーヤがゲームプレイ中か否かを監視する処理を行う監視部として、コンピュータを更に機能させ、
前記マッチング処理部が、
ゲームプレイ中であって前記特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにしてもよい。
【0021】
特定パラメータが所定値未満のプレーヤは、その場に居ないことや、ゲームプレイしていない可能性があるが、本発明によれば、プレーヤがゲームプレイ中か否かを監視し、ゲームプレイ中である他のプレーヤをマッチング候補に加えるので、確実にゲームプレイできる状況にあるプレーヤをマッチング候補にすることができる。
【発明を実施するための形態】
【0023】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明される構成の全てが、本発明の必須構成要件であるとは限らない。
【0024】
1.ネットワークシステム
図1は、本実施形態のネットワークシステム(ゲームシステム)を示す。本実施形態では、複数の端末10とサーバ20とによって構成される。つまり、
図1に示すように、本実施形態のネットワークシステムは、サービスを提供するサーバ20と、端末10とが、ネットワーク(例えば、インターネット)に接続可能に構成される。
【0025】
端末10は、家庭用据置機(家庭用ゲーム装置)、パーソナルコンピュータ(PC)、画像生成装置などの情報処理装置であり、インターネット(WAN)、LANなどのネットワークを介してサーバ20に接続可能な装置である。なお、端末10とサーバ20との通信回線は、有線でもよいし無線でもよい。
【0026】
サーバ20は、ゲームの管理者がゲームサービスを運営・管理する際に利用するコンピュータである。このサーバ20は、コンピュータ(例えば、ワークステーションやパーソナルコンピュータ)であって、端末10から送信された各種のコマンド(リクエスト)に応じて、当該端末10に対して各種情報を送信する。本実施形態におけるサーバ20は、ゲームを行うプレーヤが使う端末10から、ゲームコンテンツの配信要求があった場合には、それに応じたゲームコンテンツ、例えば、端末10上で動作可能なゲームプログラムを送信してもよい。また、サーバ20は、端末10のブラウザ等によって閲覧可能なWebページを送信してもよい。
【0027】
2.構成
2.1.端末の構成
図2に本実施形態の端末の機能ブロック図の例を示す。なお本実施形態の端末は
図2の構成要素(各部)の一部を省略した構成としてもよい。
【0028】
入力部160は、プレーヤからの入力情報を入力するための機器であり、プレーヤの入力情報を処理部に出力する。本実施形態の入力部160は、プレーヤの入力情報(入力信号)を検出する検出部162を備える。入力部160は、例えば、レバー、ボタン、ステアリング、マイク、タッチパネル型ディスプレイ、キーボード、マウスなどがある。
【0029】
また、入力部160は、3軸の加速度を検出する加速度センサや、角速度を検出するジャイロセンサ、撮像部を備えた入力機器でもよい。例えば、入力機器は、プレーヤが把持して動かすものであってもよいし、プレーヤが身につけて動かすものであってもよい。また、入力機器には、プレーヤが把持する刀型コントローラや銃型コントローラ、あるいはプレーヤが身につける(プレーヤが手に装着する)グローブ型コントローラなど実際の道具を模して作られたコントローラも含まれる。また入力機器には、入力機器と一体化されているゲーム装置も含まれる。本実施形態の端末は、複数の入力部160を備えていてもよい。
【0030】
記憶部170は、処理部100や通信部196などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。
【0031】
情報記憶媒体180(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部100は、情報記憶媒体180に格納されるプログラム(デー
タ)に基づいて本実施形態の種々の処理を行う。情報記憶媒体180には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)を記憶することができる。
【0032】
なお、本実施形態では、サーバ20が有する情報記憶媒体280や記憶部270に記憶されている本実施形態の各部としてコンピュータを機能させるためのプログラムやゲームデータを、ネットワークを介して受信し、受信したプログラムやデータを記憶部170や情報記憶媒体180に記憶してもよい。このようにプログラムやデータを受信してネットワークシステムを機能させる場合も本発明の範囲内に含む。
【0033】
表示部190は、本実施形態により生成された画像を出力するものであり、その機能は、CRT、LCD、タッチパネル型ディスプレイ、或いはHMD(ヘッドマウントディスプレイ)などにより実現できる。音出力部192は、本実施形態により生成された音を出力するものであり、その機能は、スピーカ、或いはヘッドフォンなどにより実現できる。
【0034】
通信部196は外部(例えば他の端末、サーバ)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0035】
処理部100(プロセッサ)は、入力部160からの入力情報やプログラムなどに基づいて、ゲーム処理、画像生成処理、或いは音生成処理などの処理を行う。この処理部100は記憶部170内の主記憶部172をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0036】
処理部100は、通信制御部110、ゲーム処理部112、表示制御部114、描画部120、音生成部130を含む。なおこれらの一部を省略する構成としてもよい。
【0037】
通信制御部110は、サーバ20及び他の端末とデータを送受信する処理を行う。例えば、通信制御部110は、サーバ20及び他の端末から受信したデータを記憶部170に格納する処理、受信したデータを解析する処理、その他のデータの送受信に関する制御処理等を行う。なお、通信制御部110は、サーバ、他の端末の宛先情報を記憶部170や情報記憶媒体180に記憶し、管理する処理を行うようにしてもよい。また、通信制御部110は、プレーヤからの通信開始の入力情報を受け付けた場合に、サーバ20との通信を行うようにしてもよい。
【0038】
また、通信制御部110は、画像を描画するフレームレートに応じてデータを含むパケットを生成し、サーバ20に生成したパケットを送信する処理を行ってもよい。具体的に説明すると、例えば、1/60秒毎に、サーバ20にパケットを送信する処理を行ってもよい。
【0039】
また、通信制御部110は、サーバ20に、マッチング申込み要求情報を送信する処理を行う。また、通信制御部110は、サーバ20或いは他の端末10から、マッチング相手のプレーヤ情報を受信する。また、通信制御部110は、サーバ20にゲームの結果(対戦ゲームの勝敗の結果)を送信する処理を行う。
【0040】
ゲーム処理部112は、種々のゲーム演算処理を行う。例えば、ゲーム開始条件が満たされた場合にゲームを開始する処理、ゲームを進行させる処理、ゲーム終了条件を満たす場合にゲームを終了する処理などがある。
【0041】
また、ゲーム処理部112は、プレーヤキャラクタ、建物、球場、車、樹木、柱、壁、マップ(地形)などの表示物を表す各種オブジェクト(ポリゴン、自由曲面又はサブディビジョンサーフェスなどのプリミティブで構成されるオブジェクト)をオブジェクト空間に配置設定する処理を行うようにしてもよい。
【0042】
ここでオブジェクト空間とは、ゲーム空間(仮想空間)であり、2次元空間、3次元空間の両方を含む。例えば、オブジェクト空間を3次元空間とした場合には、ワールド座標系にオブジェクトを配置する。
【0043】
例えば、ゲーム処理部112は、オブジェクト空間において、プレーヤキャラクタを移動させる処理を行うようにしてもよい。すなわち入力部160によりプレーヤが入力した入力情報や、プログラム(移動・動作アルゴリズム)や、各種データ(モーションデータ)などに基づいて、プレーヤキャラクタをオブジェクト空間内で移動させたり、オブジェクトを動作(モーション、アニメーション)させたりする処理を行う。具体的には、プレーヤキャラクタの移動情報(位置、回転角度、速度、或いは加速度などの移動パラメータ)や動作情報(オブジェクトを構成する各パーツの位置、或いは回転角度)を、1フレーム(例えば、1/60秒)毎に順次求める処理を行うようにしてもよい。なおフレームは、プレーヤキャラクタの移動・動作処理や画像生成処理を行う時間の単位である。
【0044】
表示制御部114は、ゲーム処理部112によるゲーム処理内容を表示させる表示制御や、描画部120において生成された画像を表示部190に表示させる表示制御を行う。例えば、表示制御部114は、プレーヤの特定パラメータの数値を表示する。例えば、特定パラメータの数値を、コインの枚数(対戦コインの残数)として表現してもよい。また、特定パラメータの数値をゲージで表現してもよい。
【0045】
また、表示制御部114は、サーバ20から受信したデータ(Webデータ、HTML形式で作成されたデータ、Webコンテンツデータなど)を、ブラウザなどを用いて表示部190に表示させる処理を行ってもよい。例えば、Webコンテンツデータとは、グラフィックスデータ、アニメーションデータであり、端末10が備えるWebブラウザ機能によってWebコンテンツデータを再生するようにしてもよい。
【0046】
描画部120は、処理部100で行われる種々の処理(例えば、ゲーム処理)の結果に基づいて描画処理を行い、これにより画像を生成し、表示部190に出力する。描画部120が生成する画像は、いわゆる2次元画像であってもよいし、いわゆる3次元画像であってもよい。
【0047】
いわゆる3次元ゲーム画像を生成する場合には、まずオブジェクト(モデル)の各頂点の頂点データ(頂点の位置座標、テクスチャ座標、色データ、法線ベクトル或いはα値
等)を含むオブジェクトデータ(モデルデータ)が入力され、入力されたオブジェクトデータに含まれる頂点データに基づいて、頂点処理(頂点シェーダによるシェーディング)が行われる。なお頂点処理を行うに際して、必要に応じてポリゴンを再分割するための頂点生成処理(テッセレーション、曲面分割、ポリゴン分割)を行うようにしてもよい。
【0048】
頂点処理では、頂点処理プログラム(頂点シェーダプログラム、第1のシェーダプログラム)に従って、頂点の移動処理や、座標変換、例えばワールド座標変換、視野変換(カメラ座標変換)、クリッピング処理、透視変換(投影変換)、ビューポート変換等のジオメトリ処理が行われ、その処理結果に基づいて、オブジェクトを構成する頂点群について与えられた頂点データを変更(更新、調整)する。
【0049】
そして、頂点処理後の頂点データに基づいてラスタライズ(走査変換)が行われ、ポリ
ゴン(プリミティブ)の面とピクセルとが対応づけられる。そしてラスタライズに続いて、画像を構成するピクセル(表示画面を構成するフラグメント)を描画するピクセル処理(ピクセルシェーダによるシェーディング、フラグメント処理)が行われる。ピクセル処理では、ピクセル処理プログラム(ピクセルシェーダプログラム、第2のシェーダプログラム)に従って、テクスチャの読出し(テクスチャマッピング)、色データの設定/変更、半透明合成、アンチエイリアス等の各種処理を行って、画像を構成するピクセルの最終的な描画色を決定し、透視変換されたオブジェクトの描画色を描画バッファ(ピクセル単位で画像情報を記憶できるバッファ。VRAM、レンダリングターゲット)に出力(描画)する。すなわち、ピクセル処理では、画像情報(色、法線、輝度、α値等)をピクセル単位で設定あるいは変更するパーピクセル処理を行う。これにより、オブジェクト空間内において仮想カメラ(視点)から見える画像が生成される。
【0050】
音生成部130は、処理部100で行われる種々の処理の結果に基づいて音処理を行い、BGM、効果音、又は音声などのゲーム音を生成し、音出力部192に出力する。例えば、サーバ20から受信した音データを音出力部192に出力するようにしてもよい。
【0051】
2.2.サーバの構成
図3に本実施形態のサーバ20の機能ブロック図の例を示す。本実施形態のサーバ20は
図3の構成要素(各部)の一部を省略した構成としてもよい。
【0052】
記憶部270は、処理部200や通信部296などのワーク領域となるもので、その機能はRAM(VRAM)などにより実現できる。記憶部270は、主記憶部272、格納部260(例えば、データベース)を含む。
【0053】
格納部260には、サーバ20が管理するプレーヤの識別情報(プレーヤ名、ユーザアカウント、ユーザ識別情報)、プレーヤのパスワード、メールアドレスを対応付けて格納する。また、格納部260(広義には記憶部270)は、マッチング設定されたプレーヤ名の組み合わせ(マッチング情報)等を格納(記憶)する。なお、プレーヤの識別情報は、プレーヤ毎に付与される、プレーヤを識別するための唯一無二のユニークな情報である。
【0054】
情報記憶媒体280(コンピュータにより読み取り可能な媒体)は、プログラムやデータなどを格納するものであり、その機能は、光ディスク(CD、DVD)、光磁気ディスク(MO)、磁気ディスク、ハードディスク、磁気テープ、或いはメモリ(ROM)などにより実現できる。処理部200は、情報記憶媒体280に格納されるプログラム(データ)に基づいて本実施形態の種々の処理を行う。即ち情報記憶媒体280には、本実施形態の各部としてコンピュータを機能させるためのプログラム(各部の処理をコンピュータに実行させるためのプログラム)が記憶される。
【0055】
通信部296は外部(例えば、端末、他のサーバや他のネットワークシステム)との間で通信を行うための各種制御を行うものであり、その機能は、各種プロセッサ又は通信用ASICなどのハードウェアや、プログラムなどにより実現できる。
【0056】
処理部200(プロセッサ)は、情報記憶媒体280に記憶されるプログラム等に基づいて、処理を行う。具体的には、端末からの要求に応じてサービスを提供する。
【0057】
また、処理部200は記憶部270内の主記憶部272をワーク領域として各種処理を行う。処理部200の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。
【0058】
特に、本実施形態のサーバの処理部200は、プレーヤ情報管理部210、通信制御部211、パラメータ制御部212、マッチング処理部214、監視部215と、を含む。なお、これらの一部を省略する構成としてもよい。
【0059】
プレーヤ情報管理部210は、プレーヤの識別情報に対応するデータ(プレーヤキャラクタ名、レベル、ポイント、仮想通貨)等のプレーヤ情報を管理する。
【0060】
また、プレーヤ情報管理部210は、端末10からプレーヤの識別情報(プレーヤ名)、パスワードを受信し、受信したプレーヤの識別情報とパスワードが、格納部260に格納されているプレーヤの識別情報及びプレーヤの識別情報に対応するパスワードと一致するか否かを判断し、一致する場合に認証を許可し、当該プレーヤのログイン処理を行う。
【0061】
また、プレーヤ情報管理部210は、ログイン中のプレーヤの端末から、ログアウト要求情報を受信した場合には、当該プレーヤをログアウトする処理を行う。また、プレーヤ情報管理部210は、ログイン中のプレーヤの端末から所定期間、データ通信をしていない場合にもログアウトする処理を行ってもよい。
【0062】
通信制御部211は、端末10とネットワークを介してデータを送受信する処理を行う。例えば、通信制御部211は、プレーヤの端末10からのマッチング申込み要求情報、等を受信する。
【0063】
パラメータ制御部212は、プレーヤ毎に、プレーヤの特定パラメータを時間経過に応じて増加させる処理を行う。
【0064】
パラメータ制御部212は、マッチング処理部214においてマッチングが設定された場合に、マッチング申込み要求をした一のプレーヤの特定パラメータ及びマッチング処理部214によって選択されたマッチング相手の特定パラメータそれぞれから、所定消費値を減算する処理を行う。
【0065】
パラメータ制御部212は、マッチング処理部214においてマッチングが設定されたマッチング相手の特定パラメータが所定値未満である場合には、マッチング相手の特定パラメータを減算せずに、マッチング申込み要求をした一のプレーヤの特定パラメータから所定消費値の倍数を減算する処理を行うようにしてもよい。
【0066】
パラメータ制御部212は、マッチング処理部214においてマッチングが設定された場合には、マッチング申込み要求をした一のプレーヤと相手プレーヤとの対戦ゲームにおいて勝利したプレーヤの特定パラメータを、増加させるようにしてもよい。
【0067】
また、マッチング処理部214は、特定パラメータが所定値以上である一のプレーヤの端末からマッチング申込み要求情報を受信した場合に、特定パラメータが所定値以上の他の複数のプレーヤをマッチング候補とし、当該マッチング候補の中からマッチング相手を選択する処理を行う。
【0068】
また、マッチング処理部214は、マッチング候補数が所定候補数未満である場合に、特定パラメータが所定値未満である他のプレーヤをマッチング候補に加える。
【0069】
また、マッチング処理部214は、イベント期間内であって、イベント開始時点、一のゲーム期間、及び前記特定パラメータの上限値に基づいて決められる特定期間に、特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにしてもよい。
【0070】
また、マッチング処理部214は、イベント期間内であって、一のゲーム期間及びイベント終了時点に基づいて決められる特定期間に、前記特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにしてもよい。
【0071】
また、マッチング処理部214は、ゲームプレイ中であって前記特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにしてもよい。
【0072】
また、マッチング処理部214は、マッチング申込みをした第1のプレーヤのレベルと、マッチング相手の第2のプレーヤのレベルが同じ又は僅差であることをマッチング条件とし、マッチング条件を満たすように、マッチング相手を選択する処理を行うようにしてもよい。
【0073】
また、マッチング処理部214は、マッチング申込み要求をした一のプレーヤと選択されたマッチング相手とのマッチングを設定する処理を行う。マッチングを設定するとは、マッチング申込み要求をした一のプレーヤと選択されたマッチング相手とを、対戦ゲームで対戦するプレーヤの組み合わせとして記憶部270に記憶することであり、サーバ20は、各端末にマッチングの組み合わせの情報を送信する処理を行い、端末10において対戦ゲームが実現される。
【0074】
監視部215は、プレーヤの端末においてプレーヤがゲームプレイ中か否かを監視する処理を行う。
【0075】
3.本実施形態の処理の手法
3.1 概要
本実施形態は、複数のキャラクタが対戦ゲームを行うものである。例えば、対戦ゲームは、第1のプレーヤキャラクタ(第1のプレーヤの操作対象のキャラクタ)と第2のプレーヤキャラクタ(第2のプレーヤの操作対象のキャラクタ)とが相互に攻撃し合うゲームでもよいし、第1のプレーヤキャラクタと第2のプレーヤキャラクタとが協力して、特定の敵キャラクタ(ボスキャラクタ等)を攻撃するゲームでもよい。特に、本実施形態では、プレーヤがキャラクタを操作し、キャラクタ同士が互いに敵対関係にある対戦ゲームを行う例について説明する。
【0076】
また、本実施形態のネットワークシステムでは、各キャラクタの制御(移動・動作制御や攻撃等の制御)を端末10で行っている。例えば、端末10は、入力部160からの入力情報に基づき自キャラクタを制御し、ネットワークを介して当該他の端末から当該他のキャラクタの制御情報(他の端末の入力情報、他のキャラクタの移動・動作情報や攻撃等の制御情報)を受信して他のキャラクタの制御を行う。
【0077】
また、本実施形態では、家庭用据置機(端末の一例)において、基本的に無料でゲームプレイできるF2Pを実現するものである。つまり、プレーヤは、特定パラメータ(プレイ権パラメータ)を1消費(1減算)することによって、無料で1回分のゲームをすることができる。要するに、プレーヤは特定パラメータが1以上であれば、無料でゲームプレイすることができるが、この特定パラメータが0(ゼロ)になると、プレーヤは無料で遊ぶことはできなくなる。
【0078】
本実施形態では、時間経過に応じて(例えば、30分経過する度に)、特定パラメータを1回復(1増加)する処理(自動回復処理)を行っている。したがって、特定パラメータが0になってしまったプレーヤは、無料でゲームをするために暫く待つことになる。家庭用据置機の場合、プレーヤはその場所で居続けながら特定パラメータが回復(増加)することを待つことになるので、プレーヤがゲームから遠ざかってしまい、その結果、対戦
相手となるマッチング候補のプレーヤの絶対数が減ってしまい、マッチングのバリエーションが少なくなってしまうという難点が生じる。
【0079】
そこで、本実施形態では、所定条件下で特定パラメータが0であるプレーヤもマッチング候補に加える処理を行う。このようにすれば、マッチング候補のプレーヤ数の減少を抑制或いは回避することができるからである。以下、詳細に本実施形態の手法について説明する。
【0080】
3.2 特定パラメータの説明
まず、本実施形態の特定パラメータについて説明する。特定パラメータとは、ゲームをプレイするための権利数を示す値である。
【0081】
本実施形態では、サーバ20が、プレーヤ毎に、プレーヤの特定パラメータを制御している。例えば、本実施形態のサーバは、
図4に示すように、プレーヤ名(プレーヤの識別情報)に対応付けて、プレーヤの特定パラメータ、特定パラメータの直近の自動回復日時を記憶部に記憶する。
【0082】
本実施形態では、プレーヤが初めてログインした際には、特定パラメータの値を初期値(例えば、「5」)に設定する処理を行う。そして、プレーヤが1回分の対戦ゲームを行う度に、プレーヤの特定パラメータから所定消費値(例えば、「1」)を減算する。なお、本実施形態では、特定パラメータの下限値を0に設定している。
【0083】
また、サーバは、プレーヤ毎に、プレーヤの特定パラメータを所定周期毎(例えば、30分毎)に所定回復値(例えば、「1」)を加算(回復)する処理を行う。なお、本実施形態では、特定パラメータの上限値を5に設定している。
【0084】
また、本実施形態では、対戦ゲームのマッチング設定を行った後であって、ゲーム開始前に、特定パラメータから所定消費値を減算し、減算後の特定パラメータを当該端末に送信する処理を行う。
【0085】
なお、本実施形態では、サーバが特定パラメータを制御しているが、端末において、特定パラメータを制御するようにしてもよい。例えば、端末は、ログイン処理後、サーバから特定パラメータを受信し、端末において当該特定パラメータを所定周期毎(例えば、30分毎)に上限値を限度に所定回復値(例えば、「1」)を加算(回復)する処理を行い、対戦ゲームのマッチング設定を行った後であってゲーム開始前に、下限値を限度に特定パラメータから所定消費値を減算する処理を行う。
【0086】
また、本実施形態では、1回分の対戦ゲームにおいて勝利すると、勝利したプレーヤの特定パラメータに所定勝利値(例えば、「1」)を加算する処理を行うようにしてもよい。
【0087】
また、本実施形態では、プレーヤが課金サーバにアクセスして、プレーヤが課金することによって、特定パラメータに課金した額に応じた値を加算するようにしてもよい。
【0088】
また、本実施形態の端末は、サーバから受信した特定パラメータの値を表示部に表示している。例えば、端末は、この特定パラメータの値を対戦コインの枚数(残数)として表示してもよいし、ゲージで表示してもよい。
【0089】
3.3 ログイン処理
本実施形態のサーバ20は、プレーヤの端末10からプレーヤのログイン情報(プレー
ヤ識別情報、プレーヤパスワード等)を受信し、プレーヤの認証を許可すると、プレーヤ識別情報に関連する情報(特定パラメータ、キャラクタ情報等)を送信する。
【0090】
また、本実施形態では、ログイン中のプレーヤであって、特定パラメータが1以上であるプレーヤを対戦ゲームのマッチング申込み可能なプレーヤとしている。なお、本実施形態では、ログイン中であって、特定パラメータが1以上であり、さらに、プレーヤの端末から対戦ゲームに参加するための参加要求(エントリー)を受け付けたプレーヤを、マッチング申込み可能なプレーヤとしてもよい。
【0091】
また、本実施形態では、ログイン中のプレーヤであって、原則、特定パラメータが1以上であるプレーヤをマッチング候補(マッチング対象)のプレーヤとしている。
【0092】
3.4 マッチングの申込み処理
本実施形態のサーバ20は、対戦ゲームに参加要求し、対戦相手が決まっていない待ち状態の複数のプレーヤの中から、対戦ゲームを行う第1のプレーヤ、第2のプレーヤをマッチングする処理(第1のプレーヤ、第2のプレーヤとの組み合わせを決める処理)を行う。
【0093】
例えば、本実施形態では、特定パラメータが所定値以上(例えば、1以上)である場合に、マッチング申込みを受け付ける処理を行う。例えば、サーバは、端末からマッチング申込み要求情報を受信した場合には、当該端末から受信したプレーヤの識別情報に対応付けられた特定パラメータを参照し、当該特定パラメータが所定値以上であるか否かを判断する。
【0094】
例えば、プレーヤP1の端末からマッチング申込み要求情報を受信した場合、当該プレーヤP1に対応付けられた特定パラメータが5であり、1以上であるので、プレーヤP1のマッチング申込みを受け付ける処理を行う。
【0095】
3.5 マッチング相手選択処理
そして、サーバは、特定パラメータが所定値以上(例えば、所定値を1とすると1以上)であるプレーヤの端末からマッチング申込み要求情報を受信した場合に、特定パラメータが所定値以上の他の複数のプレーヤをマッチング候補とし、当該マッチング候補の中からマッチング相手を選択する処理を行う。
【0096】
例えば、特定パラメータが所定値以上であるプレーヤP1の端末からマッチング申込み要求を受信した場合に、対戦相手が決まっていない待ち状態の複数のプレーヤP2、P3、P4・・・と存在する場合において、特定パラメータが所定値以上であるプレーヤをマッチング候補とする。そして、マッチング候補となったプレーヤの中から、プレーヤP1と対戦するマッチング相手(対戦相手)を選択する。
【0097】
サーバ20は、マッチング申込みを行ったプレーヤP1のレベル、マッチング候補の各プレーヤのレベルを参照し、プレーヤP1とマッチング相手とのレベル差が生じないようにマッチングを行う。例えば、第1のプレーヤと第2のプレーヤとのレベル差が10以内になることをマッチング条件とし、当該マッチング条件を満たすようにマッチング申込みを行ったプレーヤP1のマッチング相手を選択する。
【0098】
また、本実施形態では、原則的には、特定パラメータが0、すなわち所定値未満(1未満)のプレーヤをマッチング候補としない。しかし、本実施形態では、マッチング候補数が所定候補数未満である場合には、特定パラメータが0である他のプレーヤをマッチング候補に加える。
【0099】
つまり、通常は、特定パラメータを1消費することによって、1回のゲームプレイが可能となるが、マッチング候補の絶対数が減少してしまうと、マッチングのバリエーションが減ってしまう。また、対人戦のゲームにおいては、特にマッチング申込みをしたプレーヤは、さまざまなプレーヤと対戦ゲームを行うことを好む傾向にある。そこで、本実施形態では、例外的に、マッチング候補数が所定候補数未満(例えば、1000未満)である場合には、特定パラメータが0であるプレーヤもマッチング候補に加えている。このようにすれば、マッチング候補の絶対数の減少或いは抑制が可能となる。
【0100】
また、本実施形態では、マッチング候補数が所定候補数以上である場合には、原則に従い、特定パラメータが1以上であるプレーヤをマッチング候補にする。このようにすれば、ゲーム運営者は、比較的マッチング候補数が足りている状況においては、プレーヤに課金することによって特定パラメータの増加を促すことができるからである。
【0101】
また、本実施形態において、サーバは、プレーヤの端末においてプレーヤがゲームプレイ中か否かを監視する処理を行い、マッチング候補数が所定候補数未満である場合には、特定パラメータが0であるプレーヤのうちゲームプレイ中であるプレーヤをマッチング候補に加えるようにしてもよい。
【0102】
つまり、特定パラメータが0のプレーヤは、無料でゲームプレイできないので、その場に居ないことや、ゲームプレイしていない可能性がある。そこで、サーバは、プレーヤがゲームプレイ中か否かを監視し、ゲームプレイ中であるプレーヤをマッチング候補に加えるようにする。このようにすれば、マッチング申込みをしたプレーヤは、確実にゲームプレイできる状況にあるプレーヤをマッチング候補にすることができる。
【0103】
なお、ゲームプレイ中とは、例えば、プレーヤが入力部から何らかの入力をしている場合であり、サーバは、入力を検出しているかどうかを端末10に問い合わせることによって監視する。例えば、サーバは、所定周期(例えば、5分毎に)、端末に入力検出情報の有無を問い合わせる情報を送信する。サーバは、端末から所定期間内(例えば、5分以内)に入力検出情報が有り(フラグ=1)の情報を受信するとゲームプレイ中であると判断する。一方、サーバは、端末から所定期間内(例えば、5分以内)に入力検出情報が有り(フラグ=1)の情報を受信しない場合にはゲームプレイ中でないと判断する。
【0104】
なお、本実施形態では、イベント期間内の特定期間に、特定パラメータが所定値未満である他のプレーヤをマッチング候補に加えるようにしてもよい。ここで、イベントとは、本実施形態のゲームにおいて、ゲーム運営者が通常時とは別の特別なゲーム環境を提供することである。例えば、ランキングを競うイベント、勝利数に応じて報酬(仮想通貨や、抽選プログラム(ガチャ)の実行権限)を付与するイベント等がある。
【0105】
例えば、1日間において(ある日の午後9時から翌日の午後9時まで)において、対戦ゲームにおいてランキングを競うイベントがあるとする。そして、本実施形態の対戦ゲームの期間は3分間であるので、イベント開始から上限値5の特定パラメータを用いて無料で遊べる期間はおよそ15分間となる。つまり、特定パラメータの値が上限値5であるプレーヤは、およそ15分間無料でゲームプレイできる。
【0106】
通常、イベント開始直後は、多くのプレーヤが無料でゲームプレイを行おうとするので、マッチング候補数も多くなるが、無料で遊べる期間(およそ15分)が経過してしまうと、マッチング候補数が減少する傾向にある。
【0107】
また、本実施形態では、課金することによって特定パラメータを増加させることもでき
るが、課金せずにプレーヤが待つことによって特定パラメータを増加させるプレーヤも少なくない。また、このようなプレーヤがログアウトしてしまうと、対戦ゲーム全体の盛り上がりがかけてしまい、マッチングのバリエーションも減ってしまう。
【0108】
そこで、本実施形態では、
図5に示すように、例えば、一のゲーム期間が3分間であって、特定パラメータの上限値が5であるとすると、一のゲーム期間(3分間)に、上限値(5)を乗算した期間T0を求め、当該期間T0(15分)の経過時点から、所与の期間(例えば、30分間)を特定期間T1とし、当該特定期間T1において、特定パラメータが0であるプレーヤをマッチング候補に加える。この特定期間は、例えば、特定パラメータの回復周期(増加周期)の期間とする。例えば、30分で特定パラメータが回復する場合には、特定期間T1を30分とする。
【0109】
また、本実施形態では、
図5に示すように、イベント終了間近になると、ランキングを競うプレーヤが増えた方がゲーム全体を盛り上げることになるので、より多くのプレーヤが参加した方が好ましい。そこで、イベント終了時点から遡って所与の期間(例えば、3分間)を特定期間T2とし、当該特定期間T2において、特定パラメータが0であるプレーヤをマッチング候補に加える。この特定期間T2は、少なくとも1回分のゲーム期間(3分)以上を有する期間が好ましい。
【0110】
また、本実施形態では、特定期間T1、T2以外の期間は、原則に従い、特定パラメータが1以上であるプレーヤをマッチング候補にすればよい。
【0111】
このように、本実施形態では、イベント期間に応じて、特定パラメータが0であるプレーヤがマッチング候補となり得る期間を予めスケジューリングすることができる。
【0112】
また、本実施形態では、特定パラメータが0であるプレーヤをマッチング候補にする場合には、特定パラメータが0である全プレーヤをマッチング候補にしてもよいし、特定パラメータが0である全プレーヤのうちの所定割合の数(例えば、2割等)をマッチング候補にしてもよい。この所定割合は、特定パラメータが1以上であるプレーヤ数に応じて変動させてもよい。例えば、特定パラメータが1以上であるプレーヤ数が増えるにつれて、特定割合を減少させ、特定パラメータが1以上であるプレーヤ数が減少するにつれて、特定割合を増加させるようにしてもよい。より具体的に説明すると、例えば、特定パラメータが1以上であるプレーヤが100未満である場合には、特定パラメータが0である全プレーヤのうちの10割をマッチング候補にし、特定パラメータが1以上であるプレーヤ数が100以上1000未満である場合には、特定パラメータが0である全プレーヤのうちの5割をマッチング候補にし、特定パラメータが1以上であるプレーヤ数が1000以上である場合には、特定パラメータが0である全プレーヤのうちの2割をマッチング候補にする。
【0113】
3.6 マッチングを設定する処理
本実施形態のサーバは、マッチング申込みを行った一のプレーヤと、マッチング候補から選ばれたマッチング相手とのマッチングを設定する処理を行う。
【0114】
例えば、本実施形態のサーバは、プレーヤP1の端末からマッチング申込み要求を受信した場合には、当該プレーヤP1と、マッチング候補から選ばれたマッチング相手(例えば、プレーヤP2)とをマッチング設定する処理を行う。
【0115】
具体的にマッチングの設定とは、
図6に示すように、第1のプレーヤ、第2のプレーヤのマッチング情報を記憶部に記憶する処理を行う。つまり、マッチング情報とは、第1のプレーヤ、第2のプレーヤそれぞれのプレーヤ名(プレーヤの識別情報)の組み合わせ情
報である。本実施形態では、
図6に示すように、マッチング情報を記憶部に蓄積して記憶する(履歴を記憶する)ようにしてもよい。
【0116】
そして、サーバ20は、マッチング設定を行うと、第1のプレーヤ(例えば、プレーヤP1)の端末に相手プレーヤ(例えば、プレーヤP2)のプレーヤ情報を送信し、第2のプレーヤ(例えば、プレーヤP2)の端末に相手プレーヤ(例えば、プレーヤP1)のプレーヤ情報を送信する処理を行う。
【0117】
また、本実施形態では、マッチングが設定された場合に、ゲームを開始する前に、マッチング申込みを行った一のプレーヤの特定パラメータ及びマッチング相手の特定パラメータそれぞれから、所定消費値(例えば、1)を減算する処理を行う。
【0118】
なお、本実施形態では、マッチング相手の特定パラメータが0である場合には、0の状態を維持している。
【0119】
また、本実施形態では、マッチング相手の特定パラメータが0である場合には、申込みを行った一のプレーヤの特定パラメータから所定消費値の倍数を減算する処理を行うようにしてもよい。
【0120】
例えば、プレーヤP1がマッチングを申込み、マッチング候補において特定パラメータの値が0であるプレーヤP2が加えられ、当該プレーヤP2がプレーヤP1のマッチング相手に選ばれて、マッチング設定されたとする。すると、サーバは、プレーヤP1の特定パラメータから2を減算し、プレーヤP2の特定パラメータは0を維持する。
【0121】
このようにすれば、対戦ゲームにおいて本来ならば各々のプレーヤの特定パラメータから1を消費するところを、プレーヤP1がプレーヤP2の分も負担して、プレーヤP1の特定パラメータから2を消費することになる。つまり、特定パラメータの値を、自他問わず一のプレーヤが1回分のゲームをプレイすることができる権利数にすることができる。
【0122】
また、本実施形態では、1回分の対戦ゲームにおいて勝利すると、勝利したプレーヤの特定パラメータに所定勝利値(例えば、「1」)を加算する処理を行うので、プレーヤP1は、勝利さえすれば、相手プレーヤP2の負担を解消することができる。
【0123】
なお、本実施形態では、プレーヤP1がマッチング申込みを行い、サーバがマッチング候補からマッチング相手としてプレーヤP2を選択した場合には、マッチング設定をする前に、プレーヤP1の端末にプレーヤP2のプレーヤ情報を送信し、プレーヤP2の端末にプレーヤP1のプレーヤ情報を送信するようにしてもよい。例えば、プレーヤP1の端末からマッチング許可情報を受信し、かつ、プレーヤP2の端末からマッチング許可情報を受信した場合に、プレーヤP1、P2をマッチング設定する処理を行うようにしてもよい。
【0124】
3.7 特定パラメータが所定値未満のプレーヤに対するゲーム処理
本実施形態では、原則、特定パラメータが0(所定値未満の一例)のプレーヤは、対戦ゲームでプレイすることができないが、例外的に、所定条件下で、マッチング候補となる可能性があり、対戦ゲームでプレイする機会もある。したがって、特定パラメータが0のプレーヤが家庭用据置機でログインし続ける環境を提供することが必要となる。
【0125】
本実施形態では、特定パラメータが0のプレーヤがログインし続ける環境を提供するために、プレーヤの端末において練習モードを提供している。練習モードは、端末において、プレーヤのキャラクタが練習用のCPUキャラクタ(コンピュータキャラクタ)と対戦
ゲームプログラムを実行するモードである。また、本実施形態では、プレーヤの端末において、プレーヤのキャラクタに対して、カスタマイズ(服装や髪型を変更する)するモードを提供してもよい。
【0126】
また、本実施形態では、特定パラメータが0のプレーヤの端末の画面に、対戦ゲームのマッチング候補になる可能性があることを表示するようにしてもよい。このようにすれば、さらに、プレーヤがログインし続けることを促すことができる。このように、本実施形態では、特定パラメータが0のプレーヤが飽きずにログインし続ける環境を提供するようにしている。
【0127】
3.8 フローチャート
図7(A)(B)は、本実施形態のマッチング処理の流れを示すフローチャートである。まず、
図7(A)に示すように、サーバ20は、プレーヤの端末からマッチング申込み要求情報を受信する処理を行う(ステップS1)。そして、マッチング申込みを行ったプレーヤの特定パラメータが1以上であるか否かを判断する(ステップS2)。
【0128】
マッチング申込みを行ったプレーヤの特定パラメータが1以上である場合には(ステップS2のY)、次のステップに進み、マッチング申込みを行ったプレーヤの特定パラメータが1以上でない場合には(ステップS2のN)、処理を終了する。
【0129】
次に、特定パラメータが1以上の他のプレーヤをマッチング候補にし(ステップS3)、マッチング候補数が所定候補数以上か否かを判断する(ステップS4)。
【0130】
マッチング候補数が所定候補数以上である場合(ステップS4のY)、ステップS6に進む。一方、マッチング候補数が所定候補数以上でない場合(ステップS4のN)、特定パラメータが0である他のプレーヤをマッチング候補に加える(ステップS5)。
【0131】
次に、マッチング条件に基づき、マッチング候補から、マッチング申込みを行ったプレーヤのマッチング相手となる他のプレーヤを選択する処理を行う(ステップS6)。そして、マッチング申込みを行ったプレーヤと、マッチング相手とをマッチング設定する処理を行う(ステップS7)。
【0132】
次に、
図7(B)に示すように、マッチング相手の特定パラメータが0であるか否かを判断する(ステップS10)。
【0133】
マッチング相手の特定パラメータが0である場合には(ステップS10のY)、マッチング申込みを行ったプレーヤの特定パラメータから2を減算する処理を行う(ステップS11)。
【0134】
一方、マッチング相手の特定パラメータが0でない場合には(ステップS10のN)、マッチング申込みを行ったプレーヤの特定パラメータから1を減算する処理を行い、マッチング相手の特定パラメータから1を減算する処理を行う(ステップS12)。
【0135】
次に、ゲームを開始する処理を行う(ステップS13)。例えば、サーバは端末にゲームを開始する情報を送信し、各端末はサーバからゲームを開始する情報を受信すると、1回分の対戦ゲームプログラムを実行する処理を行う。なお、ゲーム中は、対戦する各プレーヤの端末間でデータを送受信するが、サーバを経由して端末間でデータを送受信してもよい。そして、ゲームが終了すると(ステップS14)、ゲーム結果を端末から受信する(ステップS15)。例えば、端末は1回分の対戦ゲームが終了すると終了情報をサーバに送信し、当該対戦ゲームの結果をサーバに送信する。そして、サーバは端末から受信した
対戦ゲームの結果に基づき、勝利したプレーヤの特定パラメータを1増加させる処理を行う(ステップS16)。以上で処理が終了する
4.応用例
(1)グループ対戦の応用例
本実施形態では、グループ対戦によるマッチング処理を行ってもよい。例えば、第1のプレーヤを含む5人のプレーヤで構成される第1のグループと、第2のプレーヤを含む5人のプレーヤで構成される第2のグループを生成するマッチングする処理を行うようにしてもよい。例えば、マッチング申込みを行う一のプレーヤのグループ内のメンバー(マッチング相手の一例)を決める場合や、対戦相手グループ内のメンバー(マッチング相手の一例)を決める場合、マッチング候補数が所定候補数未満である場合には、特定パラメータが0であるプレーヤをマッチング候補に加えるようにしてもよい。
【0136】
(2)特定パラメータの消費量
本実施形態では、1回のゲームあたり2以上の値を消費(減算)するゲームに応用してもよい。かかる場合には、特定パラメータの値が2以上であることをマッチング申込みの条件とし、原則として、特定パラメータの値が2以上であるプレーヤをマッチング候補とするが、マッチング候補数が所定候補数未満である場合には、特定パラメータの値が2未満のプレーヤ(例えば、特定パラメータの値が1或いは0)をマッチング候補に加えるようにしてもよい。
【0137】
(3)その他
本実施形態はクラウドコンピューティングで実現されるネットワークシステムでもよい。すなわち、上述した説明では、端末10でゲーム処理や描画処理を行っているが、クラウドコンピューティングではサーバ上でプレーヤ毎の情報(プレーヤキャラクタの情報やプレーヤ情報など)を記憶し、ゲーム処理を行う。つまり、端末10は入力部160からの入力を行い、サーバ20に入力情報を送信する。そして、サーバ20は、マッチング処理の他、ゲーム処理や描画処理を行い、映像データをプレーヤの端末10にストリーミング配信し、端末10はサーバ20から受信した映像データを表示部190表示する。
【0138】
本実施形態では、マッチング処理をサーバ20で行う例について説明したが、端末10がマッチング処理を行うように制御してもよい。また、本実施形態は、種々の対戦ゲームに応用できる。例えば、音楽ゲーム、ロールプレイングゲーム、シューティングゲームやハンティングアクションゲーム等にも応用できる。