下载 App
【哈基米大战僵尸】开发日志 #3:僵尸狗+路障
10/0711 浏览综合
这几天潜心把敌人能力好好设计了一下,最重要的是经过多次探坑,终以把寻路完成了一版。
僵尸狗
先来个大合影

这些中,有添堵的、皮厚的、抗冻的、会裂的、穿墙的等等,应该足够大家喝一壶。
代码层面,我们对僵尸狗的能力做了较大规模重构,将能力全部单独写成一个类,使用接口统一管理,这样以后扩展起来就很非常便利。


本次的大头,寻路系统
现在大部分塔防里,僵尸走的是写在场景里的一条固定折线,玩家能改的只有输出:塔放在哪、伤害多高,怎么配合才合理等,路线本身是动不了的。
我们想试试把路线也交给玩家。然后直接把我们整个团队带到沟里去了,两个人从2号爬到7号。
最初的想法很省事:每只僵尸出生的时候算一次完整路径,从出生点一路算到基地,然后沿着走到底。听着没问题对吧,第一次跑就出事了。玩家在僵尸前面放一个路障,僵尸沿着旧路径走上去,撞在墙上不动了。
那就把路障放置和被拆掉的时候广播一下,让每只僵尸都重算。但正在路上的僵尸路径已经算好了,它收到信号也不知道自己该怎么办。让它当场重算,它会走到一半原地掉头——一整排僵尸在场上齐刷刷掉头,看起来特别蠢,而且几十只僵尸各算一次 A*,帧率直接掉一截。
最后在广播基础上不断优化,才达到目前的程度,路障随时加、随时拆都生效。
不要堵住所有道路
我们设计的僵尸绕路的原则是能绕开就绕开,绕不过去就开始拆墙,把所有路都堵死,全场僵尸会一起过来拆墙,玩家一定很开心吧?
本期进展
- 设计了8种僵尸
- 基本完成了路线规划
问题与风险
- 寻路每格都要重算一次,敌人一多、中低端机上能不能撑住还没测透
- 八种兵各占多少是手配的,哪几波搭在一起最难,目前只能靠试
- 钻地的敌人会让专心堆墙的玩家觉得白干。这是有意做的,但如果试下来太难受,会减少它出现的次数














