Project1

标题: XS.SRPG 让AI用技能给同伴加血的方法 [打印本页]

作者: sun19990909    时间: 2021-4-22 18:44
标题: XS.SRPG 让AI用技能给同伴加血的方法
这个系统 有个不好的地方 就是npc不会主动用加血技能所以,有时候总感觉缺了点什么。

不过可以这样 ,就是把一个加血技能设置成 地图炮。 然后使用目标设定成 敌人

,然后附加个 恢复效果=0%的A状态,

然后 自己人设置免疫此状态。就可以达到加血的效果了,ai会自己使用。

首先玩家免疫另外一个恢复效果=0%的B状态

如果想要玩家也使用的话 可以设置个判定  

使用者为 玩家时 进行判断  上一个目标行动者id是敌人 那就附加B状态,然后上一个目标行动者id是玩家,因为玩家设置了免疫B状态,所以可以加血。

使用者为 ai时 进行判断  上一个目标行动者id是玩家 那就附加A状态,然后上一个目标行动者id是ai,因为ai设置了免疫A状态,所以可以加血。

这样就可以达到加血的效果

如果觉得 加血的辅助 不能每轮都一直加血  要偶尔放攻击技能,可以这样设置  

加血的技能消耗设置为 TP=3 获得TP=0  攻击技能消耗设置为 MP=5 获得 TP=3

这样辅助就不会无脑加血了 偶尔也会攻击了

这样我已经试过了 可以的 电脑平均攻击2-3次加一次血,还行。

还有状态残留的问题,可以这样 设置阵营变化的公共事件 为清除 所有玩家 A状态 所有敌人 B状态 就不会出现一个恢复效果=0 带到死的问题。这个方法可以解决所有异常状态残留的问题 ,残留几个回合可以 这样写

每当使用异常状态A 时的 公共事件 变量A=1(1为使用了异常状态 2为没有使用) 变量B持续回合数=n(你要设置状态持续的回合数)

每当阵营变化时 公共事件   如果 变量A=1(即有人使用了异常状态A) 且 变量C = 变量B(即时持续回合 = 设置的状态持续回合)  则对 所有玩家 和 所有敌人进行 异常状态A清除  C=0() A=0 否则 不清除 变量 C = C+1(即时持续回合数)

这样就可以设置很多异常状态了

至于自动恢复 被动技能 这个应该也可以通过事件调整下  只要能读取 这个状态的效果 就可以把他附加在玩家身上。不过这个有点麻烦

作者: 青之介    时间: 2021-5-18 21:15
大佬能详细说一下自动回复这个怎么做到吗




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1