説明

ネットワークゲームシステム、ネットワークゲームシステムの制御方法、ゲーム装置、ゲーム装置の制御方法及びプログラム

【課題】ユーザが自分の都合で対戦中に自分のゲーム装置の電源や通信接続を切断してしまうことを抑制できるようになるネットワークゲームシステムを提供すること。
【解決手段】条件記憶部70cはゲーム状況に関するゲーム状況条件を複数記憶する。条件判定部76は、複数のゲーム状況条件の各々をゲーム状況が満足するか否かを判定する。途中終了判定部74は対戦が途中で終了したか否かを判定する。所定処理実行部78は、対戦が途中で終了した場合、対戦が途中で終了した時点におけるゲーム状況が複数のゲーム状況条件の各々を満足したか否かの判定結果に基づいて、所定処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明はネットワークゲームシステム、ネットワークゲームシステムの制御方法、ゲーム装置、ゲーム装置の制御方法及びプログラムに関する。
【背景技術】
【0002】
複数のユーザが通信ネットワークを介して参加するネットワークゲームを実行するネットワークゲームシステムが知られている。例えば、複数のユーザが通信ネットワークを介してサッカーゲームや麻雀ゲームの対戦を行うネットワークゲームシステムが知られている。
【特許文献1】特開2005−137812号公報
【発明の開示】
【発明が解決しようとする課題】
【0003】
上記のネットワークゲームシステムでは、ユーザが自分の都合で対戦中に自分のゲーム装置の電源や通信接続を切断してしまうことによって、対戦を途中で終了させてしまう場合がある。例えば対戦に敗北しそうなユーザが、対戦中に自分のゲーム装置の電源や通信接続を意図的に切断してしまうことによって、対戦を途中で終了させてしまう場合がある。このようなユーザの行為によってネットワークゲームの興趣が損なわれてしまう。
【0004】
本発明は上記課題に鑑みてなされたものであって、その目的は、ユーザが自分の都合で対戦中に自分のゲーム装置の電源や通信接続を切断してしまうことを抑制できるようになるネットワークゲームシステム、ネットワークゲームシステムの制御方法、ゲーム装置、ゲーム装置の制御方法及びプログラムを提供することにある。
【課題を解決するための手段】
【0005】
上記課題を解決するために、本発明に係るネットワークゲームシステムは、複数のユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステムにおいて、前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶するゲーム状況データ記憶手段と、前記ゲーム状況に関するゲーム状況条件を複数記憶する条件記憶手段と、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段と、前記対戦が途中で終了したか否かを判定する途中終了判定手段と、前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段と、を含むことを特徴とする。
【0006】
また、本発明に係るネットワークゲームシステムの制御方法は、複数のユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステムの制御方法において、前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出すステップと、前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出すステップと、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定ステップと、前記対戦が途中で終了したか否かを判定する途中終了判定ステップと、前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行ステップと、を含むことを特徴とする。
【0007】
また、本発明に係るプログラムは、複数のユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステムとしてコンピュータを機能させるためのプログラムであって、前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出す手段、前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出す手段、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段、前記対戦が途中で終了したか否かを判定する途中終了判定手段、及び、前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段、として前記コンピュータを機能させるためのプログラムである。
【0008】
また、本発明に係るゲーム装置は、「複数のゲーム装置を含み、前記複数のゲーム装置の各々に係るユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステム」に前記複数のゲーム装置のうちの一つとして含まれるゲーム装置において、前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶するゲーム状況データ記憶手段と、前記ゲーム状況に関するゲーム状況条件を複数記憶する条件記憶手段と、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段と、前記対戦が途中で終了したか否かを判定する途中終了判定手段と、前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段と、を含むことを特徴とする。
【0009】
また、本発明に係るゲーム装置の制御方法は、「複数のゲーム装置を含み、前記複数のゲーム装置の各々に係るユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステム」に前記複数のゲーム装置のうちの一つとして含まれるゲーム装置の制御方法において、前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出すステップと、前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出すステップと、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定ステップと、前記対戦が途中で終了したか否かを判定する途中終了判定ステップと、前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行ステップと、を含むことを特徴とする。
【0010】
また、本発明に係るプログラムは、「複数のゲーム装置を含み、前記複数のゲーム装置の各々に係るユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステム」に前記複数のゲーム装置のうちの一つとして含まれるゲーム装置として、家庭用ゲーム装置、携帯用ゲーム機、携帯電話機、携帯情報端末(PDA)又はパーソナルコンピュータなどのコンピュータを機能させるためのプログラムであって、前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出す手段、前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出す手段、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段、前記対戦が途中で終了したか否かを判定する途中終了判定手段、及び、前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段、として前記コンピュータを機能させるためのプログラムである。
【0011】
また、本発明に係る情報記憶媒体は、上記プログラムを記録したコンピュータ読み取り可能な情報記憶媒体である。また、本発明に係るプログラム配信装置は、上記プログラムを記録した情報記憶媒体を備え、当該情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信装置である。また、本発明に係るプログラム配信方法は、上記プログラムを記録した情報記憶媒体から上記プログラムを読み出し、配信するプログラム配信方法である。
【0012】
本発明は、複数のユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステムに関する。本発明では、ネットワークゲームのゲーム状況を示すゲーム状況データが記憶される。また、ゲーム状況に関するゲーム状況条件が複数記憶される。この複数のゲーム状況条件の各々をゲーム状況が満足するか否かがゲーム状況データに基づいて判定される。また本発明では、対戦が途中で終了したか否かが判定される。対戦が途中で終了した場合、複数のゲーム状況条件の各々を、対戦が途中で終了した時点におけるゲーム状況が満足したか否かの判定結果に基づいて、所定処理が実行される。本発明によれば、ユーザが自分の都合で対戦中に自分のゲーム装置の電源や通信接続を切断してしまうことを抑制できるようになる。
【0013】
また、本発明の一態様では、前記条件判定手段による判定結果に対応する数値を取得する数値取得手段と、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に対応する前記数値と、所定の基準値と、を比較する比較手段と、を含むようにしてもよい。前記所定処理実行手段は、前記対戦が途中で終了した場合、前記比較手段による比較結果に基づいて前記所定処理を実行するようにしてもよい。
【0014】
また、本発明の一態様では、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々に対応づけて基本数値を記憶する基本数値記憶手段を含むようにしてもよい。前記数値取得手段は、前記条件記憶手段に記憶される前記複数のゲーム状況条件のうちの、前記ゲーム状況が満足する前記ゲーム状況条件に対応づけて記憶される前記基本数値に基づいて所定の演算処理を実行することによって、前記数値を取得するようにしてもよい。
【0015】
また、本発明の一態様では、前記条件判定手段は、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが更新された場合、該ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定するようにしてもよい。前記数値取得手段は、前記条件判定手段による判定が行われた場合、その判定結果に対応する前記数値を取得するようにしてもよい。前記比較手段は、前記数値取得手段によって前記数値が取得された場合、該数値と、前記所定の基準値と、を比較し、その比較結果を不揮発性記憶手段に記憶させるようにしてもよい。前記所定処理実行手段は、前記対戦が途中で終了した場合、前記不揮発性記憶手段に記憶される前記比較結果に基づいて前記所定処理を実行するようにしてもよい。
【0016】
また、本発明の一態様では、前記条件判定手段は、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが更新された場合、該ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定するようにしてもよい。前記数値取得手段は、前記条件判定手段による判定が行われた場合、その判定結果に対応する前記数値を取得し、該数値を不揮発性記憶手段に記憶させるようにしてもよい。前記比較手段は、前記対戦が途中で終了した場合、前記不揮発性記憶手段に記憶される前記数値と、前記所定の基準値と、を比較するようにしてもよい。
【0017】
また、本発明の一態様では、前記条件判定手段は、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが更新された場合、該ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定し、その判定結果を不揮発性記憶手段に記憶させるようにしてもよい。前記数値取得手段は、前記対戦が途中で終了した場合、前記不揮発性記憶手段に記憶される前記判定結果に対応する前記数値を取得するようにしてもよい。
【0018】
また、本発明の一態様では、前記ゲーム状況データ記憶手段は不揮発性記憶手段であってもよい。前記条件判定手段は、前記対戦が途中で終了した場合、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定するようにしてもよい。
【0019】
また、本発明の一態様では、前記所定処理は、前記複数のユーザのうちの少なくとも一人に対して所定のメッセージを出力するための処理と、前記複数のユーザのうちの少なくとも一人が対戦を行うことを制限するための処理と、の少なくとも一方を含むようにしてもよい。
【0020】
また、本発明の一態様では、前記複数のユーザの各々の通算対戦成績を記憶する通算対戦成績記憶手段を含むようにしてもよい。前記所定処理は、前記複数のユーザのうちの少なくとも一人の前記通算対戦成績を更新するための処理を含むようにしてもよい。
【発明を実施するための最良の形態】
【0021】
以下、本発明の実施形態の一例について図面に基づき詳細に説明する。
【0022】
図1は、本発明の実施形態に係るネットワークゲームシステムの全体構成を示す図である。図1に示すように、ネットワークゲームシステム10は、ネットワークゲーム管理装置20と、複数のゲーム装置30と、を含む。ネットワークゲーム管理装置20と複数のゲーム装置30とは通信ネットワーク12に接続される。このため、ネットワークゲーム管理装置20とゲーム装置30との間で相互にデータ授受可能である。また、ゲーム装置30と他のゲーム装置30との間でも相互にデータ授受可能である。なお、通信ネットワーク12には例えばインターネットが含まれる。
【0023】
ネットワークゲーム管理装置20は公知のサーバコンピュータシステムによって実現される。図2はネットワークゲーム管理装置20のハードウェア構成を示す図である。図2に示すように、ネットワークゲーム管理装置20は、制御部21と、主記憶部22と、補助記憶部23と、光ディスク読み取り部24と、通信インタフェース25と、を含む。
【0024】
制御部21は例えばマイクロプロセッサであり、主記憶部22に読み出されたオペレーティングシステムやその他のプログラムに従って各種情報処理を実行する。主記憶部22は例えばRAMを含んで構成される。主記憶部22には補助記憶部23又は光ディスク(情報記憶媒体)から読み出されたプログラムやデータが記憶される。また主記憶部22は処理の過程で必要となる種々のデータを記憶するワークメモリとしても用いられる。補助記憶部23は例えばハードディスクなどの不揮発性記憶媒体を含んで構成される。光ディスク読み取り部24は光ディスクに記憶されたプログラムやデータを読み取る。光ディスクは例えばDVD(登録商標)−ROMやCD−ROMなどである。通信インタフェース25はネットワークゲーム管理装置20を通信ネットワーク12に接続するためのインタフェースである。
【0025】
ゲーム装置30は例えば携帯用ゲーム機、家庭用ゲーム機、携帯電話機、携帯情報端末(PDA)又はパーソナルコンピュータなどによって実現される。ここでは、ゲーム装置30が携帯用ゲーム機によって実現される場合について説明する。図3はゲーム装置30のハードウェア構成を示す図である。図3に示すように、ゲーム装置30は、制御部31と、主記憶部32と、カードスロット33と、ゲームカード34と、通信インタフェース35と、操作入力部36と、表示部37と、音声出力部38と、を含む。
【0026】
制御部31は例えばマイクロプロセッサであり、主記憶部32に読み出されたオペレーティングシステムやその他のプログラムに従って各種情報処理を実行する。主記憶部32は例えばRAMを含んで構成される。主記憶部32にはゲームカード34(情報記憶媒体)から読み出されたプログラムやデータが記憶される。また主記憶部32は処理の過程で必要となる種々のデータを記憶するワークメモリとしても用いられる。カードスロット33はゲームカード34に記憶されたプログラムやデータを読み取る。ゲームカード34は、例えば、ゲームプログラムやゲームデータが記憶されたROMと、セーブデータなどを記憶するためのEEPROM(不揮発性記憶媒手段)と、を含んで構成される。通信インタフェース35はゲーム装置30を通信ネットワーク12に通信接続するためのインタフェースである。なお、ゲーム装置30は例えばハードディスクなどの補助記憶部(不揮発性記憶手段)を含むようにしてもよい。
【0027】
操作入力部36はユーザが操作入力をするための手段である。操作入力部36は例えば操作ボタンやタッチパネルなどである。表示部37は制御部31の指示に従って画面を表示する。表示部37は例えば液晶表示パネルなどである。音声出力部38はゲームカード34から読み出されたゲーム音楽、ゲーム効果音、メッセージなどの各種音声データを制御部31の指示に従って出力する。音声出力部38は例えばスピーカやヘッドホンなどである。
【0028】
なお、ネットワークゲーム管理装置20はメモリカードスロットを含むようにしてもよい。このようにして、プログラムやデータがメモリカードを介してネットワークゲーム管理装置20に供給されるようにしてもよい。また、ゲーム装置30は光ディスク読み取り部を含むようにしてもよい。このようにして、プログラムやデータが光ディスクを介してゲーム装置30に供給されるようにしてもよい。また、通信ネットワーク12を介して遠隔地からプログラムやデータがネットワークゲーム管理装置20又はゲーム装置30に供給されるようにしてもよい。
【0029】
上記の構成を有するネットワークゲームシステム10では、ユーザが遠隔地の他のユーザと通信ネットワーク12を介してゲームを楽しむことができる。例えば、ユーザは遠隔地の他のユーザ(以下、「対戦相手」と記載する。)と通信ネットワーク12を介して対戦サッカーゲームを楽しむことができる。
【0030】
図4は対戦サッカーゲームの流れを示す。まずユーザは、ゲーム装置30からネットワークゲーム管理装置20にアクセスし、ネットワークゲームシステム10にログインする。ネットワークゲームシステム10へのログインが完了すると、まずメニュー画面が表示される(S101)。図5はメニュー画面の一例を示している。図5に示すメニュー画面40は通算対戦成績ボタン41とチーム設定ボタン42と対戦要求ボタン43とを含む。ユーザが通算対戦成績ボタン41を指示すると、ユーザのこれまでの対戦成績を示す通算対戦成績画面が表示される。なお、ユーザのこれまでの対戦成績はゲームカード34に記憶されている(後述の図11及び図12参照)。
【0031】
チーム設定ボタン42は、ユーザが自分のチームデータを作成するためのチーム設定画面を表示するためのボタンである。ユーザは対戦を行う前に自分のチームデータを予め作成しておく必要がある。ユーザがチーム設定ボタン42を指示した場合、チーム設定画面が表示される。チーム設定画面において、ユーザは予め用意された複数のチームのうちから所望のチームを選択する。また、ユーザはそのチームの先発出場選手やフォーメーションなどを設定する。このようにしてユーザが作成したチームデータはゲームカード34に保存される。
【0032】
対戦を希望するユーザは対戦要求ボタン43を指示する。対戦要求ボタン43が指示された場合、対戦要求データがネットワークゲーム管理装置20に送信される(S102)。このとき、ゲームカード34に予め記憶されたユーザのデータが読み出され、該データが対戦要求データとともにネットワークゲーム管理装置20に送信される。なお、「ユーザのデータ」には、例えばそのユーザの名前、そのユーザのゲーム装置30のIPアドレス、そのユーザのチームデータなどが含まれる。なお、ネットワークゲーム管理装置20は、ゲーム装置30から対戦要求データとともにユーザのデータを受信した場合、該ユーザのデータを補助記憶部23に記憶する。
【0033】
対戦要求データを受信したネットワークゲーム管理装置20は、対戦を要求している他のユーザのうちから対戦相手を自動的に決定する。例えば、ユーザAの対戦相手としてユーザBが決定された場合、ネットワークゲーム管理装置20はユーザBのデータ(ユーザ名、IPアドレス、チームデータなど)を補助記憶部23から読み出し、該データをユーザAのゲーム装置30に送信する。また、ネットワークゲーム管理装置20はユーザAのデータを補助記憶部23から読み出し、該データをユーザBのゲーム装置30に送信する。各ゲーム装置30は対戦相手のデータを主記憶部32に記憶する。以降、対戦相手のデータ(IPアドレス)に基づいて、ゲーム装置30間でのデータの授受が行われる。
【0034】
対戦相手のデータを受信したゲーム装置30は対戦相手案内画面を表示する(S103)。図6は対戦相手案内画面の一例を示している。図6に示す対戦相手案内画面45は対戦相手情報欄46と対戦相手メッセージ欄47とを含む。対戦相手情報欄46には対戦相手の情報が表示される。なお、対戦相手案内画面45の表示中にユーザは対戦相手へのメッセージを入力する。ユーザが入力したメッセージは対戦相手のゲーム装置30に送信される。対戦相手メッセージ欄47には対戦相手からのメッセージが表示される。
【0035】
対戦相手案内画面45に対戦相手からのメッセージが表示された後、試合が開始される(S104)。試合は、所定の基本試合時間と、試合経過に応じて決定される延長試合時間(ロスタイム)と、を合わせた試合時間が経過したタイミングで終了する。なお、上記試合時間が経過したタイミングで両チームの得点が同点である場合には引き分けとして試合が終了するようにしてもよいし、いわゆるペナルティキック戦によって勝敗が決定された後に試合が終了するようにしてもよい。本明細書では、試合が途中で終了することなく最後まで続けられて試合が終了することを「試合が正常に終了する」というように記載する。すなわち、試合時間が経過して試合が終了することや、ペナルティキック戦によって勝敗が決定されて試合が終了することを「試合が正常に終了する」と記載する。
【0036】
試合中においては、各ゲーム装置30の主記憶部32に共通の仮想3次元空間が構築される。図7は仮想3次元空間の一例を示している。図7に示すように、仮想3次元空間50には、サッカーのフィールドを表すフィールドオブジェクト52が配置される。フィールドオブジェクト52には、例えばコーナーエリア53やペナルティエリア55などが表される。また、フィールドオブジェクト52上には、ゴールを表すゴールオブジェクト54と、サッカー選手を表す選手オブジェクト56と、サッカーボールを表すボールオブジェクト58と、が配置される。図7では省略されているが、仮想3次元空間50には22体の選手オブジェクト56が配置される。
【0037】
また、仮想3次元空間50には仮想カメラ59が配置される。仮想カメラ59は例えばボールオブジェクト58に従動する。試合中には、この仮想カメラ59から仮想3次元空間50を見た様子を表すゲーム画面が各ゲーム装置30の表示部37に表示される。ユーザはゲーム画面を見ながら、操作入力部36を用いて自らのチームの選手オブジェクト56を操作する。
【0038】
本実施の形態では、ユーザのゲーム装置30と対戦相手のゲーム装置30とのいずれか一方がゲームサーバの役割を担うことによって、それらのゲーム装置30の間で仮想3次元空間50が共通化される。すなわち、ゲームサーバの役割を担うゲーム装置30の主記憶部32には、最新のゲーム状況を示すゲーム状況データが記憶される。また、そのゲーム状況データの複製が他のゲーム装置30の主記憶部32に記憶される。ゲーム状況データは、例えば、試合経過を示すデータと、仮想3次元空間50の現在の状態を示すデータと、を含む。図8はゲーム状況データの一例を示す。
【0039】
試合経過データは試合経過を示すデータであり、試合時間データと、得点データと、ファウルデータと、イエロー/レッドカードデータと、選手交代データと、ボール支配時間データと、を含む。試合時間データは、ロスタイムの長さや試合開始からの経過時間などを示す。得点データは各チームの得点を示す。ファウルデータは各チームの選手オブジェクト56が犯したファウルに関するデータを含む。イエロー/レッドカードデータは各チームの選手オブジェクト56が受けたイエローカード及びレッドカードに関するデータを含む。選手交代データは各チームの選手交代の内容を示す。なお、一試合で可能な選手交代の人数及び回数は所定の人数及び回数(例えば3人、3回)に限られている。ボール支配時間データは各チームの選手オブジェクト56がボールオブジェクト58を保持していた累計時間を示す。
【0040】
仮想カメラ59の状態データは、仮想カメラ59の現在の位置や視線方向を示すデータを含む。ボールオブジェクト58の状態データは、例えばボールオブジェクト58の現在の位置、移動方向/速度を示すデータを含む。選手オブジェクト56の状態データは、例えば選手オブジェクト56の現在の位置、姿勢、移動方向/速度、動作種類(例えばダッシュ、パスやシュートなど)を示すデータを含む。また、選手オブジェクト56の状態データは操作対象フラグとボール保持フラグとを含む。操作対象フラグはその選手オブジェクト56がユーザ又は対戦相手の操作対象であるか否かを示す。ボール保持フラグはその選手オブジェクト56がボールオブジェクト58を保持しているか否かを示す。
【0041】
図4に示すように、試合が正常に終了すると(対戦が完了すると)、ユーザ及び対戦相手のゲーム装置30で試合結果画面が表示される(S105)。図9は試合結果画面の一例を示す。図9に示す試合結果画面60は試合結果表示欄61と対戦相手メッセージ欄62とを含む。試合結果表示欄61には試合結果が表示される。試合結果画面60の表示中にユーザは対戦相手へのメッセージを入力する。ユーザが入力したメッセージは対戦相手のゲーム装置30に送信される。対戦相手メッセージ欄62には対戦相手からのメッセージが表示される。試合結果画面60に対戦相手からのメッセージが表示された後、所定時間が経過した場合、メニュー画面40が表示される(S101)。なお、試合が正常に終了した場合、ゲーム装置30のゲームカード34に記憶される、ユーザの通算対戦成績(後述の図11及び図12参照)が試合結果に基づいて更新される。
【0042】
上記のネットワークゲームシステム10では、ゲーム装置30間の通信接続が対戦中に切断された場合、ゲーム装置30間でゲーム状況データを共通化することができなくなる。その結果、サッカーゲームを続行することが不可能になり、対戦が途中で終了してしまう。
【0043】
またネットワークゲームシステム10では、原則として、試合が正常に終了した場合にユーザの通算対戦成績(勝利回数、敗北回数又は通算失点等)が試合結果に基づいて更新される。試合が正常に終了しなければユーザの通算対戦成績が更新されないようなネットワークゲームシステムでは、例えば、敗色が濃厚になったユーザが、自分の敗北回数の増加を避けるために、試合中にゲーム装置30(又はゲーム装置30が接続されるルーターなどの通信機器)の電源や通信接続を意図的に切断してしまう場合がある。また例えば、対戦相手に得点されたユーザが、自分の通算失点の増加を避けるために、試合中にゲーム装置30(又はゲーム装置30が接続されるルーターなどの通信機器)の電源や通信接続を意図的に切断してしまう場合がある。このようなユーザの行為が放置されると、対戦サッカーゲームの興趣が損なわれてしまう。以下、ネットワークゲームシステム10において、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断してしまうことを抑制するための技術について説明する。
【0044】
図10はネットワークゲームシステム10で実現される機能のうち、本発明に関連する機能を示す機能ブロック図である。図10に示すように、ネットワークゲームシステム10は、ゲームデータ記憶部70と、主ゲーム処理実行部72と、途中終了判定部74と、条件判定部76と、所定処理実行部78と、を機能的に含む。例えば、これらの機能ブロックは各ゲーム装置30で実現される。すなわち、これらの機能ブロックは各ゲーム装置30がプログラムを実行することによって実現される。
【0045】
[ゲームデータ記憶部]
ゲームデータ記憶部70は例えば主記憶部32やゲームカード34によって実現される。ゲームデータ記憶部70は対戦サッカーゲームに関する各種データを記憶する。
【0046】
例えば、ゲームデータ記憶部70(ゲームカード34)はユーザのチームデータを記憶する。また例えば、ゲームデータ記憶部70(主記憶部32)は対戦相手のチームデータを記憶する。チームデータは、チームの設定内容(例えば先発出場選手やフォーメーションなど)を示すデータを含む。またチームデータは、チームに属する各選手オブジェクト56の能力パラメータや調子パラメータを含む。能力パラメータは選手オブジェクト56の各種能力(例えばパス能力やシュート能力など)の高さを示す数値パラメータである。例えば、能力パラメータは0〜100の整数値をとる。選手オブジェクト56の能力が高い場合、その選手オブジェクト56のその能力パラメータの値は高くなる。一方、調子パラメータは選手オブジェクト56の調子の良さを示すパラメータである。例えば、調子パラメータも0〜100の整数値をとる。選手オブジェクト56の調子が良い場合、その選手オブジェクト56の調子パラメータの値は高くなる。試合中において、各選手オブジェクト56の能力パラメータの値はその選手オブジェクト56の調子パラメータの値に基づいて補正される。例えば、調子の良い選手オブジェクト56の能力パラメータの値は通常よりも能力が高くなるように補正される。また例えば、調子の悪い選手オブジェクト56の能力パラメータの値は通常よりも能力が低くなるように補正される。
【0047】
またゲームデータ記憶部70は、通算対戦成績記憶部70aと、ゲーム状況データ記憶部70bと、条件記憶部70c(基本数値記憶手段)と、を含む。
【0048】
[通算対戦成績記憶部]
通算対戦成績記憶部70aは例えばゲームカード34によって実現される。通算対戦成績記憶部70aは、そのゲーム装置30に係るユーザの通算対戦成績データを記憶する。例えば、ユーザAのゲーム装置30の通算対戦成績記憶部70aにはユーザAの通算対戦成績データが記憶される。図11及び図12は通算対戦成績記憶部70aに記憶されるデータの一例を示す。
【0049】
図11は通算対戦成績データの一例を示す。図11に示す通算対戦成績データは、通算対戦成績、通算得点、通算失点、通算ファウル数、通信切断回数フィールドを含む。通算対戦成績フィールドはユーザの対戦回数と勝利回数と敗北回数と引き分け回数とを示す。通算得点フィールドはユーザの得点の累計を示す。通算失点フィールドはユーザの失点の累計を示す。通算ファウル数フィールドはユーザが犯したファウルの累計回数を示す。途中終了回数フィールドは対戦が途中で終了した累計回数を示す。この通算対戦成績データは、試合が途中で終了することなく正常に終了した場合に試合結果に基づいて更新される(後述の図17のS312参照)。
【0050】
図12は対戦履歴データの一例を示す。図12に示す対戦履歴データは、日時、勝敗、得点、失点フィールドを含む。日時フィールドは対戦が行われた日時を示す。勝敗フィールドはその対戦の勝敗結果を示す。0はユーザが敗北したことを示す。1はユーザが勝利したことを示す。2はユーザが対戦相手と引き分けたことを示す。得点フィールドはユーザの得点を示す。失点フィールドは対戦相手の得点を示す。この対戦履歴データも、試合が途中で終了することなく正常に終了した場合に試合結果に基づいて更新される(後述の図17のS312参照)。
【0051】
[ゲーム状況データ記憶部]
ゲーム状況データ記憶部70bは例えば主記憶部32によって実現される。ゲーム状況データ記憶部70bはゲーム状況データ(図8参照)を記憶する。
【0052】
[条件記憶部]
条件記憶部70cは例えばゲームカード34によって実現される。条件記憶部70cは、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性が高いか否かを判断するための複数の条件(判断基準)を記憶する。ここで、「複数の条件」には、例えば、ユーザの通算対戦成績、ユーザチーム(ユーザが操作するチーム)、対戦相手チーム(対戦相手が操作するチーム)又はゲーム状況に関する条件が含まれる。
【0053】
図13及び図14は条件記憶部70cに記憶される条件データの一例を示す。図13及び図14に示す条件データは、IDと、条件と、ポイント量(基本数値)と、を対応づけてなるデータである。なお、IDは各条件を一意に識別する情報を示す。また、ポイント量は各条件に対する重みを示す。ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性がより高いと考えられる条件ほど、より多くのポイント量が設定される。
【0054】
ID「101」〜「107」の条件はユーザの通算対戦成績に関する条件である。
【0055】
ID「101」の条件はユーザの通算対戦成績が全勝であるか否かの条件である。ID「102」の条件はユーザの通算失点が0点であるか否かの条件である。ID「103」の条件はユーザの通算ファウル数が0であるか否かの条件である。ID「104」の条件は、ユーザの最近10回の対戦結果がすべて勝利であるか否かの条件である。ID「105」の条件は、ユーザの最近5回の対戦における失点が0点であるか否かの条件である。
【0056】
上述したように、ネットワークゲームシステム10では、原則として、試合が正常に終了した場合にユーザの通算対戦成績(勝利回数、敗北回数又は通算失点等)が試合結果に基づいて更新される。例えば、サッカーゲームの対戦において勝ち続けることは困難であるにもかかわらず、通算対戦成績が全勝であるユーザは、過去の対戦において敗色が濃厚になった場合に、敗北回数の増加を避けるためにゲーム装置30の電源や通信接続を切断した可能性があると考えられる。このため、ID「101」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準としている。また例えば、サッカーゲームの対戦において無失点試合を続けることは困難であるにもかかわらず、通算失点が0点であるユーザは、過去の対戦において対戦相手が得点を入れた場合に、通算失点の増加を避けるためにゲーム装置30の電源や通信接続を切断した可能性があると考えられる。このため、ID「102」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。同様の考え方によって、ID「103」〜「105」の条件も、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0057】
ID「106」の条件はユーザの途中終了回数が1回以上であるか否かの条件である。ID「107」の条件はユーザの途中終了頻度が高いか否かの条件である。例えば、ユーザの途中終了回数が0でない場合やユーザの途中終了頻度が高い場合、そのユーザは対戦中にゲーム装置30の電源や通信接続を切断した可能性があると考えられる。このため、ID「106」及び「107」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0058】
ID「108」〜「110」の条件はユーザチーム又は対戦相手チームに関する条件である。
【0059】
ID「108」の条件は対戦相手チームが強豪チームであるか否かの条件である。ID「109」の条件は、対戦相手チームの能力パラメータがユーザチームの能力パラメータを大きく上回っているか否かの条件である。ID「110」の条件はユーザチームの調子パラメータが低いか否かの条件である。例えば、対戦相手チームが強豪チームである場合、ユーザが敗北する可能性が高くなる。このため、対戦相手チームが強豪チームである場合において対戦が途中で終了した場合には、ユーザが敗北を避ける目的で対戦中にゲーム装置30の電源や通信接続を切断した可能性があると考えられる。したがって、ID「108」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。同様の考え方によって、ID「109」及び「110」の条件も、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0060】
ID「201」〜「217」の条件はゲーム状況に関する条件である。
【0061】
ID「201」の条件は、ユーザチームの得点が対戦相手チームの得点よりも少ないか否かの条件である。ID「202」の条件は、ユーザチームの得点が0点であるか否かの条件である。例えば、対戦が途中で終了した時点でユーザチームの得点が対戦相手チームの得点よりも少なかった場合には、ユーザが敗北を避ける目的でゲーム装置30の電源や通信接続を切断した可能性があると考えられる。このため、ID「201」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。同様の考え方によって、ID「202」の条件も、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0062】
ID「203」の条件は、ユーザチームのレッドカードの枚数が1枚以上であるか否かの条件である。ID「204」の条件は、ユーザチームのイエローカードの枚数が1枚以上であるか否かの条件である。ID「205」の条件は、ユーザチームの選手交代の残り回数が0回であるか否かの条件である。例えば、対戦が途中で終了した時点でユーザチームのレッドカードの枚数が1枚以上であった場合、その時点でユーザチームは対戦相手チームに比べて不利な状況にあったと考えられる。このため、ユーザは対戦中にゲーム装置30の電源や通信接続を切断した可能性があると考えられる。したがって、ID「203」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。同様の考え方によって、ID「204」及び「205」の条件も、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0063】
ID「206」の条件は、試合の残り時間が少ないか否かの条件である。対戦が途中で終了した時点で試合の残り時間が少なかった場合、ユーザが敗北を避ける目的でゲーム装置30の電源や通信接続を切断した可能性があると考えられる。このため、ID「206」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0064】
ID「207」の条件は、ユーザチームのボール支配率が対戦相手チームのボール支配率を大きく下回っているか否かの条件である。対戦が途中で終了した時点でユーザチームのボール支配率が対戦相手チームのボール支配率を大きく下回っていた場合、その時点でユーザチームは対戦相手チームに比べて不利な状況にあったと考えられる。このため、この場合、ユーザは対戦中にゲーム装置30の電源や通信接続を切断した可能性があると考えられる。したがって、ID「207」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0065】
ID「208」の条件は、ユーザチームのペナルティエリア55内で対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持しているか否かの条件である。なお、「ユーザチームのペナルティエリア55」とは、ユーザチームのゴールオブジェクト54がある側のペナルティエリア55である。「ユーザチームのゴールオブジェクト54」とは、ユーザが守るべきゴールオブジェクト54である。ID「209」の条件は、センタリング可能な領域内で対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持しているか否かの条件である。ID「210」の条件は、対戦相手チームのボールオブジェクト58を保持している選手オブジェクト56とユーザチームのゴールオブジェクト54との間に位置するユーザチームの選手オブジェクト56の数が1人以下であるか否かの条件である。ID「211」の条件は、ユーザチームのゴールオブジェクト54の前でのフリーキックの機会が対戦相手チームに与えられた直後であるか否かの条件である。ID「212」の条件は、ペナルティキックの機会が対戦相手チームに与えられた直後であるか否かの条件である。例えば、対戦が途中で終了した時点でユーザチームのペナルティエリア55内で対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持していた場合、その時点でユーザチームは不利な状況にあったと考えられる。このため、この場合、失点をおそれたユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断した可能性があると考えられる。したがって、ID「208」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。同様の考え方によって、ID「209」〜「212」の条件も、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0066】
ID「213」の条件は、対戦相手チームが得点を入れた直後であるか否かの条件である。ID「214」の条件は、対戦相手チームが勝ち越し点を入れた直後であるか否かの条件である。ID「215」の条件は、ユーザチームの選手オブジェクト56がペナルティキックを失敗した直後であるか否かの条件である。例えば、対戦が途中で終了した時点が対戦相手チームが得点を入れた直後である場合、失点を好ましく思わないユーザがゲーム装置30の電源や通信接続を切断した可能性があると考えられる。このため、ID「213」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。同様の考え方によって、ID「214」及び「215」の条件も、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0067】
ID「216」の条件は、ロスタイムの最中であるか否かの条件である。ID「217」の条件は、ペナルティキック戦の最中であるか否かの条件である。例えば、対戦が途中で終了した時点がロスタイムの最中であった場合、ユーザが敗北を避ける目的でゲーム装置30の電源や通信接続を切断した可能性があると考えられる。このため、ID「216」の条件を、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。同様の考え方によって、ID「217」の条件も、ユーザが対戦中にゲーム装置30の電源又は通信接続を意図的に切断した可能性があるか否かの判断基準にしている。
【0068】
[主ゲーム処理実行部]
主ゲーム処理実行部72は例えば制御部31によって実現される。主ゲーム処理実行部72は対戦サッカーゲームを実現するための処理を実行する。主ゲーム処理実行部72は、ゲーム状況データ更新部72aと、表示制御部72bと、を含む。
【0069】
[ゲーム状況データ更新部]
ゲーム状況データ更新部72aは、所定時間(例えば1/60秒)ごとにゲーム処理を実行することによって、ゲーム状況データ記憶部70bに記憶されるゲーム状況データを更新する。ゲーム状況データ更新部72aの動作は、ゲーム装置30がゲームサーバの役割を担っている場合とゲーム装置30がゲームサーバの役割を担っていない場合とで異なる。詳細については後述する(図17のS301参照)。
【0070】
[表示制御部]
表示制御部72bはメニュー画面40、対戦相手案内画面45や試合結果画面60を表示部37に表示する。また表示制御部72bは、試合中において、仮想3次元空間50を仮想カメラ59から見た様子を表すゲーム画面を、ゲーム状況データ記憶部70bに記憶されるゲーム状況データに基づいて生成する。そして、表示制御部72bはそのゲーム画面を表示部37に表示する。表示制御部72bは、試合中において、所定時間(例えば1/60秒)ごとにゲーム画面を更新する。
【0071】
[途中終了判定部]
途中終了判定部74は例えば制御部31によって実現される。途中終了判定部74は対戦(試合)が途中で終了したか否かを判定する。本実施の形態の場合、途中終了判定部74は、メニュー画面40の表示が開始される際に(図4のS101参照)、前回の対戦が途中で終了したか否かを判定する。
【0072】
[条件判定部]
条件判定部76は例えば制御部31によって実現される。条件判定部76は、条件記憶部70cに記憶される複数の条件の各々が満足されるか否かを、ゲームデータ記憶部70に記憶されるデータに基づいて判定する。例えば、条件判定部76は、ユーザの通算対戦成績がID「101」〜「107」の条件を満足するか否かを、通算対戦成績データ又は対戦履歴データに基づいて判定する。また例えば、条件判定部76は、ユーザチーム又は対戦相手チームがID「108」〜「110」の条件を満足するか否かをユーザ又は対戦相手のチームデータに基づいて判定する。また例えば、条件判定部76は、ゲーム状況がID「201」〜「217」の条件を満足するか否かをゲーム状況データに基づいて判定する。
【0073】
本実施の形態の場合、条件判定部76は、試合開始前に、ユーザの通算対戦成績がID「101」〜「107」の条件を満足するか否かを判定し、ユーザチーム又は対戦相手チームがID「108」〜「110」の条件を満足するか否かを判定する。また条件判定部76は、試合中において、ゲーム状況がID「201」〜「217」の条件を満足するか否かを所定時間(例えば1/60秒)ごとに判定する。
【0074】
[所定処理実行部]
所定処理実行部78は例えば制御部31によって実現される。対戦が途中で終了したと途中終了判定部74によって判定された場合、所定処理実行部78は、ID「101」〜「110」の条件が満足されるか否かの判定結果と、対戦が途中で終了した時点におけるゲーム状況がID「201」〜「217」の条件を満足するか否かの判定結果と、に基づいて所定処理を実行する。
【0075】
[ポイント量取得部及び比較部]
所定処理実行部78はポイント量取得部78a(数値取得手段)と比較部78bとを含む。ポイント量取得部78aは、ID「101」〜「110」の条件が満足されるか否かの判定結果と、対戦が途中で終了した時点におけるゲーム状況がID「201」〜「217」の条件を満足するか否かの判定結果と、に対応するポイント量(数値)を取得する。
【0076】
本実施の形態の場合、ポイント量取得部78aは、ID「101」〜「110」の条件のうちの、満足されると判定された条件に対応づけられたポイント量の合計Paを算出する。またポイント量取得部78aは、ID「201」〜「217」の条件のうちの、対戦が途中で終了した時点におけるゲーム状況が満足した条件に対応づけられたポイント量の合計Pbを算出する。そして、ポイント量取得部78aはそれらを加算したポイント量(Pa+Pb)を取得する。上述したように、条件判定部76は、試合中において、ゲーム状況がID「201」〜「217」の条件を満足するか否かを所定時間(例えば1/60秒)ごとに判定する。ポイント量取得部78aは、試合中において、ID「201」〜「217」の条件の判定結果に対応するポイント量Pbを所定時間(例えば1/60秒)ごとに算出する。したがって、ポイント量取得部78aは、試合中において、ポイント量(Pa+Pb)を所定時間(例えば1/60秒)ごとに算出する。
【0077】
比較部78bはポイント量取得部78aによって取得されたポイント量(Pa+Pb)と所定の基準ポイント量(Pc)とを比較する。本実施の形態の場合、比較部78bは、ポイント量取得部78aによって取得されたポイント量(Pa+Pb)が所定の基準ポイント量(Pc)以上であるか否かを判定する。ところで、ポイント量取得部78aによって取得されたポイント量が多い場合とは、ユーザが対戦中にゲーム装置30の電源や通信接続を切断した可能性が高い場合である。このため、比較部78bは、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断した可能性が高いか否かを判定しているということができる。
【0078】
本実施の形態の場合、比較部78bは、試合中に所定時間(例えば1/60秒)ごとに取得されるポイント量(Pa+Pb)が所定の基準ポイント量(Pc)以上であるか否かを判定する。そして、比較部78bはその判定結果を示すデータをゲームカード34に保存する。
【0079】
所定処理実行部78は、対戦が途中で終了したと途中終了判定部74によって判定された場合、比較部78bによる比較結果に基づいて所定処理を実行する。本実施の形態の場合、ポイント量取得部78aによって取得されたポイント量(Pa+Pb)が所定の基準ポイント量(Pc)以上であると比較部78bによって判定された場合、所定処理実行部78は所定処理を実行する。すなわち、ユーザが対戦中にゲーム装置30の電源や通信接続を切断した可能性が高いと判定された場合、所定処理実行部78は所定処理を実行する。
【0080】
本実施の形態の場合、「所定処理」は、例えばユーザの通算対戦成績を更新する処理を含む。より具体的には、「所定処理」はユーザの敗北回数を増加する処理を含む。このため、本実施の形態では、対戦が途中で終了した場合において、ユーザが対戦中にゲーム装置30の電源や通信接続を切断した可能性が高いと判定された場合、そのユーザの敗北回数が増加される。
【0081】
また本実施の形態の場合、「所定処理」は、例えばユーザが他のユーザと対戦することを制限するための処理を含む。より具体的には、「所定処理」は、対戦制限期限が経過するまでの間、ユーザが他のユーザと対戦できないようにするための処理を含む。このため、本実施の形態では、対戦が途中で終了した場合において、ユーザが対戦中にゲーム装置30の電源や通信接続を切断した可能性が高いと判定された場合、そのユーザは、対戦制限期限が経過するまでの間、他のユーザと対戦することができなくなる。
【0082】
また本実施の形態の場合、「所定処理」は、例えば所定メッセージを出力する処理を含む。より具体的には、「所定処理」は、ユーザに対する警告メッセージを出力する処理を含む。このため、本実施の形態では、対戦が途中で終了した場合において、ユーザが対戦中にゲーム装置30の電源や通信接続を切断した可能性が高いと判定された場合、そのユーザに対して警告メッセージが出力される。
【0083】
本実施の形態では、対戦が途中で終了した場合において、ユーザが対戦中にゲーム装置30の電源や通信接続を切断した可能性が高いと判定された場合、所定処理実行部78は、図5に示すメニュー画面40に代えて、例えば図15に示すようなメニュー画面40を表示部37に表示する。図15に示すメニュー画面40は、対戦要求ボタン43の代わりに、警告メッセージ欄44を含んでいる。警告メッセージ欄44にはユーザに対する警告メッセージが表示される。また、図15に示すメニュー画面40には対戦要求ボタン43が表示されないため、ユーザは他のユーザと対戦することができなくなる。なお以下では、図5に示すメニュー画面40のことを「通常メニュー画面」と記載し、図15に示すメニュー画面40のことを「制限メニュー画面」と記載する。
【0084】
次に、上記の各機能ブロックを実現するために各ゲーム装置30で実行される処理について説明する。図16〜図18は各ゲーム装置30で実行される処理を示すフロー図である。制御部31はゲームカード34に記憶されたプログラムに従って、図16〜図18に示す処理を実行する。
【0085】
なお、図16〜図18処理に関連して、例えば図19に示すようなデータがゲームカード34のEEPROMに記憶される。図19に示すデータは、対戦開始/終了フラグと、意図的切断フラグと、対戦制限期限と、を含んでいる。これらのデータの詳細については後述する。
【0086】
図16は、対戦相手案内画面45が表示される際(図4のS103参照)に各ゲーム装置30が実行する処理を示している。
【0087】
図16に示すように、まず制御部31は対戦開始/終了フラグを1に更新する(S201)。また制御部31は変数Paの値を0に初期化し、変数iの値を101に初期化する(S202)。そして制御部31は、ID「i」の条件が満足されるか否かを判定する(S203)。
【0088】
変数iが101である場合、制御部31はユーザの通算対戦成績が全勝であるか否かを通算対戦成績データに基づいて判定する。変数iが102である場合、制御部31はユーザの通算失点が0点であるか否かを通算対戦成績データに基づいて判定する。変数iが103である場合、制御部31はユーザの通算ファウル数が0であるか否かを通算対戦成績データに基づいて判定する。変数iが104である場合、制御部31はユーザの最近10回の対戦結果がすべて勝利であるか否かを対戦履歴データに基づいて判定する。変数iが105である場合、制御部31はユーザの最近5回の対戦における失点が0点であるか否かを対戦履歴データに基づいて判定する。変数iが106である場合、制御部31はユーザの途中終了回数が1回以上であるか否かを通算対戦成績データに基づいて判定する。
【0089】
変数iが107である場合、制御部31はユーザの途中終了頻度が高いか否かを通算対戦成績データに基づいて判定する。例えば、制御部31は途中終了回数を対戦回数で除算することによって途中終了頻度を算出する。そして、制御部31は途中終了頻度が所定の基準頻度以上であるか否かを判定する。途中終了頻度が所定の基準頻度以上である場合、制御部31はユーザの途中終了頻度が高いと判定する。
【0090】
変数iが108である場合、制御部31は対戦相手チームが強豪チームであるか否かを対戦相手のチームデータに基づいて判定する。本実施の形態の場合、ゲームカード34には、予め用意された複数のチームのうちのどのチームが強豪チームであるかを示すデータが記憶されている。制御部31は、このデータに基づいて、対戦相手チーム(すなわち、上記複数のチームのうちから対戦相手が選択したチーム)が強豪チームであるか否かを判定する。なお制御部31は、対戦相手チームに属する各選手オブジェクト56の能力パラメータの統計値(例えば平均値など)を算出するようにしてもよい。そして制御部31は、その統計値が基準値以上であるか否かを判定することによって、対戦相手チームが強豪チームであるか否かを判定するようにしてもよい。
【0091】
変数iが109である場合、制御部31は対戦相手チームの能力パラメータがユーザチームの能力パラメータを大きく上回っているか否かをユーザ及び対戦相手のチームデータに基づいて判定する。ここで、対戦相手チームの能力パラメータとは、例えば対戦相手チームに属する各選手オブジェクト56の能力パラメータの統計値(例えば平均値など)である。同様に、ユーザチームの能力パラメータとは、例えばユーザチームに属する各選手オブジェクト56の能力パラメータの統計値である。例えば、制御部31は対戦相手チームの能力パラメータがユーザチームの能力パラメータよりも高いか否かを判定する。また、対戦相手チームの能力パラメータがユーザチームの能力パラメータよりも高い場合、制御部31は対戦相手チームとユーザチームとの能力パラメータの差が所定の基準差以上であるか否かを判定する。
【0092】
変数iが110である場合、制御部31はユーザチームの調子パラメータが低いか否かをユーザのチームデータに基づいて判定する。ここで、ユーザチームの調子パラメータとは、例えばユーザチームに属する各選手オブジェクト56の調子パラメータの統計値(例えば平均値など)である。例えば、制御部31はユーザチームの調子パラメータが所定の基準値以下であるか否かを判定する。ユーザチームの調子パラメータが所定の基準値以下である場合、制御部31はユーザチームの調子パラメータが低いと判定する。
【0093】
S203においてID「i」の条件が満足されると判定された場合、制御部31は、変数Paに、ID「i」のポイント量Piを加算する(S204)。S203においてID「i」の条件が満足されないと判定された場合、又はS204の処理が実行された後、制御部31は変数iの値に1を加算する(S205)。そして制御部31は、変数iが110より大きいか否かを判定する(S206)。すなわち、制御部31はID「101」〜「110」の各条件の判定が完了したか否かを判定する。変数iが110以下である場合、制御部31はS203〜S206の処理を実行する。一方、変数iが110より大きい場合、制御部31は対戦相手案内画面45を表示部37に表示する(S207)。このとき、変数Paの値はゲームカード34に保存される。ゲームカード34に保存された変数Paの値は後述の処理(図17のS308参照)で用いられる。
【0094】
図17は、試合中(図4のS104参照)に各ゲーム装置30が所定時間(例えば1/60秒)ごとに実行する処理を示すフロー図である。
【0095】
図17に示すように、まず制御部31は、主記憶部32に記憶されるゲーム状況データを更新する(S301)。ゲーム装置30がゲームサーバの役割を担っている場合とゲーム装置30がゲームサーバの役割を担っていない場合とでS301の処理内容は異なる。
【0096】
まず、ゲーム装置30がゲームサーバの役割を担っている場合の処理について説明する。この場合、制御部31は、操作入力部36から入力されるデータに基づいてユーザの操作内容を判断する。また制御部31は、対戦相手のゲーム装置30から送信される操作データに基づいて対戦相手の操作内容を判断する。そして制御部31は、ユーザの操作内容と、対戦相手の操作内容と、ゲームカード34に記憶されるユーザのチームデータと、主記憶部32に記憶される対戦相手のチームデータと、に基づいて、主記憶部32に記憶されるゲーム状況データを更新する。
【0097】
例えば、各選手オブジェクト56の状態データが、ユーザ又は対戦相手の操作内容と、各選手オブジェクト56の能力パラメータ及び調子パラメータと、に基づいて更新される。また例えば、ボールオブジェクト58の状態データがユーザ又は対戦相手の操作内容に基づいて更新される。また例えば、仮想カメラ59の状態データがボールオブジェクト58の状態データに基づいて更新される。また例えば、ボールオブジェクト58の状態データに基づいて、ユーザチーム又は対戦相手チームの得点イベントが発生される。例えば、ボールオブジェクト58が対戦相手チームのゴールオブジェクト54内に移動した場合にはユーザチームの得点イベントが発生される。また例えば、ボールオブジェクト58がユーザチームのゴールオブジェクト54内に移動した場合には対戦相手チームの得点イベントが発生される。ユーザチーム又は対戦相手チームの得点イベントが発生した場合、得点データが更新される。また例えば、各選手オブジェクト56の状態データに基づいて、ユーザチーム又は対戦相手チームのファウルイベントが発生される。例えば、ユーザチームの選手オブジェクト56が対戦相手チームの選手オブジェクト56に対してスライディングタックルをした場合、それらの選手オブジェクト56の位置関係などに基づいて、ユーザチームのファウルイベントが発生される。ユーザチーム又は対戦相手チームのファウルイベントが発生した場合、ファウルデータやイエロー/レッドカードデータが更新される。また例えば、ユーザチーム又は対戦相手チームに属する選手オブジェクト56がボールオブジェクト58を保持しているか否かが判定され、その判定結果に基づいて、ボール支配時間データが更新される。また、試合時間データや選手交代データも更新される。
【0098】
またこの場合、制御部31はゲーム状況データの更新内容を示すゲーム状況更新データを対戦相手のゲーム装置30に送信する。
【0099】
次に、ゲーム装置30がゲームサーバの役割を担っていない場合の処理について説明する。この場合、制御部31は、操作入力部36から入力されるデータに基づいてユーザの操作内容を判断する。そして制御部31は、ユーザの操作内容を示す操作データを対戦相手のゲーム装置30(ゲームサーバ)に送信する。また制御部31は、対戦相手のゲーム装置30(ゲームサーバ)から送信されたゲーム状況更新データを受信し、そのゲーム状況更新データに基づいて、主記憶部32に記憶されるゲーム状況データを更新する。
【0100】
ゲーム状況データが更新された後、制御部31は試合終了タイミングが到来したか否かを試合時間データに基づいて判定する(S302)。ここで、試合終了タイミングとは試合が正常に終了するタイミングであり、例えば、試合時間が経過したタイミング、又はペナルティキック戦で勝敗が確定したタイミングである。試合終了タイミングが到来していない場合、制御部31は変数Pbの値を0に初期化し、変数iの値を201に初期化する(S303)。そして制御部31は、ID「i」の条件が満足されるか否かを、主記憶部32に記憶されるゲーム状況データに基づいて判定する(S304)。
【0101】
変数iが201である場合、制御部31はユーザチームの得点が対戦相手チームの得点よりも少ないか否かを得点データに基づいて判定する。変数iが202である場合、制御部31はユーザチームの得点が0点であるか否かを得点データに基づいて判定する。変数iが203である場合、制御部31はユーザチームのレッドカードの枚数が1枚以上であるか否かをイエロー/レッドカードデータに基づいて判定する。変数iが204である場合、制御部31はユーザチームのイエローカードの枚数が1枚以上であるか否かをイエロー/レッドカードデータに基づいて判定する。変数iが205である場合、制御部31はユーザチームの選手交代の残り回数が0回であるか否かを選手交代データに基づいて判定する。
【0102】
変数iが206である場合、制御部31は試合の残り時間が少ないか否かを試合時間データに基づいて判定する。例えば、制御部31は試合の残り時間が所定時間以下であるか否かを判定する。試合の残り時間が所定時間以下である場合、制御部31は試合の残り時間が少ないと判定する。
【0103】
変数iが207である場合、制御部31はユーザチームのボール支配率が対戦相手チームのボール支配率を大きく下回っているか否かをボール支配時間データに基づいて判定する。例えば、制御部31は、ユーザチームのボール支配時間を、試合開始からの経過時間で除算することによってユーザチームのボール支配率を算出する。制御部31は対戦相手チームのボール支配率も同様にして算出する。そして、制御部31はユーザチームのボール支配率が対戦相手チームのボール支配率よりも低いか否かが判定される。ユーザチームのボール支配率が対戦相手チームのボール支配率よりも低い場合、制御部31はユーザチームと対戦相手チームとのボール支配率の差が所定の基準差以上であるか否かを判定する。
【0104】
変数iが208である場合、制御部31はユーザチームのペナルティエリア55内で対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持しているか否かを、例えば各選手オブジェクト56の状態データに基づいて判定する。例えば、制御部31は対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持しているか否かを、対戦相手チームの各選手オブジェクト56の状態データ(ボール保持フラグ)に基づいて判定する。対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持している場合、制御部31はその選手オブジェクト56がユーザチームのペナルティエリア55内に位置しているか否かを、その選手オブジェクト56の状態データ(位置データ)に基づいて判定する。
【0105】
変数iが209である場合、制御部31はセンタリング可能な領域内で対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持しているか否かを、例えば各選手オブジェクト56の状態データに基づいて判定する。ここで、対戦相手チームの選手オブジェクト56にとって「センタリング可能な領域」とは、ユーザチームのゴールオブジェクト54側のコーナーエリア53付近の領域である。例えば、制御部31は、対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持しているか否かを、対戦相手チームの各選手オブジェクト56の状態データ(ボール保持フラグ)に基づいて判定する。対戦相手チームの選手オブジェクト56がボールオブジェクト58を保持している場合、制御部31はその選手オブジェクト56がセンタリング可能な領域内に位置しているか否かを、その選手オブジェクト56の状態データ(位置データ)に基づいて判定される。
【0106】
変数iが210である場合、制御部31は、ボールオブジェクト58を保持している対戦相手チームの選手オブジェクト56とユーザチームのゴールオブジェクト54との間に位置するユーザチームの選手オブジェクト56の数が1人以下であるか否かを、例えば各選手オブジェクト56の状態データに基づいて判定する。
【0107】
変数iが211である場合、制御部31は、ユーザチームのゴールオブジェクト54の前でのフリーキックの機会が対戦相手チームに与えられた直後であるか否かを判定する。なお、ユーザチームのゴールオブジェクト54の前でのフリーキックの機会が対戦相手チームに与えられる場合とは、ユーザチームのゴールオブジェクト54の前でユーザチームのファウルイベントが発生した場合(すなわち、ユーザチームのゴールオブジェクト54の前でユーザチームの選手オブジェクト56がファウルを犯した場合)である。例えば、制御部31は、ユーザチームのゴールオブジェクト54の前でユーザチームのファイルイベントが発生してからの経過時間が所定時間(例えば10秒間)以内であるか否かを判定する。
【0108】
変数iが212である場合、制御部31は、ペナルティキックの機会が対戦相手チームに与えられた直後であるか否かを判定する。なお、ペナルティキックの機会が対戦相手チームに与えられる場合とは、ユーザチームのゴールオブジェクト54側のペナルティエリア55内でユーザチームのファウルイベントが発生した場合(すなわち、ユーザチームのゴールオブジェクト54側のペナルティエリア55内でユーザチームの選手オブジェクト56がファウルを犯した場合)である。例えば、制御部31は、ユーザチームのゴールオブジェクト54側のペナルティエリア55内でユーザチームのファイルイベントが発生してからの経過時間が所定時間(例えば10秒間)以内であるか否かを判定する。
【0109】
変数iが213である場合、制御部31は対戦相手チームが得点を入れた直後であるか否かを判定する。例えば、制御部31は、対戦相手チームの得点イベントが発生してからの経過時間が所定時間(例えば10秒間)以内であるか否かを判定する。
【0110】
変数iが214である場合、制御部31は対戦相手チームが勝ち越し点を入れた直後であるか否かを判定する。なお、「対戦相手チームが勝ち越し点を入れる」とは、両チームの得点が同点の状態で対戦相手チームが1点を入れることを示す。例えば、制御部31は、対戦相手チームの得点イベントが両チームの得点が同点の状態で発生してからの経過時間が所定時間(例えば10秒間)以内であるか否かを判定する。なお、両チームの得点が同点の状態であるか否かは得点データに基づいて判定される。
【0111】
変数iが215である場合、制御部31は、ユーザチームの選手オブジェクト56がペナルティキックを失敗した直後であるか否かを判定する。変数iが216である場合、制御部31は現在がロスタイムの最中であるか否かを試合時間データに基づいて判定する。変数iが217である場合、制御部31は現在がペナルティキック戦の最中であるか否かを判定する。
【0112】
S304においてID「i」の条件が満足されると判定された場合、制御部31は、変数Pbに、ID「i」のポイント量Piを加算する(S305)。その後、制御部31は変数iに1を加算する(S306)。そして制御部31は変数iが217より大きいか否かを判定する(S307)。すなわち、制御部31はID「201」〜「217」の各条件の判定が完了したか否かを判定する。変数iが217以下である場合、制御部31はS304〜S307の処理を実行する。
【0113】
一方、変数iが217より大きい場合、制御部31は、変数PaとPbの合計が所定の基準ポイント量Pc以上であるか否かを判定する(S308)。変数PaとPbの合計が所定の基準ポイント量Pc以上である場合、制御部31は意図的切断フラグを1に更新する(S309)。一方、変数PaとPbの合計が所定の基準ポイント量Pc未満である場合、制御部31は意図的切断フラグを0に更新する(S310)。
【0114】
ここで、変数PaとPbの合計が大きくなる場合とは、現在のゲーム状況(場面)が、ゲーム装置30の電源や通信接続をユーザが意図的に切断する可能性が高いと推測される状況である場合である。すなわち、変数PaとPbの合計が大きくなる場合とは、仮に現時点で対戦が終了したとしたら、ユーザがゲーム装置30の電源や通信接続を意図的に切断した可能性が高いと考えられるような場合である。このため、S308では、現在のゲーム状況が、ゲーム装置30の電源や通信接続をユーザが意図的に切断する可能性が高いと推測される状況であるか否かが判定されるということができる。また、意図的切断フラグは、現在のゲーム状況が、ゲーム装置30の電源や通信接続をユーザが意図的に切断する可能性が高いと推測される状況であるか否かを示すことになる。
【0115】
S309又はS310の処理が実行された後、制御部31はゲーム画面を更新する(S311)。制御部31は、仮想3次元空間50を仮想カメラ59から見た様子を表すゲーム画面を、主記憶部32に記憶されるゲーム状況データに基づいて生成する。生成されたゲーム画面は表示部37に表示される。
【0116】
なお、S302において試合終了タイミングが到来したと判定された場合、制御部31は試合経過データに基づいて通算対戦成績データ及び対戦履歴データを更新する(S312)。また制御部31は対戦開始/終了フラグを0に更新する(S313)。その後、制御部31は試合結果画面60を表示部37に表示する(S314:図4のS105参照)。
【0117】
ところで、対戦開始/終了フラグは対戦相手案内画面45が表示される際に1に更新される(図16のS201参照)。また、対戦開始/終了フラグは対戦結果画面60が表示される際(試合が最後まで終了した際)に0に更新される(図17のS312参照)。このため、対戦(試合)が途中で終了した場合、メモリカード34に記憶される対戦開始/終了フラグは0に更新されず、1のままになる。
【0118】
図18は、メニュー画面40が表示される場合(図4のS101参照)に各ゲーム装置30が実行する処理を示すフロー図である。
【0119】
図18に示すように、まず制御部31は、対戦開始/終了フラグが1であるか否かを判定する(S401)。上述したように、対戦開始/終了フラグが1である場合とは前回の対戦(試合)が途中で終了した場合である。すなわち、S401では、前回の対戦(試合)が途中で終了したか否かが判定されている。
【0120】
対戦開始/終了フラグが1である場合、制御部31は、通算対戦成績データに保持される途中終了回数に1を加算する(S402)。その後、制御部31は意図的切断フラグが1であるか否かを判定する(S403)。
【0121】
ここで、S403において意図的切断フラグが1であると判定される場合とは、前回の対戦が、ゲーム装置30の電源や通信接続をユーザが意図的に切断する可能性が高いと推測される状況において終了した場合である。すなわち、S403において意図的切断フラグが1であると判定される場合とは、前回の対戦が途中で終了した原因が、ユーザが対戦中にゲーム装置30の電源又は通信接続を切断したためである可能性が高い場合である。
【0122】
この場合、制御部31は、通算対戦成績データに保持される通算対戦成績を更新する(S404)。すなわち、対戦回数と敗北回数とにそれぞれ1が加算される。また制御部31は対戦制限期限を設定する(S405)。例えば、対戦制限期限が現在日時から3日後に決定される。そして、その対戦制限期限がゲームカード34に保存される(図19参照)。また制御部31は、対戦開始/終了フラグと意図的切断フラグとをそれぞれ0に初期化する(S406)。その後、制御部31は制限メニュー画面(図15参照)を表示部37に表示する(S407)。
【0123】
一方、S403において意図的切断フラグが1でないと判定される場合とは、前回の対戦が、ゲーム装置30の電源や通信接続をユーザが意図的に切断する可能性が低いと推定される状況において終了した場合である。すなわち、S403において意図的切断フラグが1でないと判定される場合とは、前回の対戦が途中で終了した原因が、ユーザが対戦中にゲーム装置30の電源又は通信接続を切断したためである可能性が低い場合である。さらに言い換えれば、S403において意図的切断フラグが1でないと判定される場合とは、前回の対戦が途中で終了した原因が、例えば通信ネットワーク12で不具合が発生したためである可能性が高い場合や、対戦相手が対戦中にゲーム装置30の電源や通信接続を意図的に切断したためである可能性が高い場合である。
【0124】
この場合、制御部31は対戦開始/終了フラグを0に初期化する(S408)。その後、制御部31は通常メニュー画面(図5参照)を表示部37に表示する(S409)。
【0125】
また、S401において対戦開始/終了フラグが1でないと判定された場合、制御部31は対戦制限期限が設定されているか否かを判定する(S410)。すなわち、制御部31は、対戦制限期限がゲームカード34に保存されているか否かを判定する。対戦制限期限が設定されていない場合、制御部31は通常メニュー画面を表示部37に表示する(S409)。一方、対戦制限期限が設定されている場合、制御部31は対戦制限期限を経過しているか否かを判定する(S411)。例えば図19に示すように対戦制限期限が2007年7月29日に設定されている場合には、2007年7月29日を過ぎたか否か(すなわち、2007年7月30日以降であるか否か)が判定される。対戦制限期限を経過していない場合、制御部31は制限メニュー画面を表示部37に表示する(S407)。なお、例えば図19に示すように対戦制限期限が2007年7月29日に設定されている場合には、例えば図15に示すように、2007年7月30日になるまで(すなわち、2007年7月29日を過ぎるまで)次回の対戦を待つようにユーザに案内するメッセージが制限メニュー画面に表示される。
【0126】
一方、対戦制限期限を経過している場合、制御部31は対戦制限期限をクリアする(S412)。すなわち、制御部31は、ゲームカード34に保存された対戦制限期限が削除する。その後、制御部31は通常メニュー画面を表示部37に表示する(S409)。
【0127】
以上説明したネットワークゲームシステム10では、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したか否かを判定するための複数の判定基準が記憶される(図13及び図14参照)。対戦が途中で終了した場合には、それら複数の判定基準の各々が対戦終了時(電源又は通信接続切断時)に満足されていたか否かの判定結果に基づいて、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したか否かが判定される。ネットワークゲームシステム10によれば、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したか否かを判定できるようになる。
【0128】
また、ネットワークゲームシステム10では複数の判定基準の各々に対してポイントが設定される(図13及び図14参照)。そして、対戦が途中で終了した場合には、複数の判定基準のうち、対戦終了時(電源又は通信接続切断時)に満足されていたと判定される判定基準に対応づけられたポイントの合計が取得される。そして、そのポイントの合計が所定の基準値以上である場合に、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したと判定される。ネットワークゲームシステム10によれば、複数の判定基準の各々に対して重みを設定することができる。その結果、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したか否かの判定の精度を高めることができる。
【0129】
また、ネットワークゲームシステム10では、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したと判定された場合、警告メッセージがメニュー画面40に表示される(図15参照)。ネットワークゲームシステム10によれば、対戦中にゲーム装置30の電源や通信接続を意図的に切断しないようにユーザに促すことが可能になる。
【0130】
また、ネットワークゲームシステム10では、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したと判定された場合、対戦制限期限が経過するまでの間、そのユーザは他のユーザと対戦を行えなくなる(図15参照)。ネットワークゲームシステム10によれば、対戦中にゲーム装置30の電源や通信接続を意図的に切断しないようにユーザに促すことが可能になる。
【0131】
また、ネットワークゲームシステム10では、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したと判定された場合、そのユーザの敗北回数が増加される(図18のS404参照)。このため、ユーザは敗北を避けることを目的として対戦中にゲーム装置30の電源や通信接続を意図的に切断する意味がなくなる。ネットワークゲームシステム10によれば、対戦中にゲーム装置30の電源や通信接続を意図的に切断しないようにユーザに促すことが可能になる。
【0132】
なお、本発明は以上に説明した実施の形態に限定されるものではない。
【0133】
例えば、ID「104」の条件に対応するポイント量P104は、ユーザの連勝数に応じて変化するようにしてもよい。同様に、ID「105」の条件に対応するポイント量P105は、無失点試合の連続数に応じて変化するようにしてもよい。
【0134】
また例えば、図16のS204では変数Paの値に1が加算されるようにしてもよい。この場合、変数Paは、ID「101」〜「110」の条件のうちの、ユーザの通算対戦成績、ユーザチーム又は対戦相手チームが満足する条件の数を示すことになる。また、図17のS305では変数Pbの値に1が加算されるようにしてもよい。この場合、変数Pbの値は、ID「201」〜「217」の条件のうちの、その時点のゲーム状況が満足する条件の数を示すことになる。このようにして、ポイント取得部78aは、条件記憶部70cに記憶される複数の条件のうちで、満足されると判定された条件の数をポイント量として取得するようにしてもよい。条件記憶部70cに記憶される複数の条件のうちの多くの条件が満足される場合には、ユーザが対戦中にゲーム装置30の電源や通信接続を切断した可能性が高いと考えることができる。このため、このようにしても、ユーザが対戦中にゲーム装置30の電源や通信接続を意図的に切断したか否かを判定できるようになる。
【0135】
また例えば、意図的切断フラグの代わりに、変数Pa及びPbの値がゲームカード34に記憶されるようにしてもよい。または、変数Pa及びPbの合計値がゲームカード34に記憶されるようにしてもよい。この場合、図17の処理ではS308〜S310の処理を省略することができる。また、図18のS403の処理では、変数PaとPbの合計が所定の基準ポイント量Pc以上であるか否かが判定される。そして、変数PaとPbの合計が所定の基準ポイント量Pc以上である場合、S404〜S407の処理が実行される。一方、変数PaとPbの合計が所定の基準ポイント量Pc未満である場合、S408〜S409の処理が実行される。
【0136】
また例えば、意図的切断フラグの代わりに、図16のS203及び図17のS304における判定結果を示す判定結果データがゲームカード34に記憶されるようにしてもよい。図20は判定結果データの一例を示している。「判定結果フラグ」は0又は1の値をとる。値「0」は条件が満足されていないことを示し、値「1」は条件が満足されていることを示す。この場合、図18のS403では下記のような処理が実行される。すなわち、まず変数Pa及びPbの値が判定結果データに基づいて取得される。その後、変数PaとPbの合計が所定の基準ポイント量Pc以上であるか否かが判定される。そして、変数PaとPbの合計が所定の基準ポイント量Pc以上である場合、S404〜S407の処理が実行される。一方、変数PaとPbの合計が所定の基準ポイント量Pc未満である場合、S408〜S409の処理が実行される。
【0137】
また例えば、意図的切断フラグの代わりに、変数Paの値と、ゲーム状況データと、がゲームカード34に保存されるようにしてもよい。この場合、図17の処理ではS303〜S310の処理を省略することができる。この場合、図18のS403では下記のような処理が実行される。すなわち、ゲームカード34に保存されたゲーム状況データに基づいて、ID「201」〜「217」の条件が満足されるか否かが判定される。この場合、ゲームカード34には前回の対戦終了時のゲーム状況データが保存されることになるため、ここでは、前回の対戦終了時のゲーム状況がID「201」〜「217」の条件を満足するか否かが判定されることになる。そして、ID「201」〜「217」の条件の判定結果に対応するポイント量Pbが取得される。その後、変数PaとPbの合計が所定の基準ポイント量Pc以上であるか否かが判定される。そして、変数PaとPbの合計が所定の基準ポイント量Pc以上である場合、S404〜S407の処理が実行される。一方、変数PaとPbの合計が所定の基準ポイント量Pc未満である場合、S408〜S409の処理が実行される。
【0138】
また例えば、図18のS403において意図的切断フラグが1であると判定された場合、S405では対戦制限期限を設定する代わりに、ユーザのチームデータが更新されるようにしてもよい。このようにして、所定処理実行部78は、例えば、ユーザチームに属する選手オブジェクト56の能力パラメータ又は調子パラメータを、その選手オブジェクト56の能力が下がるように更新するようにしてもよい。
【0139】
また例えば、ユーザのゲーム装置30と対戦相手のゲーム装置30とのいずれかがゲームサーバとしての役割を果たすのではなく、ネットワークゲーム管理装置20(又は他のサーバコンピュータ)がゲームサーバとしての役割を果たすようにしてもよい。この場合、ネットワークゲーム管理装置20にゲーム状況データが記憶され、そのゲーム状況データの複製がユーザ及び対戦相手のゲーム装置30に記憶される。また、各ゲーム装置30で行われた操作内容がサーバコンピュータに通信ネットワーク12を介して通知される。そして、ネットワークゲーム管理装置20では、各ゲーム装置30で行われた操作内容に基づいてゲーム状況データが更新される。その後、ゲーム状況データの更新内容を示すゲーム状況更新データが各ゲーム装置30に送信される。この場合、通算対戦成績記憶部70a、ゲーム状況データ記憶部70b、条件記憶部70c、途中終了判定部74、条件判定部76や所定処理実行部78はネットワークゲーム管理装置20で実現されるようにしてもよい。なお、所定処理実行部78は、ユーザがネットワークゲームシステム10にログインする場合やユーザから対戦要求データを受け取った場合に、警告メッセージをそのユーザのゲーム装置30に返信するようにしてもよい。また所定処理実行部78は、ユーザのログイン要求データや対戦要求データを対戦制限期限が経過するまで受け付けないようにしてもよい。
【0140】
また例えば、ネットワークゲームシステム10で提供されるネットワークゲームはサッカーゲーム以外のゲーム(例えば麻雀ゲームや格闘ゲームなど)であってもよい。例えば、ネットワークゲームシステム10で提供されるネットワークゲームが3回勝負の格闘ゲームである場合、ユーザが対戦中にゲーム装置30の電源や通信接続を切断したか否かを判断するための条件には、例えば、対戦相手のキャラクタの体力パラメータがユーザのキャラクタの体力パラメータより大きいか否かの条件や、対戦相手が勝った回数がユーザが勝った回数よりも多いか否かの条件などが含まれる。また例えば、ネットワークゲームシステム10で提供されるネットワークゲームは3名以上のユーザが参加するゲームであってもよい。
【図面の簡単な説明】
【0141】
【図1】本実施の形態に係るネットワークゲームシステムの全体構成を示す図である。
【図2】ネットワークゲーム管理装置のハードウェア構成を示す図である。
【図3】ゲーム装置のハードウェア構成を示す図である。
【図4】対戦サッカーゲームの流れを示す図である。
【図5】メニュー画面の一例を示す図である。
【図6】対戦相手案内画面の一例を示す図である。
【図7】仮想3次元空間の一例を示す図である。
【図8】ゲーム状況データの一例を示す図である。
【図9】試合結果画面の一例を示す図である。
【図10】本実施の形態に係るネットワークゲームシステムの機能ブロック図である。
【図11】通算対戦成績データの一例を示す図である。
【図12】対戦履歴データの一例を示す図である。
【図13】条件データの一例を示す図である。
【図14】条件データの一例を示す図である。
【図15】メニュー画面の一例を示す図である。
【図16】対戦相手案内画面が表示される際に実行される処理を示すフロー図である。
【図17】試合中に所定時間ごとに実行される処理について説明する。
【図18】メニュー画面が表示される際に実行される処理を示すフロー図である。
【図19】ゲームカードに保存されるデータの一例を示す図である。
【図20】判定結果データの一例を示す図である。
【符号の説明】
【0142】
10 ネットワークゲームシステム、12 通信ネットワーク、20 ネットワークゲーム管理装置、21 制御部、22 主記憶部、23 補助記憶部、24 光ディスク読み取り部、25 通信インタフェース、30 ゲーム装置、31 制御部、32 主記憶部、33 カードスロット、34 ゲームカード、35 通信インタフェース、36 操作入力部、37 表示部、38 音声出力部、40 メニュー画面、41 通算対戦成績ボタン、42 チーム設定ボタン、43 対戦要求ボタン、44 警告メッセージ欄、45 対戦相手案内画面、46 対戦相手情報欄、47 対戦相手メッセージ欄、50 仮想3次元空間、52 フィールドオブジェクト、53 コーナーエリア、54 ゴールオブジェクト、55 ペナルティエリア、56 選手オブジェクト、58 ボールオブジェクト、59 仮想カメラ、60 試合結果画面、61 試合結果表示欄、62 対戦相手メッセージ欄、70 ゲームデータ記憶部、70a 通算対戦成績記憶部、70b ゲーム状況データ記憶部、70c 条件記憶部、72 主ゲーム処理実行部、72a ゲーム状況データ更新部、72b 表示制御部、74 途中終了判定部、76 条件判定部、78 所定処理実行部、78a ポイント量取得部、78b 比較部。

【特許請求の範囲】
【請求項1】
複数のユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステムにおいて、
前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶するゲーム状況データ記憶手段と、
前記ゲーム状況に関するゲーム状況条件を複数記憶する条件記憶手段と、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段と、
前記対戦が途中で終了したか否かを判定する途中終了判定手段と、
前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段と、
を含むことを特徴とするネットワークゲームシステム。
【請求項2】
請求項1に記載のネットワークゲームシステムにおいて、
前記条件判定手段による判定結果に対応する数値を取得する数値取得手段と、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に対応する前記数値と、所定の基準値と、を比較する比較手段と、を含み、
前記所定処理実行手段は、前記対戦が途中で終了した場合、前記比較手段による比較結果に基づいて前記所定処理を実行する、
ことを特徴とするネットワークゲームシステム。
【請求項3】
請求項2に記載のネットワークゲームシステムにおいて、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々に対応づけて基本数値を記憶する基本数値記憶手段を含み、
前記数値取得手段は、前記条件記憶手段に記憶される前記複数のゲーム状況条件のうちの、前記ゲーム状況が満足する前記ゲーム状況条件に対応づけて記憶される前記基本数値に基づいて所定の演算処理を実行することによって、前記数値を取得する、
ことを特徴とするネットワークゲームシステム。
【請求項4】
請求項2又は3に記載のネットワークゲームシステムにおいて、
前記条件判定手段は、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが更新された場合、該ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定し、
前記数値取得手段は、前記条件判定手段による判定が行われた場合、その判定結果に対応する前記数値を取得し、
前記比較手段は、前記数値取得手段によって前記数値が取得された場合、該数値と、前記所定の基準値と、を比較し、その比較結果を不揮発性記憶手段に記憶させ、
前記所定処理実行手段は、前記対戦が途中で終了した場合、前記不揮発性記憶手段に記憶される前記比較結果に基づいて前記所定処理を実行する、
ことを特徴とするネットワークゲームシステム。
【請求項5】
請求項2又は3に記載のネットワークゲームシステムにおいて、
前記条件判定手段は、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが更新された場合、該ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定し、
前記数値取得手段は、前記条件判定手段による判定が行われた場合、その判定結果に対応する前記数値を取得し、該数値を不揮発性記憶手段に記憶させ、
前記比較手段は、前記対戦が途中で終了した場合、前記不揮発性記憶手段に記憶される前記数値と、前記所定の基準値と、を比較する、
ことを特徴とするネットワークゲームシステム。
【請求項6】
請求項2又は3に記載のネットワークゲームシステムにおいて、
前記条件判定手段は、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが更新された場合、該ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定し、その判定結果を不揮発性記憶手段に記憶させ、
前記数値取得手段は、前記対戦が途中で終了した場合、前記不揮発性記憶手段に記憶される前記判定結果に対応する前記数値を取得する、
ことを特徴とするネットワークゲームシステム。
【請求項7】
請求項2又は3に記載のネットワークゲームシステムにおいて、
前記ゲーム状況データ記憶手段は不揮発性記憶手段であり、
前記条件判定手段は、前記対戦が途中で終了した場合、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データが示す前記ゲーム状況が、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を満足するか否かを判定する、
ことを特徴とするネットワークゲームシステム。
【請求項8】
請求項1乃至7のいずれかに記載のネットワークゲームシステムにおいて、
前記所定処理は、前記複数のユーザのうちの少なくとも一人に対して所定のメッセージを出力するための処理と、前記複数のユーザのうちの少なくとも一人が対戦を行うことをを制限するための処理と、の少なくとも一方を含むことを特徴とするネットワークゲームシステム。
【請求項9】
請求項1乃至8のいずれかに記載のネットワークゲームシステムにおいて、
前記複数のユーザの各々の通算対戦成績を記憶する通算対戦成績記憶手段を含み、
前記所定処理は、前記複数のユーザのうちの少なくとも一人の前記通算対戦成績を更新するための処理を含む、
ことを特徴とするネットワークゲームシステム。
【請求項10】
複数のユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステムの制御方法において、
前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出すステップと、
前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出すステップと、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定ステップと、
前記対戦が途中で終了したか否かを判定する途中終了判定ステップと、
前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行ステップと、
を含むことを特徴とするネットワークゲームシステムの制御方法。
【請求項11】
複数のユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステムとしてコンピュータを機能させるためのプログラムであって、
前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出す手段、
前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出す手段、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段、
前記対戦が途中で終了したか否かを判定する途中終了判定手段、及び、
前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段、
として前記コンピュータを機能させるためのプログラム。
【請求項12】
複数のゲーム装置を含み、前記複数のゲーム装置の各々に係るユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステム、に前記複数のゲーム装置のうちの一つとして含まれるゲーム装置において、
前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶するゲーム状況データ記憶手段と、
前記ゲーム状況に関するゲーム状況条件を複数記憶する条件記憶手段と、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段と、
前記対戦が途中で終了したか否かを判定する途中終了判定手段と、
前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段と、
を含むことを特徴とするゲーム装置。
【請求項13】
複数のゲーム装置を含み、前記複数のゲーム装置の各々に係るユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステム、に前記複数のゲーム装置のうちの一つとして含まれるゲーム装置の制御方法において、
前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出すステップと、
前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出すステップと、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定ステップと、
前記対戦が途中で終了したか否かを判定する途中終了判定ステップと、
前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行ステップと、
を含むことを特徴とするゲーム装置の制御方法。
【請求項14】
複数のゲーム装置を含み、前記複数のゲーム装置の各々に係るユーザが通信ネットワークを介して対戦するネットワークゲームを実行するネットワークゲームシステム、に前記複数のゲーム装置のうちの一つとして含まれるゲーム装置としてコンピュータを機能させるためのプログラムであって、
前記ネットワークゲームのゲーム状況を示すゲーム状況データを記憶してなるゲーム状況データ記憶手段の記憶内容を読み出す手段、
前記ゲーム状況に関するゲーム状況条件を複数記憶してなる条件記憶手段の記憶内容を読み出す手段、
前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を前記ゲーム状況が満足するか否かを、前記ゲーム状況データ記憶手段に記憶される前記ゲーム状況データに基づいて判定する条件判定手段、
前記対戦が途中で終了したか否かを判定する途中終了判定手段、及び、
前記対戦が途中で終了した場合、前記条件記憶手段に記憶される前記複数のゲーム状況条件の各々を、前記対戦が途中で終了した時点における前記ゲーム状況が満足したか否かの判定結果に基づいて、所定処理を実行する所定処理実行手段、
として前記コンピュータを機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate