JP4804240B2 - シューティングゲームの敵機攻撃制御方法、その装置、そのプログラム及びその記録媒体 - Google Patents
シューティングゲームの敵機攻撃制御方法、その装置、そのプログラム及びその記録媒体 Download PDFInfo
- Publication number
- JP4804240B2 JP4804240B2 JP2006172831A JP2006172831A JP4804240B2 JP 4804240 B2 JP4804240 B2 JP 4804240B2 JP 2006172831 A JP2006172831 A JP 2006172831A JP 2006172831 A JP2006172831 A JP 2006172831A JP 4804240 B2 JP4804240 B2 JP 4804240B2
- Authority
- JP
- Japan
- Prior art keywords
- aircraft
- attack
- time
- speed
- cell
- 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 - Fee Related
Links
Images
Description
プレーヤーが適当な入力手段(例えばキーボードのキー、多方向押圧可能なスイッチ、操縦桿などである。)を操作すると、その操作が画面上の自機のW種類の行動に変換され、自機がその操作に応じた行動をする。また、ユーザが適当な入力手段(例えばキーボードのキー、多方向押圧可能なスイッチ、操縦桿に備えられたボタンなどである。)を操作すると、その操作が画面上の自機の攻撃行動に変換され、自機が攻撃弾を発射し、敵機や種々のアイテムに対してダメージを与えることができるようになっている。
コンピュータ操作型の場合、敵機の行動制御及び敵機の自機に対する攻撃弾の発射制御は、コンピュータの制御プログラムに従って処理されている。
(参考文献)Jonathan Schaeffer,H.Jaap van den Herik,“Games,computers,and artificial intelligence”,Artificial Intelligence,2002,Vol.134,p1-7
このように、敵機が現時点より過去の時点で発射した既存攻撃弾あるいは他の敵機が現時点より過去の時点で発射した既存攻撃弾の位置及びその速度を考慮した上で、画面上における自機の将来の位置(升目)を予測し、予測位置における自機との衝突の可能性が高い攻撃弾の速度を速度候補の中から決定して攻撃弾を発射する。つまり、敵機の攻撃弾の発射に際して、将来において攻撃弾が自機に対して衝突する可能性の高い速度を割り出し、この速度で攻撃弾を発射するのである。
本発明の特徴の要旨は、画面を格子状に分割し、まず、現時点より後の各時点で格子の各升目に自機の存在する確率をそれぞれ求め、次いで、敵機の攻撃弾の速度ごとに、各時点における飛行経路上で各升目の確率総和を求め、高い確率総和となる速度を選択して敵機が攻撃弾を発射することにある。この敵機の攻撃弾の発射は、個別の敵機ごとに速度が決定されて行われる。なお、攻撃弾の速度は「速さ」と「向き」の有するベクトル量であり、そのいずれか一方あるいは両者を決定することができる。
或る時点tにおける或る升目sに自機が存在する確率は、C(s,t)を、全ての升目についての総和であるΣsC(s,t)で除したものとして表される。
なお、現時点t0での自機移動速度が、現時点より後の或る時点τまで継続されるとし、その自機移動速度で移動した自機が時点τまでに通過した升目及び時点τで自機が存在すると予測される升目における自機存在確率を1とし、他の升目における自機存在確率を0とすることもできる。
或る敵機において攻撃弾の速度を決定するに当たり、その時点では既に、画面上に当該敵機や他の敵機から発射された攻撃弾(既存攻撃弾)が表示されている場合がある。そこで、現時点より後の各時点で、既存攻撃弾が存在すると予測される位置を含む升目及び当該位置から所定の距離内に位置する升目における自機の存在確率を、その時点において0にリセットするのである。これはC(s,t)=0とするに等しい。このことは、自機のプレーヤーが、敵機からの攻撃弾を回避する行動を自機が取るように入力装置の操作を行うという一般的傾向に基づく。
ここで「既存攻撃弾が存在すると予測される位置から所定の距離」とは、攻撃弾と自機との衝突判定に用いられる距離である。このような距離の内側、つまり攻撃弾の中心により近い領域では、自機は攻撃弾と衝突したと判定されることになる。換言すると、「既存攻撃弾が存在すると予測される位置から所定の距離」が張る領域、つまり衝突判定形状を定義し、この衝突判定形状を用いて自機と攻撃弾との衝突判定ができる。
例えば衝突判定形状を円とする場合、衝突判定円は、例えば、衝突判定円の中心を攻撃弾形状の中心とし、衝突判定円の半径を(攻撃弾形状の中心から攻撃弾形状の外周への最短距離)+(自機形状の中心から自機形状の外周への最短距離)とすることができる。但し、半径は、(攻撃弾形状の中心から攻撃弾形状の外周への最長距離)+(自機形状の中心から自機形状の外周への最短距離)などのようにしてもよい。要するに、衝突判定円の半径は、攻撃弾の形状の指標となる長さと、自機の形状の指標となる長さの和とする。ここで指標の採り方は、自機や攻撃弾の形状の定義によって適宜に定めることができる。簡単な例では、自機や攻撃弾などの形状を円とすればこの半径を、矩形とすればその長辺の長さの半分を指標とすることもできる。上記のように衝突判定円を定義すれば、この衝突判定円上あるいは衝突判定円内に自機の位置座標が存在すれば、自機は攻撃弾に衝突したと判定できる。
衝突判定形状を矩形とする場合、一例としてより具体的に攻撃弾形状を横a、縦bの長方形、自機形状を横c、縦dの長方形とした場合で説明すれば、衝突判定矩形は、その中心を攻撃弾形状の中心とし、横a+c、縦b+dの長方形とすることができる。このように衝突判定矩形を定義すれば、この衝突判定矩形上あるいは衝突判定矩形内に自機の位置座標が存在すれば、自機は攻撃弾に衝突したと判定できる。
衝突判定形状の中心は、既述の自機・敵機・攻撃弾の基準点の設定と同様であり、例えば衝突判定円ならばその中心、衝突判定矩形ならばその外接円の中心などとすることができる。
本発明では、この問題を次のようにして解決する。
即ち、攻撃弾の位置座標を、当該位置座標が存在する升目の四隅の角(かど)または中心のいずれかであると看做し、この看做された位置座標(以下、「看做し位置座標」とも云う。)を中心とする衝突判定形状に一部または全部が含まれる升目のC(s,t)を0に設定する。換言すれば、既存攻撃弾が存在すると予測される位置を含む升目の四隅の角またはその中心のいずれか1つの位置から所定の距離内に位置する升目のC(s,t)を0に設定するのである。なお、看做し位置座標を中心とする衝突判定形状に一部が含まれる升目のC(s,t)を0に設定することは必須の要件ではない。少なくとも看做し位置座標を中心とする衝突判定形状に全部が含まれる升目のC(s,t)を0に設定すればよい。本明細書では、看做し位置座標を中心とする衝突判定形状に一部が含まれる升目のC(s,t)も0に設定する場合として説明する。
このことを図14を参照して説明する。図14中、■印は、看做し位置座標を表し、破線は格子を表している。また図14では、衝突判定形状が衝突判定円あるいは衝突判定矩形の場合を示している。図14(a)は、升目が正方形の場合であり、かつ、攻撃弾の位置座標を当該位置座標が存在する升目の四隅の角のうち1つに看做した場合である。図14(c)は、升目が正方形の場合であり、かつ、攻撃弾の位置座標を当該位置座標が存在する升目の中心に看做した場合である。図14(b)は、升目が縦に長い長方形の場合であり、かつ、攻撃弾の位置座標を当該位置座標が存在する升目の四隅の角のうち1つに看做した場合である。図14(d)は、升目が縦に長い長方形の場合であり、かつ、攻撃弾の位置座標を当該位置座標が存在する升目の中心に看做した場合である。いずれの場合でも、0が記入された升目は衝突判定形状に一部または全部が含まれる升目であり、これらの升目は、攻撃弾の位置座標を当該位置座標が存在する升目の四隅の角または中心のうち予め決められた1つに看做すというルールと同種の攻撃弾において衝突判定形状は同一とするというルールを維持すれば、看做された攻撃弾の位置座標に対して一意である。そこで、一意に定まる升目の集まりに関する情報を例えばテンプレート〔図14の網掛け部分〕として記憶手段に記憶しておけば、看做された攻撃弾の位置座標に対してテンプレートを適用するだけで、所望の升目のC(s,t)を0に設定できる。
このように、攻撃弾の位置座標および衝突判定形状から厳密に、当該衝突判定形状に一部または全部が含まれる升目を特定する処理を行わなくても、看做し位置座標に対してテンプレートを適用するだけの処理で簡便に所望の升目のC(s,t)を0に設定できるのである。
なお、一意に定まる升目の集まりに関する情報を、テンプレートとしてではなく、例えば攻撃弾の位置座標が存在する升目を取り囲む升目の数として記憶手段に記憶するなどとしてもよい。
なお、さらに簡便な処理とするならば、攻撃弾の位置座標が升目の如何なる部分にあろうが、常に予め定めた看做し位置座標とする構成としてもよい。つまり、例えば、攻撃弾の位置座標が升目の如何なる部分にあろうとも、升目の左上の角を看做し位置座標とするとして画一的に処理してもよいのである。
本発明の実施形態について、図面を参照しながら説明する。
<シューティングゲームの敵機攻撃制御装置>
本発明の実施形態であるシューティングゲームの敵機攻撃制御装置(1)は、それ単体で独立に存在するよりは、コンピュータを構成するエンティティとして存在するのが一般的である(勿論、単体独立のエンティティとして存在することを排除する趣旨ではない。)。さらに云えば、シューティングゲームの敵機攻撃制御装置(1)は、コンピュータとは容易に分離可能にコンピュータを構成するエンティティではなく、コンピュータ自体を或る機能に着眼して片面的に評価したものであるのが一般的である。要するに、シューティングゲームの敵機攻撃制御装置(1)は、シューティングゲームを実行するコンピュータそのものであることが一般的である。ここでコンピュータは、既述のとおりパーソナルコンピュータのような汎用機やゲーム専用機などを広く指す。
以下、シューティングゲームの敵機攻撃制御装置(1)を単に敵機攻撃制御装置(1)と云うことにする。
敵機攻撃制御装置(1)は、入力装置が接続可能な入力部(11)、表示装置が接続可能な出力部(12)、CPU(Central Processing Unit;14)〔キャッシュメモリなどを備えていてもよい。〕、メモリであるRAM(Random Access Memory)(15)、ROM(Read Only Memory)(16)やハードディスクである外部記憶装置(17)、並びにこれらの入力部(11)、出力部(12)、CPU(14)、RAM(15)、ROM(16)、外部記憶装置(17)間のデータのやり取りが可能なように接続するバス(18)などを備えている。また必要に応じて、敵機攻撃制御装置(1)に、ビデオカード(Video Card)やCD−ROMなどの記憶媒体を読み書きできる装置(ドライブ)などを設けるとしてもよい。
既述のとおり、敵機攻撃制御装置(1)は、シューティングゲームを実行するコンピュータであるところ、外部記憶装置(17)にはシューティングゲームを実行するに必要な種々のプログラムなどが保存記憶されているが、本発明の要旨に関しないので説明を略する。また、そのプログラムが解釈されてシューティングゲームが実行される仕組みの詳細も本発明の要旨に関しないから説明を略する。
なお、この実施形態における自機存在確率計算プログラムは、現時点t0(=0)に自機が存在する升目s0から現時点より後の或る時点tにおける或る升目sまでの道筋の総数C(s,t)を、既存攻撃弾の存在を考慮して求めるためのプログラム(自機存在場合数計算プログラム)と、自機存在場合数計算プログラムの処理で得られた各升目における道筋の総数C(s,t)を用いて自機存在確率を求めるためのプログラム(確率計算プログラム)を含む。
次に、図3及び図4を参照して、敵機攻撃制御装置(1)における敵機攻撃制御処理(攻撃弾発射速度の決定)の流れを叙述的に説明する。
攻撃弾発射速度の決定には、3通りの方式がある。1つ目は、攻撃弾の「速さ」は固定とし「向き」を決定する方式である。2つ目は、攻撃弾の「向き」は固定とし「速さ」を決定する方式である。3つ目は、攻撃弾の「速さ」及び「向き」の双方を決定する方式である。
いずれの方式を選択するにしても、本発明の要旨に影響はなく適宜に設計変更可能であるから、この実施形態では、1つ目の方式、つまり、攻撃弾の「速さ」は固定とし「向き」を決定する方式として説明する。また、「向き」は、2つ以上の候補(この実施形態では5つの候補)が予め定められており、これらの候補の中から「向き」を決定する。
自機の行動は、図1(a)に示したとおりとする。
この実施形態では、制御部(190)が敵機の攻撃弾の発射を行うことを決定すると、本発明である敵機攻撃制御処理(攻撃弾発射速度の決定)が実行されるようになっている。
これは、現時点t0(=0)に自機(30)が存在する升目s0=(4,4)から、処理単位時間1で移動可能な升目が、静止という自機(30)の行動を含めて(3,3)、(3,4)、(3,5)、(4,3)、(4,4)、(4,5)、(5,3)、(5,4)、(5,5)であり、現時点t0(=0)に自機(30)が存在する升目s0=(4,4)からの道筋がいずれも1通りの道筋しか存在しないことを示している。
これは、時点t=1に自機(30)が存在する升目s=(3,3)、(3,4)、(3,5)、(4,3)、(4,4)、(4,5)、(5,3)、(5,4)、(5,5)から、処理単位時間1で移動可能な升目が、静止という自機(30)の行動を含めて(2,2)、(2,6)、(6,2)、(6,6)、(2,3)、(2,5)、(3,2)、(3,6)、(5,2)、(5,6)、(6,3)、(6,5)、(2,4)、(4,2)、(4,6)、(6,4)、(3,3)、(3,5)、(5,3)、(5,5)、(3,4)、(4,3)、(4,5)、(5,4)、(4,4)であり、現時点t0(=0)に自機(30)が存在する升目s0=(4,4)からの道筋がそれぞれの数字が示す数だけあることを示している。
時点2での升目(3,3)のC(s,2)を求める〔s=(3,3)〕。このとき、時点1でのC(s,1)は、1である。升目s=(3,3)の周囲の升目のうち1処理単位時間で自機が移動可能な升目s′は、(2,2)、(2,3)、(2,4)、(3,2)、(3,4)、(4,2)、(4,3)、(4,4)である。升目s′=(2,2)、(2,3)、(2,4)、(3,2)、(4,2)のC(s′,1)はそれぞれ0であり、升目s′=(3,4)、(4,3)、(4,4)のC(s′,1)はそれぞれ1である〔図8(a)参照〕。従って、これらを式(1)に代入すると升目s=(3,3)のC(s,2)は、C(s,2)=1+(1+1+1+0+0+0+0+0)=4となる〔図8(b)参照〕。
上記のように現時点より後の各時点tにおける各升目のC(s,t)を求めるが、一般的には、自機位置予測の観点からはより先の時点まで予測するのが望ましいが、遊興性を損なわないようにする観点からはむやみに先の時点まで予測するのは好ましくない。また、このことは演算処理装置の処理能力などにも依存する。従って、どれくらい先の時点まで自機の位置を予測するかは、自機位置予測精度、遊興性、演算処理装置の処理能力などを考慮して予め決定しておけばよい(ここでの説明や図面では、理解を容易にするため時点2までしか示していない。)。
他の敵機もしくは攻撃弾を発射しようとしている敵機(40)によって過去に発射済みの既存攻撃弾の影響は、C(s、t)の値に反映される。既存攻撃弾が現時点より後の或る時点で或る升目に存在しているとき、その時点では、攻撃弾位置座標を含む升目と攻撃弾位置座標から所定の距離内に位置する升目では、自機(30)が攻撃弾と接触する可能性がある。このため、プレーヤーの一般的傾向として、そのような升目への自機の移動は行われないと考えられる。そこで、そのような升目のC(s、t)の値を0にする。つまり、その時点でのその升目における自機(30)の存在確率は0になる。
図9では、自機(30)・敵機(40)・既存攻撃弾のそれぞれの外形を内包する最小の円を、衝突判定に用いる自機(30)・敵機(40)・既存攻撃弾の形状と定義し、衝突判定円を、中心を既存攻撃弾の中心〔既存攻撃弾の形状の中心である。〕とし、半径を(既存攻撃弾の形状の半径)+(自機の形状の半径)とする。図9では、衝突判定円の半径は、丁度、正方形の升目の一辺に等しいとしている。
時点1では、格子(50)の右上の隅に既存攻撃弾の位置座標(あるいは看做し位置座標)があると予測されるとする〔図9(a)参照〕。このとき、衝突判定円内に位置する升目(1,7)のC(s、t)の値を0にする。但し、この場合では、もともと升目(1,7)のC(s、t)の値は0であるからリセットする必要はない。なお、「衝突判定円内に位置する升目」は、衝突判定円内に完全に内包される升目、及び、升目の一部分が衝突判定円内に含まれる升目である。
時点2では、升目(3,5)の右上の隅に既存攻撃弾の位置座標(あるいは看做し位置座標)があると予測されるとしている〔図9(b)参照〕。既述のとおり各攻撃弾は、敵機から発射される際に決定された速度を発射後において維持することから各時点での位置座標を予測可能である。このとき、衝突判定円内に位置する升目(2,5)、(2,6)、(3,5)、(3,6)のC(s、t)の値を0にする。
時点tで升目sにおける自機存在確率P(s,t)は、時点tでの全升目の場合数の和ΣsC(s,t)を分母とし、升目sの場合数C(s,t)を分子とした式(2)で得る。各時点における各升目での自機存在確率P(s,t)は記憶部(20)に記憶される。
この実施形態では、5つの「向き」の候補から選択して新攻撃弾の発射速度を決定する。敵機(40)から発射された新攻撃弾の現時点より後の各時点での予測位置Se(t)i〔iは、5つの候補を表すパラメータとする。〕を候補ごとに、敵機(40)の位置座標を始点とする位置ベクトルで図10に示してある(図10中の5つの「向き」は一例に過ぎない。)。この新攻撃弾が、自機(30)に対して与える脅威を増すためには、新攻撃弾が自機(30)に衝突する可能性を高める必要がある。即ち、新攻撃弾が移動する各時点において、自機存在確率P(s,t)の高い升目に新攻撃弾が存在していることが必要である。このような考えの下、各時点での新攻撃弾の予測位置が存在する升目での自機存在確率の全ての時点での和である自機存在確率和ΣtP(Se(t)i,t)をそれぞれの候補ごとに計算し、自機存在確率和ΣtP(Se(t)i,t)が例えば最大となる「向き」を新攻撃弾の「向き」として決定する〔図11(a)〕。なお、自機存在確率和ΣtP(Se(t)i,t)のSe(t)iは、位置ベクトルSe(t)iの終点の位置座標であり、P(Se(t)i,t)は、位置ベクトルSe(t)iの終点の位置座標を含む升目の自機存在確率を表している。
自機存在確率P(s,t)の算出において、攻撃弾発射時点での自機移動速度を考慮し、その移動速度が過去に或る程度継続されている場合、その自機移動先の升目における自機存在確率P(s,t)の値をいずれも1にする〔その他の升目の自機存在確率は0とする。〕。これは、過去から現時点までの自機移動速度が将来もある程度維持されるであろうとの見通しに基づく。自機存在確率P(s,t)の値を1とする時点の上限は、例えばプレーヤーの操作履歴を保存しておき、プレーヤーが移動方向の変更を行う操作の時間間隔の平均値を求め、その値を利用すればよい。具体例として、図12に示すように、自機存在場合数計算部(142)は、記憶部(20)から操作時間間隔平均を取得し、操作時間間隔平均が3処理単位時間であれば、現時点から3処理単位時間先、つまり時点3まで現時点の自機移動速度を維持するとし、その時点3までに自機移動速度で通過する升目及び時点3で自機が存在する升目の自機存在確率P(s,t)の値をいずれも1とすればよい。あるいは、現時点の自機移動速度を開始した時点を記憶部(20)に記憶しておき、操作時間間隔平均と開始時点との残差を求め、その残差に相当する時点まで現時点の自機移動速度を維持するとし、その時点までに自機移動速度で通過する升目及び当該時点で自機が存在する升目の自機存在確率P(s,t)の値をいずれも1としてもよい。
この点、以上の実施形態で説明したとおり、本発明の敵機攻撃制御手法によれば、次のような効果も享受される。複数の敵機がそれぞれ、各々の制御アルゴリズム中で非同期に実行するものでありながらも、各敵機が攻撃弾発射時点で、自身が発射する攻撃弾がいかに自機にとって好ましくないものとするかを判断することと同値であると評価でき、結果的には、全体としての複数の敵機の連携を生むものとなる。つまり、いわゆる創発的な、複数の敵機の連携が発生するのである。
141 自機存在確率計算部
142 自機存在場合数計算部
143 確率算出部
144 攻撃弾発射速度決定部
20 記憶部
Claims (10)
- 自機存在確率計算手段と攻撃弾発射速度決定手段を備えたコンピュータが、画面上に自機及び1つあるいは複数の敵機が表示され、敵機がプレーヤーの操作する自機に対して攻撃弾を発射するシューティングゲームの敵機攻撃制御を行う敵機攻撃制御方法であって、
上記自機存在確率計算手段が、
敵機が攻撃弾を発射する時点(現時点)において、敵機が現時点より過去の時点で発射した既存攻撃弾あるいは他の敵機が現時点より過去の時点で発射した既存攻撃弾の位置及びその速度、並びに現時点の自機の位置関係に基づき、現時点より後の各時点で、画面を格子状に分割した当該格子の各升目において、既存攻撃弾が存在すると予測される位置に対して自機が一定以内の距離に近づかずに升目に存在しうる確率(自機存在確率)を各時点の各升目ごとに求める自機存在確率計算ステップと、
上記攻撃弾発射速度決定手段が、
敵機が攻撃弾を発射する速度の2つ以上の候補について、それぞれの候補の速度で発射された攻撃弾が各時点ごとに通過する各升目における自機存在確率の和(自機存在確率和)をそれぞれの速度の候補ごとに求め、自機存在確率和が所定の条件を満たす候補の速度を攻撃弾発射速度として決定する攻撃弾発射速度決定ステップと
を有することを特徴とするシューティングゲームの敵機攻撃制御方法。 - 自機が存在する升目Sから1処理単位時間で移動可能な升目は、升目Sに接して取り囲む升目の全部または一部であるとし、
上記自機存在確率計算ステップは、
現時点t0に自機が存在する升目s0から現時点より後の或る時点tにおける或る升目sまでの道筋の総数C(s,t)を、升目sを取り囲む升目のうち1処理単位時間で自機が移動可能な升目s′の時点t−1における道筋の総数C(s′,t−1)の総和(但し、s′に関する総和である。)と升目sの時点t−1における道筋の総数C(s,t−1)との和で求め、さらに、時点tにおいて、既存攻撃弾が存在すると予測される位置を含む升目及び当該位置から所定の距離内に位置する升目の道筋の総数C(s,t)を0に設定する自機存在場合数計算ステップと、
時点tにおける升目s1に自機が存在する自機存在確率を、C(s1,t)を、全ての升目についての道筋の総数C(s,t)の総和であるΣsC(s,t)で除したものとして求める確率計算ステップと
を有することを特徴とする請求項1に記載のシューティングゲームの敵機攻撃制御方法。 - 自機が存在する升目Sから1処理単位時間で移動可能な升目は、升目Sに接して取り囲む升目の全部または一部であるとし、
現時点t0での自機移動速度が、現時点より後の或る時点τまで継続されるとし、その自機移動速度で移動した自機が時点τまでに通過した升目及び時点τで自機が存在すると予測される升目における自機存在確率を1とし、他の升目における自機存在確率を0とし、
上記自機存在確率計算ステップは、
時点τに自機が存在する升目sτから時点τより後の或る時点tにおける或る升目sまでの道筋の総数C(s,t)を、升目sを取り囲む升目のうち1処理単位時間で自機が移動可能な升目s′の時点t−1における道筋の総数C(s′,t−1)の総和(但し、s′に関する総和である。)と升目sの時点t−1における道筋の総数C(s,t−1)との和で求め、さらに、時点tにおいて、既存攻撃弾が存在すると予測される位置を含む升目及び当該位置から所定の距離内に位置する升目の道筋の総数C(s,t)を0に設定する自機存在場合数計算ステップと、
時点tにおける升目s1に自機が存在する確率を、C(s1,t)を、全ての升目についての道筋の総数C(s,t)の総和であるΣsC(s,t)で除したものとして求める確率計算ステップと
を有することを特徴とする請求項1に記載のシューティングゲームの敵機攻撃制御方法。 - 上記時点τは、プレーヤーが自機の移動方向の変更を行う操作の時間間隔の平均値(操作時間間隔平均)とする、あるいは、現時点t0の自機移動速度を開始した時点tsと操作時間間隔平均との残差とする
ことを特徴とする請求項3に記載のシューティングゲームの敵機攻撃制御方法。 - 上記自機存在場合数計算ステップにおいて道筋の総数C(s,t)が0に設定される、既存攻撃弾が存在すると予測される位置を含む升目及び当該位置から所定の距離内に位置する升目を、
既存攻撃弾が存在すると予測される位置を含む升目の四隅の角またはその中心のいずれか1つの位置から所定の距離内に位置する升目とする
ことを特徴とする請求項2から請求項4のいずれかに記載のシューティングゲームの敵機攻撃制御方法。 - 既存攻撃弾が存在すると予測される位置を含む升目の四隅の角のうちいずれか1つの位置とする場合に、既存攻撃弾の位置を表す基準点から最も近い角を選択する
ことを特徴とする請求項5に記載のシューティングゲームの敵機攻撃制御方法。 - 上記攻撃弾発射速度決定ステップにおいて上記所定の条件を満たす候補の速度は、
上記自機存在確率和が最大となる候補の速度、
あるいは、
一度に複数の攻撃弾を発射する場合に、上記自機存在確率和が最大のものから降順に発射すべき攻撃弾の数に等しい数の順位までの各自機存在確率和を与えた候補の速度である
ことを特徴とする請求項1から請求項6のいずれかに記載のシューティングゲームの敵機攻撃制御方法。 - 画面上に自機及び1つあるいは複数の敵機が表示され、敵機がプレーヤーの操作する自機に対して攻撃弾を発射するシューティングゲームの敵機攻撃制御装置であって、
敵機が攻撃弾を発射する時点(現時点)において、敵機が現時点より過去の時点で発射した既存攻撃弾あるいは他の敵機が現時点より過去の時点で発射した既存攻撃弾の位置及びその速度、並びに現時点の自機の位置関係に基づき、現時点より後の各時点で、画面を格子状に分割した当該格子の各升目において、既存攻撃弾が存在すると予測される位置に対して自機が一定以内の距離に近づかずに升目に存在しうる確率(自機存在確率)を各時点の各升目ごとに求める自機存在確率計算手段と、
敵機が攻撃弾を発射する速度の2つ以上の候補について、それぞれの候補の速度で発射された攻撃弾が各時点ごとに通過する各升目における自機存在確率の和(自機存在確率和)をそれぞれの速度候補ごとに求め、自機存在確率和が所定の条件を満たす候補の速度を攻撃弾発射速度として決定する攻撃弾発射速度決定手段と
を備えたことを特徴とするシューティングゲームの敵機攻撃制御装置。 - 画面上に自機及び1つあるいは複数の敵機が表示され、敵機がプレーヤーの操作する自機に対して攻撃弾を発射するシューティングゲームの敵機攻撃制御をコンピュータに行わせる敵機攻撃制御プログラムであって、
敵機が攻撃弾を発射する時点(現時点)において、敵機が現時点より過去の時点で発射した既存攻撃弾あるいは他の敵機が現時点より過去の時点で発射した既存攻撃弾の位置及びその速度、並びに現時点の自機の位置関係に基づき、現時点より後の各時点で、画面を格子状に分割した当該格子の各升目において、既存攻撃弾が存在すると予測される位置に対して自機が一定以内の距離に近づかずに升目に存在しうる確率(自機存在確率)を各時点の各升目ごとに求める自機存在確率計算処理と、
敵機が攻撃弾を発射する速度の2つ以上の候補について、それぞれの候補の速度で発射された攻撃弾が各時点ごとに通過する各升目における自機存在確率の和(自機存在確率和)をそれぞれの速度の候補ごとに求め、自機存在確率和が所定の条件を満たす候補の速度を攻撃弾発射速度として決定する攻撃弾発射速度決定処理と
をコンピュータに行わせることを特徴とするシューティングゲームの敵機攻撃制御プログラム。 - 請求項9に記載のプログラムを記録した、コンピュータに読み取り可能な記録媒体。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006172831A JP4804240B2 (ja) | 2006-06-22 | 2006-06-22 | シューティングゲームの敵機攻撃制御方法、その装置、そのプログラム及びその記録媒体 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2006172831A JP4804240B2 (ja) | 2006-06-22 | 2006-06-22 | シューティングゲームの敵機攻撃制御方法、その装置、そのプログラム及びその記録媒体 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2008000346A JP2008000346A (ja) | 2008-01-10 |
| JP4804240B2 true JP4804240B2 (ja) | 2011-11-02 |
Family
ID=39005200
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2006172831A Expired - Fee Related JP4804240B2 (ja) | 2006-06-22 | 2006-06-22 | シューティングゲームの敵機攻撃制御方法、その装置、そのプログラム及びその記録媒体 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP4804240B2 (ja) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010051514A (ja) * | 2008-08-28 | 2010-03-11 | Square Enix Co Ltd | ビデオゲーム処理装置、ビデオゲーム処理方法、およびビデオゲーム処理プログラム |
| JP7175124B2 (ja) * | 2018-08-03 | 2022-11-18 | 株式会社コーエーテクモゲームス | 情報処理装置、位置予測方法及び位置予測プログラム |
-
2006
- 2006-06-22 JP JP2006172831A patent/JP4804240B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2008000346A (ja) | 2008-01-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US12090402B2 (en) | Contextually aware communications system in video games | |
| JP5019897B2 (ja) | ゲームプログラムおよびゲーム装置 | |
| US12403394B2 (en) | Intent-based models for use in selecting actions in video games | |
| JP2000308759A (ja) | ビデオゲームのキャラクタを制御する方法、ビデオゲーム装置、及び記録媒体 | |
| US20140151960A1 (en) | Gaming system using gaming surface having computer readable indicia and method of using same | |
| JP7170397B2 (ja) | プログラム、画像処理方法、及び画像処理装置 | |
| US20240293748A1 (en) | Providing game controls through graphical user interfaces | |
| Smith et al. | Evolving Dota 2 shadow fiend bots using genetic programming with external memory | |
| JP4804240B2 (ja) | シューティングゲームの敵機攻撃制御方法、その装置、そのプログラム及びその記録媒体 | |
| JP7854453B2 (ja) | 仮想シーンに基づくグラフィック表示方法、装置、機器及びコンピュータプログラム | |
| JP6877555B1 (ja) | サーバ装置、プログラム、方法及び端末装置 | |
| JP5155841B2 (ja) | 得点可能性定量化装置及び得点可能性定量化プログラム | |
| CN117298580A (zh) | 虚拟对象的互动方法、装置、设备、介质及程序产品 | |
| CN112774204A (zh) | 一种角色碰撞规避方法、装置、设备以及存储介质 | |
| JP4976771B2 (ja) | シューティングゲームのデモンストレーション用自機行動制御方法、その装置、そのプログラムおよびその記録媒体 | |
| JP4996275B2 (ja) | 難易度判定方法、装置、プログラム | |
| KR20130124040A (ko) | 부활 강화 버프 기능을 제공하는 온라인 게임 제공 방법 및 그 게임 제공 서버 | |
| JP4996267B2 (ja) | 敵機行動制御方法、装置、プログラム及びその記録媒体 | |
| US20250242251A1 (en) | Heuristic for termination of unit movement based on population density | |
| JP6278998B2 (ja) | ゲーム方法およびゲームプログラム | |
| JP4804222B2 (ja) | シューティングゲーム難易度判定方法、その装置、そのプログラム及びその記録媒体 | |
| KR102589889B1 (ko) | 게임 ui 분석 방법 | |
| JP2006130348A (ja) | プログラム、情報記憶媒体及びゲーム装置 | |
| JP4804230B2 (ja) | シューティングゲーム処理方法、その装置、そのプログラム及びその記録媒体 | |
| CN117009206A (zh) | 一种热点聚集位置的预测方法、装置、设备及存储介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080804 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110506 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110623 |
|
| 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: 20110802 |
|
| 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: 20110809 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 4804240 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: 20140819 Year of fee payment: 3 |
|
| 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 |
|
| LAPS | Cancellation because of no payment of annual fees |