; The CMD file.
;
; Two parts: 1. Command definition and 2. State entry
; (state entry is after the commands def section)
;-| Button Remapping |-----------------------------------------------------
; This section lets you remap the player's buttons (to easily change the
; button configuration). The format is:
; old_button = new_button
; If new_button is left blank, the button cannot be pressed.
[Remap]
x = x
y = y
z = z
a = a
b = b
c = c
s = s
;-| Default Values |-------------------------------------------------------
[Defaults]
; Default value for the "time" parameter of a Command. Minimum 1.
command.time = 15
; Default value for the "buffer.time" parameter of a Command. Minimum 1,
; maximum 30.
command.buffer.time = 1
;-| Super Motions |--------------------------------------------------------
;The following two have the same name, but different motion.
;Either one will be detected by a "command = TripleKFPalm" trigger.
;Time is set to 20 (instead of default of 15) to make the move
;easier to do.
[Command]
name = "paralos"
command = ~D, F, B, D, F, B, D, x+y
time = 50
[Command]
name = "paralos cp"
command = ~B, B, B, B, a+b+c+s
time = 1
[Command]
name = "deadly cyclone a"
command = ~D, B, D, F, x+y
time = 30
[Command]
name = "deadly cyclone b"
command = ~D, F, D, B, x+y
time = 30
;-| Special Motions |------------------------------------------------------
[Command]
name = "hellfire"
command = ~B, D, F, x
[Command]
name = "hellfire"
command = ~B, D, F, y
[Command]
name = "nyoro_x"
command = ~D, DF, F, x
[Command]
name = "nyoro_y"
command = ~D, DF, F, y
[Command]
name = "back_y"
command = ~D, DB, B, y
[Command]
name = "atomicray"
command = ~B, D, F, a
[Command]
name = "2waylaser"
command = ~D, DF, F, a
;-| 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/3 Button Combination |-----------------------------------------------
[Command]
name = "recovery";Required (do not remove)
command = x+y
time = 1
;-| Dir + Button |---------------------------------------------------------
[Command]
name = "down_a"
command = /$D,a
time = 1
[Command]
name = "down_b"
command = /$D,b
time = 1
[Command]
name = "down_x"
command = /$D,x
time = 1
;-| Single Button |---------------------------------------------------------
[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 Dir |--------------------------------------------------------------
[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
[Command]
name = "holdx"
command = /$x
time = 1
[Command]
name = "holdy"
command = /$y
time = 1
;-| AI |--------------------------------------------------------------
[Command]
name = "AI00"
command = x,x,x,x,x
time = 0
[Command]
name = "AI01"
command = y,y,y,y,y
time = 0
[Command]
name = "AI02"
command = z,z,z,z,z
time = 0
[Command]
name = "AI03"
command = a,a,a,a,a
time = 0
[Command]
name = "AI04"
command = b,b,b,b,b
time = 0
[Command]
name = "AI05"
command = c,c,c,c,c
time = 0
[Command]
name = "AI06"
command = s,s,s,s,s
time = 0
[Command]
name = "AI07"
command = x,x,x,x,x,x,x,x
time = 0
[Command]
name = "AI08"
command = y,y,y,y,y,y,y,y
time = 0
[Command]
name = "AI09"
command = z,z,z,z,z,z,z,z
time = 0
[Command]
name = "AI00"
command = a,a,a,a,a,a,a,a
time = 0
[Command]
name = "AI10"
command = b,b,b,b,b,b,b,b
time = 0
[Command]
name = "AI11"
command = c,c,c,c,c,c,c,c
time = 0
[Command]
name = "AI12"
command = s,s,s,s,s,s,s,s
time = 0
[Command]
name = "AI13"
command = B,F,B,F,B,F
time = 0
[Command]
name = "AI14"
command = D,U,D,U,D,U
time = 0
[Command]
name = "AI15"
command = x+y,a+b,z+c
time = 0
[Command]
name = "AI16"
command = D,D,F,F,B,B
time = 0
[Command]
name = "AI17"
command = F,x,B,y,D,a
time = 0
[Command]
name = "AI18"
command = D,U,B,F,a+z
time = 0
[Command]
name = "AI19"
command = U,B,F,D,x+c
time = 0
[Command]
name = "AI20"
command = D,D,D,D,D,U,U
time = 0
;---------------------------------------------------------------------------
; 2. State entry
; --------------
; This is where you define what commands bring you to what states.
;
; Each state entry block looks like:
; [State -1, Label] ;Change Label to any name you want to use to
; ;identify the state with.
; type = ChangeState ;Don't change this
; value = new_state_number
; trigger1 = command = command_name
; . . . (any additional triggers)
;
; - new_state_number is the number of the state to change to
; - command_name is the name of the command (from the section above)
; - Useful triggers to know:
; - statetype
; S, C or A : current state-type of player (stand, crouch, air)
; - ctrl
; 0 or 1 : 1 if player has control. Unless "interrupting" another
; move, you'll want ctrl = 1
; - stateno
; number of state player is in - useful for "move interrupts"
; - movecontact
; 0 or 1 : 1 if player's last attack touched the opponent
; useful for "move interrupts"
;
; Note: The order of state entry is important.
; State entry with a certain command must come before another state
; entry with a command that is the subset of the first.
; For example, command "fwd_a" must be listed before "a", and
; "fwd_ab" should come before both of the others.
;
; For reference on triggers, see CNS documentation.
;
; Just for your information (skip if you're not interested):
; This part is an extension of the CNS. "State -1" is a special state
; that is executed once every game-tick, regardless of what other state
; you are in.
; Don't remove the following line. It's required by the CMD standard.
[Statedef -1]
;===========================================================================
; AI
;===========================================================================
;---------------------------------------------------------------------------
;Activate AI
[State -1, Activate AI]
type = VarSet
triggerall = var(59) = 0
triggerall = !isHelper
trigger1 = IsHomeTeam
trigger1 = TeamSide = 2
trigger2 = command = "AI00"
trigger3 = command = "AI01"
trigger4 = command = "AI02"
trigger5 = command = "AI03"
trigger6 = command = "AI04"
trigger7 = command = "AI05"
trigger8 = command = "AI06"
trigger9 = command = "AI07"
trigger10 = command = "AI08"
trigger11 = command = "AI09"
trigger12 = command = "AI10"
trigger13 = command = "AI11"
trigger14 = command = "AI12"
trigger15 = command = "AI13"
trigger16 = command = "AI14"
trigger17 = command = "AI15"
trigger18 = command = "AI16"
trigger19 = command = "AI17"
trigger20 = command = "AI18"
trigger21 = command = "AI19"
trigger22 = command = "AI20"
v = 59
value = 1
;===========================================================================
;the end
[State -1, the end]
type = helper
trigger1 = p2life = 0
trigger1 = var(58) = 1
trigger1 = NumEnemy = 1
trigger1 = stateno != 180
trigger1 = numhelper(4000) = 0
trigger1 = p2stateno != 5150
trigger1 = p2name != "hato sabure"
trigger1 = p2name != "Floren"
helpertype = normal
name = "the end"
ID = 4000
pos = 0, 0
postype = p2
stateno = 4000
keyctrl = 0
ownpal = 1
supermovetime = 0
pausemovetime = 0
;===========================================================================
;パラダイスロスト
[State -1, paradise lost]
type = ChangeState
value = 3000
triggerall = power >= 3000
triggerall = life <= 500
trigger1 = ctrl
trigger1 = command = "paralos"
[State -1, paradise lost AI]
type = ChangeState
value = 3000
triggerall = Var(59) != 0
triggerall = power >= 3000
triggerall = life <= 500
triggerall = enemy,life > 500
triggerall = random = [100,105]
trigger1 = ctrl
;---------------------------------------------------------------------------
;デッドリーサイクロン
[State -1, deadly cyclone a]
type = ChangeState
value = 2000
triggerall = command = "deadly cyclone a"
triggerall = statetype != C
triggerall = power >= 2000
triggerall = Var(59) = 0
trigger1 = ctrl
[State -1, deadly cyclone b]
type = ChangeState
value = 2005
triggerall = command = "deadly cyclone b"
triggerall = statetype != C
triggerall =power >= 2000
triggerall = Var(59) = 0
trigger1 = ctrl
[State -1, deadly cyclone a AI]
type = ChangeState
value = 2000
triggerall = statetype != C
triggerall = power >= 2000
triggerall = random = [900,905]
triggerall = Var(59) != 0
triggerall = enemy,alive = 1
trigger1 = pos Y >= -150
trigger1 = ctrl
[State -1, deadly cyclone b AI]
type = ChangeState
value = 2005
triggerall = statetype != C
triggerall =power >= 2000
triggerall = random = [800,805]
triggerall = Var(59) != 0
triggerall = enemy,alive = 1
trigger1 = pos Y >= -150
trigger1 = ctrl
;---------------------------------------------------------------------------
;地獄の炎
[State -1, Hell Fire]
type = ChangeState
value = 1500
triggerall = command = "hellfire"
trigger1 = statetype = S
trigger1 = power >= 20
trigger1 = ctrl
[State -1, Hell Fire AI]
type = ChangeState
value = 1500
triggerall = statetype = S
triggerall = ctrl
triggerall = Var(59) != 0
triggerall = enemy,alive = 1
trigger1 = p2bodydist X >= 80
trigger1 = power >= 1500
trigger1 = random = [910,918]
;---------------------------------------------------------------------------
;謎の発光体
[State -1, nyoro]
type = ChangeState
value = 1000
triggerall = command = "nyoro_x"
triggerall = Numhelper(1005) = 0
trigger1 = Var(59) = 0
trigger1 = ctrl
[State -1, nyoro]
type = ChangeState
value = 1010
triggerall = command = "nyoro_y"
triggerall = Numhelper(1015) = 0
trigger1 = Var(59) = 0
trigger1 = ctrl
[State -1, nyoro AI]
type = ChangeState
value = 1000
triggerall = Numhelper(1005) = 0
triggerall = Numhelper(1000) = 0
triggerall = enemy,alive = 1
trigger1 = Var(59) != 0
trigger1 = random = [200,210]
trigger1 = p2bodydist X < 150
trigger1 = ctrl
[State -1, nyoro AI]
type = ChangeState
value = 1010
triggerall = Numhelper(1015) = 0
triggerall = Numhelper(1000) = 0
triggerall = enemy,alive = 1
trigger1 = Var(59) != 0
trigger1 = random = [200,210]
trigger1 = p2bodydist X >= 150
trigger1 = ctrl
;---------------------------------------------------------------------------
;弱パンチ
[State -1, Stand Light Punch 1]
type = ChangeState
value = 200
triggerall = command = "x"
trigger1 = statetype = S
trigger1 = ctrl
trigger2 = stateno = 400
trigger2 = time >= 14
[State -1, Stand Light Punch 2]
type = ChangeState
value = 210
triggerall = command = "x"
triggerall = time >= 7
trigger1 = statetype = S
trigger1 = stateno = 200
trigger2 = statetype = A
trigger2 = stateno = 600
trigger2 = pos Y >= 0
[State -1, Stand Light Punch 3]
type = ChangeState
value = 250
triggerall = statetype = S
trigger1 = command = "x"
trigger1 = stateno = 210
trigger1 = time >= 7
[State -1, Stand Light Punch 1 AI]
type = ChangeState
value = 200
triggerall = Var(59) != 0
triggerall = statetype = S
triggerall = ctrl
triggerall = enemy,ctrl = 0
triggerall = enemy,alive = 1
trigger1 = p2bodydist X < 45
trigger1 = facing = 1 & enemy,facing = 1
trigger2 = p2bodydist X < 45
trigger2 = facing = -1 & enemy,facing = -1
[State -1, Stand Light Punch 2 AI]
type = ChangeState
value = 210
triggerall = Var(59) != 0
triggerall = time >= 7
triggerall = MoveHit
trigger1 = statetype = S
trigger1 = stateno = 200
trigger2 = statetype = A
trigger2 = stateno = 600
trigger2 = pos Y >= 0
[State -1, Stand Light Punch 3 AI]
type = ChangeState
value = 250
triggerall = statetype = S
triggerall = Var(59) != 0
triggerall = MoveHit
trigger1 = stateno = 210
trigger1 = time >= 7
;---------------------------------------------------------------------------
;強パンチ2
[State -1, Stand heavy Punch 2]
type = ChangeState
value = 350
triggerall = command = "back_y"
triggerall = statetype != A
triggerall = Var(59) = 0
trigger1 = ctrl
trigger2 = stateno = 250
trigger2 = time >= 14
[State -1, Stand heavy Punch 2 AI]
type = ChangeState
value = 350
triggerall = statetype != A
triggerall = Var(59) != 0
trigger1 = p2bodydist X = [150,200]
trigger1 = facing = 1 & enemy,facing = 1
trigger1 = ctrl
trigger2 = p2bodydist X = [150,200]
trigger2 = facing = -1 & enemy,facing = -1
trigger2 = ctrl
trigger3 = stateno = 250
trigger3 = time >= 14
trigger3 = random = [300,350]
;---------------------------------------------------------------------------
;強パンチ
[State -1, Stand heavy Punch]
type = ChangeState
value = 300
triggerall = command = "y"
triggerall = statetype != A
triggerall = Var(59) = 0
trigger1 = ctrl
trigger2 = stateno = 250
trigger2 = time >= 14
[State -1, Stand heavy Punch AI]
type = ChangeState
value = 300
triggerall = command = "y"
triggerall = statetype != A
triggerall = Var(59) != 0
trigger1 = p2bodydist X = [50,160]
trigger1 = ctrl
trigger2 = p2bodydist X = [50,160]
trigger2 = stateno = 250
trigger2 = time >= 14
[State -1, Stand heavy Punch AI2]
type = ChangeState
value = 300
triggerall = statetype != A
triggerall = Var(59) != 0
triggerall = enemy,alive = 1
triggerall = ctrl
trigger1 = p2bodydist X = [45,150]
trigger1 = facing = 1 & enemy,facing = 1
trigger2 = p2bodydist X = [45,150]
trigger2 = facing = -1 & enemy,facing = -1
;---------------------------------------------------------------------------
;キック
[State -1, kick]
type = ChangeState
value = 400
triggerall = command = "x"
triggerall = statetype = C
triggerall = Var(59) = 0
trigger1 = ctrl
trigger2 = stateno = 400
trigger2 = time >= 9
[State -1, kick AI]
type = ChangeState
value = 400
triggerall = command = "x"
triggerall = statetype = C
triggerall = Var(59) != 0
triggerall = p2bodydist X < 50
triggerall = p2bodydist Y >= -60
trigger1 = ctrl
trigger2 = stateno = 400
trigger2 = time >= 9
;---------------------------------------------------------------------------
;空中キック
[State -1, Air kick]
type = ChangeState
value = 610
triggerall = command = "down_x"
triggerall = statetype = A
triggerall = Var(59) = 0
trigger1 = ctrl
trigger2 = stateno = 610
trigger2 = time >= 9
trigger3 = stateno = 600
trigger3 = time >= 7
[State -1, Air kick AI]
type = ChangeState
value = 610
triggerall = command = "down_x"
triggerall = statetype = A
triggerall = Var(59) != 0
triggerall = p2bodydist X < 40
triggerall = p2bodydist Y = [-30,120]
trigger1 = ctrl
trigger2 = stateno = 610
trigger2 = time >= 9
trigger3 = stateno = 600
trigger3 = time >= 7
;---------------------------------------------------------------------------
;空中弱パンチ
[State -1, Air Light Punch]
type = ChangeState
value = 600
triggerall = command = "x"
triggerall = pos Y < 0
triggerall = statetype = A
triggerall = Var(59) = 0
trigger1 = ctrl
trigger2 = stateno = 600
trigger2 = time >= 7
trigger3 = stateno = 610
trigger3 = time >= 9
[State -1, Air Light Punch AI]
type = ChangeState
value = 600
triggerall = command = "x"
triggerall = pos Y < 0
triggerall = statetype = A
triggerall = Var(59) != 0
triggerall = p2bodydist X < 70
triggerall = p2bodydist Y = [-150,30]
trigger1 = ctrl
trigger2 = stateno = 600
trigger2 = time >= 7
trigger3 = stateno = 610
trigger3 = time >= 9
;---------------------------------------------------------------------------
;空中強パンチ
[State -1, Air heavy Punch]
type = ChangeState
value = 700
triggerall = command = "y"
triggerall = pos Y < 0
triggerall = statetype = A
triggerall = Var(59) = 0
trigger1 = ctrl
trigger2 = stateno = 600
trigger2 = time >= 7
trigger3 = stateno = 610
trigger3 = time >= 9
[State -1, Air heavy Punch AI]
type = ChangeState
value = 700
triggerall = command = "y"
triggerall = pos Y < 0
triggerall = statetype = A
triggerall = Var(59) != 0
trigger1 = p2bodydist X = [50,180]
trigger1 = ctrl
trigger2 = stateno = 600
trigger2 = time >= 7
trigger2 = p2bodydist X = [50,180]
trigger3 = stateno = 610
trigger3 = time >= 9
trigger3 = p2bodydist X = [50,180]
[State -1, Air heavy Punch AI2]
type = ChangeState
value = 700
triggerall = pos Y < 0
triggerall = statetype = A
triggerall = Var(59) != 0
triggerall = enemy,alive = 1
triggerall = ctrl
triggerall = random != [200,800]
trigger1 = p2bodydist X = [50,160]
trigger1 = facing = 1 & enemy,facing = 1
trigger2 = p2bodydist X = [50,160]
trigger2 = facing = -1 & enemy,facing = -1
;---------------------------------------------------------------------------
;アトミックレイ
[State -1, laser3]
type = ChangeState
value = 1300
triggerall = command = "atomicray"
triggerall = statetype = S
trigger1 = Numhelper(1300) = 0
trigger1 = power >= 1000
trigger1 = ctrl
;---------------------------------------------------------------------------
;2ウェイレーザー
[State -1, laser2]
type = ChangeState
value = 1200
triggerall = command = "2waylaser"
trigger1 = Numhelper(1100) = 0
trigger1 = Numhelper(1200) = 0
trigger1 = Numhelper(1300) = 0
trigger1 = power >= 600
trigger1 = ctrl
;---------------------------------------------------------------------------
;レーザー
[State -1, laser]
type = ChangeState
value = 1100
triggerall = command = "a"
triggerall = Numhelper(1100) = 0
triggerall = Numhelper(1200) = 0
triggerall = Numhelper(1300) = 0
triggerall = power >= 300
trigger1 = Var(59) = 0
trigger1 = ctrl
trigger2 = Var(59) != 0
trigger2 = p2statetype = S
trigger2 = p2bodydist Y <= 40
trigger2 = ctrl
;------------------------------------------------------------------------------
;ダッシュ
[State -1, Dash]
type = ChangeState
value = 100
triggerall = command = "FF"
triggerall = ctrl
triggerall = power >= 300
triggerall = var(59) = 0
trigger1 = statetype = S
trigger2 = statetype = A
trigger2 = Vel Y <= 0
[State -1, Dash AI]
type = ChangeState
value = 100
triggerall = command = "FF"
triggerall = ctrl
triggerall = power = [300,900]
triggerall = var(59) != 0
triggerall = random = [500,550]
trigger1 = statetype = S
trigger2 = statetype = A
trigger2 = Vel Y <= 0
[State -1, Dash AI]
type = ChangeState
value = 100
triggerall = command = "FF"
triggerall = ctrl
triggerall = power > 900
triggerall = var(59) != 0
triggerall = random = [250,850]
trigger1 = statetype = S
trigger2 = statetype = A
trigger2 = Vel Y <= 0
[State -1, Dash AI2]
type = ChangeState
value = 100
triggerall = ctrl
triggerall = power >= 300
triggerall = var(59) != 0
triggerall = BackEdgeDist < 30
triggerall = p2bodydist X <= 70
trigger1 = statetype = S
trigger1 = facing = 1 & enemy,facing = -1
trigger2 = statetype = S
trigger2 = facing = -1 & enemy,facing = 1
trigger3 = statetype = A
trigger3 = Vel Y <= 0
trigger3 = facing = 1 & enemy,facing = -1
trigger4 = statetype = A
trigger4 = Vel Y <= 0
trigger4 = facing = -1 & enemy,facing = 1
;バックステップ
[State -1, Back Step]
type = ChangeState
value = 105
triggerall = command = "BB"
triggerall = ctrl
triggerall = power >= 300
triggerall = BackEdgeDist > 30
trigger1 = statetype = S
trigger2 = statetype = A
trigger2 = Vel Y <= 0
;---------------------------------------------------------------------------
;挑発
[State -1, Taunt]
type = ChangeState
value = 195
triggerall = command = "start"
trigger1 = Numhelper(195) = 0
trigger1 = power >= 500
trigger1 = ctrl
;---------------------------------------------------------------------------