GEE引擎架设传奇中怪物AI行为的设定方式

来源: 作者: 点击:
在 GEE 引擎架设的传奇游戏中,怪物的 AI 行为设定方式如下:
首先,传奇怪物的 AI 值相对较低,遵循一些简单原则。例如,怪物会优先攻击先攻击它的玩家或视野范围内离自己最近的玩家;只要玩家不隐身或下线且在怪物视野内,就会一直被攻击;道士的 “施毒术” 仇恨值最高,其次是单位时间内攻击伤害较高的玩家会吸引怪物仇恨。
在更详细的设计方面,怪物 AI 本质上是对怪物行为的设计,要明确怪物行为及其前置条件。比如移动逻辑,当警戒范围内没有敌方单位时巡逻,出现敌方单位时向敌人移动,生命值低于特定值时逃跑。攻击逻辑方面,当角色进入攻击范围进行攻击,血量低于特定值时进行疯狂攻击。
此外,在程序实现上,策划可以用行为树的方式进行 AI 设计,也可以采用常规的状态机机制。比如在设置指定怪物大血条显示时,要注意只有被自己攻击才会显示,血条也是自己可见,超过 3 秒没有被攻击将自动关闭,血条为固定在屏幕指定坐标。还可以通过抽象怪物的前置条件和行为,进行逻辑整理,如警戒范围、战斗状态、选择攻击目标、威胁值等元素,根据需要制定相关元素来满足设定目标。
GEE 引擎传奇怪物 AI 的程序实现方式
在 GEE 引擎的传奇游戏中,怪物 AI 的程序实现方式主要分为有限状态机和行为树两种。有限状态机(FSM)的实现方式有三种:面向过程的方式,即使用 if else;用枚举配合 switch case 语句;用多态与虚函数,也就是状态模式。状态模式的经典定义是允许对象在内部状态改变时改变其行为,就好像对象改变了自己的类一样。其实现要点包括为状态定义一个接口、为每个状态定义一个类以及恰当地进行状态委托。通常,状态模式中状态对象的存放有两种思路:静态状态,初始化时把所有可能的状态都 new 好,状态切换时通过赋值改变当前状态;实例化状态。
行为树,英文是 Behavior Tree,简称 BT,是由行为节点组成的树状结构。对于 FSM,每个节点表示一个状态,而对于 BT,每个节点表示一个行为。在 BT 中,节点是有层次的,子节点由其父节点来控制。每个节点的执行都有一个结果,分别是成功、失败或运行,该结果都由其父节点来管理,从而决定接下来的动作。节点不需要维护向其他节点的转换,节点的模块性被大大增强。
GEE 引擎传奇中怪物移动逻辑的设定
在 GEE 引擎的传奇游戏中,怪物的移动逻辑通常会受到多种因素的影响。比如怪物的类型、所处的地图环境、目标的位置等。一些怪物可能会随机移动,而另一些可能会朝着特定的目标或者区域有规律地移动。有些怪物在发现玩家后会迅速靠近攻击,而有些则会保持一定的距离进行远程攻击或者魔法攻击。此外,怪物的移动速度也可能有所不同,这取决于它们的属性和设定。例如,强大的 BOSS 怪物可能移动速度较慢,但攻击力和防御力较高,而一些小型怪物则可能移动速度较快,但相对较脆弱。
GEE 引擎传奇中怪物攻击逻辑的设定
在 GEE 引擎的传奇游戏里,怪物的攻击逻辑有着详细的设定。所有触发只有攻击到怪物才会触发,有些魔法不会触发,如魔法盾。魔法攻击触发和物理攻击触发都有各自的条件和效果。例如,在魔法攻击触发中,会根据攻击目标的种族以及使用的魔法 ID 等因素来执行相应的动作。物理攻击触发同样会根据目标的种族来做出不同的反应。同时,攻击触发还会发送相应的消息提示玩家。
GEE 引擎传奇中怪物血条显示的设定
在 GEE 引擎的传奇游戏中,怪物血条的显示有多种设定方式。可以设置指定怪物大血条显示,注意怪物只有被自己攻击才会显示,血条也是自己可见,超过 3 秒没有被攻击将自动关闭,血条为固定在屏幕指定坐标。设置参数包括背景编号、背景偏移 X、背景偏移 Y、图像编号、图像偏移 X、图像偏移 Y、血条编号、血条偏移 X、血条偏移 Y、显示等级、等级偏移 X、等级偏移 Y、怪物显名、名字偏移 X、名字偏移 Y、显示血值、血值偏移 X、血值偏移 Y、显示血量百分比、百分比偏移 X、百分比偏移 Y、显示怪物归属、归属偏移 X、归属偏移 Y、水平对齐等。