私はPythonで小さなゲームを開発しています。私は2Dの長方形のグリッドを使用しています。私はパスファインディングのためにA *などを使うことができることを知っていますが、これはどういう仕組みか知っていますが、問題は少し異なります。2Dグリッドのオブジェクトから離れてください
たとえば、コンピュータで制御される人間とコンピュータで制御されるゾンビがあるとします。人間がゾンビを見つけたら、できるだけ遠くから離れるべきです。現時点では、私は別のゾンビを見つけて繰り返すまで、すべてをテストするために180度回転して逃げます。
明らかにこれはあまりスマートではありません(両側にゾンビがある場合は問題を引き起こす可能性があります)。
これを行うよりスマートな方法があるのだろうかと思っていましたか?ダイクストラを使って私が走れる「安全なゾーン」を見つけるのが好きですか?代替手段はいつでも歓迎ですが、私はそれを理解することはできません。
私はこのようなことをしようとしています。私はゾンビの距離と存在に応じて、人間の周りの特定の半径にあるすべての細胞にスコアを与えるつもりです。それから最低のスコアで細胞に風のように走ります。それはちょうどあなたの最後の文で言ったことであるので、私はあなたの答えを正しいものとしてマークします。 – KWyckmans
最初のオプションは、2番目のオプションで見つからないいくつかの面白いシナリオを可能にします。ゾンビがn歩先を見ることができることを知っていれば、あなたの人間はゾンビのすぐ隣にある壁の背後に隠れる可能性があります。 2番目のオプションは、近くにゾンビがいくつあるかに基づいて、最も安全な場所にあなたを連れて来るようにしようとします。これは最初のものより洗練されていませんが、ゾンビのAIがどのように機能するかによって異なります。 –
私はそれをより洗練されたものにするために、最初に基本的なものを試してみるかもしれません。 – KWyckmans