JP5122710B2 - Program, information storage medium, and game device - Google Patents

Program, information storage medium, and game device Download PDF

Info

Publication number
JP5122710B2
JP5122710B2 JP2001303681A JP2001303681A JP5122710B2 JP 5122710 B2 JP5122710 B2 JP 5122710B2 JP 2001303681 A JP2001303681 A JP 2001303681A JP 2001303681 A JP2001303681 A JP 2001303681A JP 5122710 B2 JP5122710 B2 JP 5122710B2
Authority
JP
Japan
Prior art keywords
speed
character
game
speed adjustment
vehicle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2001303681A
Other languages
Japanese (ja)
Other versions
JP2003103048A (en
Inventor
聡 大内
健祐 中西
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Namco Ltd
Bandai Namco Entertainment Inc
Original Assignee
Namco Ltd
Namco Bandai Games Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Namco Ltd, Namco Bandai Games Inc filed Critical Namco Ltd
Priority to JP2001303681A priority Critical patent/JP5122710B2/en
Publication of JP2003103048A publication Critical patent/JP2003103048A/en
Application granted granted Critical
Publication of JP5122710B2 publication Critical patent/JP5122710B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、プログラム、該プログラムを記憶した情報記憶媒体、及びゲーム装置に関する。
【0002】
【従来の技術】
従来、車やバイク等のレースゲームにおいて、あまりゲームに慣れていない初心者のプレーヤを救済するため、或いは接戦を演出するために、敵車1台毎に、自車との間の距離、及び位置関係に応じて、その敵車の走行速度を調整するといったことが行われる。
具体的には、自車が、対象となる敵車の後方に位置している場合には、その敵車の走行速度を減少させ、一方、対象となる敵車の前方に位置している場合には、その敵車の走行速度を増加させる。この時、自車とその敵車との間の距離が大きい程、走行速度の調整量(増加量、或いは減少量)を多くし、反対に距離が小さい場合には、この調整量を少なくする。
【0003】
このことにより、例えば自車が、対象となる敵車よりはるかに遅れて走行している場合、その敵車の走行速度を大きく減少(減速)させることで、自車がその敵車に追い付き易くなる。また、自車と対象となる敵車とが接近して走行している場合には、その敵車の走行速度の調整量を少なくし、付かず離れずの距離を保つことで、より接戦を演出することができる。
【0004】
【発明が解決しようとする課題】
しかしながら、この従来の手法においては、敵車1台毎に、自車との間の距離、及び位置関係に応じてその走行速度の調整を行うので、レース時間の経過に従い、自車の周辺に敵車が集中する、つまり、車群全体の先頭の車と最後尾の車との差が縮んでしまうことになる。
【0005】
このことは、時間の経過とともに、速い先頭の車と、遅い最後尾の車との距離の差が広がるといった、実際のレース展開との矛盾を発生させることとなり、プレーヤに不自然さを与えてしまっていた。
更に、仮想カメラが自車に追従する場合、敵車が自車の周辺に密集することで、視野に入る車の数が多くなり、描画処理負荷が増大するという問題も発生していた。
【0006】
本発明の課題は、レースの経過に伴ない、敵車が自車の周辺に密集し、先頭と最後尾との差が縮まるといった不自然なゲーム展開を防止することである。
【0007】
【課題を解決するための手段】
以上の課題を解決するための第1の発明は、プロセッサの演算・制御により、装置に対して、プレーヤキャラクタ(例えば、図1の自車20a)及び複数のコンピュータ制御キャラクタ(例えば、図1の敵車20b)が、所与の目標地点に向かって移動するゲーム(例えば、実施形態におけるバイクレースゲーム等、所定のコース上を同一方向に移動するゲーム)、を実行させるためのゲーム情報であって、前記複数のコンピュータ制御キャラクタの内、何れか一のキャラクタを特定する第1の特定手段(例えば、図5の先頭敵車特定部411)と、前記第1の特定手段により特定されたキャラクタと、前記プレーヤキャラクタと、の位置関係に基づき、前記複数のコンピュータ制御キャラクタの移動速度を一律に変更する第1の速度変更手段(例えば、図5の速度調整分演算部413、及び速度調整部414)と、を前記装置に機能させるための情報を含むゲーム情報である
【0008】
また、第11の発明は、プレーヤキャラクタ(例えば、実施形態の自車20a)及び複数のコンピュータ制御キャラクタ(例えば、実施形態の敵車20b)が、所与の目標地点に向かって移動するゲームを実行するためのゲーム装置(例えば、図5のゲーム装置100)であって、前記複数のコンピュータ制御キャラクタの内、何れか一のキャラクタを特定する特定手段(例えば、図5の先頭敵車特定部411)と、前記特定手段により特定されたキャラクタと、前記プレーヤキャラクタと、の位置関係に基づき、前記複数のコンピュータ制御キャラクタの移動速度を一律に変更する速度変更手段(例えば、図5の速度調整分演算部413、及び速度調整部414)と、を備えるゲーム装置である
【0009】
この1又は11発明によれば、特定されたキャラクタと、プレーヤキャラクタとの位置関係に応じて、複数のコンピュータ制御キャラクタの移動速度を、一律に変更することができる。つまり、複数のコンピュータ制御キャラクタを、特定されたキャラクタを代表としたひとまとまりのキャラクタとみなして扱うことになり、これらのキャラクタ位置のばらけ具合を保持したまま、速度調整を行うことが可能となる。
【0010】
従って、時間の経過に伴い、コンピュータ制御キャラクタがプレーヤキャラクタの周辺に密集してしまうことがない。このため、例えば、上記キャラクタが車やバイク等であるレースゲームにおいては、レース時間の経過に伴い、速い先頭の車と遅い最後尾の車との差が縮んでしまうといった、実際のレース展開との矛盾を発生させることなく、速度調整を行うことが可能となる。
【0011】
尚、ここで位置関係とは、例えば前後左右(更に、上下)のどちらに位置するかといった方向、両者間の距離等を意味する。
【0012】
即ち、例えば第4の発明として上述したゲーム情報を、前記第1の特定手段が、前記複数のコンピュータ制御キャラクタの内、最も先頭に位置するキャラクタを特定するための情報を含むこととすれば、最も先頭に位置するコンピュータ制御キャラクタと、プレーヤキャラクタとの位置関係に基づいて、複数のコンピュータ制御キャラクタに対する速度調整を行うことができる。
【0013】
また、例えば第5の発明として上述したゲーム情報において、前記第1の速度変更手段が、前記第1の特定手段により特定されたキャラクタが、前記プレーヤキャラクタの前方に位置する場合には、前記移動速度を減小させ、一方、後方に位置する場合には、前記移動速度を増加させるための情報を含むこととしても良い。
【0014】
この第5の発明によれば、特定されたキャラクタがプレーヤキャラクタの前方に位置している場合には、複数のコンピュータ制御キャラクタの移動速度は減少するので、プレーヤキャラクタは、コンピュータ制御キャラクタ、特に特定されたキャラクタに追い付き易くなる。反対に、特定されたキャラクタがプレーヤキャラクタの後方に位置している場合には、複数のコンピュータ制御キャラクタの移動速度は増加するので、プレーヤキャラクタは、コンピュータ制御キャラクタ、特に特定されたキャラクタに追い付かれ易くなる。
つまり、プレーヤと特定されたキャラクタとの接戦や逆転といった演出が容易になり、より緊迫したゲームとすることができる。
【0015】
また、第6の発明として第1第5の何れかの発明において、前記第1の速度変更手段が、前記ゲームの進行状況に基づき、前記移動速度の変更量を制御するための情報を含むゲーム情報を構成することとしても良い。
【0016】
尚、ここでゲームの進行状況とは、例えば上記ゲームが、車やバイク等のレースゲームであれば、レース時間の経過、終了した周回数、走行距離や走行時間等を意味する。
【0017】
従って、この第6の発明によれば、例えばレース終盤になるに従い、走行速度の変更量を増加させることで速度調整をより強く行い、逆転を起き易くする、より白熱した接戦を演出するといったことが可能となる。
【0018】
また、第7の発明として第1第6の何れかの発明において、前記第1の速度変更手段が、前記複数のコンピュータ制御キャラクタの内、前記プレーヤキャラクタから所定距離内に存するキャラクタの数に基づき、前記移動速度の変更量を制御するための情報を含むゲーム情報を構成することとしても良い。
【0019】
この第7の発明によれば、複数のコンピュータ制御キャラクタはひとまとまりのキャラクタとして扱われ、速度調整が行われるので、例えば、プレーヤキャラクタから所定距離内に位置するキャラクタの数が所定数を超えた場合に、速度調整を行うことで、プレーヤキャラクタは、その周辺に密集したキャラクタの集団から抜け出すことができる。
更に、仮想カメラがプレーヤキャラクタに追従している場合、上記所定距離を仮想カメラの視野とすることで、ゲーム画像の生成の際に描画することになるキャラクタの数を減らすことができ、キャラクタの描画に係る処理負担の増加を防止できる。
【0020】
また、第8の発明として第1第7の何れかの発明において、移動速度の変更をするか否かを指示する変更指示手段を前記装置に機能させるための情報と、前記第1の速度変更手段が、前記変更指示手段による変更指示がなされた場合に、前記移動速度を変更するための情報と、を含むゲーム情報を構成することとしても良い。
【0021】
尚、ここで変更を指示する条件として、例えば、プレーヤのプレイレベル、プレーヤキャラクタと特定されたキャラクタとの相対距離、ゲームの経過時間、キャラクタの移動距離等が挙げられる。
【0022】
従って、この第8の発明によれば、例えばプレーヤのレベルが初心者レベルである場合にのみ速度調整を行い、遅れがちなプレーヤキャラクタを、他のキャラクタ(複数のコンピュータ制御キャラクタ)に追い付き易くすることが可能となる。
また、ゲーム中、何らかのアクシデント等により、プレーヤキャラクタが他のキャラクタ(コンピュータ制御キャラクタ)から一時的に離れてしまった場合に、再度追い付き易くすることが可能となる。
また、前記ゲームが所定コースを周回するようなゲームである場合、最終周回においてのみ速度調整を行うことで、レース終盤の逆転や、より白熱した接戦等を演出するといったことができる。
【0023】
また、第9の発明として第1第8の何れかの発明において、前記プレーヤキャラクタを複数とするための情報と、前記第1の速度変更手段が、当該複数のプレーヤキャラクタの内の何れかと、前記第1の特定手段により特定されたキャラクタとの位置関係に基づき、前記移動速度を変更するための情報と、を含むゲーム情報を構成することとしても良い。
【0024】
この第9の発明によれば、一のプレーヤが複数のキャラクタを操作する場合、或いは複数のプレーヤが同時に上記ゲームをプレイする場合等に、何れかのプレーヤキャラクタと、特定されたキャラクタとの位置関係に基づき、コンピュータ制御キャラクタの速度調整を行うことができる。
更に、対象とするプレーヤキャラクタは、任意に選択可能としても良い。
【0025】
また、第2の発明として第1の発明において、前記複数のコンピュータ制御キャラクタの内、少なくとも一のキャラクタを特定する第2の特定手段を前記装置に機能させるための情報と、前記第2の特定手段により特定されたキャラクタ毎に、当該特定されたキャラクタと、前記プレーヤキャラクタとの位置関係に基づき、当該特定されたキャラクタの移動速度を変更する第2の速度変更手段を前記装置に機能させるための情報と、を含むゲーム情報を構成することとしても良い。
【0026】
この第2の発明によれば、一乃至複数のキャラクタを特定するとともに、特定されたキャラクタ個々に、速度調整を行うことができる。従って、例えば特定するキャラクタを、プレーヤキャラクタの最近隣に位置するキャラクタとすれば、プレーヤキャラクタと、その特定されたキャラクタとのより白熱した接戦を演出できる。
【0027】
第3の発明は、プロセッサの演算・制御により、装置に対して、プレーヤキャラクタ及び複数のコンピュータ制御キャラクタが、所与の目標地点に向かって移動するゲーム、を実行させるためのゲーム情報であって、前記複数のコンピュータ制御キャラクタの内、何れか一のキャラクタを特定する第1特定手段と、前記第1特定手段により特定されたキャラクタと、前記プレーヤキャラクタと、の位置関係に基づき、前記プレーヤキャラクタの移動速度を変更する第1の速度変更手段と、を前記装置に機能させるための情報を含むゲーム情報である
【0028】
また、第12の発明は、プレーヤキャラクタ及び複数のコンピュータ制御キャラクタが、所与の目標地点に向かって移動するゲームを実行するためのゲーム装置であって、前記複数のコンピュータ制御キャラクタの内、何れか一のキャラクタを特定する特定手段と、前記特定手段により特定されたキャラクタと、前記プレーヤキャラクタと、の位置関係に基づき、前記プレーヤキャラクタの移動速度を変更する速度変更手段と、を備えるゲーム装置である
【0029】
この第3又は第12の発明によれば、プレーヤキャラクタの移動速度を変更することで、相対的に、複数のコンピュータ制御キャラクタの移動速度を一律に変更することとなる。つまり、複数のコンピュータ制御キャラクタを、特定されたキャラクタを代表としたひとまとまりのキャラクタとみなして扱うことになり、これらのキャラクタ位置のばらけ具合を保持したまま、速度調整を行うことが可能となる。
従って、時間の経過に伴い、コンピュータ制御キャラクタがプレーヤキャラクタの周辺に密集してしまうことがない。このため、例えば、上記キャラクタが車やバイク等であるレースゲームにおいては、レース時間の経過に伴い、速い先頭の車と遅い最後尾の車との差が縮んでしまうといった、実際のレース展開との矛盾を発生させることなく、速度調整を行うことが可能となる。
【0030】
【発明の実施の形態】
以下、図面を参照し、本発明の好適な実施形態について説明する。尚、以下では、バイクレースゲームを例にとって説明するが、本発明の適用はこれに限られるものではない。
【0031】
先ず、原理を説明する。
図1は、ゲーム空間に配置されるレースコース10の一例を示す図である。
同図に示すように、レースコース10上には、複数台(8台)のバイクを模したキャラクタ(以下、単に「バイク」という。)20が配置される。そして、これらのバイク20が、プレーヤ、或いはコンピュータによりその動作を指示・制御されることで、該バイクレースゲームは進行する。即ち、これらのバイク20は、スタート地点(図中、「START」と示されている。)11から同方向に、且つ同時に走行を開始し、その走行順位を競い合う。
尚、図1においては8台のバイク20が示されているが、勿論これは何台でも構わない。
【0032】
これらのバイク20の内、バイク20aは、プレーヤの操作対象となるプレーヤキャラクタ(以下、「自車」という。)であり、プレーヤの操作指示により、その速度や走行方向等が制御される。
【0033】
また、自車20aを除く残り7台のバイク(以下、「敵車」という)20bは、コンピュータ制御により、それぞれに設定された性能に応じて、その速度や走行方向等が決定される。そして、これら7台の敵車20bの内、最も先頭を走行する敵車を、特に「先頭敵車」と呼び、以下、符号20cを用いて説明する。尚、この先頭敵車20cは、レースの進行に伴なう順位の入れ替わりにより、随時変化するものである。
【0034】
そして、本実施形態においては、自車20aと先頭敵車20cとの間の距離(相対距離)に応じて、敵車20bの速度は、一律に、同分だけ調整(増加、或いは減少)されることになる。
【0035】
次に、レースコース10におけるバイク20の位置の表現について、説明する。
図2は、レースコース10上のバイク20の位置を示す図である。
同図によれば、バイク20の位置Pは、その座標値を(d、w)と表現される。但し、dは、レースコース10の中心線12に沿った、スタート地点11からの距離であり、wは、レースコース10の中心線12からの距離である。
尚、ここでバイク20の位置Pとは、該バイク20の代表点の位置を意味している。
【0036】
次に、自車20aと先頭敵車20cとの相対距離について、説明する。
図3は、自車20aと先頭敵車20cとの相対距離を示す図である。
同図に示すように、自車20aの位置Pの座標値を(dm、wm)、先頭敵車20cの位置Ptの座標値を(dt、wt)とする。そして、自車20aと先頭敵車20cとの相対距離Dは、次式で与えられる。
D=dm−dt ・・・(1)
式(1)によれば、例えば自車20aが先頭敵車20cの先を走行(先行)している場合には、D>0、となり、反対に、先頭敵車20cが自車20aに先行している場合には、D<0、となる。
【0037】
次に、敵車の走行速度の調整について、説明する。
尚、以下においては、複数台(7台)の敵車20bの内、任意の1台の敵車20bについて説明するが、他の敵車20bについても同様である。また、「調整前の速度」とは、当該バイク20bの1フレーム前の位置や、当該バイク20bに設定された性能等に基づいて得られた速度を意味する。
【0038】
敵車の調整前の走行速度をvとすると、調整後の走行速度v´は、次式で与えられる。
v´=v+Δv ・・・(2)
式(2)によれば、調整後の速度v´は、調整前の速度vに、速度調整分Δvを加算した値となる。
【0039】
また、この速度調整分Δvは、次式で与えられる。
Δv=f(D) ・・・(3)
式(3)によれば、速度調整分Δvは、自車20aと先頭敵車20cとの相対距離Dをパラメータとした関数fで、表現される。
この関数fは、どのような関数でも良いが、自車20aと敵車との差が開くに従って走行速度の調整をより強く行うため、以下の条件を満たしていることが望ましい。即ち、自車20aが先頭敵車20cに先行している場合には正値を、一方、先頭敵車20cが自車20aに先行している場合には負値を取り、且つ相対距離Dが増加するに従い、速度調整分Δvが増加する関数である。
【0040】
そこで、この関数fとして、図4に示す関数fを採用する。
図4は、相対距離Dと速度調整分Δvの関係式の一例を示す図である。
同図によれば、式(3)は、次式となる。
f(D)=a×D ・・・(4)
但し、aは定数であり、a>0、である。
式(4)によれば、速度調整分Δvは、自車20aと先頭敵車20cとの相対距離Dに、係数aを掛け合わせた値、即ち相対距離Dに比例した値となる。
【0041】
つまり、自車20aが先頭敵車20cに先行している場合(D>0)、相対距離Dが増加する、即ち自車20aと先頭敵車20cとの差が開くに従い、敵車の走行速度は増加する。一方、先頭敵車20cが自車20aに先行している場合(D<0)、相対距離Dが減少(負方向に増加)する、即ち自車20aと先頭敵車20cとの差が開くに従い、敵車の走行速度は減少することになる。
【0042】
このように、自車20aと先頭敵車20cとの相対距離Dに応じて、敵車の速度の調整が行われる。
また、他の敵車についても同様に、式(4)を適用することで、速度の調整が行われる。勿論、ここで適用対象となる敵車20bには、先頭敵車20cも含まれている。
即ち、7台の敵車20bの調整前の速度vを、それぞれ、v1〜v7とすると、調整後の速度v´1〜v´7は、次のようになる。
v´n=vn+Δv ・・・(5)
但し、n=1〜7、である。
【0043】
以上のように、複数台の敵車20bをひとつの車群として扱い、この車群に対して速度の調整を行うことで、自車20aが先頭敵車20cに追い付き易くする、或いは追い付かれ易くするといった本来の目的を達しつつ、時間の経過に伴い、先頭のバイク20と最後尾のバイク20との差が縮まるといった、実際のレース展開に反する不具合を回避することが可能となる。
【0044】
更に、複数の敵車のばらけ具合は保持されたままである、つまり自車20aの周辺に特に敵車が集中することがないので、例えば自車20aに追従する仮想カメラから見たゲーム画像の描画、特に敵車の描画に係る処理負荷の増大を防ぐことができる。
【0045】
次に、本発明を適用したゲーム装置100の構成について、説明する。
図5は、ゲーム装置100の機能構成の一例を示すブロック図である。
同図に示すように、ゲーム装置100の機能ブロックは、入力部200、表示部300、処理部400、及び記憶部500より構成される。
【0046】
入力部200は、プレーヤが操作データを入力するためのものであり、その機能は、レバー、ボタン、筐体などのハードウェアにより実現できる。そして、ボタン押下等の操作がされた場合には、その操作信号を処理部400に出力する。
【0047】
表示部300は、画像生成部420により生成されたゲーム画像などを表示するためのものであり、その機能は、CRT(Cathode Ray Tube)、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、HMD(Head Mounted Display)などのハードウェアにより実現できる。そして、プレーヤは、表示部300に表示されるゲーム画面を見ながら、入力部200より、ゲーム進行に応じた操作データを入力する。
【0048】
処理部400は、ゲーム装置100全体の制御、ゲーム装置100内の各部への命令、ゲーム進行処理、画像処理、音処理等の各種処理を行うものであり、その機能は、各種プロセッサ(CPU(Central Processing Unit)、DSP(Digital Signal Processor)等)、或いはASIC(Application Specific Integrated Circuit)等のハードウェアや、所与のプログラムにより実現できる。また、処理部400には、ゲーム演算部410、及び画像生成部420が含まれる。
【0049】
ゲーム演算部410は、ゲーム空間の構築処理、各キャラクタの位置や向き、移動の速度、進行方向等を求める処理、ゲーム空間における仮想カメラの位置や、その視線方向を演算する処理、ストーリーの展開といったゲームの進行処理、種々のゲーム処理を、入力部200からの操作信号や記憶部500から読み出すゲームプログラム560等に基づいて実行する。
【0050】
また、ゲーム演算部410は、1フレーム毎に、バイク20それぞれに設定された性能に基づく所与の演算を実行し、各バイク20の速度等を計算するとともに、計算結果に基づいて、速度テーブル530を更新する。そして、速度調整プログラム550に従った速度調整処理(図9参照)を実行し、敵車20bの速度の調整を行うとともに、順位テーブル510、位置テーブル520、及び速度テーブル530を更新する。
【0051】
また、ゲーム演算部410には、先頭敵車特定部411、相対距離演算部412、速度調整分演算部413、速度調整部414、及び位置演算部415が含まれる。
【0052】
先頭敵車特定部411は、順位テーブル510を参照し、先頭敵車を特定する。具体的には、順位テーブル510において、1位のバイクが自車20aである場合には、2位の敵車20bを、それ以外の場合、即ち自車20aが2位以下である場合には、1位の敵車20bを、それぞれ先頭敵車20cとする。
【0053】
相対距離演算部412は、位置テーブル520を参照し、先頭敵車特定部411により特定された先頭敵車20cと、自車20aとの相対距離Dを求める。具体的には、図3において説明したように、式(1)に従い、自車20a、及び先頭敵車20cの位置座標値dの差分を、相対距離Dとする。
【0054】
速度調整分演算部413は、速度調整分演算式540に従い、相対距離演算部412にて演算された相対距離Dから、速度調整分Δvを求める。
【0055】
速度調整部414は、速度テーブル530を参照し、敵車20b毎に、現在の速度vと、速度調整分演算部413にて演算された速度調整分Δvとを加算することで、調整後の速度v´を求めるとともに、求めた調整後の速度v´を、速度テーブル530内の所定の位置に格納する。
【0056】
位置演算部415は、位置テーブル520、及び速度テーブル530を参照し、敵車20b毎に、1フレーム前の位置P、及び調整後の速度v´等に基づき、1フレームに相当する時間が経過した後の位置Pを求める。そして、求めた移動後の位置Pの座標値を、位置テーブル520内の所定の位置に格納し、該位置テーブル520を更新する。
【0057】
画像生成部420は、ゲーム演算部410により設定されたゲーム空間を、仮想カメラに基づく画像として生成し、表示部300へ出力する処理などを行う。
具体的には、前方/後方クリッピングを実行してビューボリュームを決定する処理、各ポリゴンに対する座標変換等のジオメトリ処理、視点と光源に基づく輝度計算処理、色補間処理、隠面消去処理等のレンダリング処理を実行することによりゲーム画像を生成する。
【0058】
記憶部500は、本ゲーム装置100に係るゲームを実行するためのゲームプログラム560やオブジェクトデータ等の各種データとともに、順位テーブル510、位置テーブル520、速度テーブル530、速度調整分演算式540、及び速度調整プログラム550を記憶する。また、その機能は、CD−ROM、MO、DVD、メモリ、HD等のハードウェアにより実現できる。
【0059】
図6は、順位テーブル510の一例を示す図である。この順位テーブル510は、バイク20の現在の順位を記憶する。
そして、この順位テーブル510に基づき、先頭敵車特定部411により、先頭敵車20cが特定される。具体的には、1位のバイクが自車20aであれば、2位のバイク20(敵車20bである。)が、また自車20aの順位が2位以下(2〜8位)であれば、1位のバイク(敵車20bである。)が、先頭敵車20cとなる。即ち、図6においては、1位のバイクは「敵車A」であるので、先頭敵車20cは「敵車A」と特定されることになる。
また、その内容は、位置テーブル520の更新に応じて、ゲーム演算部410により更新される。
【0060】
図7は、位置テーブル520の一例を示す図である。この位置テーブル520は、バイク20毎に、現在の位置Pを対応付けて記憶する。
位置Pは、図2において説明したように、レースコース10の中心線12に沿ったスタート地点11からの距離dと、レースコース10の中心線12からの距離wと、により表現される。
そして、この位置テーブル520に基づき、相対距離演算部412により、自車20aと先頭敵車20cとの相対距離Dが求められる。また、その内容は、1フレーム毎に、位置演算部415により更新される。
【0061】
図8は、速度テーブル530の一例を示す図である。この速度テーブル530は、バイク20毎に、調整前の速度v、及び調整後の速度v´を対応付けて記憶する。
調整前の速度vとは、1フレーム前の位置Pや速度(調整後の速度v´である。)、入力部200からの操作指示、或いはバイク20のそれぞれに設定された性能等に基づいて、ゲーム演算部410により求められる速度である。
また、調整後の速度v´とは、速度調整部414により、調整前の速度vに、速度調整分演算部413により演算された速度調整分Δvを加算することで求められた速度である。そして、この調整後の速度v´に基づき、バイク20の位置Pが、位置演算部415により演算されることになる。
【0062】
速度調整分演算式540は、敵車20bの速度の調整分Δvを求めるための演算式であり、例えば、図4に示す関数fである。
【0063】
次に、ゲーム装置100の動作を説明する。
図9は、速度調整処理を説明するためのフローチャートである。この速度調整処理は、1フレーム毎に、ゲーム演算部410により、速度調整プログラム550に従って実行される処理である。
尚、本処理の実行前には、バイク20毎に、1フレーム前の位置座標や速度、入力部200からの操作指示、及びそれぞれに設定された性能等に基づき、現在の速度(調整前の速度vに相当する。)が計算されているものとする。
【0064】
同図において、先ず、先頭敵車特定部411は、順位テーブル510を参照し、先頭敵車20cを特定する(ステップS11)。
即ち、例えば図6に示す順位テーブル510においては、1位のバイクは「敵車A」であるので、先頭敵車特定部411は、「敵車A」を先頭敵車20cとして特定する。また、1位のバイク20が「自車」である場合には、2位のバイクを先頭敵車20cとして特定する。
【0065】
先頭敵車20cを特定すると、続いて、相対距離演算部412は、特定された先頭敵車20cと自車20aとの相対距離Dを求める(ステップS12)。次いで、速度調整分演算部413は、速度調整分演算式540に基づき、速度調整分Δvを求める(ステップS13)。
【0066】
そして、ゲーム演算部410は、複数台(7台)の敵車20bの内、速度調整の対象となる敵車20bを1台、任意に選択し(ステップS14)、該選択した敵車20bに対して、以下の処理(ステップS15〜S17)を行い、その速度を調整する。
【0067】
即ち、速度調整部414は、速度テーブル530を参照し、選択した敵車20bの速度vと、ステップS13にて求めた速度の調整分Δvと、を加算する。そして、得られた調整後の速度v´を、速度テーブル530の所定の位置に格納する(ステップS15)。
次いで、位置演算部415は、速度テーブル530を参照し、調整後の速度v´に基づき、1フレーム分の移動計算を行うとともに、求めた移動後の位置Pの座標値を、位置テーブル520の所定の位置に格納する(ステップS16)。
【0068】
その後、未だ速度調整を行っていない敵車20bが存在する場合には(ステップS17:NO)、更に1台の敵車20bを選択する(ステップS18)。そして、ステップS15に処理を移行し、該選択した敵車20bに対して、同様の処理(速度調整、及び位置更新)を行う。
【0069】
全ての敵車20bについて上記処理(ステップS15〜S17)を行うと(ステップS17:YES)、ゲーム演算部410は、更新後の位置テーブル520に基づいて、移動後のバイク20の順位となるよう、順位テーブル510を更新する(ステップS19)。
以上の処理を行うと、ゲーム演算部410は、本処理を終了する。
【0070】
続いて、ゲーム装置100を実現できるハードウェアの構成の一例について、図10を用いて説明する。
同図に示す装置では、CPU1000、ROM1002、RAM1004、情報記憶媒体1006、音生成IC1008、画像生成IC1010、I/Oポート1012、1014が、システムバス1016により相互にデータ入出力可能に接続されている。そして、画像生成IC1010には表示装置1018が接続され、音生成IC1008にはスピーカ1020が接続され、I/Oポート1012にはコントロール装置1022が接続され、I/Oポート1014には通信装置1024が接続されている。
【0071】
情報記憶媒体1006は、プログラム、表示物を表現するための画像データ、音データ、プレイデータ等が主に格納されるものであり、図5の記憶部500に相当するものである。例えば家庭用ゲーム装置では、ゲームプログラム560等を格納する情報記憶媒体1006として、CD−ROM、ゲームカセット、DVD等が用いられ、ゲーム装置100に係るプレイデータ等を格納する情報記憶媒体1006として、メモリカードなどが用いられる。また、パーソナルコンピュータでは、CD−ROM、DVD、ハードディスクなどが用いられる。また、業務用ゲーム装置では、ROM等のハードディスクが用いられ、この場合には、情報記憶媒体1006はROM1002になる。
【0072】
そして、情報記憶媒体1006に格納されるプログラムやデータ、ROM1002に格納されるシステムプログラム(装置本体の初期化情報等)、コントロール装置1022によって入力される信号等に従って、CPU1000は、装置全体の制御や各種データ処理を行う。このCPU1000は、図5の処理部300に相当する。
【0073】
RAM1004は、CPU1000の作業領域として用いられる記憶手段であり、1フレーム分の画像データやプレイデータが一時的に格納されたり、情報記憶媒体1006やROM1002の所与の内容、或いはCPU1000の演算結果等が格納される。
【0074】
コントロール装置1022は、ゲームコントローラ、操作パネル等に相当するものであり、ユーザがゲーム進行に応じて行う判断の結果を装置本体に入力するための装置である。このコントロール装置1022は、図5の入力部200に相当する。
【0075】
更に、この種の装置には音生成IC1008と画像生成IC1010とが設けられていて、ゲーム音やゲーム画像の好適な出力が行えるようになっている。
【0076】
音生成IC1008は、情報記憶媒体1006やROM1002に記憶される情報に基づいて効果音やバックグラウンド音等のゲーム音を生成する集積回路であり、生成されたゲーム音はスピーカ1020によって出力される。
また、画像生成IC1010は、RAM1004、ROM1002、情報記憶媒体1006等から送られる画像情報に基づいて表示装置1018に出力するための画素情報を生成する集積回路である。また表示装置1018は、CRTやLCD、TV、プラズマディスプレイ(PDP)、プロジェクタ等により実現され、図5の表示部300に相当する。
【0077】
また通信装置1024は、ゲーム装置内部で利用する各種の情報を外部とやりとりするものであり、他のゲーム装置と接続されてゲームプログラム560に応じた所与の情報を送受したり、所定の通信回線を介してゲームプログラム560等の情報を送受することなどに利用される。
【0078】
尚、画像生成IC1010、音生成IC1008等で行われる処理は、CPU1000或いは汎用のDSP等によりソフトウェア的に行ってもよい。この場合には、CPU1000が、処理部400に該当することとなる。
【0079】
次に、図11に、本実施形態を業務用ゲーム装置に適用した場合の例を示す。プレーヤは、スピーカから出力されるゲーム効果音を聞き、ディスプレイ1100上に映し出されたゲーム画像を見ながら、レバー1102等を操作してゲームを楽しむ。内蔵されるシステムボード(サーキットボード)1106には、各種プロセッサ、各種メモリなどが実装される。そして、本発明を実行するための情報(プログラム、データ)は、システムボード1106上の情報記憶媒体であるメモリ1108に格納される。以下、この情報を格納情報と呼ぶ。
【0080】
図12に、本実施形態を家庭用のゲーム装置に適用した場合の例を示す。プレーヤはディスプレイ1200に映し出されたゲーム画像を見ながら、ゲームコントローラ1202、1204を操作してゲームを楽しむ。この場合、上記格納情報は、本体装置に着脱自在な情報記憶媒体であるCD(或いは、DVD)1206、或いはメモリカード1208、1209等に格納されている。
【0081】
更に、本実施形態のゲーム装置100を実現する具体例として、上記業務用ゲーム装置、或いは家庭用ゲーム装置に限ることなく、例えば、携帯用ゲーム装置、パーソナルコンピュータ、携帯端末(携帯電話機を含む)、キオスク端末などに適用することも勿論可能である。
【0082】
尚、本発明は、上記実施の形態に限ることなく、本発明の趣旨を逸脱しない範囲で適宜変更可能である。例えば、以下のような変形が考えられる。
【0083】
(a)最近隣に位置する敵車を、個別に速度調整する。
上記実施形態においては、敵車の全てに対して、一律にその走行速度を調整することとしたが、自車20aの最近隣に位置する敵車(以下、「最近隣敵車」という。)に対しては、個別にその速度を調整することとしても良い。
【0084】
即ち、図9のステップS11において、先頭敵車20cの特定とともに、ゲーム演算部410(或いは、ゲーム演算部410に含まれる最近隣敵車特定部(不図示))は、最近隣敵車を特定する。
そして、ステップS15において、ゲーム演算部410は、速度調整の対象として選択した敵車20bが、ステップS11において特定した最近隣敵車であるか否かを判定する。
【0085】
判定の結果、最近隣敵車である場合には、相対距離演算部412は、自車20aと、この選択した敵車(最近隣敵車)20bとの相対距離D´を求める。次いで、速度調整分演算部413は、この相対距離D´に基づき、速度調整分演算式540に従って、速度調整分Δv´を求める。以降同様に、速度調整、及び位置更新を行う。
【0086】
最近隣敵車の特定方法として、例えば以下のような方法がある。
即ち、順位テーブル510より、自車20aの前後に位置する合計2台の敵車20bそれぞれに対して、自車20aとの相対距離を求める。そして、求められた相対距離の絶対値が小さい方の敵車20bを、最近隣敵車とする。
【0087】
このように、任意の敵車に対して、個別に速度調整を行うことで、例えば自車20aと最近隣敵車との接戦を演出可能となる。
【0088】
また、個別に速度調整を行う敵車は、最近隣敵車に限らず、任意の敵車20bとしても良いし、複数台の敵車(最近隣敵車を含んでも良いし、含まなくとも良い。)20bについて、適用することとしても良い。
【0089】
(b)速度調整を行う/行わないを切り替える。
敵車20bの速度調整を行う/行わないを、所与の判定基準に基づいて決定することとしても良い。この条件としては、例えばプレーヤのプレイレベル、レースの経過時間や周回数、自車20aと先頭敵車20cとの相対距離、自車20a周辺の敵車20bの数等がある。
【0090】
具体的には、例えばプレイレベルとして、初心者レベル、中級者レベル、上級者レベル等の複数のレベルを設定する。そして、プレーヤのプレイレベルが初心者、或いは中級者レベルである場合には速度調整を行い、一方、上級者レベルである場合には速度調整を行わないこととする。
【0091】
また、例えばレースの開始から所定時間が経過した場合、或いは所定周回数の走行が終了した場合に、速度調整を行うこととする。つまり、レース序盤においては速度調整を行わず、終盤にさしかかると速度調整の実行を開始することで、レース終盤における、遅いプレーヤの大逆転や、より白熱した接戦など、面白味のあるレース展開を演出できる。
【0092】
また、例えば自車20aと先頭敵車20cとの相対距離Dが所定距離を越えた場合に、速度調整を行うこととする。例えばクラッシュ等により、自車20aが一時的に敵車20bから遅れを取った場合に速度調整を行うことで、自車20aは、速やかに敵車20bに追い付くことが可能となる。
【0093】
また、自車20aから所定距離内に位置する敵車20bの数に応じて、速度調整を行うこととする。即ち、敵車20bの速度は一律に調整されるため、敵車20bの速度を調整することで、密集した敵車20bの集団から自車20aが抜け出すことが可能となる。
【0094】
更に、プレーヤキャラクタに仮想カメラが追従する場合に、この所定距離を、仮想カメラの視野の範囲となるように設定することで、ゲーム画像の生成の際に描画することになるバイク20の数を減らすことができ、所定数以上のバイク20を描画することなく、描画に係る処理負担の増加を防止できる。
【0095】
(c)速度調整分を変更する。
速度調整を行う際に、その調整度合を変更することとしても良い。具体的には、速度調整分Δvを求める演算式(速度調整分演算式540)を複数用意し、条件に応じて、採用する演算式を変更することとする。
即ち、例えばレース時間の経過に伴い、速度調整分Δvがより増加する演算式を採用することで、レースの終盤に近づくに従ってより強く速度調整を行う。このことにより、レース終盤における、遅れているプレーヤの大逆転や、より白熱した接戦等の演出が可能となる。
【0096】
(d)自車20aの速度を調整する。
本実施形態においては、敵車20bの速度を一律に調整することとしたが、自車20aの速度を調整することとしても良い。
具体的には、敵車20bの速度調整と同様に、自車20aと先頭敵車20cとの相対距離Dより、速度調整分演算式540に従って速度調整分Δvを求め、自車20aの速度を調整する。このことにより、例えば自車20aの速度を増加させた場合、相対的に、敵車20bの速度が一律に増加することになる。
【0097】
尚、この時採用する速度調整分演算式540は、敵車20bに適用する演算式とはその符号が逆となる演算式を採用する。つまり、例えば図4に示す関数f(敵車20bに適用)を自車20aに適用する際には、次の関数f´を採用することとする。
f´=−f
これは、例えば自車20aが先頭敵車20cに先行している場合には敵車20bの速度を減少させる、つまり、相対的に自車20aの速度を増加させることになるからである。
【0098】
(e)調整後の速度の求め方。
敵車20bに適用する調整後の速度の求め方は、上述の手法に限らない。
例えば、自車20aと先頭敵車20cとの相対距離D、及び両車の速度vから、所定フレーム後に、自車20aが先頭敵車20cに追い付くことが可能となるような、先頭敵車20cの速度を求める。そして、この求めた速度を、敵車20bに対して一律に適用することとしても良い。
【0099】
(f)プレーヤキャラクタ以外にも適用する。
自車20aとなり得るキャラクタは、プレーヤの操作対象となるキャラクタ(プレーヤキャラクタ)でなくとも構わない。
具体的には、例えばレースコース10を走行するバイク20を、全てコンピュータによりその動作等を制御されるものとし、プレーヤは、これらのバイク20の中から何れか1台のバイクを選択し、メダル等を賭けることにより本ゲームを楽しむこととする。そして、このような場合において、プレーヤの選択したバイクを、本実施形態における自車20aに相当するものとして、本発明を適用すれば良い。
【0100】
(g)表示画面のないゲーム装置。
本実施形態においては、表示部を有するゲーム装置に適用した場合について説明したが、図13に示すゲーム装置600に適用することもできる。
【0101】
図13は、ゲーム装置600の筐体の一例を示す外観図である。
同図に示すように、ゲーム装置600の筐体は、基部30と、操作端末40と、から構成される。
基部30は、その上部にレースコース11が形成されるとともに、このレースコース11上を移動可能な、バイクを模した複数のモデル(バイクモデル)21を備えている。
操作端末40は、プレーヤがゲームの操作を実行する操作パネル41と、ゲーム効果音を出力するためのスピーカ(不図示)と、を備えている。即ち、操作端末40に位置するプレーヤは、スピーカから出力されるゲーム効果音を聞き、基部30上に形成されるレースコース11を見ながら操作パネル41を操作することで、レースコース11上のバイクモデル21を移動させ、バイクレースゲームを楽しむ。
【0102】
図14は、ゲーム装置600の機能構成の一例を示すブロック図である。尚、同図において、図5に示す機能ブロックと同一要素に付いては同符号を付し、その説明を省略する。
図14に示すように、ゲーム装置600は、入力部200、駆動部700、処理部400、及び記憶部500より構成される。
【0103】
入力部200は、プレーヤが、ゲームの進行に係る操作データを入力するためのものであり、図3の操作パネル41に相当する。
駆動部700は、図13の基部30に相当する機能部であり、駆動制御部430からの制御信号に基づき、レースコース11上のバイクモデル21を移動させる。
【0104】
処理部400は、ゲーム演算部410、及び駆動制御部430より構成される。
ゲーム演算部410は、複数のバイクモデル21の内、プレーヤの操作対象となるバイクモデル(上記実施形態における自車20aに相当する。)21を特定する機能を有する。
駆動制御部430は、ゲーム演算部410による演算結果に基づき、プレーヤの操作対象となるバイクモデル21の動作を制御する制御信号を、駆動部700に出力する。
【0105】
尚、ゲーム装置600において、複数のプレーヤが同時にゲームを実行する場合には、何れかのプレーヤの操作対象となるバイクモデル21に対して、適用することとすれば良い。
【0106】
また、本実施形態においてはバイクレースゲームを例に採って説明したが、同一コース上を複数のキャラクタが移動するゲームであれば、何れでも適用可能であり、適用可能なゲームとしては、例えばカーレースゲームやボートレースゲーム、競馬ゲーム等が挙げられる。
【0107】
【発明の効果】
本発明によれば、例えば車やバイク等のレースゲームにおいて、レースの経過に伴ない、敵車が自車の周辺に密集し、先頭と最後尾との差が縮まるといった不自然なゲーム展開を防止することができる。
【図面の簡単な説明】
【図1】レースコースを示す図である。
【図2】レースコースにおけるバイクの位置の表現を説明するための図である。
【図3】自車と先頭敵車との相対位置を説明するための図である。
【図4】相対速度Dと速度調整分Δvとの関係の一例を示す図である。
【図5】本実施形態における機能ブロックの一例を示す図である。
【図6】順位テーブルの一例を示す図である。
【図7】位置テーブルの一例を示す図である。
【図8】速度テーブルの一例を示す図である。
【図9】速度調整処理を説明するためのフローチャートである。
【図10】本実施形態におけるゲーム装置を実現できるハードウェア構成の一例を示す図である。
【図11】本発明を業務用ゲーム装置に適用した一例を示す図である。
【図12】本発明を家庭用ゲーム装置に適用した一例を示す図である。
【図13】本発明を適用するゲーム装置の変形例を示す図である。
【図14】本発明の機能ブロックの変形例を示す図である。
【符号の説明】
10 レースコース
11 スタート地点
12 中心線
20 バイク
20a 自車
20b 敵車
20c 先頭敵車
100 ゲーム装置
200 入力部
300 表示部
400 処理部
410 ゲーム演算部
411 先頭敵車特定部
412 相対距離演算部
413 速度調整分演算部
414 速度調整部
415 位置演算部
500 記憶部
510 順位テーブル
520 位置テーブル
530 速度テーブル
540 速度調整分演算式
550 速度調整プログラム
560 ゲームプログラム
600 ゲーム装置(変形例)
30 基部
40 操作端末
41 操作パネル
700 駆動部
400 処理部
430 駆動制御部
[0001]
BACKGROUND OF THE INVENTION
The present invention program The program The present invention relates to an information storage medium storing game information and a game device.
[0002]
[Prior art]
Conventionally, in a racing game such as a car or a motorcycle, in order to rescue a beginner player who is not so familiar with the game or to produce a close battle, for each enemy vehicle, the distance and position between the vehicle and the vehicle Depending on the relationship, the traveling speed of the enemy vehicle is adjusted.
Specifically, when the host vehicle is located behind the target enemy vehicle, the traveling speed of the enemy vehicle is reduced, while the host vehicle is positioned ahead of the target enemy vehicle. To increase the running speed of that enemy vehicle. At this time, as the distance between the host vehicle and the enemy vehicle increases, the adjustment amount (increase or decrease) of the traveling speed is increased. On the contrary, if the distance is small, the adjustment amount is decreased. .
[0003]
As a result, for example, when the host vehicle is traveling far behind the target enemy vehicle, the host vehicle can easily catch up with the enemy vehicle by greatly reducing (decelerating) the traveling speed of the enemy vehicle. Become. In addition, when the host vehicle and the target enemy vehicle are running close together, the amount of adjustment of the traveling speed of the enemy vehicle is reduced, and the distance between the two vehicles is maintained without being attached. Can produce.
[0004]
[Problems to be solved by the invention]
However, in this conventional method, for each enemy vehicle, the running speed is adjusted according to the distance from the own vehicle and the positional relationship, so as the race time elapses, The enemy cars are concentrated, that is, the difference between the first car and the last car in the entire vehicle group is reduced.
[0005]
This will cause a discrepancy with the actual race development, such as the difference in the distance between the fastest and slowest cars increasing with time, giving the player unnaturalness. I was sorry.
Further, when the virtual camera follows the own vehicle, there are problems that enemy vehicles are densely packed around the own vehicle, so that the number of vehicles entering the field of view increases and the drawing processing load increases.
[0006]
An object of the present invention is to prevent an unnatural game development such that enemy cars are densely packed around the host vehicle and the difference between the head and the tail is reduced as the race progresses.
[0007]
[Means for Solving the Problems]
To solve the above problems The first of According to the present invention, a player character (for example, the host vehicle 20a in FIG. 1) and a plurality of computer-controlled characters (for example, the enemy vehicle 20b in FIG. 1) are given to a device by a calculation / control of a processor. Game information for executing a game that moves toward a point (for example, a game that moves in the same direction on a predetermined course, such as a motorcycle racing game in the embodiment), of the plurality of computer controlled characters The positional relationship between the first specifying means for specifying any one character (for example, the leading enemy vehicle specifying unit 411 in FIG. 5), the character specified by the first specifying means, and the player character Based on the first speed changing means for uniformly changing the moving speed of the plurality of computer controlled characters (for example, the speed adjustment function shown in FIG. 5). Comprising part 413, and and the speed adjustment unit 414), the information for the function to the device Game information .
[0008]
Also, 11th The present invention is for executing a game in which a player character (for example, the host vehicle 20a of the embodiment) and a plurality of computer-controlled characters (for example, the enemy vehicle 20b of the embodiment) move toward a given target point. A game device (for example, the game device 100 of FIG. 5), a specifying means (for example, a leading enemy vehicle specifying unit 411 of FIG. 5) for specifying any one of the plurality of computer controlled characters; Based on the positional relationship between the character specified by the specifying means and the player character, speed changing means for uniformly changing the moving speeds of the plurality of computer controlled characters (for example, the speed adjustment calculation unit 413 in FIG. 5). And a speed adjustment unit 414) Game device .
[0009]
this First 1 or First 11 of According to the invention, it is possible to uniformly change the moving speeds of the plurality of computer-controlled characters in accordance with the positional relationship between the specified character and the player character. In other words, a plurality of computer-controlled characters are treated as a group of characters represented by the specified characters, and it is possible to adjust the speed while maintaining the dispersion of these character positions. Become.
[0010]
Therefore, the computer-controlled characters do not get crowded around the player character as time passes. For this reason, for example, in a racing game in which the character is a car, a motorcycle, etc., the actual race development in which the difference between the fastest leading car and the slowest trailing car shrinks as the race time elapses. It is possible to adjust the speed without causing any contradiction.
[0011]
Here, the positional relationship means, for example, the direction of the front, back, left and right (further up and down), the distance between the two, and the like.
[0012]
That is, for example 4th Invention As , Mentioned above Assuming that the game information includes information for specifying the most leading character among the plurality of computer controlled characters, the first identifying means includes: Based on the positional relationship with the player character, speed adjustment for a plurality of computer-controlled characters can be performed.
[0013]
For example, 5th Invention As , Mentioned above In the game information, the first speed changing means reduces the moving speed when the character specified by the first specifying means is located in front of the player character, while In the case of being located, information for increasing the moving speed may be included.
[0014]
this 5th According to the invention, when the specified character is located in front of the player character, the moving speed of the plurality of computer controlled characters decreases, so that the player character is a computer controlled character, particularly the specified character. It becomes easy to catch up with. On the other hand, when the specified character is located behind the player character, the movement speed of the plurality of computer controlled characters increases, so that the player character is caught up with the computer controlled character, particularly the specified character. It becomes easy.
In other words, it is easy to produce effects such as close fighting and reversal between the player and the specified character, and the game can be made more tense.
[0015]
Also, As the sixth invention , First ~ 5th Either Invention The first speed changing means includes information for controlling the amount of change in the moving speed based on the progress of the game. Configure game information It's also good.
[0016]
Here, the progress of the game means, for example, if the game is a race game such as a car or a motorcycle, the elapsed race time, the number of completed laps, the travel distance, the travel time, and the like.
[0017]
So this 6th According to the present invention, for example, as the end of the race is reached, the amount of change in the running speed is increased to make the speed adjustment stronger, making it easier to reverse and producing a more incandescent battle.
[0018]
Also, 7th Invention As , First ~ 6th Either Invention The first speed changing means includes information for controlling the change amount of the moving speed based on the number of characters existing within a predetermined distance from the player character among the plurality of computer controlled characters. Configure game information It's also good.
[0019]
this 7th According to the invention, a plurality of computer-controlled characters are treated as a group of characters and speed adjustment is performed. For example, when the number of characters located within a predetermined distance from the player character exceeds a predetermined number, By adjusting the speed, the player character can escape from a group of characters that are densely arranged around the player character.
Furthermore, when the virtual camera follows the player character, the number of characters to be drawn when the game image is generated can be reduced by setting the predetermined distance as the visual field of the virtual camera. An increase in processing load related to drawing can be prevented.
[0020]
Also, 8th Invention As , First ~ 7th Either Invention The information for causing the device to function change instruction means for instructing whether or not to change the moving speed, and when the first speed change means is changed by the change instruction means, And information for changing the moving speed. Configure game information It's also good.
[0021]
Here, the conditions for instructing the change include, for example, the play level of the player, the relative distance between the player character and the identified character, the elapsed time of the game, the moving distance of the character, and the like.
[0022]
So this 8th According to this invention, for example, speed adjustment is performed only when the level of the player is a beginner level, and it becomes possible to easily catch up with a player character that tends to be late to other characters (a plurality of computer-controlled characters).
In addition, when the player character temporarily leaves another character (computer control character) due to some accident during the game, it is possible to easily catch up again.
Further, when the game is a game that circulates a predetermined course, by adjusting the speed only in the final lap, it is possible to produce a reversal of the final stage of the race, a more heated close battle, or the like.
[0023]
Also, 9th Invention As , First ~ 8th Either Invention And the first speed changing means has a positional relationship between any one of the plurality of player characters and the character specified by the first specifying means. Information for changing the moving speed based on Configure game information It's also good.
[0024]
this 9th According to this invention, when one player operates a plurality of characters, or when a plurality of players play the game at the same time, etc., based on the positional relationship between any one of the player characters and the specified character. The speed of the computer controlled character can be adjusted.
Furthermore, the target player character may be arbitrarily selected.
[0025]
Also, Second Invention As , 1st invention The information for causing the device to function a second specifying means for specifying at least one character among the plurality of computer-controlled characters, and for each character specified by the second specifying means And information for causing the device to function second speed changing means for changing the moving speed of the specified character based on the positional relationship between the determined character and the player character. Configure game information It's also good.
[0026]
this Second According to the invention, one or more characters can be specified, and speed adjustment can be performed for each specified character. Therefore, for example, if the character to be identified is a character positioned closest to the player character, a more heated close battle between the player character and the identified character can be produced.
[0027]
Third According to the present invention, there is provided game information for causing the apparatus to execute a game in which a player character and a plurality of computer controlled characters move toward a given target point by means of computation and control of a processor. The movement of the player character based on the positional relationship between the first specifying means for specifying any one of the plurality of computer controlled characters, the character specified by the first specifying means, and the player character First speed changing means for changing the speed, and information for causing the apparatus to function Game information .
[0028]
Also, 12th The present invention is a game apparatus for executing a game in which a player character and a plurality of computer controlled characters move toward a given target point, and any one of the plurality of computer controlled characters. And a speed changing means for changing the moving speed of the player character based on a positional relationship between the character specified by the specifying means and the player character. Game device .
[0029]
this Third Or 12th According to this invention, by changing the moving speed of the player character, the moving speeds of the plurality of computer-controlled characters are relatively uniformly changed. In other words, a plurality of computer-controlled characters are treated as a group of characters represented by the specified characters, and it is possible to adjust the speed while maintaining the dispersion of these character positions. Become.
Therefore, the computer-controlled characters do not get crowded around the player character as time passes. For this reason, for example, in a racing game in which the character is a car, a motorcycle, etc., the actual race development in which the difference between the fastest leading car and the slowest trailing car shrinks as the race time elapses. It is possible to adjust the speed without causing any contradiction.
[0030]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings. In the following, a motorcycle racing game will be described as an example, but the application of the present invention is not limited to this.
[0031]
First, the principle will be described.
FIG. 1 is a diagram illustrating an example of a race course 10 arranged in a game space.
As shown in the figure, on a race course 10, characters (hereinafter simply referred to as “bikes”) 20 simulating a plurality of (eight) motorcycles are arranged. Then, the motorcycle racing game proceeds when these motorcycles 20 are instructed and controlled by a player or a computer. That is, these motorcycles 20 start traveling in the same direction and at the same time from the start point (shown as “START” in the figure) 11 and compete for their traveling order.
In FIG. 1, eight motorcycles 20 are shown. Of course, any number of motorcycles 20 may be used.
[0032]
Among these motorcycles 20, the motorcycle 20 a is a player character (hereinafter referred to as “own vehicle”) to be operated by the player, and its speed, traveling direction, and the like are controlled by an operation instruction from the player.
[0033]
In addition, the remaining seven motorcycles (hereinafter referred to as “enemy vehicles”) 20b excluding the host vehicle 20a are determined by computer control in terms of speed, traveling direction, and the like according to the set performance. Of these seven enemy vehicles 20b, the enemy vehicle that runs the most is called the “first enemy vehicle”, and will be described below using reference numeral 20c. The leading enemy vehicle 20c changes at any time due to the change of the rank accompanying the progress of the race.
[0034]
In this embodiment, the speed of the enemy vehicle 20b is uniformly adjusted (increased or decreased) by the same amount according to the distance (relative distance) between the host vehicle 20a and the leading enemy vehicle 20c. Will be.
[0035]
Next, the expression of the position of the motorcycle 20 on the race course 10 will be described.
FIG. 2 is a diagram showing the position of the motorcycle 20 on the race course 10.
According to the figure, the coordinate value of the position P of the motorcycle 20 is expressed as (d, w). However, d is a distance from the start point 11 along the center line 12 of the race course 10, and w is a distance from the center line 12 of the race course 10.
Here, the position P of the motorcycle 20 means the position of the representative point of the motorcycle 20.
[0036]
Next, the relative distance between the host vehicle 20a and the top enemy vehicle 20c will be described.
FIG. 3 is a diagram showing the relative distance between the host vehicle 20a and the leading enemy vehicle 20c.
As shown in the figure, the coordinate value of the position P of the host vehicle 20a is (dm, wm), and the coordinate value of the position Pt of the leading enemy vehicle 20c is (dt, wt). The relative distance D between the host vehicle 20a and the top enemy vehicle 20c is given by the following equation.
D = dm−dt (1)
According to Formula (1), for example, when the host vehicle 20a is traveling (leading) ahead of the leading enemy vehicle 20c, D> 0, and conversely, the leading enemy vehicle 20c precedes the host vehicle 20a. In such a case, D <0.
[0037]
Next, adjustment of the traveling speed of the enemy vehicle will be described.
In the following, an arbitrary enemy vehicle 20b among a plurality (seven) enemy vehicles 20b will be described, but the same applies to other enemy vehicles 20b. The “speed before adjustment” means a speed obtained based on the position of the motorcycle 20b one frame before, the performance set for the motorcycle 20b, and the like.
[0038]
If the traveling speed before adjustment of the enemy vehicle is v, the adjusted traveling speed v ′ is given by the following equation.
v ′ = v + Δv (2)
According to Equation (2), the adjusted speed v ′ is a value obtained by adding the speed adjustment Δv to the speed v before the adjustment.
[0039]
The speed adjustment Δv is given by the following equation.
Δv = f (D) (3)
According to the equation (3), the speed adjustment Δv is expressed by a function f with the relative distance D between the host vehicle 20a and the leading enemy vehicle 20c as a parameter.
The function f may be any function, but it is desirable that the following condition is satisfied in order to adjust the traveling speed more strongly as the difference between the host vehicle 20a and the enemy vehicle increases. That is, when the host vehicle 20a precedes the host vehicle 20c, a positive value is obtained. On the other hand, when the host enemy vehicle 20c precedes the host vehicle 20a, a negative value is obtained, and the relative distance D is This is a function of increasing the speed adjustment Δv as it increases.
[0040]
Therefore, the function f shown in FIG. 4 is adopted as the function f.
FIG. 4 is a diagram illustrating an example of a relational expression between the relative distance D and the speed adjustment amount Δv.
According to the figure, Expression (3) becomes the following expression.
f (D) = a × D (4)
However, a is a constant and a> 0.
According to Equation (4), the speed adjustment Δv is a value obtained by multiplying the relative distance D between the host vehicle 20a and the leading enemy vehicle 20c by the coefficient a, that is, a value proportional to the relative distance D.
[0041]
That is, when the host vehicle 20a precedes the leading enemy vehicle 20c (D> 0), the relative distance D increases, that is, as the difference between the own vehicle 20a and the leading enemy vehicle 20c increases, the traveling speed of the enemy vehicle. Will increase. On the other hand, when the leading enemy vehicle 20c precedes the own vehicle 20a (D <0), the relative distance D decreases (increases in the negative direction), that is, as the difference between the own vehicle 20a and the leading enemy vehicle 20c increases. The driving speed of enemy vehicles will be reduced.
[0042]
Thus, the speed of the enemy vehicle is adjusted according to the relative distance D between the host vehicle 20a and the leading enemy vehicle 20c.
Similarly, for other enemy vehicles, the speed is adjusted by applying Expression (4). Of course, the enemy vehicle 20b to be applied here includes the top enemy vehicle 20c.
That is, assuming that the speeds v before adjustment of the seven enemy vehicles 20b are v1 to v7, respectively, the adjusted speeds v′1 to v′7 are as follows.
v′n = vn + Δv (5)
However, n = 1-7.
[0043]
As described above, by handling a plurality of enemy vehicles 20b as one vehicle group and adjusting the speed of this vehicle group, the host vehicle 20a can easily catch up with the leading enemy vehicle 20c or can be easily caught up. While achieving the original purpose of doing, it is possible to avoid problems that are contrary to actual race development, such as the difference between the first motorcycle 20 and the last motorcycle 20 being reduced with the passage of time.
[0044]
Furthermore, the degree of dispersion of a plurality of enemy vehicles remains maintained, that is, the enemy vehicles do not particularly concentrate around the own vehicle 20a. For example, the game image viewed from the virtual camera following the own vehicle 20a It is possible to prevent an increase in processing load related to drawing, particularly drawing of enemy vehicles.
[0045]
Next, the configuration of the game apparatus 100 to which the present invention is applied will be described.
FIG. 5 is a block diagram illustrating an example of a functional configuration of the game apparatus 100.
As shown in the figure, the functional block of the game apparatus 100 includes an input unit 200, a display unit 300, a processing unit 400, and a storage unit 500.
[0046]
The input unit 200 is for a player to input operation data, and the function can be realized by hardware such as a lever, a button, and a housing. When an operation such as pressing a button is performed, the operation signal is output to the processing unit 400.
[0047]
The display unit 300 is for displaying a game image or the like generated by the image generation unit 420, and functions thereof are CRT (Cathode Ray Tube), LCD (Liquid Crystal Display), PDP (Plasma Display Panel), It can be realized by hardware such as HMD (Head Mounted Display). Then, the player inputs operation data corresponding to the progress of the game from the input unit 200 while watching the game screen displayed on the display unit 300.
[0048]
The processing unit 400 performs various processes such as control of the entire game apparatus 100, instructions to each unit in the game apparatus 100, game progress processing, image processing, sound processing, and the like, and functions thereof are various processors (CPU ( It can be realized by hardware such as a central processing unit (DSP), a digital signal processor (DSP), or an application specific integrated circuit (ASIC), or a given program. The processing unit 400 includes a game calculation unit 410 and an image generation unit 420.
[0049]
The game calculation unit 410 is a process for building a game space, a process for determining the position and orientation of each character, the speed of movement, the direction of travel, etc., a process for calculating the position of the virtual camera in the game space and its line-of-sight direction, and story development. The game progress process and various game processes are executed based on an operation signal from the input unit 200, a game program 560 read out from the storage unit 500, and the like.
[0050]
In addition, the game calculation unit 410 performs a given calculation based on the performance set for each motorcycle 20 for each frame, calculates the speed and the like of each motorcycle 20, and based on the calculation result, calculates the speed table. 530 is updated. Then, a speed adjustment process (see FIG. 9) according to the speed adjustment program 550 is executed to adjust the speed of the enemy vehicle 20b, and the rank table 510, the position table 520, and the speed table 530 are updated.
[0051]
Further, the game calculation unit 410 includes a leading enemy vehicle specifying unit 411, a relative distance calculation unit 412, a speed adjustment calculation unit 413, a speed adjustment unit 414, and a position calculation unit 415.
[0052]
The leading enemy vehicle identifying unit 411 refers to the ranking table 510 and identifies the leading enemy vehicle. Specifically, in the ranking table 510, when the first motorcycle is the own vehicle 20a, the second enemy vehicle 20b is used. In other cases, that is, when the own vehicle 20a is second or lower. The first enemy vehicle 20b is designated as the top enemy vehicle 20c.
[0053]
The relative distance calculation unit 412 refers to the position table 520 and obtains the relative distance D between the leading enemy vehicle 20c identified by the leading enemy vehicle identifying unit 411 and the host vehicle 20a. Specifically, as described in FIG. 3, the relative distance D is the difference between the position coordinate value d of the host vehicle 20a and the leading enemy vehicle 20c according to the equation (1).
[0054]
The speed adjustment calculation unit 413 obtains the speed adjustment Δv from the relative distance D calculated by the relative distance calculation unit 412 according to the speed adjustment calculation formula 540.
[0055]
The speed adjustment unit 414 refers to the speed table 530 and adds the current speed v and the speed adjustment amount Δv calculated by the speed adjustment amount calculation unit 413 for each enemy vehicle 20b. The speed v ′ is obtained, and the obtained adjusted speed v ′ is stored in a predetermined position in the speed table 530.
[0056]
The position calculation unit 415 refers to the position table 520 and the speed table 530, and for each enemy vehicle 20b, the time corresponding to one frame elapses based on the position P one frame before and the adjusted speed v ′, etc. After that, the position P is obtained. Then, the obtained coordinate value of the position P after movement is stored in a predetermined position in the position table 520, and the position table 520 is updated.
[0057]
The image generation unit 420 performs processing for generating the game space set by the game calculation unit 410 as an image based on a virtual camera and outputting the image to the display unit 300.
Specifically, processing to determine the view volume by performing forward / backward clipping, geometry processing such as coordinate conversion for each polygon, luminance calculation processing based on viewpoint and light source, color interpolation processing, hidden surface removal processing, etc. rendering A game image is generated by executing the process.
[0058]
The storage unit 500 includes a ranking program 510, a position table 520, a speed table 530, a speed adjustment calculation formula 540, and a speed, together with various data such as a game program 560 and object data for executing a game according to the game apparatus 100. The adjustment program 550 is stored. The function can be realized by hardware such as CD-ROM, MO, DVD, memory, and HD.
[0059]
FIG. 6 is a diagram illustrating an example of the order table 510. The ranking table 510 stores the current ranking of the motorcycle 20.
Based on the ranking table 510, the leading enemy vehicle identifying unit 411 identifies the leading enemy vehicle 20c. Specifically, if the first-ranked motorcycle is the own vehicle 20a, the second-ranked motorcycle 20 (the enemy vehicle 20b) should be ranked second or lower (2nd to 8th). For example, the first-ranked motorcycle (the enemy vehicle 20b) becomes the top enemy vehicle 20c. That is, in FIG. 6, the first motorcycle is the “enemy vehicle A” because the first-ranked motorcycle is the “enemy vehicle A”.
The content is updated by the game calculation unit 410 in accordance with the update of the position table 520.
[0060]
FIG. 7 is a diagram illustrating an example of the position table 520. The position table 520 stores the current position P in association with each motorcycle 20.
As described with reference to FIG. 2, the position P is represented by the distance d from the start point 11 along the center line 12 of the race course 10 and the distance w from the center line 12 of the race course 10.
Based on the position table 520, the relative distance calculation unit 412 obtains the relative distance D between the host vehicle 20a and the leading enemy vehicle 20c. The contents are updated by the position calculation unit 415 for each frame.
[0061]
FIG. 8 is a diagram illustrating an example of the speed table 530. The speed table 530 stores a speed v before adjustment and a speed v ′ after adjustment in association with each motorcycle 20.
The speed v before the adjustment is based on the position P and the speed one frame before (the speed v ′ after the adjustment), the operation instruction from the input unit 200, the performance set for each of the motorcycles 20, and the like. The speed calculated by the game calculation unit 410.
Further, the adjusted speed v ′ is a speed obtained by the speed adjusting unit 414 adding the speed adjustment amount Δv calculated by the speed adjustment calculating unit 413 to the speed v before adjustment. Based on the adjusted speed v ′, the position P of the motorcycle 20 is calculated by the position calculation unit 415.
[0062]
The speed adjustment calculation formula 540 is a calculation formula for obtaining the speed adjustment Δv of the enemy vehicle 20b, and is, for example, the function f shown in FIG.
[0063]
Next, the operation of the game apparatus 100 will be described.
FIG. 9 is a flowchart for explaining the speed adjustment processing. This speed adjustment process is a process executed by the game calculation unit 410 according to the speed adjustment program 550 for each frame.
Before executing this process, the current speed (before adjustment) is determined for each motorcycle 20 based on the position coordinates and speed one frame before, the operation instruction from the input unit 200, and the performance set for each. (Corresponding to the speed v)).
[0064]
In the figure, first, the leading enemy vehicle identifying unit 411 identifies the leading enemy vehicle 20c with reference to the ranking table 510 (step S11).
That is, for example, in the order table 510 shown in FIG. 6, the first-ranked motorcycle is “enemy vehicle A”, and therefore the top enemy vehicle specifying unit 411 specifies “enemy vehicle A” as the top enemy vehicle 20c. Further, when the first-ranked motorcycle 20 is the “own vehicle”, the second-ranked motorcycle is identified as the top enemy vehicle 20c.
[0065]
When the first enemy vehicle 20c is identified, the relative distance calculation unit 412 then obtains the relative distance D between the identified first enemy vehicle 20c and the host vehicle 20a (step S12). Next, the speed adjustment amount calculation unit 413 obtains a speed adjustment amount Δv based on the speed adjustment amount calculation expression 540 (step S13).
[0066]
Then, the game calculation unit 410 arbitrarily selects one enemy vehicle 20b as a speed adjustment target from among a plurality (seven) enemy vehicles 20b (step S14), and sets the selected enemy vehicle 20b as the enemy vehicle 20b. On the other hand, the following processing (steps S15 to S17) is performed to adjust the speed.
[0067]
That is, the speed adjustment unit 414 refers to the speed table 530 and adds the speed v of the selected enemy vehicle 20b and the speed adjustment Δv obtained in step S13. Then, the adjusted speed v ′ obtained is stored in a predetermined position of the speed table 530 (step S15).
Next, the position calculation unit 415 refers to the speed table 530, performs a movement calculation for one frame based on the adjusted speed v ′, and obtains the obtained coordinate value of the position P after the movement in the position table 520. Store in a predetermined position (step S16).
[0068]
Thereafter, when there is an enemy vehicle 20b that has not yet been subjected to speed adjustment (step S17: NO), one enemy vehicle 20b is further selected (step S18). Then, the process proceeds to step S15, and the same process (speed adjustment and position update) is performed on the selected enemy vehicle 20b.
[0069]
When the above-described processing (steps S15 to S17) is performed for all enemy vehicles 20b (step S17: YES), the game calculation unit 410 is based on the updated position table 520 so that the rank of the motorbike 20 after movement is obtained. The rank table 510 is updated (step S19).
If the above process is performed, the game calculating part 410 will complete | finish this process.
[0070]
Subsequently, an example of a hardware configuration capable of realizing the game apparatus 100 will be described with reference to FIG.
In the apparatus shown in the figure, a CPU 1000, a ROM 1002, a RAM 1004, an information storage medium 1006, a sound generation IC 1008, an image generation IC 1010, and I / O ports 1012, 1014 are connected to each other via a system bus 1016 so as to be able to input and output data. . A display device 1018 is connected to the image generation IC 1010, a speaker 1020 is connected to the sound generation IC 1008, a control device 1022 is connected to the I / O port 1012, and a communication device 1024 is connected to the I / O port 1014. It is connected.
[0071]
The information storage medium 1006 mainly stores programs, image data for expressing display objects, sound data, play data, and the like, and corresponds to the storage unit 500 of FIG. For example, in a home game device, a CD-ROM, game cassette, DVD, or the like is used as the information storage medium 1006 for storing the game program 560 or the like, and the information storage medium 1006 for storing play data or the like related to the game device 100 is used. A memory card or the like is used. In personal computers, CD-ROMs, DVDs, hard disks and the like are used. In the arcade game machine, a hard disk such as a ROM is used. In this case, the information storage medium 1006 is a ROM 1002.
[0072]
The CPU 1000 controls the entire apparatus according to programs and data stored in the information storage medium 1006, system programs stored in the ROM 1002 (such as initialization information of the apparatus main body), signals input by the control apparatus 1022, and the like. Perform various data processing. The CPU 1000 corresponds to the processing unit 300 in FIG.
[0073]
The RAM 1004 is a storage means used as a work area of the CPU 1000, and temporarily stores image data and play data for one frame, given contents of the information storage medium 1006 and ROM 1002, or calculation results of the CPU 1000, etc. Is stored.
[0074]
The control device 1022 corresponds to a game controller, an operation panel, and the like, and is a device for inputting a result of determination made by the user in accordance with the progress of the game to the device main body. The control device 1022 corresponds to the input unit 200 in FIG.
[0075]
Further, this type of apparatus is provided with a sound generation IC 1008 and an image generation IC 1010 so that game sounds and game images can be suitably output.
[0076]
The sound generation IC 1008 is an integrated circuit that generates game sounds such as sound effects and background sounds based on information stored in the information storage medium 1006 and the ROM 1002, and the generated game sounds are output by the speaker 1020.
The image generation IC 1010 is an integrated circuit that generates pixel information to be output to the display device 1018 based on image information sent from the RAM 1004, the ROM 1002, the information storage medium 1006, and the like. The display device 1018 is realized by a CRT, LCD, TV, plasma display (PDP), projector, or the like, and corresponds to the display unit 300 in FIG.
[0077]
The communication device 1024 exchanges various types of information used inside the game device with the outside. The communication device 1024 is connected to other game devices to send and receive given information according to the game program 560, or to perform predetermined communication. It is used for transmitting and receiving information such as the game program 560 via a line.
[0078]
Note that the processing performed by the image generation IC 1010, the sound generation IC 1008, and the like may be performed by software using the CPU 1000 or a general-purpose DSP. In this case, the CPU 1000 corresponds to the processing unit 400.
[0079]
Next, FIG. 11 shows an example in which the present embodiment is applied to an arcade game device. The player listens to the game sound effect output from the speaker and enjoys the game by operating the lever 1102 and the like while viewing the game image displayed on the display 1100. Various processors and various memories are mounted on the built-in system board (circuit board) 1106. Information (program, data) for executing the present invention is stored in a memory 1108 which is an information storage medium on the system board 1106. Hereinafter, this information is referred to as storage information.
[0080]
FIG. 12 shows an example in which this embodiment is applied to a home game device. The player enjoys the game by operating the game controllers 1202 and 1204 while viewing the game image displayed on the display 1200. In this case, the stored information is stored in a CD (or DVD) 1206 or a memory card 1208, 1209, which is an information storage medium that can be attached to and detached from the main unit.
[0081]
Further, specific examples of realizing the game device 100 of the present embodiment are not limited to the above-described arcade game device or home game device, but include, for example, a portable game device, a personal computer, a portable terminal (including a mobile phone). Of course, it can be applied to a kiosk terminal or the like.
[0082]
Note that the present invention is not limited to the above-described embodiment, and can be changed as appropriate without departing from the spirit of the present invention. For example, the following modifications can be considered.
[0083]
(A) The speed of the enemy vehicles located in the nearest neighborhood is individually adjusted.
In the above embodiment, the traveling speed is uniformly adjusted for all enemy vehicles. However, an enemy vehicle located nearest to the host vehicle 20a (hereinafter referred to as “nearest neighbor enemy vehicle”). The speed may be adjusted individually.
[0084]
That is, in step S11 of FIG. 9, along with the identification of the leading enemy vehicle 20c, the game calculation unit 410 (or the nearest enemy vehicle specification unit (not shown) included in the game calculation unit 410) specifies the nearest enemy vehicle. To do.
In step S15, the game calculation unit 410 determines whether or not the enemy vehicle 20b selected as the speed adjustment target is the nearest enemy vehicle specified in step S11.
[0085]
If it is determined that the vehicle is the nearest enemy vehicle, the relative distance calculation unit 412 obtains a relative distance D ′ between the host vehicle 20a and the selected enemy vehicle (nearest neighbor enemy vehicle) 20b. Next, the speed adjustment calculation unit 413 obtains a speed adjustment Δv ′ according to the speed adjustment calculation formula 540 based on the relative distance D ′. Thereafter, similarly, speed adjustment and position update are performed.
[0086]
As a method for identifying the nearest neighbor vehicle, for example, there are the following methods.
In other words, the relative distance from the host vehicle 20a is obtained from the rank table 510 for each of the two enemy vehicles 20b located before and after the host vehicle 20a. Then, the enemy vehicle 20b having the smaller absolute value of the obtained relative distance is set as the nearest enemy vehicle.
[0087]
Thus, by adjusting the speed individually for any enemy vehicle, for example, it is possible to produce a close battle between the host vehicle 20a and the nearest enemy vehicle.
[0088]
Further, the enemy vehicle whose speed is individually adjusted is not limited to the nearest enemy vehicle, and may be an arbitrary enemy vehicle 20b, or may include a plurality of enemy vehicles (the nearest enemy vehicle may or may not be included). .) 20b may be applied.
[0089]
(B) Switching between speed adjustment and non-speed adjustment.
Whether or not to adjust the speed of the enemy vehicle 20b may be determined based on a given criterion. The conditions include, for example, the player's play level, the elapsed time and number of laps of the race, the relative distance between the host vehicle 20a and the leading enemy vehicle 20c, the number of enemy vehicles 20b around the host vehicle 20a, and the like.
[0090]
Specifically, for example, a plurality of levels such as beginner level, intermediate level, and advanced level are set as play levels. When the player's play level is a beginner or intermediate level, the speed is adjusted. On the other hand, when the player is an advanced level, the speed is not adjusted.
[0091]
For example, the speed adjustment is performed when a predetermined time has elapsed from the start of the race or when a predetermined number of laps have been completed. In other words, speed adjustment is not performed at the beginning of the race, and when the end of the race is approached, execution of speed adjustment is started. it can.
[0092]
For example, when the relative distance D between the host vehicle 20a and the leading enemy vehicle 20c exceeds a predetermined distance, the speed adjustment is performed. For example, by adjusting the speed when the own vehicle 20a is temporarily delayed from the enemy vehicle 20b due to a crash or the like, the own vehicle 20a can quickly catch up with the enemy vehicle 20b.
[0093]
Further, the speed is adjusted according to the number of enemy vehicles 20b located within a predetermined distance from the host vehicle 20a. That is, since the speed of the enemy vehicle 20b is adjusted uniformly, the host vehicle 20a can escape from a group of dense enemy vehicles 20b by adjusting the speed of the enemy vehicle 20b.
[0094]
Further, when the virtual camera follows the player character, the predetermined distance is set to be within the range of the visual field of the virtual camera, so that the number of bikes 20 to be drawn when generating the game image can be reduced. It is possible to reduce the amount of processing load related to drawing without drawing a predetermined number or more of motorcycles 20.
[0095]
(C) Change the speed adjustment.
When performing the speed adjustment, the degree of adjustment may be changed. Specifically, a plurality of calculation formulas (speed adjustment calculation formula 540) for obtaining the speed adjustment Δv are prepared, and the calculation formula to be adopted is changed according to the conditions.
That is, for example, by adopting an arithmetic expression in which the speed adjustment Δv increases more as the race time elapses, the speed is adjusted more strongly as the end of the race is approached. This makes it possible to produce effects such as a large reversal of a delayed player and a more heated close battle at the end of the race.
[0096]
(D) The speed of the own vehicle 20a is adjusted.
In the present embodiment, the speed of the enemy vehicle 20b is uniformly adjusted, but the speed of the host vehicle 20a may be adjusted.
Specifically, in the same manner as the speed adjustment of the enemy vehicle 20b, the speed adjustment Δv is obtained from the relative distance D between the host vehicle 20a and the leading enemy vehicle 20c according to the speed adjustment calculation formula 540, and adjust. Thereby, for example, when the speed of the host vehicle 20a is increased, the speed of the enemy vehicle 20b is relatively increased.
[0097]
The speed adjustment calculation formula 540 employed at this time employs a calculation formula whose sign is opposite to that of the calculation formula applied to the enemy vehicle 20b. That is, for example, when the function f shown in FIG. 4 (applied to the enemy vehicle 20b) is applied to the host vehicle 20a, the following function f ′ is adopted.
f ′ = − f
This is because, for example, when the host vehicle 20a precedes the leading enemy vehicle 20c, the speed of the enemy vehicle 20b is decreased, that is, the speed of the host vehicle 20a is relatively increased.
[0098]
(E) How to obtain the speed after adjustment.
The method of obtaining the adjusted speed applied to the enemy vehicle 20b is not limited to the above-described method.
For example, from the relative distance D between the host vehicle 20a and the leading enemy vehicle 20c and the speed v of both vehicles, the leading enemy vehicle 20c can catch up with the leading enemy vehicle 20c after a predetermined frame. Find the speed of. And it is good also as applying this calculated | required speed uniformly with respect to the enemy vehicle 20b.
[0099]
(F) Applies to other than player characters.
The character that can be the host vehicle 20a may not be a character (player character) to be operated by the player.
Specifically, for example, it is assumed that the operation of the motorcycle 20 running on the race course 10 is controlled by a computer, and the player selects one of these motorcycles 20 to give a medal Suppose you enjoy this game by betting. In such a case, the present invention may be applied assuming that the motorcycle selected by the player corresponds to the own vehicle 20a in the present embodiment.
[0100]
(G) A game device without a display screen.
In the present embodiment, the case where the present invention is applied to a game device having a display unit has been described. However, the present embodiment can also be applied to the game device 600 shown in FIG.
[0101]
FIG. 13 is an external view showing an example of a housing of the game apparatus 600.
As shown in the figure, the housing of the game apparatus 600 includes a base 30 and an operation terminal 40.
The base 30 is provided with a plurality of models (bike models) 21 imitating a motorcycle, in which a race course 11 is formed, and which can be moved on the race course 11.
The operation terminal 40 includes an operation panel 41 on which a player executes a game operation, and a speaker (not shown) for outputting game sound effects. That is, the player located on the operation terminal 40 listens to the game sound output from the speaker and operates the operation panel 41 while watching the race course 11 formed on the base 30, so that the motorcycle on the race course 11 is operated. Move the model 21 and enjoy the bike racing game.
[0102]
FIG. 14 is a block diagram illustrating an example of a functional configuration of the game apparatus 600. In the figure, the same reference numerals are given to the same elements as those in the functional block shown in FIG. 5, and the description thereof is omitted.
As shown in FIG. 14, the game apparatus 600 includes an input unit 200, a drive unit 700, a processing unit 400, and a storage unit 500.
[0103]
The input unit 200 is for the player to input operation data relating to the progress of the game, and corresponds to the operation panel 41 in FIG.
The drive unit 700 is a functional unit corresponding to the base 30 in FIG. 13, and moves the motorcycle model 21 on the race course 11 based on a control signal from the drive control unit 430.
[0104]
The processing unit 400 includes a game calculation unit 410 and a drive control unit 430.
The game calculation unit 410 has a function of specifying a motorcycle model 21 (corresponding to the host vehicle 20a in the above embodiment) 21 to be operated by the player among the plurality of motorcycle models 21.
The drive control unit 430 outputs, to the drive unit 700, a control signal for controlling the operation of the motorcycle model 21 to be operated by the player based on the calculation result by the game calculation unit 410.
[0105]
In the game apparatus 600, when a plurality of players execute a game at the same time, the game apparatus 600 may be applied to the motorcycle model 21 to be operated by any player.
[0106]
In the present embodiment, a motorcycle racing game has been described as an example. However, any game in which a plurality of characters move on the same course can be applied. A race game, a boat race game, a horse race game, etc. are mentioned.
[0107]
【Effect of the invention】
According to the present invention, for example, in a racing game such as a car or a motorcycle, an unnatural game development in which enemy cars are densely packed around the host vehicle and the difference between the head and the tail is reduced as the race progresses. Can be prevented.
[Brief description of the drawings]
FIG. 1 is a diagram showing a race course.
FIG. 2 is a diagram for explaining the expression of the position of a motorcycle on a race course.
FIG. 3 is a diagram for explaining a relative position between the host vehicle and a leading enemy vehicle.
FIG. 4 is a diagram illustrating an example of a relationship between a relative speed D and a speed adjustment amount Δv.
FIG. 5 is a diagram illustrating an example of functional blocks in the present embodiment.
FIG. 6 is a diagram illustrating an example of a ranking table.
FIG. 7 is a diagram illustrating an example of a position table.
FIG. 8 is a diagram illustrating an example of a speed table.
FIG. 9 is a flowchart for explaining speed adjustment processing;
FIG. 10 is a diagram illustrating an example of a hardware configuration capable of realizing the game device according to the present embodiment.
FIG. 11 is a diagram showing an example in which the present invention is applied to an arcade game device.
FIG. 12 is a diagram showing an example in which the present invention is applied to a consumer game device.
FIG. 13 is a diagram showing a modification of the game device to which the present invention is applied.
FIG. 14 is a diagram showing a modification of the functional block of the present invention.
[Explanation of symbols]
10 race course
11 Starting point
12 Centerline
20 motorcycle
20a own car
20b Enemy vehicle
20c Leading enemy car
100 game devices
200 Input section
300 Display section
400 processor
410 Game calculation unit
411 Leading enemy vehicle identification part
412 Relative distance calculator
413 Speed adjustment calculation unit
414 Speed adjustment unit
415 Position calculation unit
500 storage unit
510 ranking table
520 position table
530 speed table
540 Speed adjustment calculation formula
550 Speed adjustment program
560 game program
600 Game device (variation)
30 base
40 Operation terminal
41 Operation panel
700 Drive unit
400 processor
430 Drive control unit

Claims (6)

コンピュータに、プレーヤキャラクタをプレーヤの操作に基づいて移動制御させるとともに、複数のコンピュータ制御キャラクタそれぞれを当該コンピュータ制御キャラクタに設定された性能に基づいて移動制御させることで、所与の目標地点に向かって移動するゲーム、を実行させるためのプログラムであって、
前記複数のコンピュータ制御キャラクタの内、一のキャラクタを特定する特定手段、
前記プレーヤキャラクタが前記一のキャラクタに先行している場合には、前記複数のコンピュータ制御キャラクタそれぞれの移動速度を増加させる速度調整方向に調整するための速度調整分を前記一のキャラクタと前記プレーヤキャラクタとの距離差を用いて演算し、前記一のキャラクタが前記プレーヤキャラクタに先行している場合には、前記複数のコンピュータ制御キャラクタそれぞれの移動速度を減少させる速度調整方向に調整するための速度調整分を前記一のキャラクタと前記プレーヤキャラクタとの距離差を用いて演算する速度調整分演算手段、
前記複数のコンピュータ制御キャラクタそれぞれについて、当該コンピュータ制御キャラクタの移動速度を、前記速度調整分、前記速度調整方向に調整する速度調整手段、
として前記コンピュータを機能させるためのプログラム。
By causing the computer to control the movement of the player character based on the player's operation, and to control the movement of each of the plurality of computer controlled characters based on the performance set for the computer controlled character, toward the given target point A program for executing a moving game,
A specifying means for specifying one of the plurality of computer controlled characters;
If the player character precedes the one character, the speed adjustment amount for adjusting the moving speed of each of the plurality of computer controlled characters in the speed adjustment direction is set to the one character and the player character. When the one character precedes the player character, a speed adjustment for adjusting in the speed adjustment direction that reduces the moving speed of each of the plurality of computer controlled characters A speed adjustment calculation means for calculating a minute using a distance difference between the one character and the player character;
For each of the plurality of computer controlled characters, a speed adjusting means for adjusting the moving speed of the computer controlled character in the speed adjustment direction and the speed adjustment direction,
A program for causing the computer to function as
請求項1において、
前記特定手段が、前記複数のコンピュータ制御キャラクタの内、最も先頭に位置するキャラクタを前記一のキャラクタとして特定する、ように前記コンピュータを機能させるためのプログラム。
In claim 1,
A program for causing the computer to function so that the specifying means specifies the first character among the plurality of computer controlled characters as the one character.
請求項1又は2において、
前記速度調整分演算手段が、更に、前記ゲームの進行状況を用いて、前記速度調整分を決定する、ように前記コンピュータを機能させるためのプログラム。
In claim 1 or 2,
A program for causing the computer to function so that the speed adjustment calculation unit further determines the speed adjustment using the progress of the game.
請求項1〜3の何れかにおいて、
1)前記プレーヤのプレイレベル、2)前記ゲームの経過時間、3)最も先頭に位置する前記コンピュータ制御キャラクタと前記プレーヤキャラクタ間の距離差、の何れかに基づいて、移動速度の調整を実行するか否かを判定する調整実行判定手段、として前記コンピュータに機能させ、
前記速度調整手段が、前記調整実行判定手段により実行すると判定された場合に、前記移動速度を調整する、ように前記コンピュータを機能させる、
ためのプログラム。
In any one of Claims 1-3,
The moving speed is adjusted based on one of 1) the play level of the player, 2) the elapsed time of the game, and 3) the difference in distance between the computer control character located at the top and the player character. Causing the computer to function as adjustment execution determination means for determining whether or not
Causing the computer to function so as to adjust the moving speed when the speed adjustment means is determined to be executed by the adjustment execution determination means;
Program for.
請求項1〜の何れかに記載のプログラムを記憶するコンピュータ読み取り可能な情報記憶媒体。Computer-readable information storage medium storing the program according to any one of claims 1-4. プレーヤキャラクタをプレーヤの操作に基づいて移動制御するとともに、複数のコンピュータ制御キャラクタそれぞれを当該コンピュータ制御キャラクタに設定された性能に基づいて移動制御することで、所与の目標地点に向かって移動するゲームを実行するためのゲーム装置であって、
前記複数のコンピュータ制御キャラクタの内、一のキャラクタを特定する特定手段と、
前記プレーヤキャラクタが前記一のキャラクタに先行している場合には、前記複数のコンピュータ制御キャラクタそれぞれの移動速度を増加させる速度調整方向に調整するための速度調整分を前記一のキャラクタと前記プレーヤキャラクタとの距離差を用いて演算し、前記一のキャラクタが前記プレーヤキャラクタに先行している場合には、前記複数のコンピュータ制御キャラクタそれぞれの移動速度を減少させる速度調整方向に調整するための速度調整分を前記一のキャラクタと前記プレーヤキャラクタとの距離差を用いて演算する速度調整分演算手段と、
前記複数のコンピュータ制御キャラクタそれぞれについて、当該コンピュータ制御キャラクタの移動速度を、前記速度調整分、前記速度調整方向に調整する速度調整手段と、
を備えるゲーム装置。
A game that moves toward a given target point by controlling the movement of the player character based on the player's operation and controlling the movement of each of the plurality of computer controlled characters based on the performance set for the computer controlled character. A game device for executing
A specifying means for specifying one of the plurality of computer controlled characters;
If the player character precedes the one character, the speed adjustment amount for adjusting the moving speed of each of the plurality of computer controlled characters in the speed adjustment direction is set to the one character and the player character. When the one character precedes the player character, a speed adjustment for adjusting in the speed adjustment direction that reduces the moving speed of each of the plurality of computer controlled characters A speed adjustment calculating means for calculating a minute using a distance difference between the one character and the player character;
For each of the plurality of computer controlled characters, speed adjusting means for adjusting the moving speed of the computer controlled character in the speed adjustment direction and the speed adjustment direction;
A game device comprising:
JP2001303681A 2001-09-28 2001-09-28 Program, information storage medium, and game device Expired - Lifetime JP5122710B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001303681A JP5122710B2 (en) 2001-09-28 2001-09-28 Program, information storage medium, and game device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001303681A JP5122710B2 (en) 2001-09-28 2001-09-28 Program, information storage medium, and game device

Publications (2)

Publication Number Publication Date
JP2003103048A JP2003103048A (en) 2003-04-08
JP5122710B2 true JP5122710B2 (en) 2013-01-16

Family

ID=19123732

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001303681A Expired - Lifetime JP5122710B2 (en) 2001-09-28 2001-09-28 Program, information storage medium, and game device

Country Status (1)

Country Link
JP (1) JP5122710B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4071666B2 (en) * 2003-04-11 2008-04-02 株式会社ハル研究所 GAME DEVICE AND PROGRAM
JP4169682B2 (en) * 2003-11-04 2008-10-22 任天堂株式会社 Race game program and game device
JP2010134101A (en) * 2008-12-03 2010-06-17 Japan Radio Co Ltd Driving simulator
JP2012081154A (en) * 2010-10-14 2012-04-26 Konami Digital Entertainment Co Ltd Game device
JP5985610B2 (en) * 2012-04-03 2016-09-06 株式会社コナミデジタルエンタテインメント Game system, program
JP5450718B2 (en) * 2012-06-11 2014-03-26 株式会社スクウェア・エニックス GAME DEVICE AND GAME PROGRAM

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2747405B2 (en) * 1992-11-12 1998-05-06 株式会社ナムコ Game equipment
JP3995817B2 (en) * 1998-12-11 2007-10-24 株式会社バンダイナムコゲームス Game machine and information storage medium

Also Published As

Publication number Publication date
JP2003103048A (en) 2003-04-08

Similar Documents

Publication Publication Date Title
JP3068205B2 (en) Image processing apparatus, game machine using this processing apparatus, image processing method, and medium
JP3972230B2 (en) GAME DEVICE, GAME DEVICE CONTROL METHOD, AND RECORDING MEDIUM
KR100648539B1 (en) Game machine
US20030207704A1 (en) Game machine and game program
JP3767094B2 (en) Display control method for a plurality of characters operated by a player in a video game apparatus
JP5122710B2 (en) Program, information storage medium, and game device
JP3786670B1 (en) Program, information storage medium, and image generation system
CN101524591A (en) Game device
JP2000296261A (en) Game machine and information storage medium
US7843453B2 (en) Video generation device, load display method, recording medium, and program
JP3123957B2 (en) Three-dimensional game device and information storage medium
JP2004159922A (en) Image generation system, program and information storage medium
JP4136644B2 (en) PROGRAM, INFORMATION STORAGE MEDIUM, AND GAME DEVICE
JP2001276435A (en) Game device and image processing method
JPH0927044A (en) Simulation device and image composting method
JP2018015375A (en) Game program and game device
JP3280296B2 (en) Simulator, image generation device, and information storage medium
JP2007301014A (en) Program, information storage medium, and image generating system
JP4826923B2 (en) Game device
JP3084410B2 (en) How to start a drive game on an electronic game machine
JP2006268818A (en) Program, information storage medium and image generation system
JP4062446B2 (en) Electronic play equipment
JP3254091B2 (en) Three-dimensional simulator device and image synthesizing method
JP4083286B2 (en) Electronic play equipment
JP4108167B2 (en) Image generating apparatus and information storage medium

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080919

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20080919

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20081017

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20081017

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110920

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111121

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120605

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120803

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20121023

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121025

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5122710

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20151102

Year of fee payment: 3

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250