哪位有空实现坦克闯关玩法中坦克AI需求

坦克闯关玩法中坦克AI需求
1.目前坦克游戏现状
(1)目前按是否可以移动,坦克分为固定与移动两类
(2)目前只有移动的坦克可以预判发射,即攻击移动目标时用到这个功能
(3)初始状态下坦克会寻路到玩家坦克一次,之后随机移动
(4)坦克随机移动时,会发射射线判断是否可以击中目标,从而决定是否开火
(5)固定的坦克拥有若干次反弹计算能力。比如该坦克2次反弹能力,则会计算出当前坦克从哪个角度发射,经过1-2次反弹即能集中目标。
(6)有的坦克的子弹只可以反弹一次
(7)有的坦克的子弹可以反弹2次,即碰到墙壁后会弹一次,如果再次碰到墙又会弹一次

2.改进
(1)要固定的坦克也可以预判
目前没做是因为固定坦克的多次弹射计算逻辑与预判逻辑会冲突
(2)躲避玩家的同时通过反弹向玩家射击
(3)2辆或多辆坦克可以合作攻击玩家
(4)有时玩家守着一个路口,那么寻路的坦克是在一直送死,改进一下,比如寻路时不能送死
这个问题与初始的寻路算法有关,ai坦克初始会寻路到攻击目标处
(5)设计方案优秀,便于拓展更多技能
(6)算法不导致帧率问题(算法改进不能影响游戏性能)
(7)编码要规范,便于这边接手,便于迭代

3.管理
开发时可以为坦克增加一个属性int setting,如果坦克有某个功能,比如上述的预判,则 setting=1,即用位操作;当有另外一个功能,则setting=1&2=3
可以以更直观的方式命名属性,为每个位定义枚举
4.测试环境
这边会配合创建一些测试关卡

报酬5k或私聊

既然是AI, 那就找AI来写

3赞

是要做4399的那个吗

哪个?我没有看过4399的

看起来,帖中的比4399的这个复杂

从描述来看感觉是一模一样

确实有点像 ,它的可以反弹n次

现在行情这么差吗 :rofl:

这次的需求终于写的清楚了许多,是一个巨大的进步。

这不是用状态机分分钟解决么?
坦克有:固定、巡逻、追击、回防、逃跑、死亡几种状态
默认状态:固定 或 巡逻
固定和巡逻状态会在一定范围内搜寻目标
找到目标后,切换到 追击
血量低于N%时,切换到 逃跑
目标一定时间内脱离攻击范围,切换到 回防
回防状态就是原路返回自己发起追击的位置,然后继续巡逻
被打死了切换到 死亡
大致思路就是这样,用switch(状态)
case 固定:xxx;break;
case 巡逻:xxx;break;
写好每种状态该干嘛
剩下的就是符合条件就切换状态
之所以没把攻击、受伤设置成独立的状态,因为坦克任何状态都可以攻击,也可以受伤,不存在排异性
所以攻击只要目标进入攻击范围就触发,受伤只要中弹就触发,不切换状态