现在游戏的主体框架已经做出来。舞台搭好,剩下的就是如何让玩家在其中获得更优秀的体验。其中的重中之重,就是设置出更有挑战性的敌人。
射击游戏的ai通常很好做。敌人无非就是搜索、攻击、逃跑这类。因为节奏很快,基本照个面就被玩家击杀,所以很难看出ai中的缺陷。
但《我的抗日》并不是传统意义上的射击游戏。由于玩家只能操作栓动步枪,节奏极慢,在第一次杀掉敌人之后,要和其他闻风而动的敌人展开周旋。这个时候,ai就不能作出匪夷所思的事情来,比如说盯着墙壁开枪,或者到处乱跑。
王不负把周毅找来,说了对于ai的设想:“每次交战,玩家大概面对一个日军班组、十二个敌人。这十二个敌人要懂得寻找掩体、火力掩护、侧翼包抄。采用的战术要和老兵们说得大差不差。”
“这不太好搞啊……”周毅有些担忧:“不如我们还是用《狂潮》的ai,然后把敌人分散在地图上,让玩家每次都只遇见一两个敌人。”
周毅说的办法很容易实现。让玩家不停地遇上规模很小的敌人,压缩战斗时间,使玩家来不及看出敌人的破绽。
王不负摇头说:“那游戏就没有意思了。而且也不真实。这世上哪有三三两两能让你各个击破的军队?所以游戏里敌人要以班组为规模行动。”
“这样的话,ai的战斗逻辑很难梳理的。”周毅感觉会做了前面忘了后面。
“你听没听说‘行为树’?”王不负问周毅。
“没……”周毅虽然不知道,但大喜过望,知道又能学到东西了。
行为树是ai的一种简化设计手段,比较一目了然。将一个ai先分成几个大行为,比如说“攻击”、“逃离”、“召唤手下”等等。
再在每一个大行为下,分成若干个小行为。比如说“攻击”,就可以分成“侵略性高的攻击”和“自保优先的攻击”。
每个小行为还能再分成若干个微行为。
周毅恍然大悟,把《我的抗日》中的ai搞出行为树后,就一目了然,不至于混乱不堪。再慢慢地用程序实现一个一个的行为。
王不负继续说:“一般游戏设置难度,只是修改扣血这些数值。《我的抗日》不能这么简单,选择困难和容易,绝对不是能吃两颗子弹和吃五颗子弹的区别。要从ai上看出不同来。相比容易难度下的敌人,困难难度下的敌人配合更紧密,进攻更凶残。才能让玩家在一番周旋后,产生真实的对抗感,更加满足。”
“明白了!”周毅有了灵感,信心十足地说。
这个时候,在南江建立的老兵之家就显出作用了。
抗日老兵们的记忆非常宝贵。他们遇见的日军各不相同,这符合常理。指挥官的个人风格、士兵的训练、装备的差异,都可以改变一支部队在进攻和防守上的风格。
周毅带着人,甚至还专门飞至长春,去了解伪满军队和关东军各部队的战斗风格。
从八月开始,王不负不再在营销上搞什么花花绕了。他和游戏制作组一起,沉心静气,磨砺ai。让敌人在战斗中的行为更加真实。不停地微调ai的探测距离、从瞄准玩家到开枪的时间、防守或者进攻时的配合逻辑。
有了老兵们的记忆。《我的抗日》中,难度分成了五级。敌人怠⒆氨杆准、战斗意志都有变化。分别对应着“近卫师团”、“甲级师团”、“乙级师团”、“守备旅团”、“伪满警备军”这五类部队。
比如说最简单的难度,是以“伪满警备军”为蓝本。敌人没有任何重火力支援,被玩家攻击之后,会吓破胆,立刻卧倒。枪法非常的烂,基本上在放空枪。一旦带队的军曹被击毙,立刻就作鸟兽散。
王不负在试玩的时候,很轻易就能将日军班组全歼。
最高难度则是以“近卫师团”为参照物。一位老兵曾在汉口遭遇过日军的第三近卫步兵联队。其凶狠的作战意志和惊人的火力强度,即使已经过去六十年,那位老兵仍然无法忘怀,在回忆时面露恐惧神色。
这个难度下的ai凶残得不可思议。永远都是小队行动,分成四个班组,互成犄角,相互支援。每个班组配备轻机枪和掷弹筒。总人数超过五十人。任何一个班组遇袭,另三个班组都会闻声而动,迅速形成包围圈。
王不负试玩的时候,先占据了一个有利地形,然后偷袭其中一个班组。他打算擒贼擒王,第一个干掉了他们的曹长。
剩下的十一个日军却不见军心动摇,反而就地寻找掩护,然后训练有素地用掷弹筒和轻机枪火力压制,拖住时间。不一会,他们发现王不负带给他们的伤亡不大,果断分出人手,让两个日军端着刺刀,从王不负的侧翼包抄过来。
王不负被压制得抬不起头,还不能蹲坑,不然就会被榴弹炸死,只能打一枪换个地方。先打掉操作掷弹筒和轻机枪的敌人。周旋了有三分钟左右,底下只剩下四个敌人。就在他以为即将胜利之时,屏幕却瞬间变红,他被包抄上来的日**捅死了。
“不错!”王不负虽然被干掉,却很满意。起码他在刚才的五分钟内,没有看到ai做出什么怪异的行为。
在最高难度下,就算王不负也很容易失手死亡。但要的就是这个,敌人设计得越是困难,真实性就越高,也就越能带给玩家来之不易的胜利快感。
而且,这个难度很适合用于多人模式。