(57)【特許請求の範囲】
【請求項１】
サーバ用のコンピュータと、ネットワークを介してサーバ用のコンピュータに接続されるクライアント用のコンピュータとにおいて実行されるネットワーク用の対戦ゲームを実行可能なゲームシステムであって、
前記対戦ゲームの実行を前記サーバに報知する処理を、クライアントの第１制御部に実行させる対戦報知機能と、
前記クライアントにおける前記対戦ゲームの実行を認証する処理を、サーバの第２制御部に実行させる対戦認証機能と、
前記対戦ゲームの実行が前記サーバに認証されたときに、前記対戦ゲームの試合イベントを、前記第１制御部に実行させる試合実行機能と、
入力部からの入力信号に基づいて、複数のオブジェクトの中から、前記対戦ゲームの試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、前記第１制御部に実行させる第１オブジェクト選択機能と、
前記対戦ゲームの試合イベントに参加した前記少なくとも１つのオブジェクトの動作頻度を、前記第１制御部に算出させる動作頻度算出機能と、
前記試合イベントの終了時に、前記少なくとも１つのオブジェクトの動作頻度に基づいて、前記少なくとも１つのオブジェクトの中からいずれか１つのオブジェクトを選出する処理を、前記第１制御部に実行させるオブジェクト選出機能と、
前記いずれか１つのオブジェクトを対象オブジェクトとして前記サーバに報知する処理を、前記第１制御部に実行させるオブジェクト報知機能と、
前記対象オブジェクトのアドレスを示すアドレス番号を要素番号とし、前記アドレス番号が示すアドレスに配置される前記対象オブジェクトの識別番号を要素とする配列を、前記第２制御部に規定させ、サーバの記憶部に格納する配列規定機能と、
前記試合イベントが終了するごとに、前記対象オブジェクトの前記アドレス番号をインクリメントする処理と、変更後の前記アドレス番号が前記所定数以下であるか否かを判断する処理と、変更後の前記アドレス番号が前記所定数以下である場合に変更後の前記アドレス番号および変更後の前記アドレス番号に対応する前記識別番号を前記サーバの記憶部に格納する処理とを、前記第２制御部に実行させることにより、前記サーバの記憶部に格納された前記識別番号に対応する前記対象オブジェクトを、所定数の試合イベントの間において試合イベントに参加不可の管理オブジェクトとして管理するオブジェクト管理機能と、
前記対戦ゲームの新規の試合イベントが前記第１制御部により実行される場合に、前記サーバにおける前記管理オブジェクトを前記クライアントに報知する処理を、前記第２制御部に実行させる管理オブジェクト報知機能と、
入力部からの入力信号に基づいて、報知された前記管理オブジェクトを除く複数のオブジェクトの中から、新規の前記試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、前記第１制御部に実行させる第２オブジェクト選択機能と、
を備えるネットワーク用のゲームシステム。
【請求項２】
前記オブジェクト選出機能では、前記試合イベントの終了時に、前記少なくとも１つのオブジェクトの動作頻度の中から最大の動作頻度を検索する処理が、前記第１制御部により実行され、最大の前記動作頻度で動作したオブジェクトを選出する処理が、前記第１制御部により実行される、
請求項１に記載のネットワーク用のゲームシステム。
【請求項３】
前記オブジェクト選出機能では、前記試合イベントの終了時に、前記少なくとも１つのオブジェクトの動作頻度の中から閾値以上の動作頻度を検索する処理が、前記第１制御部により実行され、閾値以上の前記動作頻度で動作したオブジェクトを選出する処理が、前記第１制御部により実行される、
請求項１に記載のネットワーク用のゲームシステム。
【請求項４】
複数の前記オブジェクトを同一のグループとして規定するためのグループ番号を、前記第１制御部に認識させるグループ規定機能、
をさらに備え、
前記配列規定機能では、前記アドレス番号と前記グループ番号とを要素番号とし、前記要素番号に対応する前記対象オブジェクトの識別番号を要素とする配列が、前記第２制御部により規定され、前記サーバの記憶部に格納される、
請求項１から３のいずれかに記載のネットワーク用のゲームシステム。
【請求項５】
サーバ用のコンピュータと、ネットワークを介してサーバ用のコンピュータに接続されるクライアント用のコンピュータとにおいて実行されるネットワーク用の対戦ゲームを実行可能であり、クライアントおよびサーバから構成されるネットワーク用のゲーム装置であって、
クライアントは、
前記対戦ゲームの実行を前記サーバに報知する処理を、クライアントの第１制御部に実行させる対戦報知手段と、
前記対戦ゲームの実行が前記サーバに認証されたときに、前記対戦ゲームの試合イベントを、前記第１制御部に実行させる試合実行手段と、
入力部からの入力信号に基づいて、複数のオブジェクトの中から、前記対戦ゲームの試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、前記第１制御部に実行させる第１オブジェクト選択手段と、
前記対戦ゲームの試合イベントに参加した前記少なくとも１つのオブジェクトの動作頻度を、前記第１制御部に算出させる動作頻度算出手段と、
前記試合イベントの終了時に、前記少なくとも１つのオブジェクトの動作頻度に基づいて、前記少なくとも１つのオブジェクトの中からいずれか１つのオブジェクトを選出する処理を、前記第１制御部に実行させるオブジェクト選出手段と、
前記いずれか１つのオブジェクトを対象オブジェクトとして前記サーバに報知する処理を、前記第１制御部に実行させるオブジェクト報知手段と、
入力部からの入力信号に基づいて、前記サーバから報知される前記対象オブジェクトを除く複数のオブジェクトの中から、新規の前記試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、前記第１制御部に実行させる第２オブジェクト選択手段と、
サーバは、
前記クライアントにおける前記対戦ゲームの実行を認証する処理を、サーバの第２制御部に実行させる対戦認証手段と、
前記対象オブジェクトのアドレスを示すアドレス番号を要素番号とし、前記アドレス番号が示すアドレスに配置される前記対象オブジェクトの識別番号を要素とする配列を、前記第２制御部に規定させ、サーバの記憶部に格納する配列規定手段と、
前記試合イベントが終了するごとに、前記対象オブジェクトの前記アドレス番号をインクリメントする処理と、変更後の前記アドレス番号が前記所定数以下であるか否かを判断する処理と、変更後の前記アドレス番号が前記所定数以下である場合に変更後の前記アドレス番号および変更後の前記アドレス番号に対応する前記識別番号を前記サーバの記憶部に格納する処理とを、前記第２制御部に実行させることにより、前記サーバの記憶部に格納された前記識別番号に対応する前記対象オブジェクトを、所定数の試合イベントの間において試合イベントに参加不可の管理オブジェクトとして管理するオブジェクト管理手段と、
前記対戦ゲームの新規の試合イベントが前記第１制御部により実行される場合に、前記サーバにおける前記管理オブジェクトを前記クライアントに報知する処理を、前記第２制御部に実行させる管理オブジェクト報知手段と、
を備えるネットワーク用のゲーム装置。
【請求項６】
サーバ用のコンピュータと、ネットワークを介してサーバ用のコンピュータに接続されるクライアント用のコンピュータとにおいて実行されるネットワーク用の対戦ゲームを各コンピュータにより制御可能なネットワーク用のゲーム制御方法であって、
前記対戦ゲームの実行を前記サーバに報知する処理を、クライアントの第１制御部に実行させる対戦報知ステップと、
前記クライアントにおける前記対戦ゲームの実行を認証する処理を、サーバの第２制御部に実行させる対戦認証ステップと、
前記対戦ゲームの実行が前記サーバに認証されたときに、前記対戦ゲームの試合イベントを、前記第１制御部に実行させる試合実行ステップと、
入力部からの入力信号に基づいて、複数のオブジェクトの中から、前記対戦ゲームの試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、前記第１制御部に実行させる第１オブジェクト選択ステップと、
前記対戦ゲームの試合イベントに参加した前記少なくとも１つのオブジェクトの動作頻度を、前記第１制御部に算出させる動作頻度算出ステップと、
前記試合イベントの終了時に、前記少なくとも１つのオブジェクトの動作頻度に基づいて、前記少なくとも１つのオブジェクトの中からいずれか１つのオブジェクトを対象オブジェクトとして選出する処理を、前記第１制御部に実行させるオブジェクト選出ステップと、
前記対象オブジェクトを前記サーバに報知する処理を、前記第１制御部に実行させるオブジェクト報知ステップと、
前記対象オブジェクトのアドレスを示すアドレス番号を要素番号とし、前記アドレス番号が示すアドレスに配置される前記対象オブジェクトの識別番号を要素とする配列を、前記第２制御部に規定させ、サーバの記憶部に格納する配列規定ステップと、
前記試合イベントが終了するごとに、前記対象オブジェクトの前記アドレス番号をインクリメントする処理と、変更後の前記アドレス番号が前記所定数以下であるか否かを判断する処理と、変更後の前記アドレス番号が前記所定数以下である場合に変更後の前記アドレス番号および変更後の前記アドレス番号に対応する前記識別番号を前記サーバの記憶部に格納する処理とを、前記第２制御部に実行させることにより、前記サーバの記憶部に格納された前記識別番号に対応する前記対象オブジェクトを、所定数の試合イベントの間において試合イベントに参加不可の管理オブジェクトとして管理するオブジェクト管理ステップと、
前記対戦ゲームの新規の試合イベントが前記第１制御部により実行される場合に、前記サーバにおける前記管理オブジェクトを前記クライアントに報知する処理を、前記第２制御部に実行させる管理オブジェクト報知ステップと、
入力部からの入力信号に基づいて、報知された前記管理オブジェクトを除く複数のオブジェクトの中から、新規の前記試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、前記第１制御部に実行させる第２オブジェクト選択ステップと、
を備えるネットワーク用のゲーム制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワーク用のゲームシステム、特に、サーバ用のコンピュータと、ネットワークを介してサーバ用のコンピュータに接続されるクライアント用のコンピュータとにおいて実行されるネットワーク用の対戦ゲームを実行可能なネットワーク用のゲームシステムに関する。
【０００２】
また、本発明は、ネットワーク用のゲームシステムにおいて実行されるゲームプログラム、ネットワーク用のゲームシステムを構成するゲーム装置、ネットワーク用のゲームシステムで用いられるゲーム制御方法に関する。
【背景技術】
【０００３】
従来から様々な対戦ゲームが提案されている。これらの対戦ゲームには、１つのゲーム装置で実行されるゲームや、ネットワークを通じて複数のゲーム装置で実行されるゲーム等が存在する。
【０００４】
後者のゲーム、すなわちネットワークゲームでは、あるプレイヤおよび他のプレイヤが自分たちのゲーム装置をネットワークを介してサーバ用のコンピュータに接続することにより、あるプレイヤと他のプレイヤとが、対戦ゲームを実行することができるようになっている。
【０００５】
このようにして実行することができるネットワーク用の対戦ゲームの１つとしては、たとえば、野球ゲームが知られている（非特許文献１を参照）。ネットワーク用の野球ゲームには、たとえば、あるプレイヤが自分のチームの各選手キャラクタを操作して、他のプレイヤが指揮する相手チームと得点を競うタイプのゲームがある。
【非特許文献１】プロ野球スピリッツ４、株式会社コナミデジタルエンタテインメント、ＰＳ３、２００７年４月１日発売
【発明の開示】
【発明が解決しようとする課題】
【０００６】
このようなネットワークを介した野球ゲームでは、プレイヤの指揮するチーム（Ａチーム）が、他のプレイヤが指揮するチーム（Ｂチーム）に勝利することができるように、Ａチームを指揮するプレイヤは、能力の高い選手キャラクタを試合に採用するケースがみられる。
【０００７】
特に、投手キャラクタは、試合の勝敗に大きな影響を及ぼすキャラクタであるため、Ａチームを指揮するプレイヤが、能力の高い投手キャラクタたとえばエースの投手キャラクタを常に試合に採用する場合がある。このため、他のプレイヤが、Ａチームを指揮するプレイヤと対戦すると、Ａチームの投手キャラクタが常に同じ投手キャラクタであり、面白味に欠けるという不満が、他のプレイヤから発生していた。このような不満は、当然、Ａチームを指揮するプレイヤが、他のプレイヤと対戦する場合にも生じる。このように同じ投手キャラクタを常に試合に採用するか否かは、ゲームに対するプレイヤの倫理観に委ねられている。このため、この倫理観のあるプレイヤと、この倫理観が欠けたプレイヤとの間で、不公平感が生じていた。この不公平感が、プレイヤの不満として生じていた。加えて、現実の野球においては、このように同じ投手を連続的に常に登板させることはあり得ないので、リアル性の点でも現実の野球をゲーム上に十分反映できていないという問題もあった。
【０００８】
上記のような不公平感やリアル感の欠如を解消するためには、次のようにゲームを制御することが考えられる。たとえば、まず、全試合における、全投手キャラクタのローテーションデータや投球数データ等を、サーバに記憶する。次に、全投手キャラクタのローテーションデータや投球数データ等に基づいて、現実世界の投手と同じような登板間隔で、各投手キャラクタに対して登板を許可する命令を、制御部により発行させる。これにより、同じ投手キャラクタを繰り返し使用することができなくなり、上記のような問題を回避することができる。
【０００９】
このようなシステムでは、プレイヤ数が限定されている間は問題ないが、プレイヤ数が増加するにつれて、サーバに格納される全投手キャラクタのローテーションデータや投球数データ等も増えるため、データの増加に対処することができるだけのサーバの記憶容量が要求される。
【００１０】
特に、ネットワーク用の野球ゲームでは、この野球ゲームへの参加の意思を持ったプレイヤは、多くの時間やステップを必要とすることなく、このゲームに容易に参加することができる。このため、ネットワーク用の野球ゲームでは、参加プレイヤの数が、あるタイミングで急激に増加することもあり得る。この場合に対処することができるようにするためには、膨大な記憶容量を備えたサーバを用意する必要がある。しかしながら、このような特別の場合を想定して、膨大な記憶容量を備えたサーバを用意すると、費用対効果の点で効果が薄れてしまうという問題がある。また、従来の記憶容量で、参加プレイヤのデータを処理しようとすると、サーバとはいえ、処理に大きな負担がかかってしまう問題もあった。
【００１１】
本発明は、上記のような問題に鑑みてなされたものであり、本発明の目的は、ネットワークを介して複数のクライアント間で実行されるネットワーク用のゲームにおいて、同一のオブジェクトを、プレイヤが連続的に使用することができないようにするシステムを提供することにある。また、本発明の別の目的は、ネットワークを介して複数のクライアント間で実行されるネットワーク用のゲームにおいて、サーバの記憶容量を低く抑えることができるシステムを提供することにある。
【００１２】
具体的には、本発明の目的は、ネットワーク用の対戦ゲームにおいて、試合の勝敗に影響を及ぼすオブジェクトを、プレイヤが連続的に使用することができないようにすることにある。より具体的には、本発明の目的は、サーバの記憶容量を低く抑え、且つ、試合の勝敗に影響を及ぼすオブジェクトを、プレイヤが連続的に使用することができないようにすることにある。
【課題を解決するための手段】
【００１３】
請求項１に係るネットワーク用のゲームシステムは、サーバ用のコンピュータと、ネットワークを介してサーバ用のコンピュータに接続されるクライアント用のコンピュータとにおいて実行されるネットワーク用の対戦ゲームを実行可能なネットワーク用のゲームシステムである。このネットワーク用のゲームシステムは、以下の機能を備えている。
（１）対戦ゲームの実行をサーバに報知する処理を、クライアントの第１制御部に実行させる対戦報知機能。
（２）クライアントにおける対戦ゲームの実行を認証する処理を、サーバの第２制御部に実行させる対戦認証機能。
（３）対戦ゲームの実行がサーバに認証されたときに、対戦ゲームの試合イベントを、第１制御部に実行させる試合実行機能。
（４）入力部からの入力信号に基づいて、複数のオブジェクトの中から、対戦ゲームの試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、第１制御部に実行させる第１オブジェクト選択機能。
（５）対戦ゲームの試合イベントに参加した上記の少なくとも１つのオブジェクトの動作頻度を、第１制御部に算出させる動作頻度算出機能。
（６）試合イベントの終了時に、上記の少なくとも１つのオブジェクトの動作頻度に基づいて、上記の少なくとも１つのオブジェクトの中からいずれか１つのオブジェクトを選出する処理を、第１制御部に実行させるオブジェクト選出機能。
（７）上記のいずれか１つのオブジェクトを対象オブジェクトとしてサーバに報知する処理を、第１制御部に実行させるオブジェクト報知機能。
（８）対象オブジェクトのアドレスを示すアドレス番号を要素番号とし、アドレス番号が示すアドレスに配置される対象オブジェクトの識別番号を要素とする配列を、第２制御部に規定させ、サーバの記憶部に格納する配列規定機能。
（９）試合イベントが終了するごとに、対象オブジェクトのアドレス番号をインクリメントする処理と、変更後のアドレス番号が所定数以下であるか否かを判断する処理と、変更後のアドレス番号が所定数以下である場合に変更後のアドレス番号および変更後のアドレス番号に対応する識別番号をサーバの記憶部に格納する処理とを、第２制御部に実行させることにより、サーバの記憶部に格納された識別番号に対応する対象オブジェクトを、所定数の試合イベントの間において試合イベントに参加不可の管理オブジェクトとして管理するオブジェクト管理機能。
（１０）対戦ゲームの新規の試合イベントが第１制御部により実行される場合に、サーバにおける管理オブジェクトをクライアントに報知する処理を、第２制御部に実行させる管理オブジェクト報知機能。
（１１）入力部からの入力信号に基づいて、報知された管理オブジェクトを除く複数のオブジェクトの中から、新規の試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、第１制御部に実行させる第２オブジェクト選択機能。
【００１４】
このネットワーク用のゲームシステムでは、対戦報知機能において、対戦ゲームの実行をサーバに報知する処理が、クライアントの第１制御部により実行される。対戦認証機能においては、クライアントにおける対戦ゲームの実行を認証する処理が、サーバの第２制御部により実行される。
【００１５】
試合実行機能においては、対戦ゲームの実行がサーバに認証されたときに、対戦ゲームの試合イベントが、第１制御部により実行される。オブジェクト選択機能においては、入力部からの入力信号に基づいて、複数のオブジェクトの中から、対戦ゲームの試合イベントに参加する少なくとも１つのオブジェクトを選択する処理が、第１制御部により実行される。
【００１６】
動作頻度算出機能においては、対戦ゲームの試合イベントに参加した少なくとも１つのオブジェクトの動作頻度が、第１制御部により算出される。オブジェクト選出機能においては、試合イベントの終了時に、上記の少なくとも１つのオブジェクトの動作頻度に基づいて、上記の少なくとも１つのオブジェクトの中からいずれか１つのオブジェクトを選出する処理が、第１制御部に実行される。オブジェクト報知機能においては、上記のいずれか１つのオブジェクトを対象オブジェクトとしてサーバに報知する処理が、第１制御部により実行される。
【００１７】
配列規定機能においては、対象オブジェクトのアドレスを示すアドレス番号を要素番号とし、アドレス番号が示すアドレスに配置される対象オブジェクトの識別番号を要素とする配列が、第２制御部に規定され、サーバの記憶部に格納される。
【００１８】
オブジェクト管理機能においては、試合イベントが終了するごとに、対象オブジェクトのアドレス番号をインクリメントする処理と、変更後のアドレス番号が所定数以下であるか否かを判断する処理と、変更後のアドレス番号が所定数以下である場合に変更後のアドレス番号および変更後のアドレス番号に対応する識別番号をサーバの記憶部に格納する処理とが、第２制御部により実行される。これにより、サーバの記憶部に格納された識別番号に対応する対象オブジェクトが、所定数の試合イベントの間において試合イベントに参加不可の管理オブジェクトとして管理される。管理オブジェクト報知機能においては、対戦ゲームの新規の試合イベントが第１制御部により実行される場合に、サーバにおける管理オブジェクトをクライアントに報知する処理が、第２制御部により実行される。
【００１９】
第２オブジェクト選択機能においては、入力部からの入力信号に基づいて、報知された管理オブジェクトを除く複数のオブジェクトの中から、新規の試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、第１制御部に実行させる
このように、サーバにおいて管理中のオブジェクトがサーバからクライアントに報知された場合、オブジェクト選択機能において、入力部からの入力信号に基づいて、報知された管理中のオブジェクトを除く複数のオブジェクトの中から、新規の試合イベントに参加する上記の少なくとも１つのオブジェクトを選択する処理が、第１制御部によりさらに実行される。
【００２０】
たとえば、本ネットワーク用のゲームシステムを用いることにより野球ゲームが実行された場合、まず、野球ゲームの実行をサーバに報知する処理が、クライアントの第１制御部により実行される。そして、野球ゲームの実行をサーバが認証する処理が、サーバの第２制御部により実行される。そして、野球ゲームの実行がサーバに認証されたときに、野球ゲームの試合イベントが、第１制御部により実行される。
【００２１】
次に、コントローラからの入力信号に基づいて、複数の選手キャラクタの中から、野球ゲームの試合イベントに出場する選手キャラクタを選択する処理が、第１制御部により実行される。具体的には、コントローラからの入力信号に基づいて、複数の投手キャラクタの中から、野球ゲームの試合イベントに登板する投手キャラクタを選択する処理が、第１制御部により実行される。以下では、選手キャラクタが投手キャラクタである場合を一例として説明を行う。
【００２２】
続いて、野球ゲームの試合イベントに登板した投手キャラクタの投球数（動作頻度）が、第１制御部により算出される。そして、試合イベントの終了時に、野球ゲームの試合イベントに登板した複数の投手キャラクタそれぞれの投球数に基づいて、野球ゲームの試合イベントに登板した複数の投手キャラクタの中からいずれか１つの投手キャラクタを選出する処理が、第１制御部に実行される。そして、ここで選出された投手キャラクタをサーバに報知する処理が、第１制御部により実行される。
【００２３】
続いて、クライアントからサーバに報知された投手キャラクタを、野球ゲームの新規の試合イベントに参加不可の投手キャラクタとして管理する処理が、第２制御部により実行される。そして、野球ゲームの新規の試合イベントが第１制御部により実行される場合に、サーバにおいて管理中の投手キャラクタをクライアントに報知する処理が、第２制御部により実行される。
【００２４】
このように、サーバにおいて管理中の投手キャラクタがサーバからクライアントに報知された場合、コントローラからの入力信号に基づいて、報知された管理中の投手キャラクタを除いた複数の投手キャラクタの中から、新規の試合イベントに参加する少なくとも１つの投手キャラクタを選択する処理が、第１制御部によりさらに実行される。
【００２５】
この場合、試合イベントの終了時に、野球ゲームの試合イベントに登板した複数の投手キャラクタそれぞれの投球数に基づいて、野球ゲームの試合イベントに登板した複数の投手キャラクタの中からいずれか１つの投手キャラクタが、クライアントにおいて選出される。そして、ここで選出された投手キャラクタがサーバに報知され、この投手キャラクタが、野球ゲームの新規の試合イベントに参加不可の投手キャラクタとして、サーバにおいて管理される。そして、野球ゲームの新規の試合イベントがクライアントにおいて実行される場合に、サーバにおいて管理中の投手キャラクタすなわち新規の試合イベントに参加不可の投手キャラクタが、クライアントに報知される。
【００２６】
このように請求項１に係るネットワーク用のゲームシステムでは、たとえば、能力の高い投手キャラクタが試合イベントに登板したときに、投手キャラクタの投球数に基づいて能力の高い投手キャラクタがクライアント側で選出され、この投手キャラクタをサーバに報知することができる。そして、この投手キャラクタを新規の試合イベントに参加不可の投手キャラクタとしてサーバにおいて管理することにより、クライアント側で行われる新規の試合イベントにこの投手キャラクタが登板できないように規制することができる。これにより、ネットワーク用の野球ゲームにおいて、能力の高い投手キャラクタが登板した場合、この投手キャラクタを次に続く試合において連続的に使用することができないように規制することができる。
【００２７】
また、請求項１に係るネットワーク用のゲームシステムでは、能力の高い投手キャラクタはサーバにおいて管理されるようになっているので、クライアントは、各投手キャラクタの投球数に基づいて能力の高い投手キャラクタを選出するだけで済む。詳細には、クライアントは、各投手の投球数に基づいて能力の高い投手キャラクタを選出する処理を試合ごとに実行しなければならない。しかしながら、この処理を実行した後に、能力の高い投手キャラクタをサーバに報知してしまえば、能力の高い投手キャラクタを試合ごとに記憶部に記憶する必要がなくなる。このため、クライアント側に要求される記憶容量を低減することができる。なお、この効果は、クライアントが実行した試合数が多くなればなるほど大きくなる。
【００２８】
さらに、請求項１に係るネットワーク用のゲームシステムでは、サーバにおいて、能力の高い投手キャラクタだけを管理すれば良いので、このゲームに参加するプレイヤの数が増えても、特別にサーバの記憶容量を増やす必要がない。すなわち、サーバの記憶容量を、低く抑えることができる。
【００２９】
上記の内容を一般的に表現すると、請求項１に係るネットワーク用のゲームシステムでは、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、試合の勝敗に影響を及ぼすオブジェクトを、所定数の試合の間、プレイヤが連続的に使用することができないように規制することができる。この結果、従来のネットワークゲームで発生していた一部のプレイヤによる理不尽なオブジェクトの使用（例えば、エース級の投手キャラクタを連続的に常時登板させるといった使用方法）を回避でき、また、より現実の野球に近い選手起用を行なえるので、よりリアルなゲームを実現することができる。また、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、クライアントが負担する記憶容量を低減することができる。さらに、サーバが負担する記憶容量も、同時に低減することができる。
【００３０】
また、請求項１に係るネットワーク用のゲームシステムでは、クライアントからサーバに報知された投手キャラクタを所定数の試合イベントの間において試合イベントに参加不可の投手キャラクタとして管理する処理が、第２制御部により実行される。
【００３１】
このため、たとえば、能力の高い投手キャラクタが試合イベントに登板したときに、投手キャラクタの投球数に基づいて能力の高い投手キャラクタをクライアント側で選出し、この投手キャラクタをサーバに報知することができる。そして、この投手キャラクタを新規の試合イベントに参加不可の投手キャラクタとしてサーバにおいて管理することにより、クライアント側で行われる所定数の新規の試合イベントにこの投手キャラクタが登板できないように規制することができる。これにより、ネットワーク用の野球ゲームにおいて、能力の高い投手キャラクタが登板した場合、この投手キャラクタを次に続く所定数の試合において連続的に使用することができないように規制することができる。
【００３２】
さらに、請求項１に係るネットワーク用のゲームシステムでは、管理中の投手キャラクタ（新規の試合イベントに参加不可の投手キャラクタ）のアドレスを示すアドレス番号を要素番号とし、アドレス番号が示すアドレスに配置される新規の試合イベントに参加不可の投手キャラクタの識別番号を要素とする配列が、第２制御部により規定される。そして、試合イベントが終了するごとに新規の試合イベントに参加不可の投手キャラクタのアドレス番号をインクリメントする処理と、変更後のアドレス番号が所定数以下であるか否かを判断する処理と、変更後のアドレス番号が所定数以下である場合に変更後のアドレス番号および変更後のアドレス番号に対応する識別番号をサーバの記憶部に格納する処理とが、第２制御部により実行される。
【００３３】
このように、このゲームシステムでは、新規の試合イベントに参加不可の投手キャラクタの識別番号が要素になる配列の要素番号が、新規の試合イベントに参加不可の投手キャラクタの識別番号が配置されるアドレスのアドレス番号になっている。この定義は、サーバにおいて行われている。
【００３４】
これにより、試合イベントが終了するごとに変更されるアドレス番号が、所定の値以下であるか否かの判断結果に基づいて、投手キャラクタをサーバにおいて管理するか否かを決定することができる。ここでは、試合イベントが終了するごとに変更されるアドレス番号が、所定の値以下である場合に、投手キャラクタがサーバにおいて管理される。
【００３５】
上記の内容を一般的に表現すると、このゲームシステムでは、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、試合の勝敗に影響を及ぼす投手キャラクタを、試合イベントが終了するごとに変更されるアドレス番号に基づいて、試合イベントに参加不可の投手キャラクタとして管理することができる。この管理は、上記の通り、予め定められた所定アドレス数のＩＤ格納用のメモリを設けておき、試合終了後に、いま登板した（または、投球イニング数の最も多い）投手キャラクタのＩＤを新規に格納する。一方で、最も古いＩＤをメモリから吐き出すことで、上記メモリには参加不可の投手キャラクタのＩＤのみが格納するようにしている（例えば、登板後、３試合の登板を不可とする場合には、上記アドレス数を３個とすればよい）。従って、サーバ側では、単純に上記メモリに格納されているＩＤの投手キャラクタを参加不可と判断すればよいので、極めて簡易に管理を行なうことができる。
【００３６】
また、登板を不可とする試合数が例えば３試合である場合、３個のアドレスを用意する必要がある。この場合、３個のアドレスの容量は、２ビット（“００，０１，１０”，１１）である。すなわち、サーバ上では、１チームについて２ビットのメモリさえあれば、必要な情報を確保できるので、極めて少ない容量で必要なデータを記憶することができる。
【００３７】
請求項２に係るネットワーク用のゲームシステムは、請求項１に記載のネットワーク用のゲームシステムにおいて、試合イベントの終了時に、上記の少なくとも１つのオブジェクトの動作頻度の中から最大の動作頻度を検索する処理が、第１制御部により実行される。そして、最大の動作頻度で動作したオブジェクトを選出する処理が、第１制御部により実行される。これらの処理は、オブジェクト選出機能において実行される。
【００３８】
たとえば、本ネットワーク用のゲームシステムを用いることにより野球ゲームが実行された場合、試合イベントの終了時に、投手キャラクタの投球数（動作頻度）の中から最大の投球数を検索する処理が、第１制御部により実行される。そして、最大の投球数を投球した投手キャラクタを選出する処理が、第１制御部により実行される。
【００３９】
このように請求項２に係るネットワーク用のゲームシステムでは、たとえば、能力の高い投手キャラクタが試合イベントに登板したときに、投球数が最も多かった投手キャラクタが、能力の最も高い投手キャラクタとして選出される。これにより、これにより、ネットワーク用の野球ゲームにおいて、能力の高い投手キャラクタが登板した場合、投球数が最も多い投手キャラクタを次に続く試合において連続的に使用することができないように規制することができる。上記の内容を一般的に表現すると、請求項２に係るネットワーク用のゲームシステムでは、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、動作頻度が最大のオブジェクトを、プレイヤが連続的に使用することができないように規制することができる。
【００４０】
請求項３に係るネットワーク用のゲームシステムは、請求項１に記載のネットワーク用のゲームシステムにおいて、試合イベントの終了時に、上記の少なくとも１つのオブジェクトの動作頻度の中から閾値以上の動作頻度を検索する処理が、第１制御部により実行される。そして、閾値以上の動作頻度で動作したオブジェクトを選出する処理が、第１制御部により実行される。これらの処理は、オブジェクト選出機能において実行される。
【００４１】
たとえば、本ネットワーク用のゲームシステムを用いることにより野球ゲームが実行された場合、試合イベントの終了時に、投手キャラクタの投球数（動作頻度）の中から所定の値以上の投球数を検索する処理が、第１制御部により実行される。そして、所定の値以上の投球数を投球した投手キャラクタを選出する処理が、第１制御部により実行される。
【００４２】
このように請求項３に係るネットワーク用のゲームシステムでは、たとえば、能力の高い投手キャラクタが試合イベントに登板したときに、投球数が所定数以上である投手キャラクタが、能力の高い投手キャラクタとして選出される。これにより、これにより、ネットワーク用の野球ゲームにおいて、能力の高い投手キャラクタが登板した場合、投球数が多い投手キャラクタを次に続く試合において連続的に使用することができないように規制することができる。上記の内容を一般的に表現すると、請求項３に係るネットワーク用のゲームシステムでは、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、動作頻度が多いオブジェクトを、プレイヤが連続的に使用することができないように規制することができる。
【００４３】
請求項４に係るネットワーク用のゲームシステムは、請求項１から３のいずれかに記載のネットワーク用のゲームシステムにおいて、以下の機能を備えている。
（１２）複数のオブジェクトを同一のグループとして規定するためのグループ番号を、第１制御部に認識させるグループ規定機能。
【００４４】
このネットワーク用のゲームシステムでは、グループ規定機能において、複数のオブジェクトを同一のグループとして規定するためのグループ番号が、第１制御部に認識される。そして、配列規定機能においては、アドレス番号とグループ番号とを要素番号とし、要素番号に対応する投手キャラクタ（新規の試合イベントに参加不可の投手キャラクタ）の識別番号を要素とする配列が、第２制御部により規定され、サーバの記憶部に格納される。
【００４５】
たとえば、本ネットワーク用のゲームシステムを用いることにより野球ゲームが実行された場合、複数の投手キャラクタが所属するチームを規定するためのグループ番号が、第１制御部に認識される。そして、投手キャラクタのアドレス番号とチームのグループ番号とを要素番号とし、要素番号に対応する新規の試合イベントに参加不可の投手キャラクタの識別番号を要素とする配列が、第２制御部により規定される。
【００４６】
このように請求項４に係るネットワーク用のゲームシステムでは、新規の試合イベントに参加不可の投手キャラクタの識別番号が要素になる配列の要素番号が、投手キャラクタのアドレス番号とチームのグループ番号とから構成されている。
【００４７】
これにより、新規の試合イベントに参加不可の投手キャラクタをチームごとに管理することができる。このため、プレイヤが、様々なチームを選択して対戦ゲームを行ったとしても、再び同じチームを選択したときには、前回にサーバで管理が開始された投手キャラクタ（新規の試合イベントに参加不可の投手キャラクタ）は、今回の試合においては使用することができないように規制することができる。
【００４８】
上記の内容を一般的に表現すると、請求項６に係るネットワーク用のゲームシステムでは、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、試合の勝敗に影響を及ぼすオブジェクトを、グループごとにサーバにおいて管理することができる。これにより、プレイヤが、様々なグループのオブジェクトを使用して対戦ゲームを行ったとしても、再び同じグループを選択したときには、前回にサーバで管理が開始されたオブジェクトは、今回の試合においては使用することができないように規制することができる。
【００４９】
請求項５に係るゲーム装置は、サーバ用のコンピュータと、ネットワークを介してサーバ用のコンピュータに接続されるクライアント用のコンピュータとにおいて実行されるネットワーク用の対戦ゲームを実行可能なネットワーク用のゲーム装置である。
【００５０】
このゲーム装置では、クライアントが、対戦ゲームの実行をサーバに報知する処理を、クライアントの第１制御部に実行させる対戦報知機能と、対戦ゲームの実行がサーバに認証されたときに、対戦ゲームの試合イベントを、第１制御部に実行させる試合実行機能と、入力部からの入力信号に基づいて、複数のオブジェクトの中から、対戦ゲームの試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、第１制御部に実行させる第１オブジェクト選択機能と、対戦ゲームの試合イベントに参加した少なくとも１つのオブジェクトの動作頻度を、第１制御部に算出させる動作頻度算出機能と、試合イベントの終了時に、少なくとも１つのオブジェクトの動作頻度に基づいて、少なくとも１つのオブジェクトの中からいずれか１つのオブジェクトを選出する処理を、第１制御部に実行させるオブジェクト選出機能と、いずれか１つのオブジェクトを対象オブジェクトとしてサーバに報知する処理を、第１制御部に実行させるオブジェクト報知機能と、入力部からの入力信号に基づいて、サーバから報知される対象オブジェクトを除く複数のオブジェクトの中から、新規の試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、第１制御部に実行させる第２オブジェクト選択機能とを、備えている。
【００５１】
また、サーバは、クライアントにおける対戦ゲームの実行を認証する処理を、サーバの第２制御部に実行させる対戦認証機能と、対象オブジェクトのアドレスを示すアドレス番号を要素番号とし、アドレス番号が示すアドレスに配置される対象オブジェクトの識別番号を要素とする配列を、第２制御部に規定させ、サーバの記憶部に格納する配列規定機能と、試合イベントが終了するごとに、対象オブジェクトのアドレス番号をインクリメントする処理と、変更後のアドレス番号が所定数以下であるか否かを判断する処理と、変更後のアドレス番号が所定数以下である場合に変更後のアドレス番号および変更後のアドレス番号に対応する識別番号をサーバの記憶部に格納する処理とを、第２制御部に実行させることにより、サーバの記憶部に格納された識別番号に対応する対象オブジェクトを、所定数の試合イベントの間において試合イベントに参加不可の管理オブジェクトとして管理するオブジェクト管理機能と、対戦ゲームの新規の試合イベントが第１制御部により実行される場合に、サーバにおける管理オブジェクトをクライアントに報知する処理を、第２制御部に実行させる管理オブジェクト報知機能とを、備えている。
【００５２】
請求項６に係るゲーム制御方法は、サーバ用のコンピュータと、ネットワークを介してサーバ用のコンピュータに接続されるクライアント用のコンピュータとにおいて実行されるネットワーク用の対戦ゲームを各コンピュータにより制御可能なネットワーク用のゲーム制御方法である。
【００５３】
このゲーム制御方法は、対戦ゲームの実行をサーバに報知する処理を、クライアントの第１制御部に実行させる対戦報知ステップと、クライアントにおける対戦ゲームの実行を認証する処理を、サーバの第２制御部に実行させる対戦認証ステップと、対戦ゲームの実行がサーバに認証されたときに、対戦ゲームの試合イベントを、第１制御部に実行させる試合実行ステップと、入力部からの入力信号に基づいて、複数のオブジェクトの中から、対戦ゲームの試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、第１制御部に実行させる第１オブジェクト選択ステップと、対戦ゲームの試合イベントに参加した少なくとも１つのオブジェクトの動作頻度を、第１制御部に算出させる動作頻度算出ステップと、試合イベントの終了時に、少なくとも１つのオブジェクトの動作頻度に基づいて、少なくとも１つのオブジェクトの中からいずれか１つのオブジェクトを対象オブジェクトとして選出する処理を、第１制御部に実行させるオブジェクト選出ステップと、対象オブジェクトをサーバに報知する処理を、第１制御部に実行させるオブジェクト報知ステップと、対象オブジェクトのアドレスを示すアドレス番号を要素番号とし、アドレス番号が示すアドレスに配置される対象オブジェクトの識別番号を要素とする配列を、第２制御部に規定させ、サーバの記憶部に格納する配列規定ステップと、試合イベントが終了するごとに、対象オブジェクトのアドレス番号をインクリメントする処理と、変更後のアドレス番号が所定数以下であるか否かを判断する処理と、変更後のアドレス番号が所定数以下である場合に変更後のアドレス番号および変更後のアドレス番号に対応する識別番号をサーバの記憶部に格納する処理とを、第２制御部に実行させることにより、サーバの記憶部に格納された識別番号に対応する対象オブジェクトを、所定数の試合イベントの間において試合イベントに参加不可の管理オブジェクトとして管理するオブジェクト管理ステップと、対戦ゲームの新規の試合イベントが第１制御部により実行される場合に、サーバにおける管理オブジェクトをクライアントに報知する処理を、第２制御部に実行させる管理オブジェクト報知ステップと、入力部からの入力信号に基づいて、報知された管理オブジェクトを除く複数のオブジェクトの中から、新規の試合イベントに参加する少なくとも１つのオブジェクトを選択する処理を、第１制御部に実行させる第２オブジェクト選択ステップとを、備えている。
【発明の効果】
【００５４】
本発明では、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、試合の勝敗に影響を及ぼすオブジェクトを、プレイヤが連続的に使用することができないように規制することができ、現実のゲームのリアルさをより反映させたゲームを実現することができる。また、ネットワークを介して複数のクライアント間で実行されるネットワーク用の対戦ゲームにおいて、クライアントが負担する記憶容量を低減することができる。
【発明を実施するための最良の形態】
【００５５】
〔サーバの構成および動作、ゲーム装置の構成および動作〕
図１は、本発明に係るゲームシステムの概略構成を示す説明図である。このゲームシステムは、サーバ１と複数のゲーム装置２（クライアント：２ａ，２ｂ，・・・）とを含んでいる。ここでは、各ゲーム装置２が、家庭用ビデオゲーム装置である場合の例が示される。各ゲーム装置２は、たとえば、各ルータ４（４ａ，４ｂ，・・・）を介し、インターネットなどの外部ネットワーク３に接続される。外部ネットワーク３には、サーバ１が接続されている。
【００５６】
なお、図１では、各ゲーム装置２ａ，２ｂ，・・・がルータ４ａ，４ｂ，・・・を介して外部ネットワーク３に接続される場合の例が示されているが、各ゲーム装置２ａ，２ｂ，・・・がルータ４ａ，４ｂ，・・・を介さずに直接的に外部ネットワーク３に接続されるようにしても良い。
【００５７】
ゲーム装置２すなわち家庭用ビデオゲーム装置は、家庭用ゲーム機本体および家庭用テレビジョンを備える。家庭用ゲーム機本体には、記録媒体が装填可能となっており、記録媒体からゲームデータが適宜読み出されてゲームが実行される。このようにして実行されるゲーム内容が家庭用テレビジョンに表示される。
【００５８】
サーバ１は、プレイヤごとの個人データを記憶し、ゲーム装置２からの要求に応じて個人データを要求元のゲーム装置２に送信する。サーバ１では、図１に示すように、下記の機能が実現される。
【００５９】
ＣＰＵ（第２制御部）１０１は、データ蓄積部（記憶部）１０３に格納されている制御プログラムを読み出し、実行する。ＲＡＭ１０２は、ゲームを行うにあたりプレイヤが個人的に設定するデータや、過去の戦績に基づくデータなど、ゲーム毎に異なる個人データを一時的に記憶する。データ蓄積部１０３には、たとえば、ハードディスクが用いられる。このデータ蓄積部１０３には、制御プログラムや、ゲーム装置２から送信されてくる個人データなどが蓄積される。ネットワーク通信部１０４は、外部ネットワーク３を介して、ゲーム装置２とデータの送受信を行う。
【００６０】
上記の構成を有するサーバ１は、各ゲーム装置２から、個人データやゲームデータ等を受信する。すると、各ゲーム装置２においてゲームが実行されるときに必要となる各種のゲームデータが、サーバ１から各ゲーム装置２へと送信される。
【００６１】
ゲーム装置２では、サーバ１から取得したゲームデータに基づいて、他のゲーム装置２と外部ネットワーク３を介して、ゲームが実行される。図２は、ゲーム装置２のハードウェア構成を示す。
【００６２】
ＣＰＵ（第１制御部）２０１は、後述するハードディスク２０３に記憶されている制御プログラムを、実行する。ＲＡＭ２０２は、各種変数やパラメータなどを一時的に記憶する。ハードディスク２０３は、制御プログラムや各種パラメータなどを記憶する。ネットワーク通信部２０４は、外部ネットワーク３を介して、サーバ１や他のゲーム装置２とデータの送受信を行う。モニタ２０６は、ゲーム画像を表示する。描画処理部２０５は、モニタ２０６に表示する画像データを生成する。スピーカ２０８は、ゲーム実行中やデモ画面表示中のサウンドを出力する。音声再生部２０７は、スピーカ２０８に発音させるためのサウンドデータを生成する。
【００６３】
外部機器制御部２１０は、後述する、入力操作部（入力部）２１１、操作部カードリーダ・ライタ２１２、および起動ボタン２１４等の外部機器を制御する。入力操作部２１１は、ジョイスティックや操作ボタンなどから構成されたコントローラに対応しており、プレイヤの指示入力を受け付ける。カードリーダ・ライタ２１２は、挿入される記録媒体たとえば磁気カードに対してデータの読取・書込処理を実行する。起動ボタン２１４は、ゲーム装置２を起動するためのボタンである。このボタンは、ゲーム装置本体の外部に露出して設けられている。このボタンの押下により、ゲーム装置は起動する。
【００６４】
外部入出力制御部２０９は、外部機器に対する制御信号を生成する。また、入力操作部２１１、カードリーダ・ライタ２１２、および起動ボタン２１４などの外部機器からの信号を受信してＣＰＵ２０１に送出する。
【００６５】
上記のように構成されたゲーム装置２は、ハードディスク２０３に記憶された制御プログラムに従い、次のようにしてゲームを実行する。起動ボタン２１４がプレイヤにより押されると、ゲーム装置２が起動する。そして、ネットワーク用のゲームがゲーム装置２において実行されると、ゲーム装置２は、外部ネットワーク３を介して、サーバ１に対して接続要求を発行する。そして、この接続要求がサーバ１に認証されると、サーバ１のデータ蓄積部１０５に格納されている個人データが、ゲーム装置２にダウンロードされる。
【００６６】
また、ゲーム装置２の接続要求がサーバ１に認証されたときには、ゲーム装置２は、対戦相手のネットワークアドレスを取得する。つまり、認証されたプレイヤがネットワーク対戦を希望した場合、ゲーム装置２は、自己のネットワークアドレスをサーバ１に送信し、対戦相手のネットワークアドレスを取得する。その後、ゲーム装置２は、取得した対戦相手のネットワークアドレスに基づいて、ネットワーク対戦ゲームの実行を開始する。
【００６７】
ネットワーク対戦ゲームの実行中は、対戦中の２台のゲーム装置２の間でデータの送受信が行われる。送受信されるデータの例としては、プレイヤによる操作指示入力を示す入力データ、画像や音声を出力するための出力データ等を挙げることができる。
【００６８】
〔ゲームシステムにおける各種処理概要〕
本ゲームシステムにおいて実行されるゲームは、たとえば野球ゲームである。本ゲームシステムでは、サーバと、外部ネットワークを介してサーバに接続されるゲーム装置（クライアント）とにおいて、ネットワーク用の野球ゲームが実行可能になっている。図３は、本発明で主要な役割を果たす機能を説明するための機能ブロック図である。この図３に示すように、下記の機能（手段）は、ゲーム装置２において実現される。
【００６９】
対戦報知手段５０は、野球ゲームの実行をサーバ１に報知する処理を、ゲーム装置２のＣＰＵ２０１に実行させる機能を備えている。この手段では、野球ゲームの実行をサーバ１に報知する処理が、ゲーム装置２のＣＰＵ２０１により実行される。たとえば、この手段では、あるゲーム装置２ａを操作するプレイヤが、外部ネットワーク３を介して、他のゲーム装置２ｂを操作するプレイヤと野球ゲームを実行するために、ゲーム装置２ａがサーバ１に対して行う接続要求が、ゲーム装置２ａのＣＰＵ２０１から発行される。
【００７０】
対戦認証手段５１は、ゲーム装置２における野球ゲームの実行を認証する処理を、サーバ１のＣＰＵ１０１に実行させる機能を備えている。この手段では、ゲーム装置２における野球ゲームの実行を認証する処理が、サーバ１のＣＰＵ１０１により実行される。たとえば、この手段では、サーバ１に対する接続要求が、正規の接続要求であるか否かが、サーバ１のＣＰＵ１０１により判断される。そして、この接続要求が正規の接続要求であるとサーバ１のＣＰＵ１０１により判断された場合に、ゲーム装置２における野球ゲームの実行を認証する処理が、サーバ１のＣＰＵ１０１により実行される。
【００７１】
試合実行手段５２は、野球ゲームの実行がサーバ１に認証されたときに、野球ゲームの試合イベントを、ゲーム装置２のＣＰＵ２０１に実行させる機能を備えている。この手段では、野球ゲームの実行がサーバ１に認証されたときに、野球ゲームの試合イベントが、ゲーム装置２のＣＰＵ２０１に実行される。たとえば、この手段では、野球ゲームの実行がサーバ１のＣＰＵ１０１に認証されると、対戦相手のネットワークアドレスが、ゲーム装置２のＣＰＵ２０１に認識される。この対戦相手のネットワークアドレスに基づいて、対戦相手の情報がサーバ１からゲーム装置２にダウンロードされ、対戦相手が特定される。すると、ネットワーク用の野球ゲームの試合イベントが、ゲーム装置２のＣＰＵ２０１により実行される。
【００７２】
投手キャラクタ選択手段５３は、コントローラ２１１からの入力信号に基づいて、複数の投手キャラクタの中から、野球ゲームの試合イベントに登板する投手キャラクタを選択する処理を、ゲーム装置２のＣＰＵ２０１に実行させる機能を備えている。また、投手キャラクタ選択手段５３は、コントローラ２１１からの入力信号に基づいて、報知された管理中の投手キャラクタを除く複数の投手キャラクタの中から、新規の試合イベントに登板する投手キャラクタを選択する処理を、ゲーム装置２のＣＰＵ２０１にさらに実行させる機能を備えている。
【００７３】
この手段では、コントローラ２１１からの入力信号に基づいて、複数の投手キャラクタの中から、野球ゲームの試合イベントに登板する投手キャラクタを選択する処理が、ゲーム装置２のＣＰＵ２０１により実行される。また、この手段では、コントローラ２１１からの入力信号に基づいて、報知された管理中の投手キャラクタを除く複数の投手キャラクタの中から、新規の試合イベントに登板する投手キャラクタを選択する処理が、ゲーム装置２のＣＰＵ２０１にさらに実行される。
【００７４】
たとえば、この手段では、コントローラ２１１を操作することにより、試合イベントに登板可能な複数の投手キャラクタのリストの中から、野球ゲームの試合イベントに登板する投手キャラクタが選択される。すると、選択された投手キャラクタの識別番号が、ゲーム装置２のＣＰＵ２０１に認識される。この処理は、１つの試合イベントにおいて選択された全ての投手キャラクタそれぞれに対して実行される。すなわち、１つの試合イベントにおいて選択された全ての投手キャラクタそれぞれの識別番号が、ゲーム装置２のＣＰＵ２０１に認識される。
【００７５】
また、この手段では、新規の試合イベントが実行されたときには、報知された管理中の投手キャラクタを除く複数の投手キャラクタのリストの中から、新規の試合イベントに登板する投手キャラクタが選択される。この処理は、新規の試合イベントにおいて選択された全ての投手キャラクタそれぞれに対して実行される。すなわち、新規の試合イベントにおいて選択された全ての投手キャラクタそれぞれの識別番号（報知された管理中の投手キャラクタの識別番号を除く）が、ゲーム装置２のＣＰＵ２０１に認識される。なお、ここに示した、“報知された管理中の投手キャラクタ”は、後述する管理投手キャラクタ報知手段において、サーバ１からゲーム装置２へと報知される投手キャラクタに対応している。
【００７６】
投球数算出手段５４は、野球ゲームの試合イベントに登板した全ての投手キャラクタそれぞれの投球数を、ゲーム装置２のＣＰＵ２０１に算出させる機能を備えている。この手段では、野球ゲームの試合イベントに登板した全ての投手キャラクタそれぞれの投球数が、ゲーム装置２のＣＰＵ２０１により算出される。たとえば、この手段では、１つの試合イベントに登板した全ての投手キャラクタそれぞれの投球数が、ゲーム装置２のＣＰＵ２０１により算出される。そして、各投手キャラクタの識別番号と、各投手キャラクタの投球数とが、ゲーム装置２のＣＰＵ２０１に認識される。
【００７７】
投手キャラクタ選出手段５５は、試合イベントの終了時に、登板した全ての投手キャラクタの投球数に基づいて、登板した全ての投手キャラクタの中からいずれか１つの投手キャラクタを選出する処理を、ゲーム装置２のＣＰＵ２０１に実行させる機能を備えている。
【００７８】
この手段では、試合イベントの終了時に、登板した全ての投手キャラクタそれぞれの投球数に基づいて、登板した全ての投手キャラクタの中からいずれか１つの投手キャラクタを選出する処理が、ゲーム装置２のＣＰＵ２０１により実行される。たとえば、この手段では、試合イベントの終了時に、登板した全ての投手キャラクタそれぞれの投球数の中で最大のものを検索する処理が、ゲーム装置２のＣＰＵ２０１により実行される。そして、ゲーム装置２のＣＰＵ２０１により検索された最大投球数に対応する、投手キャラクタの識別番号が、ゲーム装置２のＣＰＵ２０１に認識される。このようにして、最も多くの投球を行った投手キャラクタを選出する処理が、ゲーム装置２のＣＰＵ２０１により実行される。
【００７９】
グループ規定手段５６は、複数の投手キャラクタを同一のチームとして規定するためのチーム番号を、ゲーム装置２のＣＰＵ２０１に認識させる機能を備えている。
【００８０】
この手段では、複数の投手キャラクタを同一のチームとして規定するためのチーム番号が、ゲーム装置２のＣＰＵ２０１に認識される。たとえば、この手段では、あるチームの全ての投手キャラクタが、同一のチームの投手キャラクタであることを示すためのチーム番号が、ゲーム装置２のＣＰＵ２０１に認識される。なお、このチーム番号は、ゲームプログラムにおいて予め規定されており、チームごとに異なる番号が割り当てられる。
【００８１】
投手キャラクタ報知手段５７は、最も多くの投球を行った投手キャラクタをサーバ１に報知する処理を、ゲーム装置２のＣＰＵ２０１に実行させる機能を備えている。この手段では、最も多くの投球を行った投手キャラクタをサーバ１に報知する処理が、ゲーム装置２のＣＰＵ２０１により実行される。たとえば、この手段では、最も多くの投球を行った投手キャラクタの識別番号をサーバ１に報知するための識別番号報知命令が、ゲーム装置２のＣＰＵ２０１から発行される。すると、最も多くの投球を行った投手キャラクタの識別番号が、外部ネットワーク３を介してゲーム装置２からサーバ１へと送信される。
【００８２】
なお、最も多くの投球を行った投手キャラクタの識別番号がサーバ１に報知されるときには、この投手キャラクタが所属するチームを示すチーム番号をサーバ１に報知するためのチーム番号報知命令が、ゲーム装置２のＣＰＵ２０１から発行される。すると、最も多くの投球を行った投手キャラクタのチーム番号が、外部ネットワーク３を介してゲーム装置２からサーバ１へと送信される。
【００８３】
配列規定手段５８は、管理中の投手キャラクタのアドレスを示すアドレス番号を要素番号とし、アドレス番号が示すアドレスに配置される管理中の投手キャラクタの識別番号を要素とする配列を、サーバ１のＣＰＵ１０１に規定させる機能を備えている。詳細には、配列規定手段５８は、アドレス番号とグループ番号とを要素番号とし、要素番号に対応する管理中の投手キャラクタの識別番号を要素とする配列を、サーバ１のＣＰＵ１０１に規定させる機能を備えている。
【００８４】
この手段では、アドレス番号とグループ番号とを要素番号とし、要素番号に対応する管理中の投手キャラクタの識別番号を要素とする配列が、サーバ１のＣＰＵ１０１により設定される。たとえば、この手段では、アドレス番号を「ＡＤ」、グループ番号を「ＧＰ」、投手キャラクタの識別番号を「ＩＤ」と表記すると、投手キャラクタを管理するための配列Ｈは、「Ｈ（ＡＤ，ＧＰ）＝ＩＤ」と記載することができる。ここでは、このような配列Ｈが、サーバ１のＣＰＵ１０１により定義される。なお、ここでは、アドレス番号の初期値には、「０（ゼロ」」が割り当てられている。また、ここで用いられるグループ番号は、同一のチームの複数の投手キャラクタを同一のグループとして規定するための番号である。
【００８５】
投手キャラクタ管理手段５９は、ゲーム装置２からサーバ１に報知された投手キャラクタを、野球ゲームの新規の試合イベントに登板不可の投手キャラクタとして管理する処理を、サーバ１のＣＰＵ１０１に実行させる機能を備えている。
【００８６】
この手段では、ゲーム装置２からサーバ１に報知された投手キャラクタを、野球ゲームの新規の試合イベントに登板不可の投手キャラクタとして管理する処理が、サーバ１のＣＰＵ１０１により実行される。
【００８７】
たとえば、この手段では、ゲーム装置２からサーバ１に報知されたいずれか１つの投手キャラクタを、所定数の試合イベントの間において試合イベントに登板不可の投手キャラクタとして管理する処理が、サーバ１のＣＰＵ１０１により実行される。
【００８８】
具体的には、この手段では、試合イベントが終了するごとに管理中の投手キャラクタのアドレス番号ＡＤをインクリメントする処理が、サーバ１のＣＰＵ１０１により実行される。すると、投手キャラクタを管理するための配列Ｈは、「Ｈ（ＡＤ（＝ＡＤ＋１），ＧＰ）＝ＩＤ」と変更される。すると、変更後のアドレス番号ＡＤ（＝ＡＤ＋１）が、所定数以下たとえば３以下であるか否かが（ＡＤ（＝ＡＤ＋１）≦３）、サーバ１のＣＰＵ１０１により判断される。そして、変更後のアドレス番号ＡＤ（＝ＡＤ＋１）が３以下である場合、変更後のアドレス番号ＡＤ（＝ＡＤ＋１）および変更後のアドレス番号ＡＤ（＝ＡＤ＋１）に対応する投手キャラクタの識別番号ＩＤからなる配列Ｈ（Ｈ（ＡＤ＋１，ＧＰ）＝ＩＤ）が、サーバ１のデータ蓄積部１０３に格納される。このようにして、サーバ１において投手キャラクタが管理される。
【００８９】
管理投手キャラクタ報知手段６０は、野球ゲームの新規の試合イベントがゲーム装置２のＣＰＵ２０１により実行される場合に、サーバ１において管理中の投手キャラクタをゲーム装置２に報知する処理を、サーバ１のＣＰＵ１０１に実行させる機能を備えている。この手段では、野球ゲームの新規の試合イベントがゲーム装置２のＣＰＵ２０１により実行される場合に、サーバ１において管理中の投手キャラクタをゲーム装置２に報知する処理が、サーバ１のＣＰＵ１０１により実行される。たとえば、この手段では、野球ゲームの新規の試合イベントがゲーム装置２のＣＰＵ２０１により実行される場合に、サーバ１において管理中の投手キャラクタの識別番号ＩＤをゲーム装置２に報知するための管理番号報知命令が、サーバ１のＣＰＵ１０１から発行される。すると、サーバ１において管理中の投手キャラクタの識別番号ＩＤが、外部ネットワーク３を介してサーバ１からゲーム装置２へと送信される。
【００９０】
〔ネットワーク用の野球ゲームにおける投手ローテーションシステムの概要〕
次に、野球ゲームにおけるローテーションシステムの具体的な内容について説明する。また、図６から図８に示すフローについても同時に説明する。
【００９１】
まず、ゲーム機の電源が投入されゲーム機が起動されると、野球ゲームプログラムが、記録媒体からＲＡＭ２０２にロードされ格納される。このときには、野球ゲームを実行する上で必要となる各種の基本ゲームデータも、同時に、記録媒体からＲＡＭ２０２にロードされ格納される（Ｓ１）。
【００９２】
たとえば、基本ゲームデータには、３次元ゲーム空間用の各種の画像に関するデータが含まれている。そして、この３次元ゲーム空間用の各種の画像に関するデータ、たとえば、スタジアム用の画像データ、選手キャラクタ用の画像データ、および各種のオブジェクトの画像データ等が、ＣＰＵ２０１に認識される。また、基本ゲームデータには、３次元ゲーム空間用の各種の画像に関するデータを３次元ゲーム空間に配置するための位置座標データが含まれている。また、基本ゲームデータには、投手ローテーションシステムで用いられるゲームデータも、含まれている。
【００９３】
続いて、ＲＡＭ２０２に格納された野球ゲームプログラムが、基本ゲームデータに基づいて、ＣＰＵ２０１により実行される（Ｓ２）。すると、野球ゲームの起動画面（図示しない）がテレビジョンモニタ２０に表示される。すると、野球ゲームを実行するための各種の設定画面（図示しない）がテレビジョンモニタ２０に表示される。ここでは、たとえば、野球ゲームを１つのゲーム装置２において実行するか、又は野球ゲームを外部ネットワーク３を介して２台のゲーム装置２において実行するかを選択するための選択画面（図示しない）が、モニタ２０６に表示される。すなわち、この選択画面において、プレイヤがコントローラ２１１を操作することにより、クライアント対戦およびネットワーク対戦のいずれか一方の対戦形式が選択される（Ｓ３）。
【００９４】
＜クライアント対戦＞
ここで、クライアント対戦が選択された場合（Ｓ３でＮｏ）、試合イベントが、ゲーム装置２のＣＰＵ２０１により実行される（Ｓ４）。この試合イベントでは、まず、プレイヤがコントローラ２１１を操作することにより、プレイヤが指揮するチーム、および試合に出場させる選手キャラクタが選択される。すなわち、コントローラ２１１からの入力信号に基づいて、プレイヤの指揮チーム、およびプレイヤの指揮チームの選手キャラクタが選択される（Ｓ５）。すると、試合イベントに含まれる対戦イベントを開始するための対戦開始命令が、ＣＰＵ２０１から発行される（Ｓ６）。すると、対戦イベントに出場する選手キャラクタが、選手キャラクタ用の画像データを用いることによりモニタ２０６に表示される。
【００９５】
この状態において、プレイヤおよび相手チームを指揮するプレイヤが、コントローラ２１１を操作すると、コントローラ２１１からの入力信号に対応する選手キャラクタの動作が、ゲーム装置２のＣＰＵ２０１により制御される（Ｓ７）。すなわち、プレイヤがコントローラ２１１を操作することにより、選手キャラクタの動作が直接的に制御される。一方で、ゲーム用のＡＩプログラム（Ａｒｔｉｆｉｃｉａｌ  Ｉｎｔｅｌｌｉｇｅｎｃｅ  Ｐｒｏｇｒａｍ）に基づいて、選手キャラクタがゲーム装置２のＣＰＵ２０１により制御される場合もある。たとえば、相手チームの選手キャラクタが相手チームを指揮するプレイヤにより制御されるのではなく、相手チームの選手キャラクタがＡＩプログラムにより自動的に制御される場合が、この場合に対応する。
【００９６】
このように、本野球ゲームの試合イベントでは、コントローラ２１１からの指示やＡＩプログラムからの指示に応じて、チームの選択、選手キャラクタの選択、および選手キャラクタに対する命令等が、実行されるようになっている。なお、本野球ゲームでは、コントローラ２１１からの指示やＡＩプログラムからの指示に応じて、試合イベントそのものが制御される場合もある。
【００９７】
上記のように試合イベントが実行されているときには、対戦イベントが終了したか否かが、ＣＰＵ２０１により判断されている（Ｓ８）。たとえば、イニング数が９（回）に到達したか否かが、ＣＰＵ２０１により判断されている。そして、対戦イベントが終了したことを示す命令が発行されたとＣＰＵ２０１により判断された場合（Ｓ８でＹｅｓ）、対戦イベントにおける各選手キャラクタの結果や試合結果等からなるゲームデータを、ＲＡＭ２０２に格納する処理が、ＣＰＵ２０１により実行される（Ｓ９）。
【００９８】
そして、ゲームデータがＲＡＭ２０２に格納されると、この野球ゲームを終了するか否かを選択する選択画面（図示しない）が、モニタ２０６に表示される（Ｓ１０）。そして、この選択画面において、プレイヤがコントローラ２１１を操作することにより、野球ゲームの終了を示す項目が選択されると（Ｓ１０でＹｅｓ）、野球ゲームを終了するための処理がＣＰＵ２０１により実行される（Ｓ１１）。ここでは、次回、野球ゲームを継続するときに必要となる継続データ等が、ＲＡＭ２０２およびハードディスク２０３の少なくともいずれか一方に格納され、カードリーダ・ライタ２１２に挿入された記録媒体に記録される。
【００９９】
一方で、この選択画面において、プレイヤがコントローラ２１１を操作することにより、野球ゲームの継続を示す項目が選択されると（Ｓ９でＮｏ）、ステップ５（Ｓ５）の処理が、ＣＰＵ２０１により再実行される。
【０１００】
なお、対戦イベントが終了したことを示す命令が発行されない限り（Ｓ８でＮｏ）、選択画面で選択された対戦形式たとえばクライアント対戦形式で、対戦イベントがＣＰＵ２０１により実行される（Ｓ７）。
【０１０１】
＜ネットワーク対戦＞
次に、ステップ３（Ｓ３）においてネットワーク対戦が選択された場合（Ｓ３でＹｅｓ）、このプレイヤ（Ａプレイヤ）が外部ネットワーク３を介して他のプレイヤ（Ｂプレイヤ、対戦相手のプレイヤ）と野球ゲームを実行するために、サーバ１に対する接続要求が、ゲーム装置２ａのＣＰＵ２０１から発行される（Ｓ３０１）。以下では、Ａプレイヤがゲーム装置２ａにおいて各種の命令を指示し、Ｂプレイヤがゲーム装置２ｂにおいて各種の命令を指示するものとして、説明を行う。
【０１０２】
一方で、サーバ１では、クライアント（ゲーム装置２ａ，２ｂ）からの接続要求が到達したか否かが、常にＣＰＵ１０１により監視されている（Ｓ１０１）。そして、ゲーム装置２ａ，２ｂからの接続要求がサーバ１のＣＰＵ１０１に認識された場合（Ｓ１０１でＹｅｓ）、接続要求を受けたサーバ１では、この接続要求が正規の接続要求であるか否かが、サーバ１のＣＰＵ１０１により判断される（Ｓ１０２）。そして、この接続要求が正規の接続要求であるとサーバ１のＣＰＵ１０１により判断された場合（Ｓ１０２でＹｅｓ）、ゲーム装置２ａ，２ｂにおける野球ゲームの実行が、サーバ１のＣＰＵ１０１により認証される（Ｓ１０３）。
【０１０３】
すると、対戦イベントに登板不可の投手キャラクタ（後述する）を管理するための配列Ｈが、サーバ１のＣＰＵ１０１により設定される（Ｓ１０４）。たとえば、対戦イベントに登板不可の投手キャラクタのアドレスを示すアドレス番号、および同一のチームの投手キャラクタを同一のグループとして規定するためのチーム番号を要素番号とし、アドレス番号が示すアドレスに配置される登板不可の投手キャラクタの識別番号（後述する）を要素とする配列Ｈが、サーバ１のＣＰＵ１０１により設定される。具体的には、アドレス番号を「ＡＤ」、チーム番号を「ＧＰ」、投手キャラクタの識別番号を「ＩＤ」と表記すると、登板不可の投手キャラクタを管理するための配列Ｈは、「Ｈ（ＡＤ，ＧＰ）＝ＩＤ」と示される。すなわち、この配列Ｈが、サーバ１のＣＰＵ１０１により定義される。なお、初期状態の配列Ｈは、「Ｈ（０，０）＝０」となっている。
【０１０４】
ここでは、対戦イベントに登板不可の投手キャラクタを管理するための配列Ｈが、サーバ１に認証されたＡプレイヤおよびサーバ１に認証されたＢプレイヤそれぞれに対して設定される。たとえば、Ａプレイヤ用の配列Ｈａは、「Ｈａ（ＡＤａ，ＧＰａ）＝ＩＤａ」のように表記することができ、Ｂプレイヤ用の配列Ｈｂは、「Ｈｂ（ＡＤｂ，ＧＰｂ）＝ＩＤｂ」のように表記することができる。
【０１０５】
このように配列Ｈａ，Ｈｂがサーバ１のＣＰＵ１０１により設定されると、配列Ｈａ，Ｈｂのアドレス番号ＡＤａ，ＡＤｂが、１以上３以下であるか否かが（１≦ＡＤ≦３）、サーバ１のＣＰＵ１０１により判断される（Ｓ１０５）。
【０１０６】
そして、配列Ｈａ，Ｈｂのアドレス番号ＡＤａ，ＡＤｂが１以上３以下でない場合（Ｓ１０５でＮｏ、（ＡＤａ，ＡＤｂ）≦０、（ＡＤａ，ＡＤｂ）≧４）、登板不可の投手キャラクタが存在しないことになり、登板不可の投手キャラクタをサーバ１から各ゲーム装置２ａ，２ｂへと報知する処理が、サーバ１のＣＰＵ１０１により実行されない。すなわち、登板不可の投手キャラクタの識別番号ＩＤを各ゲーム装置２ａ，２ｂに報知するための管理番号報知命令を発行する処理が、サーバ１のＣＰＵ１０１において実行されない。
【０１０７】
たとえば、プレイヤが初めてネットワーク対戦を実行したときが、この場合に対応する。すなわち、この場合、配列Ｈ（Ｈａ，Ｈｂ）は「Ｈ（０，０）＝０」であるので、上記の条件（ＡＤ≦０）を満足する。また、登板不可の投手キャラクタが登板可能になったときが、この場合に対応する。すなわち、この場合、配列Ｈ（Ｈａ，Ｈｂ）は「Ｈ（ＡＤ（≧４），ＧＰ）＝ＩＤ」であるので、上記の条件（ＡＤ≧４）を満足する。
【０１０８】
これにより、配列Ｈａ，Ｈｂのアドレス番号ＡＤａ，ＡＤｂが１以上３以下でない場合（Ｓ１０５でＮｏ、（ＡＤａ，ＡＤｂ）≦０、（ＡＤａ，ＡＤｂ）≧４）、後述する登板不可の投手キャラクタの識別番号ＩＤ’はサーバ１から各ゲーム装置２ａ，２ｂへと報知されず、対戦相手のネットワークアドレスだけが、サーバ１から各ゲーム装置２ａ，２ｂへと送信される（Ｓ１０６）。そして、対戦相手のネットワークアドレスを各ゲーム装置２ａ，２ｂのＣＰＵ２０１に認識させることにより、対戦相手を各ゲーム装置２ａ，２ｂにおいて特定することができる（Ｓ３０２）。
【０１０９】
なお、上記のステップ１０５（Ｓ１０５）の処理は、Ａプレイヤ用の配列Ｈａのアドレス番号ＡＤａおよびＢプレイヤ用の配列Ｈｂのアドレス番号ＡＤｂそれぞれに対して実行される。
【０１１０】
ここで、以下に示す、Ａプレイヤのゲーム装置２ａにおいて実行されるプログラムと、Ｂプレイヤのゲーム装置２ｂにおいて実行されるプログラムとは基本的には同じものである。このため、Ａプレイヤのゲーム装置２ａにおけるゲームと、Ｂプレイヤのゲーム装置２ｂにおけるゲームとは、同様の制御形態を有する。これにより、以下では、Ｂプレイヤのゲーム装置２ｂにおいて実行される処理についての詳細な説明は省略し、Ａプレイヤのゲーム装置２ａにおいて実行される処理についてのみ詳細な説明を行う。
【０１１１】
なお、以下では、「ゲーム装置２ａ」という文言が、「ゲーム装置２」という文言で代用される場合がある。また、「Ａプレイヤ」という文言が、「プレイヤ」という文言で代用される場合がある。さらに、ＡプレイヤとＢプレイヤとを区別するための補助記号ａ，ｂが、省略される場合がある。
【０１１２】
続いて、対戦相手（Ｂプレイヤ）がＡプレイヤのゲーム装置２（ゲーム装置２ａ）において特定されると（Ｓ３０２）、試合イベントがゲーム装置２のＣＰＵ２０１により実行される（Ｓ３０３）。この試合イベントでは、まず、チームリストおよび選手リストが、モニタ２０６に表示される。すると、モニタ２０６に表示されたチームリストおよび選手リストの中から、プレイヤが指揮するチーム、および対戦に出場させる選手キャラクタが選択される（Ｓ３０４）。たとえば、プレイヤ（Ａプレイヤ）がコントローラ２１１を操作することにより、モニタ２０６に表示されたチームリストおよび選手リストの中から、指揮するチーム、およびレギュラーの選手キャラクタが選択される。
【０１１３】
ここでは、先発の投手キャラクタの選択も行われる。たとえば、プレイヤがコントローラ２１１を操作することにより、複数の投手キャラクタから構成される投手リストの中から、先発の投手キャラクタが選択される。すると、選択された先発の投手キャラクタの識別番号ＩＤ（ＩＤａ）が、ゲーム装置２のＣＰＵ２０１に認識される（Ｓ３０５）。
【０１１４】
たとえば、複数の投手キャラクタから構成される投手リストは、複数の投手キャラクタそれぞれの識別番号ＩＤに基づいて、ＣＰＵ２０１により生成される。このため、複数の投手キャラクタから構成される投手リストの中から、先発の投手キャラクタが選択されると、選択された先発の投手キャラクタの識別番号ＩＤを、ゲーム装置２のＣＰＵ２０１に認識させることができる。
【０１１５】
なお、ここでは、複数の投手キャラクタそれぞれの識別番号ＩＤが、画像データのラベルとしてＣＰＵ２０１に認識されている。言い換えると、複数の投手キャラクタそれぞれの識別番号ＩＤを画像データのラベルとして用いることにより、各投手キャラクタの識別番号ＩＤとリスト用の各投手キャラクタの画像データとが関連づけられている。また、投手リスト用の各投手キャラクタの項目画像は、上述した基本ゲームデータに含まれている。
【０１１６】
また、チームリストおよび選手リストは、Ｂプレイヤのゲーム装置２ｂのモニタ２０６にも表示される。そして、上記のＡプレイヤにより実行された処理と同様の処理が、Ｂプレイヤのゲーム装置２ｂにおいても実行される。これにより、Ｂプレイヤが指揮するチーム、およびレギュラーの選手キャラクタを、ゲーム装置２ｂのＣＰＵ２０１に認識させることができる。また、Ｂプレイヤにより選択された先発の投手キャラクタの識別番号ＩＤｂも、ゲーム装置２ｂのＣＰＵ２０１に認識させることができる。
【０１１７】
このようにして、チームおよび選手キャラクタ（投手キャラクタを含む）がＡプレイヤおよびＢプレイヤにより選択されると、試合イベントに含まれる対戦イベントを開始するための対戦開始命令が、Ａプレイヤのゲーム装置２ａのＣＰＵ２０１、およびＢプレイヤのゲーム装置２ｂそれぞれのＣＰＵ２０１から発行される（Ｓ３０６）。すると、この対戦開始命令に基づいて、対戦に出場する選手キャラクタが、選手キャラクタ用の画像データを用いることにより各プレイヤのモニタ２０６に表示される。
【０１１８】
この状態において、各プレイヤがコントローラ２１１を操作すると、各ゲーム装置２ａ，２ｂのコントローラ２１１からの入力信号に基づいて、選手キャラクタがゲーム装置２のＣＰＵ２０１により制御される（Ｓ３０７）。すなわち、この対戦イベントでは、ＡプレイヤおよびＢプレイヤが各コントローラ２１１を操作することにより、各チームの選手キャラクタが直接的に制御される。
【０１１９】
すなわち、対戦イベントがゲーム装置２ａにおいて実行されると（Ｓ３０７）、守備側の選手キャラクタ（投手キャラクタ、捕手キャラクタ、野手キャラクタ）又は攻撃側の選手キャラクタ（打者キャラクタ、走者手キャラクタ）に対して、Ａプレイヤが命令を指示することにより、対戦イベントが進行する。なお、このとき、対戦相手である攻撃側の選手キャラクタ又は対戦相手である守備側の選手キャラクタに対しては、Ｂプレイヤが命令を指示している。
【０１２０】
このようにして対戦イベントが進行している状態においては、対戦イベントに登板中の投手キャラクタ（先発の投手キャラクタ）の投球数Ｔ（ＩＤ）を算出する処理が、各ゲーム装置２のＣＰＵ２０１により実行されている（Ｓ３０８）。たとえば、投手キャラクタの投球数Ｔ（ＩＤ）は、この投手キャラクタに指示された投球命令の回数をＣＰＵ２０１に計算させることにより算出される。
【０１２１】
また、登板中の投手キャラクタを交代するための投手交代命令が指示されたか否かが、ゲーム装置２のＣＰＵ２０１により判断される（Ｓ３０９）。そして、たとえば、ＡプレイヤおよびＢプレイヤのいずれか一方のプレイヤがコントローラ２１１を操作することにより、投手交代命令が指示された場合（Ｓ３０９でＹｅｓ）、先発の投手キャラクタの識別番号ＩＤと先発の投手キャラクタの投球数Ｔ（ＩＤ）とが、ＣＰＵ２０１に認識されＲＡＭ２０２に格納される（Ｓ３１０）。すると、交代した投手キャラクタ（次の投手キャラクタ）の識別番号ＩＤがＣＰＵ２０１に認識され（Ｓ３１１）、登板中の投手キャラクタが他の投手キャラクタに交代させられる。すると、上述したように、この投手キャラクタ（次の投手キャラクタ）の投球数Ｔ（ＩＤ）を算出する処理が、ゲーム装置２のＣＰＵ２０１により実行される（Ｓ３１２）。
【０１２２】
このように、登板中の投手キャラクタの投球数Ｔ（ＩＤ）は、先発の投手キャラクタだけでなく、交代した全ての投手キャラクタそれぞれに対して算出される。そして、この投球の算出処理は、登板中の投手キャラクタが次の投手キャラクタに交代するまでの間、又は対戦イベントが終了するまでの間、実行される。そして、登板中の投手キャラクタが次の投手キャラクタに交代したとき、又は対戦イベントが終了したときには、図４に示すように、そのときに登板していた投手キャラクタの識別番号ＩＤとこの投手キャラクタの投球数Ｔ（ＩＤ）とが、ＣＰＵ２０１に認識されＲＡＭ２０２に格納される（Ｓ３１０）。
【０１２３】
なお、図４は、１チームに２０人の投手キャラクタ（ａ１，ａ２，ａ３，・・・，ａ２０）が存在する場合の例が示されている。すなわち、２０個の識別番号（ＩＤ＿ａ１，ＩＤ＿ａ２，ＩＤ＿ａ３，・・・，ＩＤ＿ａ２０）が存在する場合の例が示されている。また、図４に示された数字は、各投手の投球数Ｔ（ＩＤ）に対応している。
【０１２４】
また、上記のような処理が実行されているときには、対戦イベントが終了したか否かが、ＣＰＵ２０１により判断されている（Ｓ３１３）。たとえば、イニング数が９（回）に到達したか否かが、ＣＰＵ２０１により判断されている。
【０１２５】
そして、対戦イベントが終了したことを示す命令が発行されたとＣＰＵ２０１により判断された場合（Ｓ３１３でＹｅｓ）、この試合イベントに登板した全ての投手キャラクタそれぞれの投球数Ｔ（ＩＤ）の中で最大のものを検索する処理が、ゲーム装置２のＣＰＵ２０１により実行される（Ｓ３１４）。この処理は、チームごとに実行される。すると、図４に示すように、ゲーム装置２のＣＰＵ２０１により検索された最大投球数Ｔｍａｘに対応する、投手キャラクタの識別番号ＩＤ’が、ゲーム装置２のＣＰＵ２０１に認識される（Ｓ３１５）。たとえば、図４では、各試合の最大投球数Ｔｍａｘに対応する、投手キャラクタの識別番号ＩＤ’が、「ＩＤ＿ａ１、ＩＤ＿ａ３、ＩＤ＿ａ５、ＩＤ＿ａ４、・・・」の場合の例が示されている。このようにして、各チームにおいて最も多くの投球を行った投手キャラクタを選出する処理が、各ゲーム装置２のＣＰＵ２０１により実行される。
【０１２６】
すると、最も多くの投球を行った投手キャラクタの識別番号ＩＤ’とこの投手キャラクタのチーム番号ＧＰ’とをサーバ１に報知するための番号報知命令が、ゲーム装置２のＣＰＵ２０１から発行される。すると、最も多くの投球を行った投手キャラクタの識別番号ＩＤ’とこの投手キャラクタのチーム番号ＧＰ’とが、外部ネットワーク３を介してゲーム装置２からサーバ１へと送信される（Ｓ３１６）。
【０１２７】
ここでサーバ１に送信されるチーム番号ＧＰ’は、最も多くの投球を行った投手キャラクタが所属するチームを管理するために用いられる。たとえば、プレイヤがネットワーク対戦を行うときにチームを変更しても、チーム番号ＧＰ’をサーバ１で管理しておけば、変更前のチームで最も多くの投球を行った投手キャラクタを、サーバ１で引き続き管理することができる。
【０１２８】
一方で、サーバ１では、最も多くの投球を行った投手キャラクタの識別番号ＩＤ’とこの投手キャラクタのチーム番号ＧＰ’とが、外部ネットワーク３を介してゲーム装置２から到達したか否かが、常にＣＰＵ１０１により監視されている（Ｓ１０７）。そして、最も多くの投球を行った投手キャラクタの識別番号ＩＤ’とこの投手キャラクタのチーム番号ＧＰ’とがＣＰＵ１０１に認識された場合（Ｓ１０７でＹｅｓ）、登板不可の投手キャラクタを管理するための配列Ｈのアドレス番号ＡＤをインクリメントする処理が、サーバ１のＣＰＵ１０１により実行される（Ｓ１０８）。すると、登板不可の投手キャラクタを管理するための配列Ｈが、「Ｈ（ＡＤ＋１，ＧＰ’）＝ＩＤ’」と変更される。
【０１２９】
たとえば、図４に示したように、１試合目で最も多くの投球を行った投手キャラクタの識別番号ＩＤ’は「ＩＤ＿ａ１」である。このため、図５に示すように、１試合が終了したときには、登板不可の投手キャラクタを管理するための配列Ｈは、「Ｈ（１，ＧＰ’）＝ＩＤ＿ａ１」となる。
【０１３０】
同様に、２試合目以降で最も多くの投球を行った投手キャラクタの識別番号ＩＤ’は「ＩＤ＿ａ３、ＩＤ＿ａ５、ＩＤ＿ａ４、・・・」である。このため、図５に示すように、各試合が終了したときには、試合が終了するごとにアドレス番号ＡＤがインクリメントされ、登板不可の投手キャラクタを管理するための配列Ｈの要素である識別番号ＩＤ’のアドレス番号ＡＤが変更される。なお、図５では時系列的な変化を把握しやすいように1試合から４試合までを並列して記載しているが、実際にIDが入力されるアドレスの格納箇所は１列（3箇所）のみであり、この1列で新規IDの格納、最も古いIDの吐き出しが行なわれる。
【０１３１】
すると、変更後のアドレス番号（ＡＤ＝ＡＤ＋１）が、１以上３以下であるか否かが（１≦ＡＤ（＝ＡＤ＋１）≦３）、サーバ１のＣＰＵ１０１により判断される（Ｓ１０５）。そして、変更後のアドレス番号ＡＤ（＝ＡＤ＋１）が１以上３以下である場合（Ｓ１０５でＹｅｓ）、変更後のアドレス番号ＡＤ（＝ＡＤ＋１）、変更後のアドレス番号ＡＤ（＝ＡＤ＋１）に対応する投手キャラクタの識別番号ＩＤ’、および最も多くの投球を行った投手キャラクタの識別番号ＩＤ’が、サーバ１のデータ蓄積部１０３に格納される。言い換えると、変更後のアドレス番号ＡＤ（＝ＡＤ＋１）、および投手キャラクタの識別番号ＩＤ’に対応する、配列Ｈの値すなわち最も多くの投球を行った投手キャラクタの識別番号ＩＤ’が、サーバ１のデータ蓄積部１０３に格納される（Ｓ１０９）。このようにして、登板不可の投手キャラクタがサーバ１において管理される。そして、対戦イベントにおいて最も多くの投球を行った投手キャラクタの識別番号ＩＤ’、および対戦相手のネットワークアドレスが、サーバ１から各ゲーム装置２ａ，２ｂへと送信される（Ｓ１１０）。
【０１３２】
ここで、変更後のアドレス番号（ＡＤ＋１）が１以上３以下でない場合（Ｓ１０５でＮｏ）、すなわち配列Ｈのアドレス番号ＡＤが０以下又は配列Ｈのアドレス番号ＡＤが４以上である場合（ＡＤ≦０、ＡＤ≧４）、登板不可の投手キャラクタが存在しないことになる。すなわち、この場合は、登板不可の投手キャラクタの識別番号ＩＤ’はサーバ１から各ゲーム装置２ａ，２ｂへと報知されず、チームに所属する全ての投手キャラクタを登板させることができる。また、このときには、対戦相手のネットワークアドレスだけが、サーバ１から各ゲーム装置２ａ，２ｂへと送信される（Ｓ１０６）。
【０１３３】
上記のような、サーバ１における処理によって、ある試合で最も多くの投球を行った投手キャラクタを、次の試合から３試合の間、登板させることができないように規制することができる。しかしながら、ある試合で最も多くの投球を行った投手キャラクタは、４試合目からは登板させることができる。
【０１３４】
たとえば、図４では、各試合で登板不可の投手キャラクタは、投球数Ｔ（ＩＤ）の欄に斜線が引かれている。各試合で登板不可の投手キャラクタは、図５に示したアドレス番号ＡＤと配列Ｈ（ＡＤ，ＧＰ’）の要素である識別番号ＩＤ’で、サーバ１において管理されている。そして、これら登板不可の投手キャラクタの識別番号ＩＤ’をゲーム装置２に送信することにより、登板不可の投手キャラクタがゲーム装置２のＣＰＵ２０１に認識される。すると、サーバ１において管理中の登板不可の投手キャラクタ、すなわち図４の投球数Ｔ（ＩＤ）の欄が斜線である投手キャラクタは、その試合に登板することができなくなり、後述するように、投手キャラクタを選択するための投手リストに表示されなくなる。
【０１３５】
なお、ここでは、対戦イベントが終了したことを示す命令が発行されない限り（Ｓ３１３でＮｏ）、ネットワーク対戦形式で、対戦イベントがＣＰＵ２０１により実行される（Ｓ３０７）。
【０１３６】
また、対戦イベントが終了したことを示す命令が発行されたとＣＰＵ２０１により判断された後（Ｓ３１３でＹｅｓ）、ステップ３１４（Ｓ３１４）からステップ３１６（Ｓ３１６）までの処理が、ゲーム装置２のＣＰＵ２０１により実行されると、ゲームデータをＲＡＭ２０２に格納する処理が、ＣＰＵ２０１により実行される（Ｓ３１７）。
【０１３７】
そして、ゲームデータがＲＡＭ２０２に格納されると、この野球ゲームを終了するか否かを選択する選択画面（図示しない）が、モニタ２０６に表示される（Ｓ３１８）。そして、この選択画面において、プレイヤがコントローラ２１１を操作することにより、野球ゲームの終了を示す項目が選択されると（Ｓ３１８でＹｅｓ）、野球ゲームを終了するための処理がＣＰＵ２０１により実行される（Ｓ３１９）。ここでは、次回、野球ゲームを継続するときに必要となる継続データ等が、ＲＡＭ２０２およびハードディスク２０３の少なくともいずれか一方に格納され、カードリーダ・ライタ２１２に挿入された記録媒体に記録される。
【０１３８】
一方で、この選択画面において、プレイヤがコントローラ２１１を操作することにより、野球ゲームの継続を示す項目が選択されると（Ｓ３１８でＮｏ）、ステップ３（Ｓ３）の選択画面が、モニタ２０６に再表示される。そして、この選択画面において、プレイヤがコントローラ２１１を操作することにより、ネットワーク対戦が選択された場合（Ｓ３でＹｅｓ）、上述したステップ１０５（Ｓ１０５）の条件判別の結果に応じて、対戦相手のネットワークアドレス（Ｓ１０６）、又は対戦イベントにおいて最も多くの投球を行った投手キャラクタの識別番号ＩＤ’、および対戦相手のネットワークアドレスをゲーム装置２に報知する処理が、サーバ１のＣＰＵ１０１により実行される。たとえば、登板不可の投手キャラクタの識別番号ＩＤ’をゲーム装置２に報知するための管理番号報知命令が、サーバ１のＣＰＵ１０１から発行される。すると、サーバ１において管理中の登板不可の投手キャラクタの識別番号ＩＤ’が、外部ネットワーク３を介してサーバ１からゲーム装置２へと送信される。
【０１３９】
すると、ステップ３０４（Ｓ３０４）において投手キャラクタが選択されるときに、サーバ１からゲーム装置２に報知された登板不可の投手キャラクタを除いた投手リストが、モニタ２０６に表示される。たとえば、投手リストは、登板不可の投手キャラクタの識別番号ＩＤ以外の投手キャラクタの識別番号ＩＤに基づいて、モニタ２０６に表示される。そして、この投手リストの中から、次の試合イベントに登板させる先発の投手キャラクタが選択される。すると、ステップ３０５（Ｓ３０５）において、選択された先発の投手キャラクタの識別番号ＩＤが、ゲーム装置２のＣＰＵ２０１に認識される。すると、ステップ３０５（Ｓ３０５）に続く処理が、ゲーム装置２のＣＰＵ２０１により実行される。また、ゲーム装置２のＣＰＵ２０１により実行される処理に応じて、ステップ１０１（Ｓ１０１）からステップ１１０（Ｓ１１０）までの処理が、サーバ１のＣＰＵ１０１により実行される。
【０１４０】
上記のように、本実施形態では、たとえば、投球数Ｔ（ＩＤ）に基づいて能力の高い投手キャラクタがクライアント側で選出され、この投手キャラクタをサーバに報知される。そして、この投手キャラクタが、新規の対戦イベントに登板不可の投手キャラクタとしてサーバにおいて管理される。これにより、クライアント側で行われる新規の試合イベントにおいて、この投手キャラクタが登板できないように制限することができる。すなわち、ネットワーク用の野球ゲームにおいて、投球の多い投手キャラクタすなわち能力の高い投手キャラクタを、次に続く試合において連続的に使用することができないように制限することができる。
【０１４１】
〔他の実施形態〕
（ａ）前記実施形態では、投手キャラクタ選出手段５５において、登板した全ての投手キャラクタの中から最大投球数の投手キャラクタが選出される場合の例が示された。しかしながら、投手キャラクタの選出形態は、前記実施形態に限定されず、どのようにしても良い。
【０１４２】
たとえば、次のような処理を投手キャラクタ選出手段５５に実行させても、同一の投手キャラクタを連続的に使用することができないように規制することができる。
【０１４３】
この場合、投手キャラクタ選出手段５５では、試合イベントの終了時に、登板した全ての投手キャラクタそれぞれの投球数の中で閾値以上ものを検索する処理が、ゲーム装置２のＣＰＵ２０１により実行される。そして、閾値以上の投球数を投げた投手キャラクタが、ゲーム装置２のＣＰＵ２０１により選出される。たとえば、閾値が「９０」に設定されている場合、９０球以上を投球した投手キャラクタが、ゲーム装置２のＣＰＵ２０１により選出される。このように処理しても、前記実施形態と同様に、能力の高い投手キャラクタの連続登板を規制することができる（図４および図５を参照）。なお、閾値を「２０」より大きく「１００」より小さい範囲に設定すれば、図４および図５に示したものと同様に、投手キャラクタの連続登板を規制することができる。
【０１４４】
また、ここに示した投手キャラクタ選出手段５５では、能力の高い複数の投手キャラクタを選出することができる。たとえば、登板した投手キャラクタと投球数との対応関係が、図９のような場合、閾値が「９０」に設定されると、登板不可の投手キャラクタを管理するためのアドレスと識別番号との対応関係は、図１０のようになる。すなわち、１試合目において、２つの投手キャラクタ（ａ１，ａ７）が、能力の高い投手キャラクタとして選出される。そして、２試合目以降は、前記実施形態と同様に、これら投手キャラクタの連続登板を規制することができる。なお、この場合は、複数の投手キャラクタのアドレスを用意する必要があるため、アドレス容量として、２ビット以上の容量が必要となる。しかしながら、従来のシステムと比較すれば、極めて少ない容量で必要なデータを記憶することができる。
【０１４５】
なお、ここに示した実施形態の場合、図７のステップ３１４（Ｓ３１４）において、閾値以上である投球数が検索される。そして、図７のステップ３１５（Ｓ３１５）において、閾値以上の投球数を投げた投手キャラクタが、選出される。このように、図７のステップ３１４およびステップ３１５を実行することにより、前記実施形態と同様に、ここに示した実施形態も実現することができる。
【０１４６】
（ｂ）前記実施形態では、ネットワーク用の対戦ゲームとして野球ゲームが用いられる場合の例が示されたが、ネットワーク用の対戦ゲームは前記実施形態に限定されず、どのようなものでも良い。たとえば、本発明が、野球ゲーム以外の対戦ゲームに適用された場合にも、試合イベントに参加する複数のオブジェクトの中の特定のオブジェクトが、試合イベントにおいて連続的に登場しないように規制することができる。
【０１４７】
（ｃ）前記実施形態では、ゲームプログラムを適用しうるコンピュータの一例としての家庭用ビデオゲーム装置を用いた場合の例を示したが、ゲーム装置は、前記実施形態に限定されず、モニタが別体に構成されたゲーム装置、モニタが一体に構成されたゲーム装置、ゲームプログラムを実行することによってゲーム装置として機能するパーソナルコンピュータやワークステーションなどにも同様に適用することができる。
【０１４８】
（ｄ）本発明には、ゲームを実行するプログラムおよびこのプログラムを記録したコンピュータ読み取り可能な記録媒体も含まれる。この記録媒体としては、カートリッジ以外に、たとえば、コンピュータ読み取り可能なフレキシブルディスク、半導体メモリ、ＣＤ−ＲＯＭ、ＤＶＤ、ＭＯ、ＲＯＭカセット、その他のものが挙げられる。
【図面の簡単な説明】
【０１４９】
【図１】本発明の一実施形態によるネットワーク用のゲームシステムの概略構成を示す図。
【図２】前記ゲーム装置のハードウェア構成を示す図。
【図３】サーバおよびゲーム装置（クライアント）において実現される機能を示す図。
【図４】登板した投手キャラクタと投球数との対応関係を説明するための図（クライアント）。
【図５】登板不可の投手キャラクタを管理するためのアドレスと識別番号との対応関係を、説明するための図（サーバ）。
【図６】野球ゲームにおける投手ローテーションシステムを示すフロー（その１）。
【図７】野球ゲームにおける投手ローテーションシステムを示すフロー（その２）。
【図８】野球ゲームにおける投手ローテーションシステムを示すフロー（その３）。
【図９】他の実施形態における、登板した投手キャラクタと投球数との対応関係を説明するための図（クライアント）。
【図１０】他の実施形態における、登板不可の投手キャラクタを管理するためのアドレスと識別番号との対応関係を、説明するための図（サーバ）。
【符号の説明】
【０１５０】
１  サーバ
１０１  サーバのＣＰＵ
１０２  サーバのＲＡＭ
１０３  データ蓄積部
２（２ａ，２ｂ，２ｃ，２ｄ）  ゲーム装置
２０１  ゲーム装置のＣＰＵ
２０２  ゲーム装置のＲＡＭ
２０６  モニタ
２１１  コントローラ
５０  対戦報知手段
５１  対戦認証手段
５２  試合実行手段
５３  投手キャラクタ選択手段
５４  投球数算出手段
５５  投手キャラクタ選出手段
５６  グループ規定手段
５７  投手キャラクタ報知手段
５８  配列規定手段
５９  投手キャラクタ管理手段
６０  管理投手キャラクタ報知手段
ＡＤ  アドレス番号
ＧＰ  投手キャラクタのチーム番号
ＧＰ’  登板不可の投手キャラクタのチーム番号
ＩＤ  投手キャラクタの識別番号
ＩＤ’  登板不可の投手キャラクタの識別番号
Ｔ（ＩＤ）  投球数
Ｔｍａｘ  最大投球数
【図１】
0004610647.tif 000002
【図２】
0004610647.tif 000003
【図３】
0004610647.tif 000004
【図４】
0004610647.tif 000005
【図５】
0004610647.tif 000006
【図６】
0004610647.tif 000007
【図７】
0004610647.tif 000008
【図８】
0004610647.tif 000009
【図９】
0004610647.tif 000010
【図１０】
0004610647.tif 000011