下载 App
战斗AI优化思路
精华修改于昨天 01:3353 浏览综合
难得遇到好的策略游戏了,而且还有努力更新还为爱发电的作者。游戏连广告都没有,经济上是没法给予支持了,但可以给点脑力上的支持,希望游戏越来越好。
玩下来现在的AI萌萌哒,策略游戏的游戏性有很大一部分来自对手,提一点优化战斗AI的思路,希望能和旗鼓相当的对手同台竞技,常玩常新。
军力整备:
将AI的城池划分为前线城(与敌对势力或中立城池接壤的城)与后方城(不与敌对势力或中立城池接壤的城),若接壤无空城且势力为和平状态,则将关系为负的势力视为敌对势力。简单AI随机将军团分配在所有城;标准AI会优先将满编(兵力>军团兵力上限的90%)的军团平均部署在前线城,未满编随机部署,补员补满后分配到前线城;严峻及地狱AI在标准的基础上,若有无驻军的前线城,未满编军团优先部署在前线城,若仍有未满编军团,部署在无驻军的城池补员,仍有剩余的军团平均部署在前线城。地狱AI补兵无视人口限制,并会在前线城优先建造城墙和兵营。每日运行一次军团部署逻辑,对每个驻守军团和野外无任务军团进行部署。
攻城逻辑:
AI将派出攻城的军团标记为“攻城”状态。简单AI每X天随机派出一个满编军团进攻随机一座与本势力接壤的可攻击城池,闷头向前无撤退逻辑。标准AI开始每天检测前线城附近是否有能打下的中立城,若有则进攻。另外每X天在可攻击的,且与己方拥有全满员军团的前线城相邻的城市中随机挑一座作为目标,派出与目标城市相邻的某一拥有全满员军团的前线城中的所有军团(可设置最多派出N个军团)进攻目标城市。出征的军团每秒检查视野内敌军数量(要进攻城市的守军与城防和野外军团合并计算)并与己方军力对比,若无法取胜则全军退回驻地,但已进入战斗的军团不会主动撤出战斗。严峻AI的区别是会派出与目标城市相邻的所有拥有全满员军团的前线城中的所有军团进攻目标城市,并且在军力无法取胜的情况下撤退会使用撤退指令脱战。地狱AI直接上帝视角,每天将每个与前线城接壤的可攻击城市作为假想目标,分别计算目标城范围内的兵力和目标城相邻己方城所有军团兵力,若己方军力>目标军力1.5倍(数值可调)则出动总计大于目标城市1.5倍兵力(优先满编军团)进攻该城市,撤退同严峻AI。
防守逻辑:
将城市范围内出现敌军的城市标记为警戒城,被围攻的城市标记为交战城。简单AI全部顺其自然,不组织防守。标准AI会从交战城相邻己方后方城调军团防守交战城,若警戒城内军团总兵力(不含守军城墙军力)大于该警戒城范围内敌军数量,则派出全部军团进攻敌军,这些军团标记为驱逐状态,驱逐状态的军团每秒对比附近驱逐军团总兵力和视野内敌军总兵力,若总兵力<敌军总兵力的90%或该城范围内不再有敌军则撤回城中,已在交战的军团不会撤退。严峻AI会使用撤退命令脱战,并且该城派出的攻城军团(如有)执行撤退命令回城防守,还会从所有后方城中调集军团防守交战城。地狱AI还会判断调兵数量,若已调集军团兵力大于交战城范围内所有敌军数量*1.5-交战城己方军团兵力加城防兵力则停止调兵,不足则从交战城相邻的非警戒城的前线城继续调兵,再不足则由近到远从其他非警戒城的前线城继续调兵,若需要调兵的城有正在执行攻城的军团则撤回城市并参与防守。
暂时就想到这么多,供参考,国庆快乐![[表情_开心]](https://img-tc.tapimg.com/market/images/48516f625646b5ea2c66f0cab3c9c52a.png)
![[表情_开心]](https://img-tc.tapimg.com/market/images/48516f625646b5ea2c66f0cab3c9c52a.png)










