112程序员的考验

    112程序员的考验 (第2/3页)

分钟。但是回血技能需要一个不被外界打扰的环境,一旦遭遇对方攻击,回血过程即被打断失效。

    第四,罗汉有多个可以增益自身防御能力的技能,比如提升自己生命值上限,增加自身物理防御能力,增加自身对法术攻击的防御能力,增加闪避几率等等,这些增益技能的冷却时间大多不长,在一场战斗中可以反复使用多次。另有一个通过锻造武器+10获得的增益技能“雷霆之怒”,可以在10秒内大幅度增加攻击能力并且无敌。但冷却很长,一场战斗基本上只能用上一次。

    从以上特点可以得出结论:罗汉的职业技能功能琐碎,操作繁复,需要很大程度的灵活配合,另外,战斗时间长,需要玩家有耐心与熟练度去操作。

    如果非要用计算机程序辅助罗汉职业进行战斗,那它就必须是全程自动化战斗。

    如果仅仅从理论上讲,设计这个程序就如同演奏家一般,同样基于黎允儿提供的服务器数据解码模块,并不存在问题。事实上有了这个解码模块,设计任何游戏功能理论上都没有问题。

    但问题是,如果要设计这样一个全自动操作战斗的程序,其设计难度会远远超过当初的“演奏家”,严重考验程序员的技术功底。

    毕竟演奏家的工作原理只是做一个简单的技能冷却状态监测,如果所有需要的技能准备完毕,那么就按照预定的顺序依次施放技能。这里不涉及到战斗策略的问题。

    但是自动战斗程序则涉及到面对复杂战斗状况随机应对问题,这意味着程序需要复杂高效的程序算法,直接考验到他的专业能力。

    所谓的复杂状况具体来讲:第一,程序需要解决罗汉职业技能琐碎繁复的配合使用问题,比如在进攻之前必须先开启防御状态与增益状态。躲避之前需要先判断自身受控状态。随时关注自身的技能冷却状况,一旦某个防御技能比如回血技能冷却完毕就需要即刻施放,以求发挥最大效用。

    其次是解决灵活应对敌方御冰技能的问题。比如在敌方对自己施放控制技能之后,自己必须及时解控并且选择正确的路线躲避,以避开对方接下来的攻击技能。同时要计算对方的各种技能冷却时间,以求在合适的时机以最小的代价对敌方发动攻击,从而获取少量的优势,并积少成多最终在PK中胜出。

    第三是需要设计复杂的战斗策略以应对不同的战斗局面。比如根据自身以及对方的剩余生命值多少,决定暂避回血还是乘胜追击。以及什么时候合适使用那个冷却长达一小时“雷霆之怒”技能。

    总之这样的设计过程需要花费更多的时间和精力,进行更多的思考,编写更加复杂的函数代码,以及进行更多的实战测试。

    好在距离决斗还有一个星期,在孙轶民看来,这时间足够他

    (本章未完,请点击下一页继续阅读)