最小复现:在状态节点切换的瞬间无法触发被命中。状態ノードの切り替えの瞬間に命中したことをトリガーできません。状態ノードの切り替えの瞬間に命中したことをトリガーできません

最小复现:在状态节点切换的瞬间无法触发被命中.zip (136.1 KB)

描述:
点按空格键攻击,攻击时,正常情况下,敌人会触发被攻击的状态,
但当敌人正处于状态节点切换的瞬间,敌人会无法触发被攻击。
如果随意按空格,此项目的BUG触发成功率大概为20%左右,
敌人的切换间隔变快会增加概率,间隔小于0.017秒时概率会变成100%。
这无法通过调整连接优先级,或者是否使用any state来解决。

説明:スペースキーを押すことで攻撃を行いますが、通常、敵は攻撃の状態を発動します。しかし、敵が状態ノード切替の瞬間にいるとき、敵は攻撃を発動することができません。もしスペースを無闇に押すと、このプロジェクトのバグが発生する確率は約20%です。敵の切替間隔が速くなるとこの確率が上がり、間隔が0.017秒未満になると確率は100%になります。これは接続の優先度を調整することや、any stateを使用することで解決できません。

Description:
Tap the space bar to attack, when attacking, under normal circumstances, the enemy will trigger the attacked state,
However, when the enemy is at the moment of switching status nodes, the enemy will not be able to trigger the attack.
If you press the space at will, the success rate of this project is about 20%.
Enemies have a chance to switch faster and become 100% when the interval is less than 0.017 seconds.
This cannot be resolved by adjusting the connection priority, or whether to use any state.

感想:这是一个很严重的BUG,它会毁掉动作游戏的被攻击相关的机制,希望AGM变得越来越严谨,这比增加AGM的新功能更重要。
感想:これは非常に深刻なバグです。それはアクションゲームの攻撃に関するメカニズムを破壊してしまいます。AGMがますます厳密になることを願っています。新しい機能を追加することよりも、こちらの方が重要です。
Impressions: This is a very serious bug that will ruin the attack-related mechanics of action games, and I hope that AGM will become more and more rigorous, which is more important than adding new features to AGM.

经过实验,可以确认此Bug现象。
复现步骤如下

  1. 下载项目,F5运行
  2. 按下Space键使左侧对象攻击
  3. 若此时右侧对象顶端新增一行提示文字,则表明工作复合预期(攻击被检测到)
  4. 若此时右侧对象顶端未新增一行提示,则表明该次攻击检测被遗漏
  5. 默认状态下连续敲击Space键,观察到一定概率的遗漏 → BUG
  6. 若将右侧对象高速切换的两个状态的切换速度增加,或者改为无条件切换,则会100%观察到攻击检测被遗漏-> BUG

关于此问题的BUG汇报已经提交。

观察到一定概率的遗漏,是一种宏观统计。
微观来讲,如果右侧对象被命中的时候,正好是切换状态的时候,就100%会遗漏攻击检测,哪怕切换频率是一秒甚至更长,也一定会遗漏。

1.0.15版本更新专门修复了此问题。可以确认一下现状。