;>>>>>>>>>>>>>>>>>============<<<<<<<<<<<<<<<<<<<|
;|||||||||||||||||Goenitz' CMD||||||||||||||||||||
;>>>>>>>>>>>>>>>>>============<<<<<<<<<<<<<<<<<<<|
;-| Button Remapping |----------------------------
[Remap]
x = x
y = y
z = z
a = a
b = b
c = c
s = s
;-| Default Values |------------------------------
[Defaults]
command.time = 17
command.buffer.time = 1
;==================================================
; Commands
;==================================================
;--------------------------------------------------
; Danger Moves/ Super Danger Moves
;--------------------------------------------------
[Command]
Name = "Ibuki Nagayo"
Command = ~F, $D, B, F, $D, B, a+b
Time = 30
Buffer.Time = 10
[Command]
Name = "Ibuki Nagayo"
Command = ~F, $D, B, F, $D, B, b+c
Time = 30
Buffer.Time = 10
[Command]
Name = "Ibuki Nagayo"
Command = ~F, $D, B, F, $D, B, a+c
Time = 30
Buffer.Time = 10
[Command]
Name = "Shin Ya Otome: Mizumi"
Command = ~D, DB, B, $D, F, x
Time = 25
Buffer.Time = 5
[Command]
Name = "Shin Ya Otome: Mizumi"
Command = ~D, DB, B, $D, F, y
Time = 25
Buffer.Time = 5
[Command]
Name = "Shin Ya Otome: Mizumi"
Command = ~D, DB, B, $D, F, z
Time = 25
Buffer.Time = 5
[Command]
Name = "Yamidoukoku"
Command = ~F, $D, B, F, $D, B, x
Time = 30
Buffer.Time = 10
[Command]
Name = "Yamidoukoku"
Command = ~F, $D, B, F, $D, B, y
Time = 30
Buffer.Time = 10
[Command]
Name = "Yamidoukoku"
Command = ~F, $D, B, F, $D, B, z
Time = 30
Buffer.Time = 10
[Command]
Name = "Fuujin Ibuki"
Command = ~D, DF, F, D, DF, x
Time = 20
Buffer.Time = 5
[Command]
Name = "Fuujin Ibuki"
Command = ~D, DF, F, D, DF, y
Time = 20
Buffer.Time = 5
[Command]
Name = "Fuujin Ibuki"
Command = ~D, DF, F, D, DF, z
Time = 20
Buffer.Time = 5
;--------------------------------------------------
; Super Moves
;--------------------------------------------------
[Command]
Name = "Yonokaze"
Command = ~D, DF, F, x
Time = 17
Buffer.Time = 5
[Command]
Name = "Yonokaze"
Command = ~D, DF, F, y
Time = 17
Buffer.Time = 5
[Command]
Name = "Yonokaze"
Command = ~D, DF, F, z
Time = 17
Buffer.Time = 5
[Command]
Name = "Yonokaze"
Command = ~D, DF, F, a
Time = 17
Buffer.Time = 5
[Command]
Name = "Yonokaze"
Command = ~D, DF, F, b
Time = 17
Buffer.Time = 5
[Command]
Name = "Yonokaze"
Command = ~D, DF, F, c
Time = 17
Buffer.Time = 5
[Command]
Name = "Wanpyou Mametsu"
Command = ~F, D, DF, x
Buffer.Time = 5
[Command]
Name = "Wanpyou Mametsu"
Command = ~F, D, DF, y
Buffer.Time = 5
[Command]
Name = "Wanpyou Mametsu"
Command = ~F, D, DF, z
Buffer.Time = 5
[Command]
Name = "Hyouga"
Command = ~D, DB, B, a
Time = 17
Buffer.Time = 5
[Command]
Name = "Hyouga"
Command = ~D, DB, B, b
Time = 17
Buffer.Time = 5
[Command]
Name = "Hyouga"
Command = ~D, DB, B, c
Time = 17
Buffer.Time = 5
[Command]
Name = "Shin Aoi Hana: Seiran"
Command = ~D, DB, B, x
Time = 17
Buffer.Time = 5
[Command]
Name = "Shin Aoi Hana: Seiran"
Command = ~D, DB, B, y
Time = 17
Buffer.Time = 5
[Command]
Name = "Shin Aoi Hana: Seiran"
Command = ~D, DB, B, z
Time = 17
Buffer.Time = 5
[Command]
Name = "Soukatsu Satsu"
Command = ~F, $D, B, F, x
Time = 20
Buffer.Time = 5
[Command]
Name = "Soukatsu Satsu"
Command = ~F, $D, B, F, y
Time = 20
Buffer.Time = 5
[Command]
Name = "Soukatsu Satsu"
Command = ~F, $D, B, F, z
Time = 20
Buffer.Time = 5
[Command]
Name = "Shin Kototsuki Souga"
Command = ~F, $D, B, F, a
Time = 20
Buffer.Time = 5
[Command]
Name = "Shin Kototsuki Souga"
Command = ~F, $D, B, F, b
Time = 20
Buffer.Time = 5
[Command]
Name = "Shin Kototsuki Souga"
Command = ~F, $D, B, F, c
Time = 20
Buffer.Time = 5
[Command]
Name = "SFRecover"
Command = ~B, DB, D, x
Time = 17
Buffer.Time = 10
[Command]
Name = "SFRecover"
Command = ~B, DB, D, y
Time = 17
Buffer.Time = 10
[Command]
Name = "SFRecover"
Command = ~B, DB, D, z
Time = 17
Buffer.Time = 10
[Command]
Name = "SFRecover Reverse"
Command = ~F, DF, D, x
Time = 17
Buffer.Time = 10
[Command]
Name = "SFRecover Reverse"
Command = ~F, DF, D, y
Time = 17
Buffer.Time = 10
[Command]
Name = "SFRecover Reverse"
Command = ~F, DF, D, z
Time = 17
Buffer.Time = 10
[Command]
Name = "Uranagi"
Command = /F,y
Time = 1
;--------------------------------------------------
; Groove Moves
;--------------------------------------------------
[Command]
Name = "Power Attack"
Command = ~D, DF, F, y+b
Time = 17
Buffer.Time = 5
[Command]
Name = "knockdown"
Command = y+b
Time = 1
[Command]
name = "longjump"
command = $D, $U
[Command]
name = "Power Charge"
command = x+y
time = 1
[Command]
name = "MAX Timer"
command = z+c
time = 1
[Command]
name = "MAX Timer"
command = a+y
time = 1
[Command]
name = "SVC Grab"
command = y+z
time = 1
[Command]
name = "SVC Grab"
command = b+c
time = 1
[Command]
name = "SVC Grab 1"
command = y+z
time = 1
;--------------------------------------------------
; Hold Button Player
;--------------------------------------------------
[Command]
name = "holdx"
command = /x
time = 1
[Command]
name = "holdy"
command = /y
time = 1
[Command]
name = "holdz"
command = /z
time = 1
[Command]
name = "holda"
command = /a
time = 1
[Command]
name = "holdb"
command = /b
time = 1
[Command]
name = "holdc"
command = /c
time = 1
[Command]
name = "holdstart"
command = /s
time = 1
;--------------------------------------------------
; Hold Button AI
;--------------------------------------------------
[Command]
name = "holda2"
command = /a
time = 1
[Command]
name = "holdb2"
command = /b
time = 1
[Command]
name = "holdc2"
command = /c
time = 1
[Command]
name = "holdx2"
command = /x
time = 1
[Command]
name = "holdy2"
command = /y
time = 1
[Command]
name = "holdz2"
command = /z
time = 1
[Command]
name = "holdstart2"
command = /s
time = 1
;--------------------------------------------------
; 2/3 Button Combination Player
;--------------------------------------------------
[Command]
name = "2punches"
command = x+y
time = 1
[Command]
name = "2punches"
command = y+z
time = 1
[Command]
name = "2punches"
command = x+z
time = 1
[Command]
name = "2kicks"
command = a+b
time = 1
[Command]
name = "2kicks"
command = b+c
time = 1
[Command]
name = "2kicks"
command = a+c
time = 1
;--------------------------------------------------
; Single Button Player
;--------------------------------------------------
[Command]
name = "x"
command = x
time = 1
[Command]
name = "a"
command = a
time = 1
[Command]
name = "y"
command = y
time = 1
[Command]
name = "b"
command = b
time = 1
[Command]
name = "z"
command = z
time = 1
[Command]
name = "c"
command = c
time = 1
[Command]
name = "start"
command = s
time = 1
;--------------------------------------------------
; Single Button AI
;--------------------------------------------------
[Command]
name = "a2"
command = a
time = 1
[Command]
name = "b2"
command = b
time = 1
[Command]
name = "c2"
command = c
time = 1
[Command]
name = "x2"
command = x
time = 1
[Command]
name = "y2"
command = y
time = 1
[Command]
name = "z2"
command = z
time = 1
[Command]
name = "start2"
command = s
time = 1
;--------------------------------------------------
; Required(do not remove) - Player
;--------------------------------------------------
[Command]
name = "FF"
command = F, F
time = 10
Buffer.Time = 5
[Command]
name = "BB"
command = B, B
time = 10
[Command]
name = "recovery"
command = x+a
time = 1
[Command]
name = "holdfwd"
command = /$F
time = 1
[Command]
name = "holdback"
command = /$B
time = 1
[Command]
name = "holdup"
command = /$U
time = 1
[Command]
name = "holddown"
command = /$D
time = 1
;--------------------------------------------------
; Required(do not remove) - AI
;--------------------------------------------------
[Command]
name = "FF2"
command = F, F
time = 10
Buffer.Time = 5
[Command]
name = "BB2"
command = B, B
time = 10
[Command]
name = "recovery2"
command = x+a
time = 1
[Command]
name = "holdfwd2"
command = /$F
time = 1
[Command]
name = "holdback2"
command = /$B
time = 1
[Command]
name = "holdup2"
command = /$U
time = 1
[Command]
name = "holddown2"
command = /$D
time = 1
;==================================================
; Command Definition
;==================================================
[Statedef -1]
;--------------------------------------------------
; Combo Varset
;--------------------------------------------------
[State -1, Normal Combo]
type = Varset
trigger1 = 1
var(3) = 0
[State -1, Normal Combo]
type = Varset
TriggerAll = Movecontact = [1,5]
Trigger1 = Anim = 200
Trigger2 = Anim = 215
Trigger3 = StateNo = 220
Trigger4 = Anim = 235
Trigger5 = Anim = 240
Trigger5 = AnimElem = 6, < 0
Trigger5 = var(1) = [1,2]
Trigger6 = StateNo = 240
Trigger6 = Anim != 240
Trigger7 = StateNo = 260
Trigger7 = PrevStateno != [150,152]
Trigger8 = StateNo = 300
Trigger9 = StateNo = 400
Trigger9 = p2dist x > 50 || !var(9)
Trigger10 = StateNo = 420
Trigger11 = StateNo = 440
Trigger12 = StateNo = 730
Trigger13 = StateNo = 250
Trigger13 = Anim != 250
ignorehitpause = 1
var(3) = 1
[State -1, Normal Combo]
type = Varset
Trigger1 = StateNo = [100,101]
ignorehitpause = 1
var(3) = 1
[State -1, Normal Combo]
type = Varset
trigger1 = Movetype = H
ignorehitpause = 1
var(3) = 0
[State -1, Cancel Combo]
type = Varset
trigger1 = 1
var(18) = 0
[State -1, Super Cancel]
type = Varset
TriggerAll = Movecontact = [1,5]
Trigger1 = StateNo = 1100
Trigger2 = StateNo = [1300,1310]
Trigger3 = StateNo = 1501
Trigger4 = StateNo = 1970
Trigger4 = var(47) < 70
ignorehitpause = 1
var(18) = 1
[State -1, Final Impact]
type = Varset
Trigger1 = StateNo = 1000
Trigger1 = animelem = 7, > 1
Trigger1 = animelem = 7, < 13
ignorehitpause = 1
var(18) = 1
[State -1, Normal Combo]
type = Varset
trigger1 = Movetype = H
ignorehitpause = 1
var(18) = 0
;--------------------------------------------------
; Drago Groove Power Attack
;--------------------------------------------------
[State -1, DG P. Attack]
type = ChangeState
Value = 1950
TriggerAll = !var(9)
TriggerAll = Command ="Power Attack"
TriggerAll = StateType != A
TriggerAll = Power >= 500*(!var(15))
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100,102]
;--------------------------------------------------
; Hidden Super Danger Moves
;--------------------------------------------------
[State -1, Ibuki Nagayo]
type = ChangeState
Value = 4000
TriggerAll = !var(9)
TriggerAll = Command = "Ibuki Nagayo"
TriggerAll = StateType != A
Triggerall = life < LifeMax/4
TriggerAll = Power >= 1000+2000*(!var(15))
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(18)
Trigger3 = Power >= 2000+2000*(!var(15))
;--------------------------------------------------
; Danger Moves/Super Danger Moves
;--------------------------------------------------
[State -1, Yamidoukoku]
type = ChangeState
Value = 3100
TriggerAll = !var(9)
TriggerAll = Command = "Yamidoukoku"
TriggerAll = StateType != A
TriggerAll = Power >= 1000 || var(15) || var(1) = 3
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(18)
Trigger3 = power >= 1000+1000*(!var(15))-1000*(var(1) = 3)
[State -1, Shin Ya Otome: Jittsouko]
type = ChangeState
Value = 3000
TriggerAll = !var(9)
TriggerAll = !var(1)
TriggerAll = Command ="Shin Ya Otome: Mizumi"
TriggerAll = Command ="2punches" || helper(2000), var(7)
TriggerAll = StateType != A
TriggerAll = Power >= 1000+2000*(!var(15))
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(18)
Trigger3 = Power >= 2000+2000*(!var(15))
[State -1, Shin Ya Otome: Mizumi]
type = ChangeState
Value = 3000
TriggerAll = !var(9)
TriggerAll = var(1)
TriggerAll = Command ="Shin Ya Otome: Mizumi"
TriggerAll = StateType != A
TriggerAll = Power >= 1000 || var(15) || var(1) = 3
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(18)
Trigger3 = power >= 1000+1000*(!var(15))-1000*(var(1) = 3)
[State -1, Fuujin Ibuki]
type = ChangeState
Value = 3200
TriggerAll = !var(9)
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
TriggerAll = Command = "Fuujin Ibuki"
TriggerAll = StateType != A
TriggerAll = Power >= 1000 || var(15)
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(18)
Trigger3 = power >= 1000+1000*(!var(15))
;--------------------------------------------------
; Super Moves
;--------------------------------------------------
[State -1, Soukatsu Satsu]
type = ChangeState
Value = 1400
TriggerAll = Command ="Soukatsu Satsu"
TriggerAll = !var(9)
TriggerAll = var(1) = 2
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(15)
Trigger3 = var(18)
Trigger3 = StateNo != 1000
[State -1, Shin Kototsuki Souga]
type = ChangeState
Value = 1500
TriggerAll = Command ="Shin Kototsuki Souga"
TriggerAll = !var(9)
TriggerAll = var(1) = [1,2]
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(15)
Trigger3 = var(18)
Trigger3 = StateNo != 1000
Trigger3 = StateNo != 1501
[State -1, Wanpyou Mametsu]
type = ChangeState
Value = 1100
TriggerAll = Command ="Wanpyou Mametsu"
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
TriggerAll = !var(9)
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(15)
Trigger3 = var(18)
Trigger3 = StateNo != 1000
Trigger3 = StateNo != 1100
[State -1, Wanpyou Mametsu]
type = ChangeState
Value = 1100
TriggerAll = Command ="Shin Aoi Hana: Seiran"
TriggerAll = var(1)
TriggerAll = var(1) != 2
TriggerAll = !var(9)
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(15)
Trigger3 = var(18)
Trigger3 = StateNo != 1000
Trigger3 = StateNo != 1100
[State -1, Yonokase]
type = ChangeState
Value = 1000
TriggerAll = Command ="Yonokaze"
TriggerAll = !Numproj
TriggerAll = StateType != A
TriggerAll = !var(9)
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(15)
Trigger3 = var(18)
Trigger3 = StateNo != 1000
[State -1, Shin Aoi Hana: Seiran]
type = ChangeState
Value = 1300
TriggerAll = Command ="Shin Aoi Hana: Seiran"
TriggerAll = !var(9)
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(15)
Trigger3 = var(18)
Trigger3 = StateNo != [1300,1399]
Trigger3 = StateNo != 1000
[State -1, Hyouga]
type = ChangeState
Value = 1200
TriggerAll = Command ="Hyouga"
TriggerAll = StateType != A
TriggerAll = !var(9)
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger3 = var(15)
Trigger3 = var(18)
Trigger3 = (StateNo != [1000, 1020]) && (StateNo != [1700,1800])
;--------------------------------------------------
; Groove Moves
;--------------------------------------------------
[State -1, Knockdown Attack]
Type = ChangeState
Value = Ifelse(StateType = A, 660, 260)
TriggerAll = command = "knockdown"
TriggerAll = !var(9)
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = Power >= 1000
Trigger3 = StateNo = 150 || StateNo = 152
[State -1, Roll Fwd]
Type = ChangeState
Value = 700
TriggerAll = command = "recovery"
TriggerAll = command = "holdfwd"
TriggerAll = !var(9)
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = Power >= 1000
Trigger3 = StateNo = 150 || StateNo = 152
[State -1, Roll Back]
Type = ChangeState
Value = 710
TriggerAll = command = "recovery"
TriggerAll = command = "holdback"
TriggerAll = !var(9)
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = Power >= 1000
Trigger3 = StateNo = 150 || StateNo = 152
[State -1, Dodge]
Type = ChangeState
Value = 720
TriggerAll = command = "recovery"
TriggerAll = StateType != A
TriggerAll = !var(9)
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Dodge Attack]
Type = ChangeState
Value = 730
TriggerAll = StateNo = 720
TriggerAll = AnimElem = 5, >= 0
TriggerAll = AnimElem = 6, < 0
TriggerAll = !var(9)
Trigger1 = command = "x"
Trigger2 = command = "y"
Trigger3 = command = "z"
Trigger4 = command = "a"
Trigger5 = command = "b"
Trigger6 = command = "c"
[State -1, MAX Timer]
type = ChangeState
value = 750
triggerall = command = "MAX Timer"
triggerall = power >= ifelse(movecontact, 2000, 1000)
triggerall = var(15) <= 0
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
trigger3 = hitdefattr = SC,NA
Trigger3 = movecontact
[State -1, SVC Grab]
type = ChangeState
value = Ifelse (command = "SVC Grab 1"|| var(1) = 2, 950, 960)
triggerAll = command = "SVC Grab"
TriggerAll = StateType != A
TriggerAll = !var(9)
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Capcom Recovery Roll]
type = ChangeState
triggerAll = canrecover
TriggerAll = Alive
triggerAll = vel y > 0
triggerAll = Pos y >= -20
triggerAll = Command = "SFRecover"
triggerAll = p2dist x >= 0
trigger1 = StateNo = 5030
trigger2 = StateNo = 5035
trigger3 = StateNo = 5050
trigger4 = StateNo = 5071
value = 5202
[State -1, Capcom Recovery Roll]
type = ChangeState
triggerAll = canrecover
TriggerAll = Alive
triggerAll = vel y > 0
triggerAll = Pos y >= -20
triggerAll = Command = "SFRecover Reverse"
triggerAll = p2dist x < 0
trigger1 = StateNo = 5030
trigger2 = StateNo = 5035
trigger3 = StateNo = 5050
trigger4 = StateNo = 5071
value = 5202
[State -1, charge]
type = ChangeState
value = 770
TriggerAll = !var(9)
triggerAll = power < PowerMax
triggerAll = ctrl || stateno = [100,101]
triggerAll = !var(15) || numpartner
triggerAll = statetype != A
trigger1 = command = "Power Charge"
trigger2 = var(51) > 4
;--------------------------------------------------
; Throws
;--------------------------------------------------
[State -1, Meifu no Mon]
type = ChangeState
value = 800
Trigger1 = ctrl || stateNo = 52
Trigger1 = StateType = S
Trigger1 = p2BodyDist x < 15
Trigger1 = StateNo != [100,101]
Trigger1 = Command !="holddown"
Trigger1 = p2MoveType != H
Trigger1 = P2StateType = S || P2StateType = C
Trigger1 = Command ="holdfwd" || Command = "holdback"
Trigger1 = Command = "y" || Command = "z"
[State -1, Soukatsu Satsu]
type = ChangeState
value = ifelse(var(1) = 2, 800, 810)
Trigger1 = ctrl || stateNo = 52
Trigger1 = StateType = S
Trigger1 = p2BodyDist x < 15
Trigger1 = StateNo != [100,101]
Trigger1 = Command !="holddown"
Trigger1 = p2MoveType != H
Trigger1 = P2StateType = S || P2StateType = C
Trigger1 = Command ="holdfwd" || Command = "holdback"
Trigger1 = Command = "b" || Command = "c"
;--------------------------------------------------
; Command Moves
;--------------------------------------------------
[State -1, Uranagi]
type = ChangeState
value = 300
TriggerAll = !var(9)
TriggerAll = var(1) != 3
TriggerAll = command = "Uranagi"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = var(3)
Trigger2 = stateno != [260,399]
Trigger2 = stateno != 730
Trigger2 = stateno != [500,599]
Trigger2 = stateno != [100,101]
;--------------------------------------------------
; Basic Standing Attacks
;--------------------------------------------------
[State -1, Standing Weak Punch]
type = ChangeState
value = 200
TriggerAll = !var(9)
TriggerAll = command = "x"
TriggerAll = Command !="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = AnimElem = 3, > 2
Trigger3 = StateNo = 400 || (StateNo = 210 && Anim = 215)
[State -1, Standing Weak Kick]
type = ChangeState
value = 210
TriggerAll = !var(9)
TriggerAll = command = "a"
TriggerAll = Command !="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = AnimElem = 2, > 2
Trigger3 = StateNo = 200 || StateNo = [400, 410]
Trigger4 = var(1) = 1
Trigger4 = AnimElem = 3, > 0
Trigger4 = StateNo = 210
[State -1, Standing Medium Punch]
type = ChangeState
value = 220
TriggerAll = !var(9)
TriggerAll = command = "y"
TriggerAll = Command !="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Standing Medium Kick]
type = ChangeState
value = 230
TriggerAll = !var(9)
TriggerAll = command = "b"
TriggerAll = Command !="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Standing Strong Punch]
type = ChangeState
value = 240
TriggerAll = !var(9)
TriggerAll = command = "z"
TriggerAll = Command !="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = var(1) = 2
Trigger3 = Anim = 226
Trigger3 = movecontact
[State -1, Standing Strong Kick]
type = ChangeState
value = 250
TriggerAll = !var(9)
TriggerAll = command = "c"
TriggerAll = Command !="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = anim = 241
Trigger3 = movehit
;--------------------------------------------------
; Basic Crouching Attacks
;--------------------------------------------------
[State -1, Crouching Weak Punch]
type = ChangeState
value = 400
TriggerAll = !var(9)
TriggerAll = command = "x"
TriggerAll = Command ="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
Trigger3 = AnimElem = 3, > 2
Trigger3 = StateNo = 400 || (StateNo = 200 && Anim = 205) || (StateNo = 210 && Anim = 215)
[State -1, Crouching Weak Kick]
type = ChangeState
value = 410
TriggerAll = !var(9)
TriggerAll = command = "a"
TriggerAll = Command ="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Crouching Medium Punch]
type = ChangeState
value = 420
TriggerAll = !var(9)
TriggerAll = command = "y"
TriggerAll = Command ="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Crouching Medium Kick]
type = ChangeState
value = 430
TriggerAll = !var(9)
TriggerAll = command = "b"
TriggerAll = Command ="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Crouching Strong Punch]
type = ChangeState
value = 440
TriggerAll = !var(9)
TriggerAll = command = "z"
TriggerAll = Command ="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
[State -1, Crouching Strong Kick]
type = ChangeState
value = 450
TriggerAll = !var(9)
TriggerAll = command = "c"
TriggerAll = Command ="holddown"
TriggerAll = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger2 = StateNo = [100, 101]
;--------------------------------------------------
; Basic Aerial Attacks
;--------------------------------------------------
[State -1, Aerial Weak Punch]
type = ChangeState
value = 600
Trigger1 = !var(9)
Trigger1 = command = "x"
Trigger1 = StateType = A
Trigger1 = ctrl || stateNo = 52
[State -1, Aerial Weak Kick]
type = ChangeState
value = 610
Trigger1 = !var(9)
Trigger1 = command = "a"
Trigger1 = StateType = A
Trigger1 = ctrl || stateNo = 52
[State -1, Aerial Medium Punch]
type = ChangeState
value = 620
Trigger1 = !var(9)
Trigger1 = command = "y"
Trigger1 = StateType = A
Trigger1 = ctrl || stateNo = 52
[State -1, Aerial Medium Kick]
type = ChangeState
value = 630
Trigger1 = !var(9)
Trigger1 = command = "b"
Trigger1 = StateType = A
Trigger1 = ctrl || stateNo = 52
[State -1, Aerial Strong Punch]
type = ChangeState
value = 640
Trigger1 = !var(9)
Trigger1 = command = "z"
Trigger1 = StateType = A
Trigger1 = ctrl || stateNo = 52
[State -1, Aerial Strong Kick]
type = ChangeState
value = 650
Trigger1 = !var(9)
Trigger1 = command = "c"
Trigger1 = StateType = A
Trigger1 = ctrl || stateNo = 52
;--------------------------------------------------
; Taunt
;--------------------------------------------------
[State -1, Taunt]
type = ChangeState
value = 195
Triggerall = command = "start"
Triggerall = StateNo != 195
Triggerall = statetype != A
Triggerall = ctrl
Trigger1 = var(9) <= 2
;--------------------------------------------------
; Running - Player
;--------------------------------------------------
[State -1, Run Fwd]
type = ChangeState
value = 100
Trigger1 = Command = "FF"
Trigger1 = ctrl || stateNo = 52
Trigger1 = StateType = S
Trigger1 = !var(9)
[State -1, GC Dash]
type = ChangeState
value = 101
TriggerAll = Command = "FF"
TriggerAll = Power >= 500
Trigger1 = StateNo = 150
Trigger2 = StateNo = 152
[State -1, Run Back]
Type = ChangeState
Value = 105
Trigger1 = Command = "BB"
Trigger1 = ctrl || stateNo = 52
Trigger1 = StateType = S
Trigger1 = !var(9)
;==================================================
; AI codes
;==================================================
;----------------- MAX Activation -----------------
[State -1, MAX Timer AI]
type = ChangeState
value = 750
Trigger1 = var(9)
Trigger1 = random < ((lifemax-life)/(lifemax/const(data.life)))/(8-var(9))
trigger1 = power >= ifelse(movecontact, 3000, 2000)
trigger1 = var(15) <= 0
Trigger1 = StateType != A
Trigger1 = ctrl || stateNo = 52
Trigger1 = p2bodydist x > 150
Trigger1 = p2movetype != A
;------------------- All Modes ------------------
[State -1, Ibuki Nagayo AI]
type = ChangeState
value = 4000
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(10-var(9))
TriggerAll = StateType != A
TriggerAll = pos y >= 0
TriggerAll = Power >= 1000+2000*(!var(15))
TriggerAll = Life <= LifeMax/4
TriggerAll = p2Life >= 300
triggerAll = ctrl || StateNo = [100,101]
Trigger1 = p2Stateno = [5050,5210]
Trigger2 = p2StateType = A || p2StateNo = 40
Trigger2 = enemynear, vel y < -5
Trigger2 = p2bodydist x > 100
Trigger3 = Numproj
Trigger4 = random < 150
Trigger4 = p2bodydist x > 160
;------------------- 2002 UM Mode ------------------
[State -1, Fuujin Ibuki AI]
type = ChangeState
value = 3200
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(9-var(9))
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
TriggerAll = StateType != A
TriggerAll = P2StateType != A
TriggerAll = !var(25)
TriggerAll = Power >= 1000 || var(15)
TriggerAll = p2Life >= 150
triggerAll = ctrl || (StateNo = [100,101]) || StateNo = [120,141]
Trigger1 = p2MoveType = A
Trigger1 = EnemyNear, AnimTime < -19
Trigger1 = p2bodydist x = [5,80]
Trigger2 = EnemyNear, HitdefAttr = SC, AA,AT
Trigger2 = EnemyNear, AnimTime < -19
Trigger2 = p2bodydist x = [5,100]
[State -1, Yamidoukoku AI]
type = ChangeState
value = 3100
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(15-var(9)-5*(var(53) = 3))
TriggerAll = p2statetype != A
TriggerAll = p2statetype != L
TriggerAll = StateType != A
TriggerAll = Power >= 1000 || var(15) || var(1) = 3
TriggerAll = p2Life >= 150
TriggerAll = p2dist x = [0,69]
triggerAll = !var(6)
Trigger1 = ctrl || stateNo = 52
trigger2 = StateNo = [100,103]
[State -1, Shin Ya Otome AI SDM]
type = ChangeState
value = 3000
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(12-var(9))
TriggerAll = !var(1)
TriggerAll = StateType != A
TriggerAll = Power >= 1000+2000*(!var(15))
TriggerAll = p2Life >= 200
triggerAll = var(15) < 300 || power < 2000 || var(9) < 5
triggerAll = ctrl || StateNo = [100,101]
Trigger1 = p2StateType = A
Trigger1 = p2dist x < 120+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 95
Trigger1 = p2dist x > 20+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
Trigger1 = (p2dist y = [-170,-70]) || (Enemynear, vel y = [-9,-3])
trigger1 = p2MoveType != H
Trigger2 = p2bodydist x > 100
Trigger2 = EnemyNear, hitdefattr = SCA, AA, AT
Trigger2 = enemy, animtime < -30
[State -1, Shin Ya Otome AI DM]
type = ChangeState
value = 3000
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(12-var(9))
TriggerAll = var(1)
TriggerAll = StateType != A
TriggerAll = Power >= 1000 || var(15) || var(1) = 3
TriggerAll = p2Life >= 150
triggerAll = var(15) < 300 || power < 1000 || var(1) != 2 || var(9) < 5
triggerAll = ctrl || StateNo = [100,101]
Trigger1 = p2StateType = A
Trigger1 = p2dist x < 120+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 95
Trigger1 = p2dist x > 20+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
Trigger1 = (p2dist y = [-170,-70]) || (Enemynear, vel y = [-9,-3])
trigger1 = p2MoveType != H
Trigger2 = p2bodydist x > 100
Trigger2 = EnemyNear, hitdefattr = SA, AA, AT
Trigger2 = enemy, animtime < -20
[State -1, Hyouga AI]
type = ChangeState
Value = 1200
TriggerAll = var(9)
TriggerAll = random < (((lifemax-life)/(lifemax/const(data.life)))/(8-var(9)))/(1+9*(p2StateNo != [5120, 5210]))
TriggerAll = StateType != A
TriggerAll = !var(25)
TriggerAll = ctrl || stateno = 100 || stateno = [120,131]
Trigger1 = EnemyNear, HitdefAttr = SA, AA, AP, AT || EnemyNear, numproj
Trigger1 = Enemy, AnimTime < -52
Trigger1 = Enemy, AnimTime > -72
Trigger1 = p2BodyDist x >= 90
Trigger2 = p2StateNo = [5120, 5210]
Trigger2 = p2BodyDist x <= 50
Trigger2 = BackEdgedist < 50
Trigger3 = p2movetype = A
Trigger2 = p2StateNo != [3000, 4999]
Trigger3 = p2Dist x <= 110
Trigger3 = Enemy, AnimTime < -52
Trigger3 = Enemy, AnimTime > -72
[State -1, Advanced Hyouga AI]
type = ChangeState
Value = 1200
TriggerAll = var(9) > 2
TriggerAll = random < (((lifemax-life)/(lifemax/const(data.life)))/(15-var(9)))
TriggerAll = StateType != A
TriggerAll = !var(25)
TriggerAll = var(53) = 3
TriggerAll = Power >= 1000 || var(15)
TriggerAll = ctrl || stateno = 100 || stateno = [120,131]
Trigger1 = p2movetype != H
Trigger1 = p2dist x = [90,265]
Trigger1 = p2StateType != A
Trigger1 = p2StateType != L
[State -1, Wampyou Tokobuse AI]
type = ChangeState
Value = 1100
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(10-var(9))
TriggerAll = statetype != A
TriggerAll = p2dist x = [40,100]
TriggerAll = p2statetype != A
TriggerAll = p2Movetype != H
TriggerAll = ctrl || stateno = [100,101]
Trigger1 = p2StateNo = 5120
Trigger1 = EnemyNear, AnimTime = [-25,-18]
Trigger2 = p2dist x = [40,80]
Trigger2 = EnemyNear, HitDefAttr = C, NA
Trigger2 = EnemyNear, AnimTime < -19
[State -1, Wampyou Messatsu AI]
type = ChangeState
Value = 1100
TriggerAll = var(9)
TriggerAll = var(1) = 1
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(8-var(9))
triggerAll = statetype != A
trigger1 = p2statetype = S
Trigger1 = p2dist x = [90,130]
Trigger1 = p2StateNo = [100,799]
Trigger1 = ctrl || stateNo = 52 || StateNo = 100 || StateNo = [120,131]
trigger2 = stateno = 52
trigger2 = !AnimTime
trigger2 = p2statetype = A
Trigger2 = p2dist x = [55,130]
[State -1, Yonokaze AI]
type = ChangeState
Value = 1000
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life))/10)*var(9)
TriggerAll = !Numproj
TriggerAll = !var(22) || p2StateType = A
TriggerAll = StateType != A
TriggerAll = ctrl
TriggerAll = p2dist x <= 240+(22*enemynear,vel x)
triggerAll = p2bodydist x > 100+(22*enemynear,vel x)
triggerAll = p2StateNo != [3000,4999]
Trigger1 = var(25)
trigger2 = enemy, vel x >= 0
trigger3 = p2StateNo != [1000,2999]
[State -1, Wampiou Mametsu AI]
type = ChangeState
Value = 1100
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(8-var(9))
TriggerAll = statetype != A
TriggerAll = p2statetype = A
TriggerAll = p2Movetype != H
TriggerAll = EnemyNear, vel y < 0
TriggerAll = ctrl || (stateno = [100,101]) ||(Stateno = [120,131])
Trigger1 = EnemyNear, p2dist x > 0
Trigger1 = EnemyNear, vel x >= 0
Trigger1 = p2dist x < 60+17*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 95
Trigger1 = p2dist x > 17*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
Trigger1 = p2dist y < -70-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*18))
Trigger1 = p2dist y > -170-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*18))
trigger2 = EnemyNear, vel x > 0
trigger2 = EnemyNear, vel y = [-11.5, -8.5]
Trigger2 = p2dist x = [120,170]
[State -1, Jump AI]
type = ChangeState
value = 40
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(12-var(9))
TriggerAll = statetype != A
TriggerAll = ctrl
TriggerAll = !var(53)
triggerAll = p2MoveType = A
Trigger1 = Enemy, vel x = 0
Trigger1 = p2stateNo = [1000,2999]
trigger1 = EnemyNear, AnimTime < -31
Trigger1 = p2bodydist x >= 90
Trigger1 = p2statetype != A
Trigger2 = Enemy, vel x = 0
Trigger2 = p2stateNo = [1000,2999]
trigger2 = EnemyNear, AnimTime < -31
Trigger2 = p2bodydist x >= 90
Trigger2 = p2statetype != A
trigger2 = EnemyNear, Numproj || EnemyNear, hitdefattr != SCA, AA
Trigger3 = EnemyNear, hitdefattr = SCA, AT
[State -1, SVC Grab]
type = ChangeState
value = Ifelse(random >= 500, 950,ifelse(var(1) = 2, 1400,960))
triggerAll = var(9)
Triggerall = random < ifelse(var(9) < 3, 100,200)+100*(var(53) = 3)
triggerall = p2statetype != A
triggerall = p2movetype != H
triggerall = ctrl
TriggerAll = statetype != A
TriggerAll = p2bodydist x < 20
triggerAll = p2stateNo != [3950, 3999]
TriggerAll = !var(6)
trigger1 = p2stateno = [52,59]
trigger2 = p2stateno = 5201
Trigger2 = enemyNear,animtime = 0
trigger3 = EnemyNear,authorname = "Don Drago"
Trigger3 = p2stateno = [5202,5204]
Trigger4 = var(25)
Trigger4 = EnemyNear, Ctrl
[State -1, Normal Grab]
type = ChangeState
value = ifelse(random > 500, 800, ifelse(var(1) = 2, 1400,810))
Triggerall = random < ifelse(var(9) < 3, 100,200)+100*(var(53) = 3)
triggerAll = var(9)
triggerAll = !var(6)
triggerAll = !var(25)
triggerAll = ctrl
TriggerAll = statetype != A
TriggerAll = p2bodydist x < 15
TriggerAll = p2movetype != H
triggerAll = p2stateno != [5000,5210]
TriggerAll = p2stateno != [1100,4999]
TriggerAll = p2stateno != [6000,10999]
trigger1 = p2statetype = S
Trigger2 = p2statetype = C
[State -1, Roll Fwd against cross-up AI]
type = ChangeState
value = 1200
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(10-var(9))
triggerAll = statetype != A
TriggerAll = ctrl || stateno = 100 || stateno = [120,131]
trigger1 = p2StateNo = 40
Trigger1 = EnemyNear, vel x > 0
Trigger1 = p2dist x < 30
trigger2 = p2StateType = A
trigger2 = p2MoveType != H
Trigger2 = EnemyNear, vel x > 0
Trigger2 = EnemyNear, vel y < .75
Trigger2 = p2dist x < 10
[State -1, Roll Fwd against cross-up AI]
type = ChangeState
value = 700
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(10-var(9))
triggerAll = statetype != A
TriggerAll = ctrl || stateno = 100 || stateno = [120,131]
trigger1 = p2StateNo = 40
Trigger1 = EnemyNear, vel x > 0
Trigger1 = p2dist x < 30
trigger2 = p2StateType = A
trigger2 = p2MoveType != H
Trigger2 = EnemyNear, vel x > 0
Trigger2 = EnemyNear, vel y < .75
Trigger2 = p2dist x < 10
[State -1, Roll Fwd AI]
type = ChangeState
value = 700
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(9-var(9))
triggerAll = statetype != A
triggerAll = inguarddist
triggerAll = !var(25)
triggerAll = p2bodydist x = [25,130]
TriggerAll = EnemyNear, AnimTime = [-46, -36]
TriggerAll = p2statetype != A
TriggerAll = ctrl || ((stateno = 100 || stateno = 103)) || stateno = [120,131]
Trigger1 = EnemyNear, hitdefattr = SCA, AA, AP
Trigger2 = Enemy, Numproj
[State -1, Dodge AI]
type = ChangeState
value = 720
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(9-var(9))
triggerall = statetype != A
triggerAll = !var(25)
triggerAll = inguarddist
TriggerAll = ctrl || stateno = [120,131]
triggerAll = p2bodydist x > 25
TriggerAll = p2statetype != A
Trigger1 = (p2StateNo != [200, 699]) || EnemyNear, AnimTime < -40
[State -1, Dodge Attack]
Type = ChangeState
Value = 730
Trigger1 = StateNo = 720
Trigger1 = Time >= 15
Trigger1 = Time < 29
Trigger1 = var(9)
Trigger1 = random < 200
Trigger1 = p2bodydist x = [0,35]
Trigger1 = EnemyNear, Ctrl = 0
Trigger1 = EnemyNear, AnimTime = [-19,-14]
trigger1 = P2StateType = S
;--------------------------------------------------
;------------- Advanced Combo Strings -------------
;--------------------------------------------------
;-------------- Basic Combo Starters --------------
[State -1, Combo starter - near - 1]
type = ChangeState
value = 400
TriggerAll = var(9)
TriggerAll = var(1) != 3
Triggerall = random < 500
TriggerAll = StateType != A
TriggerAll = p2bodydist x < 6
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = p2StateNo != [5120, 5210]
TriggerAll = p2dist x > 0
TriggerAll = ctrl || StateNo = 101
Trigger1 = p2MoveType = H
Trigger2 = Enemy, Moveguarded
Trigger3 = var(25)
Trigger4 = !Enemy, Ctrl
Trigger4 = p2MoveType != A
Trigger5 = StateNo = 101
trigger5 = time > 3
[State -1, Combo starter - near - 2]
type = ChangeState
value = ifelse(random < 333,230,ifelse(random < 666,250,240))
TriggerAll = var(9)
TriggerAll = var(1) < 2
Triggerall = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = p2StateNo != [5120, 5210]
TriggerAll = p2dist x > 0
TriggerAll = p2bodydist x < 20
TriggerAll = ctrl || (time > 10 && StateNo = [100, 102]) || (StateNo = [120,131])
Trigger1 = p2MoveType = H
Trigger2 = EnemyNear, Moveguarded
Trigger3 = var(25)
Trigger4 = !EnemyNear, Ctrl
Trigger4 = p2MoveType != A
Trigger5 = StateNo = 101
trigger5 = time > 3
Trigger6 = P2BodyDist x < 25
trigger6 = p2StateNo = 5120
Trigger6 = EnemyNear, AnimTime > -4
[State -1, Combo starter - near - 2]
type = ChangeState
value = ifelse(random < 333, 220, ifelse(random < 666,230,240))
TriggerAll = var(9)
TriggerAll = var(1) = 2
Triggerall = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = p2StateNo != [5120, 5210]
TriggerAll = p2dist x > 0
TriggerAll = p2bodydist x < 20
TriggerAll = ctrl || (time > 10 && StateNo = [100, 102]) || (StateNo = [120,131])
Trigger1 = p2MoveType = H
Trigger2 = EnemyNear, Moveguarded
Trigger3 = var(25)
Trigger4 = !EnemyNear, Ctrl
Trigger4 = p2MoveType != A
Trigger5 = StateNo = 101
trigger5 = time > 3
Trigger6 = P2BodyDist x < 25
trigger6 = p2StateNo = 5120
Trigger6 = EnemyNear, AnimTime > -4
[State -1, Combo starter - near - 2]
type = ChangeState
value = ifelse(random < 300, 230, 240)
TriggerAll = var(9)
TriggerAll = var(1) = 3
Triggerall = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = p2StateNo != [5120, 5210]
TriggerAll = p2dist x > 0
TriggerAll = p2bodydist x < 20
TriggerAll = ctrl || (time > 10 && StateNo = [100, 102]) || (StateNo = [120,131])
Trigger1 = p2MoveType = H
Trigger2 = EnemyNear, Moveguarded
Trigger3 = var(25)
Trigger4 = !EnemyNear, Ctrl
Trigger4 = p2MoveType != A
Trigger5 = StateNo = 101
trigger5 = time > 3
Trigger6 = P2BodyDist x < 25
trigger6 = p2StateNo = 5120
Trigger6 = EnemyNear, AnimTime > -4
[State -1, Combo starter - mid dist - 1]
type = ChangeState
value = 240
Trigger1 = var(9)
Trigger1 = var(1) = 1 || var(9) < 3
Trigger1 = random < 500
Trigger1 = StateType != A
Trigger1 = p2StateType != A
Trigger1 = p2StateType != L
Trigger1 = p2StateNo != [5120, 5210]
Trigger1 = p2bodydist x = [20,45]
Trigger1 = ctrl || stateNo = 52 || (time > 10 && StateNo = [100, 102]) || (StateNo = [120,131])
Trigger1 = p2MoveType = H
[State -1, Combo starter - far]
type = ChangeState
value = 420
Trigger1 = var(9)
Trigger1 = random < 500
Trigger1 = StateType != A
Trigger1 = p2StateType != A
Trigger1 = p2StateType != L
Trigger1 = p2StateNo != [5120, 5210]
Trigger1 = p2dist x < 80
Trigger1 = ctrl || stateNo = 52 || (time > 10 && StateNo = [100, 102]) || (StateNo = [120,131])
Trigger1 = p2MoveType = H
[State -1, basic combo follow 1]
type = ChangeState
value = 400
Trigger1 = var(9)
Trigger1 = random < 750
Trigger1 = p2StateType != A
Trigger1 = p2StateType != L
Trigger1 = Movecontact
trigger1 = StateNo = 400
Trigger1 = AnimElem = 3, > 2
;---------- Level 1 Only Combo Finishers ----------
[State -1, LV1 finisher 1]
type = ChangeState
Value = ifelse(random < 333, 1100, ifelse(random < 666, 1300, 1000))
Trigger1 = var(9) = 2
Trigger1 = !var(1)
Trigger1 = random < 500
Trigger1 = StateType != A
Trigger1 = p2StateType != A
Trigger1 = var(3)
Trigger1 = MoveContact
[State -1, LV1 finisher 2]
type = ChangeState
Value = ifelse(random < 333, 1100, ifelse(random < 666, 1500, 1000))
Trigger1 = var(9) = 2
Trigger1 = var(1) = 1
Trigger1 = random < 500
Trigger1 = StateType != A
Trigger1 = p2StateType != A
Trigger1 = var(3)
Trigger1 = MoveContact
[State -1, LV1 finisher 3]
type = ChangeState
Value = ifelse(random < 250, 1100, ifelse(random < 500, 1300,ifelse(random < 750, 1500, 1000)))
Trigger1 = var(9) = 2
Trigger1 = var(1) = 2
Trigger1 = random < 500
Trigger1 = StateType != A
Trigger1 = p2StateType != A
Trigger1 = var(3)
Trigger1 = MoveContact
[State -1, LV1 finisher 4]
type = ChangeState
Value = ifelse(random < 500, 1100, 1000)
Trigger1 = var(9) = 2
Trigger1 = var(1) = 1
Trigger1 = random < 500
Trigger1 = StateType != A
Trigger1 = p2StateType != A
Trigger1 = var(3)
Trigger1 = MoveContact
;------------ Advanced Combo Follow-ups ------------
[State -1, LV2 Follow-up 1]
type = ChangeState
value = 300
TriggerAll = var(9) > 1
TriggerAll = var(1) < 3
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = var(3)
TriggerAll = MoveContact
TriggerAll = StateNo != 300
Trigger1 = !(StateNo = 220 && var(1) = 2)
Trigger1 = !(StateNo = 240 && !var(1))
trigger2 = var(9) < 3
[State -1, LV2 Follow-up 2]
type = ChangeState
value = ifelse(var(9) > 3, 420, 450)
TriggerAll = var(9) > 2
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = MoveContact
TriggerAll = !AnimTime
TriggerAll = var(3)
Trigger1 = StateNo = 220
Trigger1 = var(1) = 2
Trigger2 = StateNo = 240
Trigger2 = !var(1)
;------------ LV4 MAX Thread -------------
[State -1, LV4 MAX]
type = ChangeState
Value = 750
TriggerAll = var(9) > 3
TriggerAll = random < 850
TriggerAll = Power >= 2000
TriggerAll = !var(15)
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = var(3)
TriggerAll = p2bodydist x <= 43
TriggerAll = MoveHit
Trigger1 = StateNo = [220,250]
Trigger1 = p2bodydist x > 17 || var(1) = 3
Trigger2 = StateNo = 300
Trigger4 = StateNo = [420,440]
Trigger4 = p2bodydist x > 17 || var(1) = 3
;------- 2002 UM Goenitz cancel thread --------
[State -1, 2002UM cancel thread 1]
type = ChangeState
Value = 1300
TriggerAll = var(9) = 5
TriggerAll = random < 950
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
TriggerAll = StateType != A
TriggerAll = Movehit
TriggerAll = var(15)
TriggerAll = var(18)
TriggerAll = StateNo = 1100
TriggerAll = Numtarget
TriggerAll = target, backedgebodydist > 20
TriggerAll = target, frontedgebodydist > 20
Trigger1 = p2StateType = A
Trigger1 = !var(2)
Trigger1 = p2dist y < -45
Trigger2 = p2StateType = A
Trigger2 = !var(2)
Trigger2 = p2dist x > 95
Trigger3 = p2StateType = A
Trigger3 = var(2) = 1
Trigger3 = p2dist y < -80
Trigger4 = p2StateType = A
Trigger4 = var(2) = 1
Trigger4 = p2dist x > 120
Trigger5 = p2StateType = A
Trigger5 = var(2) = 2
Trigger5 = p2dist y < -100
Trigger6 = p2StateType = A
Trigger6 = var(2) = 2
Trigger6 = p2dist x > 85
Trigger7 = p2StateType != A
Trigger7 = var(2) != 2
Trigger7 = p2dist x = [50,80]
[State -1, 2002UM cancel thread 2]
type = ChangeState
Value = 1100
Trigger1 = var(9) = 5
Trigger1 = random < 950
Trigger1 = var(1) != 1
Trigger1 = var(1) != 3
Trigger1 = StateType != A
Trigger1 = Movehit
Trigger1 = var(15)
Trigger1 = var(18)
Trigger1 = StateNo = 1310
Trigger1 = p2StateType = A
[State -1, 2002UM cancel thread 3]
type = ChangeState
Value = 1000
TriggerAll = var(9) = 5
TriggerAll = random < 950
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
TriggerAll = StateType != A
TriggerAll = p2StateType = A
TriggerAll = Movehit
TriggerAll = var(15)
TriggerAll = var(18)
TriggerAll = StateNo = 1100
TriggerAll = Numtarget
TriggerAll = p2dist y < -100
Trigger1 = target, backedgebodydist <= 20
Trigger2 = target, frontedgebodydist <= 20
;------- 98UM Goenitz cancel thread --------
[State -1, 98UM cancel thread 1]
type = ChangeState
Value = 1100
Trigger1 = var(9) = 5
Trigger1 = random < 950
Trigger1 = var(1) = 1
Trigger1 = var(15)
Trigger1 = var(18)
Trigger1 = MoveHit
Trigger1 = p2StateType != A
Trigger1 = StateNo = 1501
[State -1, 98UM cancel thread 2]
type = ChangeState
Value = 1000
Trigger1 = var(9) = 5
Trigger1 = random < 950
Trigger1 = var(1) = 1
Trigger1 = var(15)
Trigger1 = var(18)
Trigger1 = MoveHit
Trigger1 = StateNo = 1100
Trigger1 = time > 55
;------- MIX Goenitz cancel thread --------
[State -1, MIX cancel thread 1]
type = ChangeState
Value = 1300
Trigger1 = var(9) = 5
Trigger1 = random < 950
Trigger1 = var(1) = 2
Trigger1 = var(15)
Trigger1 = var(18)
Trigger1 = MoveHit
Trigger1 = p2StateType != A
Trigger1 = StateNo = 1501
[State -1, MIX cancel thread 2]
type = ChangeState
Value = 1500
Trigger1 = var(9) = 5
Trigger1 = random < 950
Trigger1 = var(1) = 2
Trigger1 = var(15)
Trigger1 = var(18)
Trigger1 = MoveHit
Trigger1 = p2StateType != A
Trigger1 = StateNo = 1310
;------- Boss Goenitz cancel thread --------
[State -1, Boss cancel thread 1]
type = ChangeState
Value = 3000
TriggerAll = var(9) = 5
TriggerAll = random < 750
TriggerAll = var(1) = 3
TriggerAll = StateType != A
TriggerAll = p2StateType = A
TriggerAll = var(15) || power >= 1000
TriggerAll = var(18)
TriggerAll = Numtarget
TriggerAll = Movehit
TriggerAll = StateNo = 1100
Trigger1 = p2StateType = A
Trigger1 = !var(2)
Trigger1 = p2dist y < -45
Trigger2 = p2StateType = A
Trigger2 = !var(2)
Trigger2 = p2dist x > 95
Trigger3 = p2StateType = A
Trigger3 = var(2) = 1
Trigger3 = p2dist y < -80
Trigger4 = p2StateType = A
Trigger4 = var(2) = 1
Trigger4 = p2dist x > 120
Trigger5 = p2StateType = A
Trigger5 = var(2) = 2
Trigger5 = p2dist y < -100
Trigger6 = p2StateType = A
Trigger6 = var(2) = 2
Trigger6 = p2dist x > 85
Trigger7 = p2StateType != A
Trigger7 = var(2) != 2
Trigger7 = p2dist x > 80
;------------ LV4 Finishers -------------
[State -1, LV4 finisher 1]
type = ChangeState
Value = 3100
TriggerAll = var(9) > 3
TriggerAll = random < 750
TriggerAll = Power >= ifelse(var(15), 1000, 2000)-1000*(var(1) = 3)
TriggerAll = p2Life >= 100 || var(15)
TriggerAll = StateType != A
TriggerAll = var(18)
TriggerAll = p2dist x < 70
TriggerAll = MoveHit
TriggerAll = p2StateType != A
TriggerAll = var(15) < 250 || var(1) != 2 || var(9) < 5
TriggerAll = !(life < lifemax/4 && power >= 4000+1000*(!var(15)))
Trigger1 = StateNo = 1100
Trigger1 = p2dist x > 63
Trigger2 = StateNo = 1310
Trigger3 = StateNo = 1501
[State -1, LV4 finisher 2a]
type = ChangeState
Value = 3000
TriggerAll = var(9) > 3
TriggerAll = var(1) > 1
TriggerAll = random < 750
TriggerAll = Power >= ifelse(var(15),1000,2000)-1000*(var(1) = 3)
TriggerAll = p2Life >= 150 || var(15)
TriggerAll = StateType != A
TriggerAll = p2StateType != A || p2stateno = [6000,6006]
TriggerAll = var(18)
TriggerAll = MoveHit || projhit = 1, = [10,12]
TriggerAll = var(15) < 300 || var(9) < 5 || var(1) = 3 || p2StateType != A
TriggerAll = StateNo = 1100
Trigger1 = p2StateType = A
Trigger1 = !var(2)
Trigger1 = p2dist y < -45
Trigger2 = p2StateType = A
Trigger2 = !var(2)
Trigger2 = p2dist x > 95
Trigger3 = p2StateType = A
Trigger3 = var(2) = 1
Trigger3 = p2dist y < -80
Trigger4 = p2StateType = A
Trigger4 = var(2) = 1
Trigger4 = p2dist x > 120
Trigger5 = p2StateType = A
Trigger5 = var(2) = 2
Trigger5 = p2dist y < -100
Trigger6 = p2StateType = A
Trigger6 = var(2) = 2
Trigger6 = p2dist x > 85
Trigger7 = p2StateType != A
Trigger7 = var(2) != 2
Trigger7 = p2dist x > 80
[State -1, LV4 finisher 2b]
type = ChangeState
Value = 3000
Trigger1 = var(9) > 3
Trigger1 = var(1)
Trigger1 = var(1) != 2
Trigger1 = random < 750
Trigger1 = Power >= ifelse(var(15),1000,2000)-1000*(var(1) = 3)
Trigger1 = p2Life >= 150 || var(15)
Trigger1 = StateType != A
Trigger1 = p2stateno = [6000,6006]
Trigger1 = var(18)
Trigger1 = projhit = 1, = [10,12]
Trigger1 = StateNo = 1000
Trigger1 = p2dist x < 100
[State -1, LV4 finisher 2c]
type = ChangeState
Value = 3000
Trigger1 = var(9) > 3
Trigger1 = random < 750
Trigger1 = Power >= ifelse(var(15),1000,2000)-1000*(var(1) = 3)
Trigger1 = p2Life >= 250
Trigger1 = StateType != A
Trigger1 = p2stateno = [6000,6006]
Trigger1 = var(18)
Trigger1 = projhit = 1, = [10,12]
Trigger1 = StateNo = 1000
Trigger1 = p2dist x < 100
Trigger1 = enemynear, backedgebodydist > 20
Trigger1 = enemynear, frontedgebodydist > 20
[State -1, LV4 finisher 2d]
type = ChangeState
Value = 3000
TriggerAll = var(9) > 3
TriggerAll = !var(1)
TriggerAll = random < 750
TriggerAll = Power >= ifelse(var(15),3000,4000)
TriggerAll = p2Life >= 250
TriggerAll = StateType != A
TriggerAll = p2StateType != A || p2stateno = [6000,6006]
TriggerAll = var(18)
TriggerAll = MoveHit || projhit = 1, = [10,12]
TriggerAll = var(15) < 300 || var(9) < 5
TriggerAll = StateNo = 1100
Trigger1 = p2StateType = A
Trigger1 = !var(2)
Trigger1 = p2dist y < -45
Trigger2 = p2StateType = A
Trigger2 = !var(2)
Trigger2 = p2dist x > 95
Trigger3 = p2StateType = A
Trigger3 = var(2) = 1
Trigger3 = p2dist y < -80
Trigger4 = p2StateType = A
Trigger4 = var(2) = 1
Trigger4 = p2dist x > 120
Trigger5 = p2StateType = A
Trigger5 = var(2) = 2
Trigger5 = p2dist y < -100
Trigger6 = p2StateType = A
Trigger6 = var(2) = 2
Trigger6 = p2dist x > 85
Trigger7 = p2StateType != A
Trigger7 = var(2) != 2
Trigger7 = p2dist x > 80
[State -1, LV4 finisher 2e]
type = ChangeState
Value = 3000
Trigger1 = var(9) > 3
Trigger1 = !var(1)
Trigger1 = random < 750
Trigger1 = Power >= ifelse(var(15),3000,4000)
Trigger1 = p2Life >= 250
Trigger1 = StateType != A
Trigger1 = p2stateno = [6000,6006]
Trigger1 = var(18)
Trigger1 = projhit = 1, = [10,12]
Trigger1 = StateNo = 1000
Trigger1 = p2dist x < 100
Trigger1 = enemynear, backedgebodydist > 20
Trigger1 = enemynear, frontedgebodydist > 20
[State -1, LV4 finisher 3a]
type = ChangeState
Value = 3200
TriggerAll = var(9) > 3
TriggerAll = !var(1)
TriggerAll = random < 750
TriggerAll = Power >= ifelse(var(15),1000,2000)
TriggerAll = p2Life >= 250
TriggerAll = StateType != A
TriggerAll = p2StateType != A || p2stateno = [6000,6006]
TriggerAll = var(18)
TriggerAll = MoveHit
TriggerAll = var(15) < 300 || var(9) < 5 || p2StateType != A
TriggerAll = StateNo = 1100
Trigger1 = p2StateType = A
Trigger1 = !var(2)
Trigger1 = p2dist y < -45
Trigger2 = p2StateType = A
Trigger2 = !var(2)
Trigger2 = p2dist x > 95
Trigger3 = p2StateType = A
Trigger3 = var(2) = 1
Trigger3 = p2dist y < -80
Trigger4 = p2StateType = A
Trigger4 = var(2) = 1
Trigger4 = p2dist x > 120
Trigger5 = p2StateType = A
Trigger5 = var(2) = 2
Trigger5 = p2dist y < -100
Trigger6 = p2StateType = A
Trigger6 = var(2) = 2
Trigger6 = p2dist x > 85
Trigger7 = p2StateType != A
Trigger7 = var(2) != 2
Trigger7 = p2dist x > 80
[State -1, LV4 finisher 3b]
type = ChangeState
Value = 3200
Trigger1 = var(9) > 3
Trigger1 = !var(1)
Trigger1 = random < 750
Trigger1 = Power >= ifelse(var(15),1000,2000)
Trigger1 = p2Life >= 250
Trigger1 = StateType != A
Trigger1 = p2stateno = [6000,6006]
Trigger1 = var(18)
Trigger1 = projhit = 1, = [10,12]
Trigger1 = StateNo = 1000
Trigger1 = p2dist x < 100
Trigger1 = enemynear, backedgebodydist > 20
Trigger1 = enemynear, frontedgebodydist > 20
[State -1, LV4 finisher 2b]
type = ChangeState
Value = 3200
Trigger1 = var(9) > 3
Trigger1 = var(1) != 1
Trigger1 = var(1) != 3
Trigger1 = random < 750
Trigger1 = Power >= ifelse(var(15),1000,2000)
Trigger1 = p2Life >= 250
Trigger1 = StateType != A
Trigger1 = p2stateno = [6000,6006]
Trigger1 = var(18)
Trigger1 = projhit = 1, = [10,12]
Trigger1 = StateNo = 1000
Trigger1 = p2dist x < 100
;------------ Hyper Finishers -------------
[State -1, LV3 finisher 1]
type = ChangeState
Value = 3000
TriggerAll = var(9) > 2
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(8-var(9))
TriggerAll = !var(1)
TriggerAll = Power >= ifelse(var(15), 1000,3000)
TriggerAll = p2Life >= 200 || var(15)
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = var(3)
TriggerAll = MoveHit
TriggerAll = var(15) || var(9) < 5
TriggerAll = power < 2000 || var(9) < 4
Trigger1 = random < 200
Trigger2 = StateNo = 300
[State -1, LV3 finisher 2]
type = ChangeState
Value = 3100
TriggerAll = var(9) > 2
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(12-var(9))
TriggerAll = Power >= 1000 || var(15) || var(1) = 3
TriggerAll = p2Life >= 100 || var(15) || var(1) = 3
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = !var(19)
TriggerAll = var(3)
TriggerAll = p2dist x < 70
TriggerAll = MoveHit
TriggerAll = var(15) || var(9) < 5 || var(1) = 3
TriggerAll = power < 1000 || var(9) < 4 || var(1) = 3
Trigger1 = random < 200 || var(1) = 3
Trigger2 = StateNo = 300
[State -1, LV3 finisher 2]
type = ChangeState
Value = ifelse(var(1),3000,3200)
TriggerAll = var(9) > 2
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(12-var(9))
TriggerAll = Power >= 1000 || var(15) || var(1) = 3
TriggerAll = p2Life >= 100 || var(15) || var(1) = 3
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = var(3)
TriggerAll = MoveHit
TriggerAll = var(15) || var(9) < 5 || var(1) = 3
TriggerAll = power < 1000 || var(9) < 4 || var(1) = 3
Trigger1 = random < 200 || var(1) = 3
Trigger2 = StateNo = 300
;-------- LV 3+ Special Finishers ---------
[State -1, LV3 finisher 1]
type = ChangeState
Value = 1300
TriggerAll = var(9) > 2
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = var(3)
TriggerAll = p2bodydist x <= 60
TriggerAll = MoveHit
Trigger1 = random < 200 || var(1) = 3
Trigger2 = StateNo = 300
Trigger3 = StateNo = 730
[State -1, LV3 finisher 3]
type = ChangeState
Value = 1500
TriggerAll = var(9) > 2
TriggerAll = var(1)
TriggerAll = var(1) != 3
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = var(3)
TriggerAll = MoveHit
Trigger1 = random < 200 || var(1) = 3
Trigger2 = StateNo = 300
Trigger3 = StateNo = 730
[State -1, LV3 finisher 4]
type = ChangeState
Value = ifelse(random < 200, 1200, 1000)
TriggerAll = var(9) > 2
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = var(3)
TriggerAll = MoveGuarded
Trigger1 = random < 200 || var(1) = 3
Trigger2 = StateNo = 300
Trigger3 = StateNo = 730
[State -1, LV3 finisher 2]
type = ChangeState
Value = 1100
TriggerAll = var(9) > 2
TriggerAll = var(1) = [1,2]
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = var(3)
TriggerAll = MoveHit
TriggerAll = p2bodydist x <= 55
TriggerAll = StateNo != [200,210]
TriggerAll = StateNo != 400
TriggerAll = StateNo != 420 || var(1) = 1
Trigger1 = random < 200
Trigger2 = StateNo = 300
Trigger3 = StateNo = 730
[State -1, LV3 finisher 2b]
type = ChangeState
Value = 1100
TriggerAll = var(9) > 2
TriggerAll = var(1)
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType = A
TriggerAll = p2MoveType = H
TriggerAll = p2Stateno = [6000,6006]
TriggerAll = var(3)
TriggerAll = MoveHit
Trigger1 = enemynear, backedgedist < 10
Trigger1 = p2dist x < 80
Trigger2 = enemynear, frontedgedist < 10
Trigger2 = p2dist x < 80
Trigger3 = p2bodydist x <= 55
[State -1, LV3 finisher 2c]
type = ChangeState
Value = 1000
Trigger1 = var(9) > 2
Trigger1 = var(1) = [1,2]
Trigger1 = random < 500
Trigger1 = StateType != A
Trigger1 = p2StateType = A
Trigger1 = p2MoveType = H
Trigger1 = p2Stateno = [6000,6004]
Trigger1 = var(3)
Trigger1 = MoveHit
[State -1, LV3 finisher 3]
type = ChangeState
Value = 3100
TriggerAll = var(9) > 3
TriggerAll = var(1) = 3
TriggerAll = var(3)
TriggerAll = !var(19)
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = p2StateType != A
TriggerAll = p2StateType != L
TriggerAll = MoveHit
TriggerAll = p2dist x < 70
Trigger1 = var(15)
Trigger2 = var(9) < 5
Trigger3 = power < 2000
[State -1, LV3 finisher 3]
type = ChangeState
Value = 3000
TriggerAll = var(9) > 3
TriggerAll = var(1) = 3
TriggerAll = var(3)
TriggerAll = random < 500
TriggerAll = StateType != A
TriggerAll = MoveHit
TriggerAll = p2StateType != A || p2StateNo = [6000,6006]
Trigger1 = var(15)
Trigger2 = var(9) < 5
Trigger3 = power < 2000
;---------------- Jugglers & OTG -----------------
[State -1, Shin Ya Otome AI SDM]
type = ChangeState
value = 3000
TriggerAll = var(9) > 2
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(12-var(9))
TriggerAll = !var(1)
TriggerAll = StateType != A
TriggerAll = Power >= 1000+2000*(!var(15))
TriggerAll = p2Life >= 200
triggerAll = ctrl || StateNo = [100,101]
triggerAll = var(15) < 300 || power < 2000 || var(9) < 5
Trigger1 = p2StateType = A
Trigger1 = p2dist x < 120+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 95
Trigger1 = p2dist x > 20+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
Trigger1 = (p2dist y = [-170,-70]) || (Enemynear, vel y = [-9,-3])
trigger1 = p2MoveType = H
trigger1 = p2StateNo = [6000,6006]
[State -1, Shin Ya Otome AI DM]
type = ChangeState
value = 3000
TriggerAll = var(9) > 2
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(12-var(9))
TriggerAll = var(1)
TriggerAll = StateType != A
TriggerAll = Power >= 1000 || var(15) || var(1) = 3
TriggerAll = p2Life >= 150
triggerAll = ctrl || StateNo = [100,101]
triggerAll = var(15) < 300 || power < 1000 || var(1) != 2 || var(9) < 5
Trigger1 = p2StateType = A
Trigger1 = p2dist x < 120+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 95
Trigger1 = p2dist x > 20+15*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
Trigger1 = (p2dist y = [-170,-70]) || (Enemynear, vel y = [-9,-3])
trigger1 = p2MoveType = H
trigger1 = p2StateNo = [6000,6006]
[State -1, Wampiou Mametsu AI Juggle]
type = ChangeState
Value = 1100
TriggerAll = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(8-var(9))
TriggerAll = statetype != A
TriggerAll = p2statetype = A
TriggerAll = p2Movetype = H
TriggerAll = p2StateNo = [6000,6006]
TriggerAll = EnemyNear, vel y < 4
TriggerAll = ctrl || (stateno = [100,101]) ||(Stateno = [120,131])
Trigger1 = p2dist x < 60+17*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 95
Trigger1 = p2dist x > 17*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
Trigger1 = p2dist y < -70-((EnemyNear, vel y)+(enemyNear, gethitvar(yaccel)*18))
Trigger1 = p2dist y > -170-((EnemyNear, vel y)+(enemyNear, gethitvar(yaccel)*18))
[State -1, OTG finisher]
type = ChangeState
Value = 1000
TriggerAll = var(9) > 2
TriggerAll = var(1)
TriggerAll = var(1) != 3
TriggerAll = random < 500
TriggerAll = !Numproj
TriggerAll = StateType != A
TriggerAll = ctrl || StateNo = [100,103]
TriggerAll = p2dist x <= 250
TriggerAll = p2MoveType = H
trigger1 = p2StateNo = 6700
trigger2 = p2StateNo = [5050,5110]
;----------- offensive code
[State -1]
type = ChangeState
value = 100
TriggerAll = var(9)
TriggerAll = random < ifelse(var(9) < 3, 100,200)+300*(!var(53))
triggerall = ctrl
triggerall = var(53) != 1
TriggerAll = statetype != A
TriggerAll = p2statetype != L
TriggerAll = p2stateNo != [5120,5205]
trigger1 = p2movetype != A
trigger1 = P2bodydist X >= 150
trigger2 = P2bodydist X >= 60
trigger2 = p2movetype = H || (var(25) && p2StateType != A)
;-----------defensive code
[State -1, High Jump fwd AI]
type = ChangeState
value = 41
TriggerAll = var(9)
TriggerAll = random < ifelse(var(9) < 3, 100,200)+300*(var(53) = 1)
triggerAll = statetype != A
TriggerAll = ctrl
TriggerAll = p2bodydist x <= 50
TriggerAll = backedgebodydist < 50
trigger1 = p2stateno = [5120,5202]
trigger2 = p2stateno = [5030,5110]
trigger3 = p2stateno = [153,155]
trigger4 = p2MoveType = H
Trigger4 = p2StateNo = [1350,1360]
trigger5 = p2MoveType = H
Trigger5 = p2StateNo = [6010,6019]
[State -1, Run back AI]
type = ChangeState
value = 105
TriggerAll = var(9)
TriggerAll = random < ifelse(var(9) < 3, 200,400)+300*(var(53) = 1)
triggerAll = statetype != A
TriggerAll = ctrl
TriggerAll = p2bodydist x <= 50
TriggerAll = backedgebodydist > 50
trigger1 = p2stateno = [5120,5202]
trigger2 = p2stateno = [153,155]
trigger3 = p2MoveType = H
Trigger3 = p2StateNo = [1350,1360]
trigger4 = p2MoveType = H
Trigger4 = p2StateNo = [6010,6019]
trigger5 = p2MoveType = H
Trigger5 = p2StateNo = 6700
[State -1, Guard]
type = ChangeState
value = 120
triggerall = var(9)
TriggerAll = random < ((lifemax-life)/(lifemax/const(data.life)))/(15-var(9))
triggerall = ctrl
TriggerAll = stateno != [120,140]
trigger1 = inguarddist
trigger1 = enemynear, MoveGuarded = 0
[State -1,recover1]
type = ChangeState
value = 5201
triggerall = var(9)
triggerall = canrecover
triggerall = movetype = H
triggerall = Vel Y > 0
triggerall = Pos Y >= -20
triggerall = alive
TriggerAll = random < ifelse(var(9) < 3, 200,400)
triggerall = stateno = [5050,5100]
trigger1 = var(53) = 1
trigger2 = p2bodydist x < 60
trigger3 = var(50)
[State -1, GC Dash AI]
type = ChangeState
value = 101
TriggerAll = var(9) > 2
TriggerAll = Power >= 1500
TriggerAll = !var(53)
TriggerAll = Random < (power/10)
TriggerAll = p2bodydist x < 65
TriggerAll = p2statetype != A
TriggerAll = EnemyNear, AnimTime < -10
Trigger1 = StateNo = 150
Trigger2 = StateNo = 152
[State -1, Knockdown AI]
type = ChangeState
Value = 260
TriggerAll = var(9)
Triggerall = random < 150
TriggerAll = Life < p2life || life < 300
TriggerAll = Power >= 1000
TriggerAll = StateNo = 150 || StateNo = 152
trigger1 = p2dist x = [10,70]
trigger1 = p2StateType != A
[State -1 AIcharge]
type = ChangeState
value = 770
Triggerall = random < 100+200*(var(53) = 2)
Trigger1 = var(9)
trigger1 = power < PowerMax
trigger1 = p2bodydist x > 90
trigger1 = Enemy, gethitvar(fall) = 1 || p2StateNo = [5050, 5110]
trigger1 = statetype != A
Trigger1 = ctrl || stateNo = 52
trigger1 = !var(15) || numpartner
;--------- Anti-aerials
[State -1, Anti-Aerial 1]
type = ChangeState
Value = 1100
TriggerAll = var(9)
TriggerAll = random < 50
TriggerAll = statetype != A
TriggerAll = p2statetype = A
TriggerAll = p2Movetype != H
TriggerAll = EnemyNear, vel y < 0
TriggerAll = ctrl || (stateno = [100,101]) ||(Stateno = [120,131])
Trigger1 = EnemyNear, p2dist x > 0
Trigger1 = EnemyNear, vel x >= 0
Trigger1 = p2dist x < 60+17*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 95
Trigger1 = p2dist x > 17*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
Trigger1 = p2dist y < -70-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*18))
Trigger1 = p2dist y > -170-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*18))
trigger2 = EnemyNear, vel x > 0
trigger2 = EnemyNear, vel y = [-11.5, -8.5]
Trigger2 = p2dist x = [120,170]
[State -1, Anti-Aerial 2]
type = ChangeState
Value = 41
TriggerAll = var(9)
TriggerAll = var(1) > 1
Triggerall = random < 150
TriggerAll = statetype != A
TriggerAll = EnemyNear, vel y > -1
TriggerAll = ctrl
Trigger1 = p2Movetype != H
Trigger1 = p2StateNo != [2000,4999]
Trigger1 = p2dist x < 140
Trigger1 = p2dist x > 55
Trigger1 = p2dist y < -70
Trigger1 = p2dist y > -200
Trigger1 = p2statetype = A
[State -1, Anti-Aerial 3]
type = ChangeState
Value = 440
TriggerAll = var(9)
Triggerall = random < 150
TriggerAll = statetype != A
TriggerAll = EnemyNear, vel y > -1
TriggerAll = ctrl
Trigger1 = p2Movetype != H
Trigger1 = p2StateNo != [2000,4999]
Trigger1 = p2dist x < 55+9*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || frontEdgeDist < 55
Trigger1 = p2dist x > 15+9*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1)) || backEdgeDist < 5
Trigger1 = p2dist y < -50-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*9))
Trigger1 = p2dist y > -65-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*9))
Trigger1 = p2statetype = A
[State -1, anti-aerial 4]
type = ChangeState
Value = 250
TriggerAll = var(9)
Triggerall = random < 150
TriggerAll = statetype != A
TriggerAll = EnemyNear, vel y > 0
TriggerAll = EnemyNear, pos y < 0
TriggerAll = p2dist x < 58+6*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
TriggerAll = p2dist x > -8+6*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
TriggerAll = p2dist y < -65-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*6))
TriggerAll = p2dist y > -100-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*6))
TriggerAll = p2statetype = A
TriggerAll = p2Movetype != H
TriggerAll = p2MoveType != A || var(30)
Triggerall = p2bodydist x > 20 || var(1) > 1
Trigger1 = ctrl || stateNo = 52
Trigger2 = stateno = [100,101]
[State -1, anti-aerial 5]
type = ChangeState
Value = 450
TriggerAll = var(9)
Triggerall = random < 150
TriggerAll = statetype != A
TriggerAll = p2dist x < 85+8*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
TriggerAll = p2dist x > 65+8*((enemyNear, vel x)*ifelse(enemynear, p2dist x < 0, -1, 1))
TriggerAll = p2dist y < -22-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*8))
TriggerAll = p2dist y > -30-((EnemyNear, vel y)+(enemyNear, const(movement.yaccel)*8))
TriggerAll = p2statetype = A
TriggerAll = p2Movetype != H
TriggerAll = EnemyNear, vel y > 0
TriggerAll = EnemyNear, pos y < 0
TriggerAll = p2StateNo != [2000,4999]
Trigger1 = ctrl || stateNo = 52
Trigger2 = (stateno = 100 || stateno = 103)
;--------------------------------------------------
;------------------ Poking system -----------------
;--------------------------------------------------
[State -1, poking All 1]
type = ChangeState
value = ifelse(random > 500, 200, 400)
Trigger1 = var(9)
Trigger1 = random < 250
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [0,50]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
[State -1, poking 1]
type = ChangeState
value = ifelse(random < 500, 210, 450)
Trigger1 = var(9)
Trigger1 = random < 150
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [50,65]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
[State -1, poking 2]
type = ChangeState
value = ifelse(random < 500, 200, 450)
Trigger1 = var(9)
Trigger1 = random < 150
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [60,70]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
[State -1, poking 3]
type = ChangeState
value = ifelse(random < 500, 420, 450)
Trigger1 = var(9)
Trigger1 = random < 150
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [70,85]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
[State -1, poking 3]
type = ChangeState
value = ifelse(random < 500, 240, 450)
Trigger1 = var(9)
Trigger1 = random < 150
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [60,85]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
[State -1, poking 4a]
type = ChangeState
value = ifelse(random < 500, 420, 300)
Trigger1 = var(9)
Trigger1 = var(1) < 3
Trigger1 = random < 150
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [75,95]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
[State -1, poking 4b]
type = ChangeState
value = ifelse(random < 500, 420, 250)
Trigger1 = var(9)
Trigger1 = random < 150
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [75,95]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
[State -1, poking 5]
type = ChangeState
value = ifelse(random < 500, 300, 250)
Trigger1 = var(9)
Trigger1 = var(1) != 3
Trigger1 = random < 150
trigger1 = statetype != A
trigger1 = p2statetype != A
trigger1 = p2statetype != L
Trigger1 = p2dist x = [85,105]
Trigger1 = p2stateno != [1100,4999]
Trigger1 = ctrl || stateNo = 52
;----------- aerials
[State -1, Jump SPunch AI]
type = ChangeState
value = 640
triggerAll = var(9)
TriggerAll = statetype = A
TriggerAll = ctrl
Trigger1 = !var(4)
Trigger1 = p2dist x < 55+13*vel x
Trigger1 = p2dist x > 13*vel x
trigger1 = vel y > -.5
trigger1 = pos y < -80
Trigger1 = p2statetype != A
Trigger2 = var(4)
Trigger2 = p2dist x < 55+13*vel x
Trigger2 = p2dist x > 0
trigger2 = vel y > -.5
trigger2 = pos y < -55
Trigger2 = p2statetype != A
[State -1, Jump SKick AI]
type = ChangeState
value = ifelse(var(1) = 3, 630,650)
triggerAll = var(9)
triggerAll = var(1) != [1,2]
TriggerAll = statetype = A
TriggerAll = ctrl
Trigger1 = !var(4)
Trigger1 = p2dist x < 80+7*vel x
Trigger1 = p2dist x > 7*vel x
trigger1 = vel y > 0 && pos y > -80
Trigger1 = p2statetype != A
Trigger2 = var(4)
Trigger2 = p2dist x < 80+7*vel x
Trigger2 = p2dist x > 0
trigger2 = vel y > 0
trigger2 = pos y < -65
Trigger2 = p2statetype != A
[State -1, Jump Med kick AI]
type = ChangeState
value = ifelse(var(1) = 2,630,ifelse(var(1) = 3, 610,650))
triggerAll = var(9)
triggerAll = var(1)
TriggerAll = statetype = A
TriggerAll = ctrl
Trigger1 = p2bodydist x < 85
trigger1 = vel y > 0 && pos y > -80
Trigger1 = p2statetype != A
Trigger2 = random < ifelse(var(9) < 3, 400,800)
Trigger2 = p2movetype != H
Trigger2 = p2statetype = A
Trigger2 = p2dist x < 85+8*vel x
Trigger2 = p2dist x > 0
Trigger2 = p2bodydist y = [0,20]
Trigger2 = p2dist x > 85+8*vel x || p2MoveType != A
[State -1, Jump Knockdown AI]
type = ChangeState
value = 660
triggerAll = var(9)
TriggerAll = statetype = A
TriggerAll = ctrl
Trigger1 = random < ifelse(var(9) < 3, 400,800)
Trigger1 = p2movetype != H
Trigger1 = p2statetype = A
Trigger1 = p2dist x < 60+12*vel x
Trigger1 = p2dist x > 0
Trigger1 = p2bodydist y = [-50,10]
[State -1, Jump Strong kick AI]
type = ChangeState
value = 650
triggerAll = var(9)
triggerAll = var(1) > 1
TriggerAll = statetype = A
TriggerAll = ctrl
Trigger1 = random < ifelse(var(9) < 3, 400,800)
Trigger1 = p2movetype != H
Trigger1 = p2statetype = A
Trigger1 = p2dist x < 40+4*vel x
Trigger1 = p2dist x > 0
Trigger1 = p2bodydist y = [-90,0]
;--------------------------------------------------
;---------------- Personality chips ---------------
;--------------------------------------------------
;--------------- Run & grab ----------------
[State -1, Jump]
type = ChangeState
value = 7000
TriggerAll = var(9)
TriggerAll = var(53) = 3
TriggerAll = !var(6)
triggerAll = statetype != A
triggerAll = p2StateType != A
triggerAll = p2StateType != L
triggerAll = p2MoveType != A
triggerAll = !EnemyNear, Numproj
trigger1 = p2bodydist x > 100
Trigger1 = !inguarddist
Trigger1 = ctrl || stateNo = 52
Trigger2 = Stateno = [400,430]
Trigger2 = !AnimTime
;--------------- jump, dodge & grab ----------------
[State -1, Jump]
type = ChangeState
value = ifelse(p2bodydist x > 20,700,720)
Trigger1 = var(9)
Trigger1 = var(53) = 3
trigger1 = statetype != A
trigger1 = p2StateType != A
trigger1 = p2StateType != L
trigger1 = p2bodydist x = [0,55]
Trigger1 = stateno = 52
Trigger1 = prevstateno = [600,690]
Trigger1 = p2stateno = [120,152]
Trigger1 = !AnimTime
[State -1, Jump]
type = ChangeState
value = 3100
TriggerAll = var(9)
TriggerAll = var(53) = 3
TriggerAll = !var(6)
triggerAll = statetype != A
triggerAll = p2StateType != A
triggerAll = p2StateType != L
triggerAll = p2dist x = [0,69]
TriggerAll = prevstateno = 52
TriggerAll = stateno = [700,720]
TriggerAll = !AnimTime
trigger1 = Power >= 1000
trigger2 = var(15)
trigger3 = var(1) = 3
[State -1, Jump]
type = ChangeState
value = 950+10*(random < 500)
Trigger1 = var(9)
Trigger1 = var(1) != 2
Trigger1 = var(53) = 3
trigger1 = statetype != A
trigger1 = p2StateType != A
trigger1 = p2StateType != L
trigger1 = p2bodydist x = [0,20]
Trigger1 = prevstateno = 52
Trigger1 = stateno = [700,720]
Trigger1 = !AnimTime
[State -1, Jump]
type = ChangeState
value = 1400
Trigger1 = var(9)
Trigger1 = var(1) = 2
Trigger1 = var(53) = 3
trigger1 = statetype != A
trigger1 = p2StateType != A
trigger1 = p2StateType != L
trigger1 = p2bodydist x = [0,20]
Trigger1 = prevstateno = 52
Trigger1 = stateno = [700,720]
Trigger1 = !AnimTime
;--------------- Teleport & grab ----------------
[State -1, Teleport]
type = ChangeState
value = 7010
TriggerAll = var(9) > 2
TriggerAll = var(53) = 3
TriggerAll = !var(6)
triggerAll = p2StateType != A
triggerAll = p2StateType != L
triggerAll = p2dist x = [0,69]
TriggerAll = !AnimTime
Trigger1 = stateno = 1200
Trigger1 = var(2) != 2
Trigger2 = stateno = 1201
Trigger2 = var(2) = 2
;--------------- Koko Desu Ka ----------------
[State -1, Combo]
type = ChangeState
value = 7020
TriggerAll = var(9) > 2
TriggerAll = var(1) != 1
TriggerAll = var(1) != 3
triggerAll = Stateno = 1000
triggerAll = prevStateno = 1100
triggerAll = !AnimTime
triggerAll = p2dist x < 95
triggerAll = numtarget
trigger1 = target, backedgebodydist < 5
trigger2 = target, frontedgebodydist < 5
[State -1, Retarded Kototsuki AI]
type = ChangeState
Value = 1500
Trigger1 = var(9)
Trigger1 = (life > lifemax/4*(var(9)-1))
Trigger1 = var(1)
Trigger1 = var(1) != 3
Trigger1 = random < 25
Trigger1 = StateType != A
Trigger1 = ctrl || stateNo = 52
[State -1, Retarded Aoi Hana AI]
type = ChangeState
Value = 1300
Trigger1 = var(9)
Trigger1 = (life > lifemax/4*(var(9)-1))
Trigger1 = var(1) != 1
Trigger1 = var(1) != 3
Trigger1 = random < 25
Trigger1 = StateType != A
Trigger1 = ctrl || stateNo = 52
[State -1, Retarded Wampiou AI]
type = ChangeState
Value = 1100
Trigger1 = var(9)
Trigger1 = (life > lifemax/4*(var(9)-1))
Trigger1 = random < 25
Trigger1 = StateType != A
Trigger1 = ctrl || stateNo = 52
[State -1, Retarded punch AI]
type = ChangeState
Value = 240
Trigger1 = var(9)
Trigger1 = (life > lifemax/4*(var(9)-1))
Trigger1 = random < 150
Trigger1 = p2bodydist x > 150
Trigger1 = StateType != A
Trigger1 = ctrl || stateNo = 52
[State -1, Retarded Taunt AI]
type = ChangeState
Value = 195
Trigger1 = var(9)
Trigger1 = (life > lifemax/4*(var(9)-1))
Trigger1 = random < 25
Trigger1 = StateType != A
Trigger1 = ctrl || stateNo = 52