; slash (/) - means the key must be held down
; tilde (~) - to detect key releases
; dollar ($) - Direction-only: detect as 4-way
; plus (+) - Buttons only: simultaneous press
; greater-than (>) - means there must be no other keys pressed or released
; between the previous and the current symbol.
;-| Button Remapping |-----------------------------------------------------
[Remap]
x = x
y = y
z = z
a = a
b = b
c = c
s = s
;-| Default Values |-------------------------------------------------------
[Defaults]
command.time = 15
command.buffer.time = 1
;-| AI |------------------------------------------------------
[Command]
name = "cpu01"
command = ~U+a+b+c+x+y+z+s,DF, F, D,DF, F,x,x,x,x,x,F,F,F,F,F,F,F,U,c,c,F,U,c,c,F,U,c,c,F,U,c,c,F,U,c,c,F,U,c,c,F,U,c,c,F,U,c,c,F,U,c,c,F,U,c,c
time = 1
[Command]
name = "cpu02"
command = ~U+a+b+c+x+y+z+s,DF, F, D,DF, F,y,y,y,x,x,x,x,x,x,x,x,x,x,x,x,x,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,U
time = 1
[Command]
name = "cpu03"
command = ~U+a+b+c+x+y+z+s,DF, F, D,DF, F,z,z,z,x,x,F,U,B,B,B,B,B,U,U,U,U,B,B,B,B,D,D,D,D,D,D,D,D,D,D,D,D,D
time = 1
[Command]
name = "cpu04"
command = ~U+a+b+c+x+y+z+s,DF, F, D,DF, F,a,a,a,x,x,F+U+D+B+a+b+c+x+y+z,F,D,U,B,a,b,c,x,y,z,s,a,a,a,x,x,F+U+D+B+a+b+c+x+y+z,F,D,U,B,a,b,c,x,y,z,s
time = 1
[Command]
name = "cpu05"
command = ~U+a+b+c+x+y+z+s,DF, F, D,DF, F,b,b,b,x,x,U,s,U,c,c,a,s,s,U,s,U,c,c,a,s,s,U,s,U,c,c,a,s,s,U,s,U,c,c,a,s,s,U,s,U,c,c,a,s,s
time = 1
;===================================================;
; Super Moves ;
;===================================================;
[Command]
name = "Lets Kart Krash"
command = ~D, DF, F, x+z
time = 25
[Command]
name = "Origami Punch"
command = ~D, DF, F, x+y
time = 25
[Command]
name = "Thunder"
command = ~D, D, a+b
time = 25
[Command]
name = "Pal Pills"
command = ~D, D, x+y
time = 25
;===================================================;
; Special Moves ;
;===================================================;
[Command]
name = "Regular Mushroom"
command = ~D,DF,F,B,a
time = 25
[Command]
name = "Super Mushroom"
command = ~D,DF,F,B,b
time = 25
[Command]
name = "Hammer_x"
command = ~D, DF, F, x
time = 25
[Command]
name = "Hammer_y"
command = ~D, DF, F, y
time = 25
[Command]
name = "HomingLikeLeap_a"
command = ~D, DF, F, a
time = 25
[Command]
name = "HomingLikeLeap_b"
command = ~D, DF, F, b
time = 25
;===================================================;
; Double Tap ;
;===================================================;
[Command]
name = "FF" ;Required (do not remove)
command = F, F
time = 10
[Command]
name = "BB" ;Required (do not remove)
command = B, B
time = 10
;===================================================;
; 2 to 3 Combination ;
;===================================================;
[Command]
name = "recovery";Required (do not remove)
command = x+y
time = 1
;===================================================;
; Direction + Button ;
;===================================================;
[Command]
name = "down_a"
command = /$D,a
time = 1
[Command]
name = "down_b"
command = /$D,b
time = 1
;===================================================;
; Single Buttons ;
;===================================================;
[Command]
name = "fwd" ;Required (do not remove)
command = F
time = 1
[Command]
name = "a"
command = a
time = 1
[Command]
name = "b"
command = b
time = 1
[Command]
name = "c"
command = c
time = 1
[Command]
name = "x"
command = x
time = 1
[Command]
name = "y"
command = y
time = 1
[Command]
name = "z"
command = z
time = 1
[Command]
name = "start"
command = s
time = 1
;===================================================;
; Hold Direction ;
;===================================================;
[Command]
name = "SuperJump"
command = ~D, U
time = 50
[Command]
name = "SuperJump"
command = ~D, UF
time = 50
[Command]
name = "SuperJump"
command = ~D, UB
time = 50
[Command]
name = "holdfwd";Required (do not remove)
command = /$F
time = 1
[Command]
name = "holdback";Required (do not remove)
command = /$B
time = 1
[Command]
name = "holdup" ;Required (do not remove)
command = /$U
time = 1
[Command]
name = "holddown";Required (do not remove)
command = /$D
time = 1
;---------------------------------------------------------------------------
;State entry
[Statedef -1]
;===================================================;
; AI Commands go below ;
;---------------------------------------------------;
[State AI Misc: Taunt The Opponent]
type = changestate
value = 195
triggerall=(var(59) <= 0) || (var(59) >= 0)
triggerall=roundstate=3
triggerall = alive
triggerall = win
triggerall=statetype!=A
triggerall=prevstateno!=[195,197]
triggerall = stateno !=195
Trigger1=Ctrl||(stateno=[19,21])||(stateno=[100,101])
;-----------------------------------------------------------------------
[State AI Misc: Parry LV 1 - 5]
type = HitOverride
triggerall = var(59) = [1,5]
triggerall = RoundState <= 2
triggerall = (random <= 150*Var(59) ** 2 / 64.0)
trigger1 = (ctrl)
trigger1 = (StateType != A) || (StateType = A)
trigger2 = (stateno = 390)
trigger3 = stateno = [100,199]
trigger4 = stateno = [40,59]
trigger5 = stateno = 5120
trigger6 = stateno = 5200
trigger7 = stateno = 5201
trigger8 = stateno = 5210
attr = SCA,AA,AP
stateno = 390
[State AI Misc: Parry LV 6 - 10]
type = HitOverride
triggerall = var(59) >= 6 && RoundState <= 2
triggerall = (random <= 550*Var(59) ** 2 / 64.0)
trigger1 = (ctrl)
trigger2 = (stateno = 390)
trigger3 = stateno = [100,199]
trigger4 = stateno = [40,59]
trigger5 = stateno = 5120
trigger6 = stateno = 5200
trigger7 = stateno = 5201
trigger8 = stateno = 5210
attr = SCA,AA,AP
stateno = 390
;-----------------------------------------------------------------------------------
[State AI Misc: DodgeFWD]
type = changestate
value = 70
triggerall = var(59) >= 1 && Alive && Roundstate <= 2
triggerall = enemy,hitdefattr != SCA,AT
triggerall = power >= 50
trigger1 = StateType != A && (stateno = [150,153])
trigger1 = backedgedist <= 80
trigger1 = random<= 90*Var(59) ** 2 / 64
[State AI Misc: Dodge]
type = changestate
value = 70
triggerall = var(59) >= 1 && Alive && Roundstate <= 2
triggerall = enemy,hitdefattr != SCA,AT
trigger1 = StateType != A && ctrl
trigger1 = (Enemy, MoveType = A) && InGuardDist
trigger1 = random<= 150*Var(59) ** 2 / 64
trigger2 = backedgedist <= 20
trigger2 = StateType != A && ctrl
trigger2 = (Enemy, MoveType = A) && InGuardDist
trigger2 = random<= 150*Var(59) ** 2 / 64
[State AI Misc: Roll]
type = changestate
value = 71
triggerall = var(59) >= 1 && Alive && Roundstate <= 2
triggerall = enemy,hitdefattr != SCA,AT
trigger1 = StateType != A && ctrl
trigger1 = (Enemy, MoveType = A) && InGuardDist
trigger1 = random<= 150*Var(59) ** 2 / 64
trigger2 = frontedgedist <= 20
trigger2 = StateType != A && ctrl
trigger2 = (Enemy, MoveType = A) && InGuardDist
trigger2 = random<= 150*Var(59) ** 2 / 64
[State AI Misc: Dodge ]
type = ChangeState
triggerall = var(59) >= 1 && Alive && Roundstate <= 2
triggerall = StateType != A
triggerall = P2MoveType = A
triggerall = enemy,hitdefattr != SCA,AT
triggerall = Facing != EnemyNear,Facing
triggerall = p2bodydist x = [0,15]
triggerall = Ctrl||StateNo = 100
trigger1 = Random <= 90*Var(59) ** 2 / 64
trigger2 = power >= 100
trigger2 = (p2statetype = S) || (p2statetype = C)
Trigger2 = (StateNo=[150,153])
TRIGGER2 = (random <= 100*Var(59) ** 2 / 64.0)
value = 70
[State AI Misc: Dodge ]
type = ChangeState
triggerall = var(59) >= 1 && Alive && Roundstate <= 2
triggerall = StateType != A
triggerall = P2MoveType = A
triggerall = enemy,hitdefattr != SCA,AT
triggerall = !Facing = EnemyNear,Facing
triggerall = p2bodydist x = [0,15]
triggerall = Ctrl||StateNo = 100
trigger1 = Random <= 100*Var(59) ** 2 / 64
value = 71
[State AI Misc: Dodge During Guard hit]
type = ChangeState
triggerall = var(59) >= 3 && Alive && Roundstate <= 2
triggerall = StateType != A
triggerall = Facing != EnemyNear,Facing
triggerall = Inguarddist
trigger1 = power >= 100
Trigger1 = (StateNo=[150,153])
TRIGGER1 = (random <= 125*Var(59) ** 2 / 64.0)
value = 70
[State AI Misc: Dodge During Guard hit]
type = ChangeState
triggerall = var(59) >= 3 && Alive && Roundstate <= 2
triggerall = StateType != A
triggerall = enemy,hitdefattr != SCA,AT
triggerall = !Facing = EnemyNear,Facing
triggerall = Inguarddist
trigger1 = power >= 100
Trigger1 = (StateNo=[150,153])
TRIGGER1 = (random <= 125*Var(59) ** 2 / 64.0)
value = 71
[State AI Misc: Grab]
type = ChangeState
value = 800
triggerall = (var(59) = [1,5]) && RoundState <= 2
triggerall = p2bodydist Y = [-10,10]
triggerall = ctrl
TriggerAll = RoundState = 2
triggerall = stateno != 100
trigger1 = p2bodydist X <= 42
trigger1 = (p2statetype = S) || (p2statetype = C)
trigger1 = p2movetype != H
trigger1 = (random <= 50*Var(59) ** 2 / 64.0)
trigger2 = p2bodydist X <= 42
trigger2 = (p2statetype = S) || (p2statetype = C)
trigger2 = p2movetype != H
trigger2 = (random <= 50*Var(59) ** 2 / 64.0)
trigger3 = (stateno = [200,299]) || (stateno = [400,499])
trigger3 = moveguarded
trigger3 = p2bodydist X <= 42
trigger3 = (p2statetype = S) || (p2statetype = C)
trigger3 = (random <= 50*Var(59) ** 2 / 64.0)
[State AI Misc: Grab]
type = ChangeState
value = 800
triggerall = var(59) > 5 && RoundState <= 2
triggerall = p2bodydist Y = [-10,10]
triggerall = ctrl
TriggerAll = RoundState = 2
triggerall = stateno != 100
trigger1 = p2bodydist X <= 42
trigger1 = (p2statetype = S) || (p2statetype = C)
trigger1 = p2movetype != H
trigger1 = (random <= 150*Var(59) ** 2 / 64.0)
trigger2 = p2bodydist X <= 42
trigger2 = (p2statetype = S) || (p2statetype = C)
trigger2 = p2movetype != H
trigger2 = (random <= 150*Var(59) ** 2 / 64.0)
trigger3 = (stateno = [200,299]) || (stateno = [400,499])
trigger3 = moveguarded
trigger3 = p2bodydist X <= 42
trigger3 = (p2statetype = S) || (p2statetype = C)
trigger3 = (random <= 150*Var(59) ** 2 / 64.0)
trigger4 = power >= 100
trigger4 = (p2statetype = S) || (p2statetype = C)
Trigger4 = (StateNo=[150,153])
TRIGGER4 = (random <= 150*Var(59) ** 2 / 64.0)
[State AI Misc: Grab]
Type = ChangeState
value = 800
TriggerAll=var(59) >= 1 && Alive
TriggerAll=RoundState<= 2
triggerall = p2bodydist Y = [-10,10]
TriggerAll=EnemyNear,StateType != L
TriggerAll=P2BodyDist X=[0,43]
TriggerAll=EnemyNear,StateType!=A
TriggerAll=Ctrl||StateNo = 100
Trigger1 = (random <= 150*Var(59) ** 2 / 64.0)
Trigger2 = (EnemyNear,StateNo=[120,159])
TRIGGER2 = random < 256*Var(59)** 2 / 64.0
trigger2 = var(59) >= 5
[State AI: Run]
type = Null
triggerall = Var(59)>=1 && Roundstate <=2
triggerall = Statetype != A
triggerall = p2bodydist X >= 1
;----------
trigger1 = random <= 150*(Var(59) ** 2 / 64.0)
trigger1 = ctrl
value = 100
[State AI: Jump]
type = ChangeState
value = 40
triggerall = stateno != 100 && pos y = 0 && ctrl && p2stateno != 822 && p2stateno != 823
triggerall = var(59) >=1
triggerall = statetype != A && enemy,vel y < 0 && enemy,pos y < -10
triggerall = p2movetype != A
trigger1 = p2stateno = 5040 || p2stateno = 5200 || p2stateno = 5210 || p2movetype = H
trigger1 = (p2bodydist y = [-40,-1]) || enemy,vel y < 0
trigger1 = p2bodydist x <= 25
trigger2 = p2movetype = H && (p2stateno = 5040 || p2stateno = 5200 || p2stateno = 5210)
trigger2 = (p2bodydist y = [-40,-1])
trigger2 = p2bodydist x <= 50
[State AI: Jump]
type = ChangeState
value = 40
triggerall = stateno != 100 && pos y = 0 && ctrl && p2stateno != 822 && p2stateno != 823
triggerall = var(59) >=1
triggerall = statetype != A && frontedgedist > 200 && p2movetype != A
trigger1 = (p2bodydist x = [150,170]) && random <= 350*(Var(59) ** 2 / 64.0)
trigger1 = enemy,backedgedist < 70
;===================================================================================;
[State AI Basic: S.LP]
type = ChangeState
triggerall = var(59) >= 1 && RoundState <= 2 && numenemy
triggerall = p2stateno != 7600
triggerall = (Ctrl) && (statetype = S)
triggerall = (p2stateno != [120,155]) && (p2stateno != [5100,5150])
trigger1 = (p2bodydist x <= 40) && (random <= 175*Var(59)** 2 / 64.0)
trigger2 = (p2bodydist x <= 40) && (stateno = 100)
value = 200
[State AI Basic: S.LP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
triggerall = (p2statetype != L)
trigger1 = (p2bodydist Y = [-10,10])
trigger1 = (Ctrl)
trigger1 = (p2bodydist X <= 30)
trigger1 = (random <= 175*Var(59)** 2 / 64.0)
value = ifelse(Random<=500,400,200) + ifelse(Random<=500,10,0) + ifelse(Random<=500,30,0)
[State AI Basic: S.MP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
triggerall = (p2statetype != L)
trigger1 = stateno = 200 && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
value = 210
[State AI Basic: S.LK]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
triggerall = (p2statetype != L)
trigger1 = stateno = 200 && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = stateno = 210 && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
value = 230
[State AI Basic: S.MK]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
triggerall = (p2statetype != L)
trigger1 = stateno = 200 && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = stateno = 210 && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
trigger3 = stateno = 230 && movecontact
trigger3 = (random <= 175*Var(59) ** 2 / 64.0)
value = 240
;-----------------------------------------------------------------------------------
[State AI Basic: C.LP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
trigger1 = (stateno = [200,299]) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
value = 400
[State AI Basic: C.MP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
trigger1 = (stateno = [200,299]) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = stateno = 400 && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
value = 410
[State AI Basic: C.SP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
trigger1 = (stateno = [200,299]) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = stateno = 400 && movecontact
trigger2 = (random <= 120*Var(59) ** 2 / 64.0)
trigger3 = stateno = 410 && movecontact
trigger3 = (random <= 175*Var(59) ** 2 / 64.0)
trigger4 = stateno = 430 && movecontact
trigger4 = (random <= 120*Var(59) ** 2 / 64.0)
trigger5 = Prevstateno = 440 && movecontact
trigger5 = ctrl = 1
trigger5 = (random <= 140*Var(59) ** 2 / 64.0)
trigger5 = (p2bodydist X <= 60)
value = 420
[State AI Basic: C.SP2]
type = ChangeState
value = 420
triggerall = var(59) >= 1
triggerall = (statetype != A)
trigger1 = p2bodydist x <= 30
trigger1 = stateno = 440
trigger1 = movecontact
trigger1 = (random <= 85*Var(59) ** 2 / 64.0)
trigger2 = p2bodydist x <= 32
trigger2 = stateno = 410
trigger2 = movecontact
trigger2 = (random <= 90*Var(59) ** 2 / 64.0)
trigger3 = p2bodydist x <= 35
trigger3 = stateno = 210 || stateno = 240 || stateno = 200 || stateno = 240
trigger3 = movecontact
trigger3 = (random <= 90*Var(59) ** 2 / 64.0)
trigger4 = p2statetype = L
trigger4 = ctrl
trigger4 = (random <= 140*Var(59) ** 2 / 64.0)
trigger4 = (p2bodydist X <= 50)
trigger5 = p2bodydist x <= 30
trigger5 = (stateno = [100,101])
trigger5 = (random <= 175*Var(59) ** 2 / 64.0)
[State AI Basic: C.LK]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
trigger1 = (stateno = [200,299]) && movecontact
trigger1 = (random <= 105*Var(59) ** 2 / 64.0)
trigger2 = stateno = 400 && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
trigger3 = stateno = 410 && movecontact
trigger3 = (random <= 150*Var(59) ** 2 / 64.0)
value = 430
[State AI Basic: C.MK]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (statetype != A)
trigger1 = (stateno = [200,299]) && movecontact
trigger1 = (random <= 15*Var(59) ** 2 / 64.0)
trigger2 = stateno = 400 && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
trigger3 = stateno = 410 && movecontact
trigger3 = (random <= 50*Var(59) ** 2 / 64.0)
trigger4 = stateno = 430 && movecontact
trigger4 = (random <= 75*Var(59) ** 2 / 64.0)
value = 440
[State AI Misc: Always superjump on launch]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
trigger1 = stateno = 420 && movehit
trigger1 = (random <= 250*Var(59) ** 2 / 64.0)
value = 41
;-----------------------------------------------------------------------------------
[State AI Basic: ALP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (Ctrl) && (statetype = A)
triggerall = prevstateno != 600
triggerall = p2bodydist y = [-20,10]
trigger1 = (p2bodydist x <= 25) && (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = (p2bodydist x <= 35) && (random <= 325*Var(59) ** 2 / 64.0)
value = ifelse(random<=500,610,600) + ifelse(random<=500,30,0) + ifelse(random<=500,10,0)
[State AI Basic: ALP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
triggerall = (Ctrl) && (statetype = A)
triggerall = p2bodydist y = [-20,10]
triggerall = prevstateno != 600
trigger1 = (p2bodydist x <= 25) && (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = (p2bodydist x <= 35) && (random <= 325*Var(59) ** 2 / 64.0)
value = 600
[State AI Basic: AMP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
trigger1 = (stateno = 600) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
value = 610
[State AI Basic: ASP]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
trigger1 = (stateno = 610) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = (stateno = 610) && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
value = 620
[State AI Basic: ALK]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
trigger1 = (stateno = 600) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = (stateno = 610) && movecontact
trigger2 = (random <= 33*Var(56))
value = 630
[State AI Basic: AMK]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
trigger1 = (stateno = 600) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = (stateno = 610) && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
trigger3 = (stateno = 630) && movecontact
trigger3 = (random <= 80*Var(56))
value = 640
[State AI Basic: ASK]
type = ChangeState
triggerall = (var(59) >=1) && (roundstate = 2)
trigger1 = (stateno = 600) && movecontact
trigger1 = (random <= 175*Var(59) ** 2 / 64.0)
trigger2 = (stateno = 610) && movecontact
trigger2 = (random <= 175*Var(59) ** 2 / 64.0)
trigger3 = (stateno = 630) && movecontact
trigger3 = (random <= 175*Var(59) ** 2 / 64.0)
trigger4 = (stateno = 640) && movecontact
trigger4 = (random <= 175*Var(59) ** 2 / 64.0)
value = 650
;-----------------------------------------------------------------------------------
[State AI: Regular Mushroom]
type = ChangeState
value = 355
triggerall = Var(59)>=3 && Roundstate <=2
triggerall = power >= 100
triggerall = p2bodydist X >= 90 && p2movetype != A
triggerall = life != Lifemax
trigger1 = random >= Life
trigger1 = random <= 225*(Var(59) ** 2 / 64.0)
trigger1 = ctrl
trigger2 = var(59)>=3
trigger2 = backedgebodydist <= 50
trigger2 = random <= 325*(Var(59) ** 2 / 64.0)
trigger2 = ctrl
trigger3 = p2statetype = L
trigger3 = random <= 550*(Var(59) ** 2 / 64.0)
trigger3 = ctrl
[State AI: Super Mushroom]
type = ChangeState
value = 356
triggerall = Var(59)>= 5 && Roundstate <=2
triggerall = power >= 150
triggerall = p2bodydist X >= 90 && p2movetype != A
triggerall = life != Lifemax
trigger1 = random >= Life
trigger1 = random <= 475*(Var(59) ** 2 / 64.0)
trigger1 = ctrl
trigger2 = var(59)>=3
trigger2 = backedgebodydist <= 50
trigger2 = random <= 255*(Var(59) ** 2 / 64.0)
trigger2 = ctrl
trigger3 = p2statetype = L
trigger3 = random <= 575*(Var(59) ** 2 / 64.0)
trigger3 = ctrl
;-----------------------------------------------------------------------------------;
[State AI: Hammer Throw]
type = ChangeState
triggerall = Var(59)>=1 && Roundstate <=2
triggerall = p2bodydist X >= 0
triggerall = p2bodydist Y = [-50,10]
triggerall = numhelper(1000)<=0
;----------
trigger1 = random <= 250*(Var(59) ** 2 / 64.0)
trigger1 = ctrl
trigger2 = stateno = 210 || stateno = 410 || stateno = 240 || stateno = 440
trigger2 = stateno = 610 || stateno = 640
trigger2 = movecontact && random <= 175*(Var(59) ** 2 / 64.0)
trigger3 = enemy,backedgedist <= 70
trigger3 = (Ctrl) && (random <= 275*Var(59) ** 2 / 64.0)
value = 1000
[State AI: Trying a Hop]
type = ChangeState
triggerall = Var(59)>=1 && Roundstate <=2
triggerall = p2bodydist Y = [-15,15]
triggerall = p2statetype != L
;----------
trigger1 = p2bodydist X >= 0
trigger1 = random <= 125*(Var(59) ** 2 / 64.0)
trigger1 = ctrl
trigger2 = (stateno = [200,699]) && movecontact && random <= 125*(Var(59) ** 2 / 64.0)
trigger2 = p2bodydist X >= 50
trigger3 = enemy,backedgedist <= 50
trigger3 = (Ctrl) && (random <= 350*Var(59) ** 2 / 64.0)
value = 1005
;-----------------------------------------------------------------------------------;
[State AI: Thunder]
type = ChangeState
value = 350
triggerall = Var(59)>=1 && Roundstate <=2
triggerall = (var(58) = 0)||(var(58) = 3)
triggerall = power >= 1000
triggerall = p2statetype != A
trigger1 = p2bodydist X >= 190 && p2movetype != A
trigger1 = random <= 250*(Var(59) ** 2 / 64.0)
trigger1 = ctrl
trigger2 = enemy,backedgebodydist <= 150
trigger2 = random <= 350*(Var(59) ** 2 / 64.0)
trigger2 = ctrl
[State AI: Pall Pills]
type = ChangeState
value = 370
triggerall = Var(59)>=1 && Roundstate <=2
triggerall = (var(58) = 0)||(var(58) = 3)
triggerall = numhelper(3015)<=0
triggerall = numhelper(350)<=0
triggerall = power >= 1000
triggerall = p2statetype != A
trigger1 = p2bodydist X >= 50 && p2movetype != A
trigger1 = random <= 275*(Var(59) ** 2 / 64.0)
trigger1 = ctrl
trigger2 = enemy,backedgebodydist <= 150
trigger2 = random <= 375*(Var(59) ** 2 / 64.0)
trigger2 = ctrl
[State AI: Level 1 Super: Origami Punch!]
type = ChangeState
value = 3000
triggerall = (var(59) >=1) && (Roundstate <=2)
triggerall = power >= 1000
triggerall = p2statetype != L
triggerall = stateno != 3000
triggerall = stateno != [800,899]
triggerall = p2stateno != [120,159]
;----------
trigger1 = p2bodydist X = [-25,250]
trigger1 = p2bodydist Y = [-15,15]
trigger1 = (Ctrl) && (random <= 350*Var(59) ** 2 / 64.0)
;=========
trigger2 = (stateno = [200,699]) && movecontact && random <= 175*(Var(59) ** 2 / 64.0)
trigger2 = stateno != 650 || stateno != 620 || stateno != 440
;=========
trigger3 = p2bodydist Y = [-15,15]
trigger3 = stateno = 1000 && animelem = 5,>=0
trigger3 = (random <= 250*Var(59) ** 2 / 64.0)
;=========
trigger4 = p2bodydist Y = [-15,15]
trigger4 = stateno = 1005 && movehit
trigger4 = (random <= 260*Var(59) ** 2 / 64.0)
;=========
trigger5 = p2bodydist Y = [-45,10]
trigger5 = (Ctrl) && random <= 150*(Var(59) ** 2 / 64.0)
trigger5 = enemy,vel y >= 1
;=========
trigger6 = p2bodydist X = [-25,250]
trigger6 = p2bodydist Y = [-15,15]
trigger6 = numhelper(1000)>=1
trigger6= p2movetype = H
trigger6= helper(1000),stateno=1002
trigger6 = random <= 375*(Var(59) ** 2 / 64.0)
;-----------------------------------------------------------------------------------;
[State AI: Level 2 Super: Let's Kart Krash]
type = ChangeState
value = 3100
triggerall = (var(59) >=1) && (Roundstate <=2)
triggerall = power >= 2000
triggerall = stateno != 3100
triggerall = stateno != [800,899]
triggerall = p2stateno != [120,159]
;----------
trigger1 = p2bodydist X >= -25
trigger1 = (Ctrl) && (random <= 350*Var(59) ** 2 / 64.0)
;=========
trigger2 = (stateno = [200,699]) && movecontact && random <= 175*(Var(59) ** 2 / 64.0)
trigger2 = stateno != 650 || stateno != 620 || stateno != 440
;=========
trigger3 = p2bodydist X >= -25
trigger3 = numhelper(1000)>=1
trigger3= p2movetype = H
trigger3= helper(1000),stateno=1002
trigger3 = random <= 375*(Var(59) ** 2 / 64.0)
[State AI Misc: Rec] ; Recover near ground (use ChangeState)
type = ChangeState
triggerall = var(59) >= 1 && RoundState <= 2 && numenemy && (stateno = [5050,5060])
triggerall = Vel Y > 0
triggerall = Pos Y >= -20
triggerall = alive
trigger1 = CanRecover
value = 5200 ;HITFALL_RECOVER
[State AI Misc: Rec] ; Recover in mid air (use SelfState)
type = SelfState
triggerall = var(59) >= 1 && RoundState <= 2 && numenemy && (stateno = [5050,5060])
triggerall = Vel Y > 0
triggerall = alive
trigger1 = CanRecover
value = 5210 ;HITFALL_AIRRECOVER
;---------------------------------------------------;
; AI Commands Stop here ;
;===================================================;
[State Misc: AI Helper Check]
type = ChangeState
trigger1 = IsHelper(9741)
value = 9741
[State Misc: AI Helper Check 2]
type = ChangeState
trigger1 = IsHelper(9742)
value = 9742
[State Misc: Go]
type = DestroySelf
trigger1 = IsHelper
trigger1 = movereversed = 1
;===================================================;
; SUPER/HYPER MOVES ;
;===================================================;
[State LV 2 Super: Not Mario Kart. Paperized edition]
type = ChangeState
value = 3100
triggerall = (var(59) <= 0)
triggerall = command = "Lets Kart Krash"
triggerall = power >= 2000
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,499]) && movecontact
trigger4 = (stateno = [1000,2999]) && movecontact
trigger5 = stateno = 1000 && animelem = 5,>=0
[State LV 1 Super: Origami Punch]
type = ChangeState
value = 3000
triggerall = (var(59) <= 0)
triggerall = command = "Origami Punch"
triggerall = power >= 1000
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,499]) && movecontact
trigger4 = (stateno = [1000,2999]) && movecontact
trigger5 = stateno = 1000 && animelem = 5,>=0
[State LV 1 Super: Thunder]
type = ChangeState
value = 350
triggerall = (var(59) <= 0)
triggerall = command = "Thunder"
triggerall = power >= 1000
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,499]) && movecontact
trigger4 = (stateno = [1000,2999]) && movecontact
trigger5 = stateno = 1000 && animelem = 5,>=0
[State LV 1 Super: Pal Pills]
type = ChangeState
value = 370
triggerall = (var(59) <= 0)
triggerall = (var(58) = 0)||(var(58) = 3)
triggerall = command = "Pal Pills"
triggerall = numhelper(3015)<=0
triggerall = numhelper(350)<=0
triggerall = power >= 1000
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,699]) && movecontact
trigger4 = (stateno = [1000,2999]) && movecontact
;===================================================;
; SPECIAL MOVES ;
;===================================================;
[State Special: Regular Mushroom]
type = ChangeState
value = 355
triggerall = (var(59) <= 0)
triggerall = command = "Regular Mushroom"
triggerall = life != Lifemax
triggerall = power >= 100
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,699]) && movecontact
[State Special: Super Mushroom]
type = ChangeState
value = 356
triggerall = (var(59) <= 0)
triggerall = command = "Super Mushroom"
triggerall = life != Lifemax
triggerall = power >= 150
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,699]) && movecontact
[State Special: The Side Special from SSB]
type = ChangeState
value = 1005
triggerall = (var(59) <= 0)
triggerall = numhelper(1000)<=0
triggerall = command = "HomingLikeLeap_a" || command = "HomingLikeLeap_b"
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,699]) && movecontact
[State Special: Didn't bonk you hard enough?]
type = ChangeState
value = 1000
triggerall = (var(59) <= 0)
triggerall = numhelper(1000)<=0
triggerall = command = "Hammer_x" || command = "Hammer_y"
trigger1 = ctrl
trigger2 = stateno = 100
trigger3 = (stateno = [200,699]) && movecontact
;===================================================;
; NORMAL MOVES ;
;===================================================;
[State MISC: Parry]
type = HitOverride
triggerall = (var(59) <=0)
triggerall = command = "fwd"
trigger1 = ctrl
trigger2 = stateno = [100,199]
trigger2 = stateno = 390
trigger2 = stateno = [40,59]
trigger2 = stateno = 5120
trigger2 = stateno = 5200
trigger2 = stateno = 5201
trigger2 = stateno = 5210
attr = SCA,AA,AP
time = 15
stateno = 390
[State MISC: Grab (AIR)]
type = ChangeState
value = 800
triggerall = command = "y" || command = "z"
triggerall = ctrl
triggerall = stateno != 100
trigger1 = command = "holdfwd"
trigger1 = p2bodydist X < 42
trigger1 = p2movetype != H
trigger2 = command = "holdback"
trigger2 = p2bodydist X < 42
trigger2 = p2movetype != H
[State Misc: Grab]
type = ChangeState
value = 800
triggerall = (var(59) <= 0)
triggerall = command = "a" && command = "c"
triggerall = statetype !=A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = power >= 50
trigger2 = stateno = [150,159]
[State Misc: DodgeFWD]
type = ChangeState
value = 70
triggerall = (var(59) <= 0)
triggerall = command = "c"
trigger1 = command != "holddown"
triggerall = command != "holdfwd"
triggerall = command != "holdback"
triggerall = statetype != A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = power >= 50
trigger2 = stateno = [150,159]
[State Misc: DodgeFWD]
type = ChangeState
value = 70
triggerall = (var(59) <= 0)
triggerall = command = "c"
trigger1 = command != "holddown"
triggerall = command = "holdfwd"
triggerall = command != "holdback"
triggerall = statetype != A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = power >= 50
trigger2 = stateno = [150,159]
[State Misc: DodgeBack]
type = ChangeState
value = 71
triggerall = (var(59) <= 0)
triggerall = command = "c"
trigger1 = command != "holddown"
triggerall = command != "holdfwd"
triggerall = command = "holdback"
triggerall = statetype != A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = power >= 50
trigger2 = stateno = [150,159]
[State Misc: DodgeFWD]
type = ChangeState
value = 70
triggerall = (var(59) <= 0)
triggerall = command = "c"
trigger1 = command = "holddown"
triggerall = command != "holdfwd"
triggerall = command != "holdback"
triggerall = statetype != A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = power >= 50
trigger2 = stateno = [150,159]
[State Misc: DodgeFWD]
type = ChangeState
value = 70
triggerall = (var(59) <= 0)
triggerall = command = "c"
trigger1 = command = "holddown"
triggerall = command = "holdfwd"
triggerall = command != "holdback"
triggerall = statetype != A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = power >= 50
trigger2 = stateno = [150,159]
[State Misc: DodgeBack]
type = ChangeState
value = 71
triggerall = (var(59) <= 0)
triggerall = command = "c"
trigger1 = command = "holddown"
triggerall = command != "holdfwd"
triggerall = command = "holdback"
triggerall = statetype != A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = power >= 50
trigger2 = stateno = [150,159]
;===================================================;
; STANDING ATTACKS ;
;===================================================;
;-----------------------------------------------------------------------------------
[State Basic: S.L.P]
type = ChangeState
value = 200
triggerall = (var(59) <= 0)
triggerall = command = "x"
triggerall = command != "holddown"
triggerall = statetype != A
trigger1 = ctrl
[State Basic: S.S.P]
type = ChangeState
value = 210
triggerall = (var(59) <= 0)
triggerall = command = "y"
triggerall = command != "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = stateno = 200 && Movecontact
[State Basic: S.L.K]
type = ChangeState
value = 230
triggerall = (var(59) <= 0)
triggerall = command = "a"
triggerall = command != "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = stateno = 200 && Movecontact
trigger3 = stateno = 210 && Movecontact
[State Basic: S.S.K]
type = ChangeState
value = 240
triggerall = (var(59) <= 0)
triggerall = command = "b"
triggerall = command != "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = stateno = 200 && Movecontact
trigger3 = stateno = 210 && Movecontact
trigger4 = stateno = 230 && Movecontact
;===================================================;
; CROUCHING ATTACKS ;
;===================================================;
[State Basic: C.L.P]
type = ChangeState
value = 400
triggerall = (var(59) <= 0)
triggerall = command = "x"
triggerall = command = "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) && Movecontact
[State Basic: C.M.P]
type = ChangeState
value = 410
triggerall = (var(59) <= 0)
triggerall = command = "y"
triggerall = command = "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) && Movecontact
trigger3 = stateno = 400 && Movecontact
[State Basic: C.S.P]
type = ChangeState
value = 420
triggerall = (var(59) <= 0)
triggerall = command = "z"
triggerall = command = "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) && Movecontact
trigger3 = stateno = 400 && Movecontact
trigger4 = stateno = 410 && Movecontact
[State Basic: C.L.K]
type = ChangeState
value = 430
triggerall = (var(59) <= 0)
triggerall = command = "a"
triggerall = command = "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) && Movecontact
trigger3 = stateno = 400 && Movecontact
trigger4 = stateno = 410 && Movecontact
[State Basic: C.S.K]
type = ChangeState
value = 440
triggerall = (var(59) <= 0)
triggerall = command = "b"
triggerall = command = "holddown"
triggerall = statetype != A
trigger1 = ctrl
trigger2 = (stateno = [200,299]) && Movecontact
trigger3 = stateno = 400 && Movecontact
trigger4 = stateno = 410 && Movecontact
trigger5 = stateno = 430 && Movecontact
;===================================================;
; Aerial ATTACKS ;
;===================================================;
[State Basic: A.L.P]
type = ChangeState
value = 600
triggerall = (var(59) <= 0)
triggerall = command = "x"
triggerall = statetype = A
trigger1 = Ctrl || (stateno = [100,119])
[State Basic: A.M.P]
type = ChangeState
value = 610
triggerall = (var(59) <= 0)
triggerall = command = "y"
triggerall = statetype = A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = stateno = 600 && Movecontact
[State Basic: A.S.P]
type = ChangeState
value = 620
triggerall = (var(59) <= 0)
triggerall = command = "z"
triggerall = statetype = A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = stateno = 600 && Movecontact
trigger3 = stateno = 610 && Movecontact
[State Basic: A.L.K]
type = ChangeState
value = 630
triggerall = (var(59) <= 0)
triggerall = command = "a"
triggerall = statetype = A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = stateno = 600 && Movecontact
trigger3 = stateno = 610 && Movecontact
[State Basic: A.M.K]
type = ChangeState
value = 640
triggerall = (var(59) <= 0)
triggerall = command = "b"
triggerall = statetype = A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = stateno = 600 && Movecontact
trigger3 = stateno = 610 && Movecontact
trigger4 = stateno = 630 && Movecontact
[State Basic: A.S.K]
type = ChangeState
value = 650
triggerall = (var(59) <= 0)
triggerall = command = "c"
triggerall = statetype = A
trigger1 = Ctrl || (stateno = [100,119])
trigger2 = stateno = 600 && Movecontact
trigger3 = stateno = 610 && Movecontact
trigger4 = stateno = 630 && Movecontact
trigger5 = stateno = 640 && Movecontact
;===================================================;
; MISCELLANEOUS MOVES ;
;===================================================;
[State Misc: Super Jump Up]
type = ChangeState
value = 41
triggerall = var(59) <= 0
triggerall = command = "SuperJump" && ctrl
trigger1 = statetype = S && statetype != A
trigger2 = stateno = 10
[State Misc: Launcher]
type = ChangeState
value = 41
triggerall = var(59) <= 0
triggerall = Command = "holdup"
trigger1 = stateno = 420 && movehit
[State Misc: Taunt]
type = ChangeState
value = 195
triggerall = (var(59) <= 0)
triggerall = command = "start"
trigger1 = statetype != A
trigger1 = ctrl
[State Misc: Run Fwd]
type = ChangeState
value = 100
triggerall = (var(59) <= 0)
triggerall = command = "FF"
triggerall = statetype != A
trigger1 = ctrl
[State Misc: Run Back]
type = ChangeState
value = 105
triggerall = (var(59) <= 0)
triggerall = command = "BB"
triggerall = statetype != A
trigger1 = ctrl