盘点关于AI写在-2下边会出现的bug跟处理办法

火龙吐珠 发布于 2022/06/03 03:48 · 浏览量 2151

关于 statedef -2下边的changestate 造成的bug分析 案例 [statedef -2] [state -2] ;受身 type = changestate triggerall = !ishelper && var(59) > 0 trigger1 = statetype = A trigger1 = movetype = H trigger1 = vel y > 0 && pos y >= -20 value = 5200 现在看到这是一个受身AI 如果人物不在p2stateno里边 也就是说如果人物没有被拉p2攻击 那么这个受身是没有问题的 如果人物被拉p2攻击 也就是如果人物此时在p2stateno里边 而恰好条件达成 那么进入这个5200是你这边的还是敌人那边的 答案是敌人的 为什么? 因为 [statedef -2] 下边的代码不管什么情况下都会执行 那么你在p2stateno里边自然也会执行 而p2里边执行的changestate进入的是敌人那边的号 所以会造成几个bug 1----你的动画无限循环卡死在一个状态 因为敌人的5200没有设置动画所以你还是上次状态号的动画 2----你消失了 因为敌人的5200动画转到空动画或者动画安排的图片你刚好没有 3----你的状态为0不过你变傻了不会动了 因为敌人的5200转到0站立 而敌人的0站立设置了ctrlset归零 所以你的控制被关掉了 4----你无限下沉到地底 敌人的5200有引力加载但是没有转出 5----你无限上浮上天了 敌人的5200有上升力但是没有加载引力也没有转出 6……以及很多未知的bug 解决办法: 1----把-2下边的changestate全换成selfstate 2----changestate全都写到[statedef -1]或者-3

评论(3)

登录后发表评论

  1. Bai家的情殇

    谁会在-2里写AI啊

  2. 呼噜

    关于statedef -2下边的changestate造成的bug分析案例 [statedef -2] [state -2];受身 type=changestate triggerall=!ishelper&&var(59)>0 trigger1=statetype=A trigger1=movetype=H trigger1=vel y>0 trigger1=pos y>=-20 value=5200 现在看到这是一个受身AI如果人物不在p2stateno里边也就是说如果人物没有被拉p2攻击那么这个受身是没有问题的如果人物被拉p2攻击也就是如果人物此时在p2stateno里边而恰好条件达成那么进入这个5200是你这边的还是敌人那边的答案是敌人的 为什么?因为[statedef -2]下边的代码不管什么情况下都会执行那么你在p2stateno里边自然也会执行而p2里边执行的changestate进入的是敌人那边的号 所以会造成几个bug 1、你的动画无限循环卡死在一个状态因为敌人的5200没有设置动画所以你还是上次状态号的动画 2、你消失了因为敌人的5200动画转到空动画或者动画安排的图片你刚好没有 3、你的状态为0不过你变傻了不会动了因为敌人的5200转到0站立而敌人的0站立设置了ctrlset归零所以你的控制被关掉了 4、你无限下沉到地底敌人的5200有引力加载但是没有转出 5、你无限上浮上天了敌人的5200有上升力但是没有加载引力也没有转出 6、以及很多未知的bug解决办法: (1)把-2下边的changestate全换成selfstate (2)changestate全都写到[statedef -1]或者[statedef -3]

  3. 火龙吐珠

    都乱套了, 进群573535107自己看吧