ウチのキャラ全般でおきている模様なので、現象をまとめてみます。
次のようにすると再現すると思います。
- ウチのキャラでステートを奪う
- ルナのチャームバレットが空中復帰できるのでやりやすいかと
- 復帰できるポイントまたは落下と同時にコマンドを何か入力
- 技術的にはSelfStateが発生するところ
- 入力されたコマンドがAI起動用コマンドとして認識され、相手のAI起動処理が暴発*1
- 相手のAI起動
という流れです。正直なところ、直し方がわかりません。KFMで再現できないのも、よくわからなくなっている原因です。
ちなみにウチでこれの発生を確認したキャラは、
- 葉桜氏 K'
- 悪咲3号氏 Gルガール、豪鬼
になります。いずれもコマンド式AI起動処理を持っているようで、ヘルパー式のみだと暴発しない模様。
にしても不可思議なのは、AI起動用コマンドってたいていの場合、
[Command] Name = "AI7" Command = F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F,F Time = 0 [Command] Name = "AI8" Command = D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D,D Time = 0 [Command] Name = "AI9" Command = B,B,B,B,B,B,B,B,B,B,B,B,B,B,B,B,B,B,B Time = 0 [Command] Name = "AI10" Command = U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U,U Time = 0
という定義なので、SelfStateの瞬間に方向キーだけでAI処理が暴発するということは0ないし1Fで19回同じ方向が入っていることになるのですが。
例:葉桜氏 K'での対処法
一応相手のキャラ側で対策が出来る場合もあるのでその例を。ただこれをやると間違って人操作として認識されたら永遠にAIにならない問題が発生しますが。
;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ; AI ;━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ [State -3,AIスイッチ -> ON] Type = VarSet ;TriggerAll = var(59)<=0 ; ココを TriggerAll = !var(59) ; こうする。 TriggerAll = var(58)>0 TriggerAll = RoundState!=3 TriggerAll=!IsHelper||IsHelper(10000+ID) Trigger1 = Command="AI0" ||Command="AI1" ||Command="AI2" ||Command="AI3" ||Command="AI4" Trigger2 = Command="AI5" ||Command="AI6" ||Command="AI7" ||Command="AI8" ||Command="AI9" Trigger3 = Command="AI10"||Command="AI11"||Command="AI12"||Command="AI13"||Command="AI14" Trigger4 = Command="AI15"||Command="AI16"||Command="AI17"||Command="AI18"||Command="AI19" 〜以下略〜
上の一行だけの変更で暴発は防げます。つまり人操作になったら絶対にAIを起動しない状態にするだけです*2。
あれ直った?
えー、ウチのキャラのですね、<キャラ名>.cmdを開いてですね、command.buffer.timeを1にしたら直ったんですが。
[Defaults] command.time = 15 ; デフォルトコマンド入力時間 (F) ;command.buffer.time = 4 ; 先行入力時間 (F) command.buffer.time = 1 ; 先行入力時間 (F)