我正在實施洛德亞軍(this version)的一個版本,但我不確定如何重現角色協同工作的角色的效果,可以使用A *還是有更好的方法?是否有更好的輔助之間的協同性算法(例如boids),或者最好的解決方案是簡單地爲每個算法分別應用算法?在洛德跑步者的AI尋路
0
A
回答
0
路徑是你的遊戲實體跟隨的線性線,所以在像Lode Runner這樣的遊戲中,你會有一些非常簡單的路徑。首先,我建議你寫一些Plan對象,它可以傳遞給實體緩衝區中的任何實體(播放器除外),並可以相應地執行。它可能只是一系列的指令,如['left', 'up', 'right']
或僕從必須前往的有效座標。當然這個座標必須根據你加載的小手的路徑進行解析。
其次,你需要預測。你需要預測玩家可能最終的所有(極端)位置以及他們到達那裏的時間。例如,如果玩家儘可能快地沿路徑X下降到座標Y,則需要Z秒。當然,如果玩家在最佳時間內沒有達到最佳時間,那麼小獸會調整,並摧毀玩家。
呃,難度。您可能需要編寫代碼,以便AI預測和路徑中的代碼變得更加複雜且難度更大。我相信你已經聽說過人爲的困難,這只是值修改路徑和預測。
最後也是最重要的合作。這基本上只是一種算法,可以根據玩家的位置來考慮所有殺手的位置,並組織他們在他到達時切斷所有可能的路徑。這可以寫很多方法,我不能在這裏提供一個例子,因爲我不知道你在用什麼語言。供大家參考
3
Lode Runner Web Game
的源代碼:https://github.com/SimonHung/LodeRunner
你可以看一下 lodeRunner.guard.js:敵人的AI算法,從C語言,原來由道格拉斯·E·史密斯移植。
希望能幫到你!
0
我看到的大多數代碼遵循一個簡單的算法。
如果玩家在左邊,你可以向右走。
否則如果玩家在左邊,你可以向左走,向左走。
否則如果玩家在左邊,你可以上去,上去。
其他如果玩家在左邊,你可以下去,下去。
其他如果你可以移動,然後隨機移動。其他不動。
使得僧侶與此相反,就像在Load Runner Online中一樣,您需要檢查點,其他算法強制他們移動的方式不同。
相關問題
- 1. SonarQube跑步者在sbt:findbugs,scalastyle
- 2. scalaTest跑步者開始代替specs2跑步者
- 3. 尋找跑步活動
- 4. 易AI尋路圖書館
- 5. 嵌套測試跑步者
- 6. Sonarqube Jenkins和sonarqube跑步者
- 7. 在遊戲中隨機化AI尋路
- 8. 弗洛伊德最短路徑算法?
- 9. Paramiko認證時,掛在單位測試跑步者的奔跑
- 10. 如何在JUnitCore.runClasses()中限制跑步者?
- 11. 跑步者的鹽鍵命令
- 12. SVN錯誤:svn:E200007:'org.tmatesoft.svn.core.wc2.SvnMerge'的跑步者
- 13. 具有不同的步長弗洛伊德環路檢測算法
- 14. 類路徑順序根據JUnit跑步者而異
- 15. Mathematica的德洛奈重疊
- 16. Gitlab CI - 未能註冊跑步者
- 17. Selenium npm自動測試跑步者
- 18. 吞下任務跑步者給出錯
- 19. junit實現多個跑步者
- 20. 覆蓋rake測試:單元跑步者
- 21. Teamcity與多個賽跑運動員的元賽跑者 - 退出跑步者沒有失敗的構建
- 22. 在Geany中跑步
- 23. 尋找逃跑目標(追逐或追蹤尋路)
- 24. 如何在不同的跑步者上創建2個階段?
- 25. 如何在想法中配置默認的覆蓋跑步者?
- 26. 把Gitlab CI的跑步者輸出放在wiki中
- 27. 異步測試與夜間和摩卡跑步者
- 28. 在Homestead跑迷路
- 29. 跑步羅馬
- 30. 弗洛伊德 - 沃肖爾最短路徑算法錯誤