本来なら戦闘スロットは0以上しか指定されないわけで
そこにマイナスが入ってるとなると十中八九変数の使い回しが原因だ
マイナスIDが入っても処理が進むとなると多分装備関係だから
行動時か攻撃前の再計算が怪しいかなと言う気はするよ
一応技能の可能性もあるから
デバッグ文で戦闘スロットの具体的な数字を表示してみたら良いのでは
この話が理解不能であるなら戦闘系の大幅な改造をするのはまだ早い
戦闘系の処理は思い切ってデフォルトに戻すのが無難だ
今後はそういうことがないよう、手を加える前にバックアップを取っておいた方がいい