Welcome!

By registering with us, you'll be able to discuss, share and private message with other members of our community.

SignUp Now!
  • 🔧 Login & Sign-Up Fixed!
    The recent login and sign-up issues have been successfully resolved by @DoomJoshuaBoy. Fresh logins are now working normally, so feel free to log in without any trouble! if you do run into trouble please let us know!

DJB MUGEN & IKEMEN Community

Command List — YoshiAI.zip ← Back to Overview

; The CMD file. ; ; Two parts: 1. Command definition and 2. State entry ; (state entry is after the commands def section) ; ; 1. Command definition ; --------------------- ; Note: The commands are CASE-SENSITIVE, and so are the command names. ; The eight directions are: ; B, DB, D, DF, F, UF, U, UB (all CAPS) ; corresponding to back, down-back, down, downforward, etc. ; The six buttons are: ; a, b, c, x, y, z (all lower case) ; In default key config, abc are are the bottom, and xyz are on the ; top row. For 2 button characters, we recommend you use a and b. ; For 6 button characters, use abc for kicks and xyz for punches. ; ; Each [Command] section defines a command that you can use for ; state entry, as well as in the CNS file. ; The command section should look like: ; ; [Command] ; name = some_name ; command = the_command ; time = time (optional -- defaults to 15 if omitted) ; ; - some_name ; A name to give that command. You'll use this name to refer to ; that command in the state entry, as well as the CNS. It is case- ; sensitive (QCB_a is NOT the same as Qcb_a or QCB_A). ; ; - command ; list of buttons or directions, separated by commas. ; Directions and buttons can be preceded by special characters: ; slash (/) - means the key must be held down ; egs. command = /D ;hold the down direction ; command = /DB, a ;hold down-back while you press a ; tilde (~) - to detect key releases ; egs. command = ~a ;release the a button ; command = ~D, F, a ;release down, press fwd, then a ; If you want to detect "charge moves", you can specify ; the time the key must be held down for (in game-ticks) ; egs. command = ~30a ;hold a for at least 30 ticks, then release ; dollar ($) - Direction-only: detect as 4-way ; egs. command = $D ;will detect if D, DB or DF is held ; command = $B ;will detect if B, DB or UB is held ; plus (+) - Buttons only: simultaneous press ; egs. command = a+b ;press a and b at the same time ; command = x+y+z ;press x, y and z at the same time ; You can combine them: ; eg. command = ~30$D, a+b ;hold D, DB or DF for 30 ticks, release, ; ;then press a and b together ; It's recommended that for most "motion" commads, eg. quarter-circle-fwd, ; you start off with a "release direction". This matches the way most ; popular fighting games implement their command detection. ; ; - time (optional) ; Time allowed to do the command, given in game-ticks. Defaults to 15 ; if omitted ; ; If you have two or more commands with the same name, all of them will ; work. You can use it to allow multiple motions for the same move. ; ; Some common commands examples are given below. ; ; [Command] ;Quarter circle forward + x ; name = "QCF_x" ; command = ~D, DF, F, x ; ; [Command] ;Half circle back + a ; name = "HCB_a" ; command = ~F, DF, D, DB, B, a ; ; [Command] ;Two quarter circles forward + y ; name = "2QCF_y" ; command = ~D, DF, F, D, DF, F, y ; ; [Command] ;Tap b rapidly ; name = "5b" ; command = b, b, b, b, b ; time = 30 ; ; [Command] ;Charge back, then forward + z ; name = "charge_B_F_z" ; command = ~60$B, F, z ; time = 10 ; ; [Command] ;Charge down, then up + c ; name = "charge_D_U_c" ; command = ~60$D, U, c ; time = 10 ; ;-| 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 = 30 ; Default value for the "buffer.time" parameter of a Command. Minimum 1, ; maximum 30. command.buffer.time = 1 ;------------------------------------------------------------------------------ [Command] name = "AI_1" command = D,D,D,F,F,F,a+b+c+x+y+z time = 1 [Command] name = "AI_2" command = D,D,D,F,F,U,a+b+c+x+y+z time = 1 [Command] name = "AI_3" command = D,D,D,F,F,UF,a+b+c+x+y+z time = 1 [Command] name = "AI_4" command = D,D,D,F,F,D,a+b+c+x+y+z time = 1 [Command] name = "AI_5" command = D,D,D,F,F,DF,a+b+c+x+y+z time = 1 [Command] name = "AI_6" command = D,D,D,F,F,B,a+b+c+x+y+z time = 1 [Command] name = "AI_7" command = D,D,D,F,F,DB,a+b+c+x+y+z time = 1 [Command] name = "AI_8" command = D,D,D,F,F,UB,a+b+c+x+y+z time = 1 [Command] name = "AI_9" command = D,D,D,F,U,F,a+b+c+x+y+z time = 1 [Command] name = "AI_10" command = D,D,D,F,UF,F,a+b+c+x+y+z time = 1 [Command] name = "AI_11" command = D,D,D,F,DF,F,a+b+c+x+y+z time = 1 [Command] name = "AI_12" command = D,D,D,F,D,F,a+b+c+x+y+z time = 1 [Command] name = "AI_13" command = D,D,D,F,DB,F,a+b+c+x+y+z time = 1 [Command] name = "AI_14" command = D,D,D,F,B,F,a+b+c+x+y+z time = 1 [Command] name = "AI_15" command = D,D,D,F,UB,F,a+b+c+x+y+z time = 1 [Command] name = "AI_16" command = D,D,D,F,F,F,a+b+c+x+y,z time = 1 [Command] name = "AI_17" command = D,D,D,F,F,F,a+b+c+x,y,z time = 1 [Command] name = "AI_18" command = D,D,D,F,F,F,a+b+c,x,y,z time = 1 [Command] name = "AI_19" command = D,D,D,F,F,F,a+b,c,x,y,z time = 1 ;-| FATAL Motions |-------------------------------------------------------- [command] name = "SUPER YOSHI" command = ~D, F, s ;-| Super Motions |-------------------------------------------------------- [command] name = "Yoshi Spin" command = D, DF, F, x+y time = 15 [command] name = "Super Egg Lay" command = D, DF, F, y+z time = 15 [command] name = "Dash Pepper" command = D, DB, B, x+y time = 15 [command] name = "Bulb Berry" command = D, DB, B, y+z time = 15 [command] name = "Super Egg Throw (SMBZ-inspired)" command = D, DF, F, a+b time = 15 [command] name = "Stampede!" command = D, DF, F, b+c time = 15 [command] name = "Super Dragon" command = D, DB, B, a+b time = 15 [command] name = "Robirdo" command = D, DB, B, b+c time = 15 ;-| Special Motions |------------------------------------------------------ [Command] name = "GuardCancel" command = c+z time = 10 [Command] name = "Dodge" command = a+x time = 1 [Command] name = "A Quick Lick" command = ~D, F, x time = 10 [Command] name = "Egg Roll" command = ~D, F, y time = 10 [command] name = "Yoshi Bomb" command = ~D, F, z time = 10 [Command] name = "Egg Throw EX" command = ~B, D, DB, x time = 10 [command] name = "Egg Throw" command = ~D, B, x time = 10 [command] name = "Flippin' Splits" command = ~D, B, y time = 10 [command] name = "Dolphin" command = ~D, B, z time = 10 [command] name = "Spit it out!" command = ~D, F, a time = 10 [Command] name = "Da sword EX" command = ~F, D, DF, b time = 10 [command] name = "Da sword" command = ~D, F, b time = 10 [command] name = "Spiny and Stuff" command = ~D, F, c time = 10 [command] name = "Huffin Puffin Throw" command = ~D, B, a time = 10 [command] name = "Egg Drop" command = ~D, B, b time = 10 [command] name = "Birdo" command = ~D, B, c time = 10 [command] name = "Dive Kick" command = ~D, D, x time = 10 [command] name = "Dive Kick" command = ~D, D, y time = 10 [command] name = "Dive Kick" command = ~D, D, z time = 10 ;-| 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 [Command] name = "UU" ;Required (do not remove) command = U, U time = 10 [Command] name = "Super Jump" ;Required (do not remove) command = ~D, U time = 10 ;-| 2/3 Button Combination |----------------------------------------------- [Command] name = "recovery" ;Required (do not remove) command = x+y time = 1 [Command] name = "recovery" command = y+z time = 1 [Command] name = "recovery" command = x+z time = 1 [Command] name = "recovery" command = a+b time = 1 [Command] name = "recovery" command = b+c time = 1 [Command] name = "recovery" command = a+c time = 1 ;-| Dir + Button |--------------------------------------------------------- [Command] name = "back_x" command = /$B,x time = 1 [Command] name = "back_y" command = /$B,y time = 1 [Command] name = "back_z" command = /$B,z time = 1 [Command] name = "down_x" command = /$D,x time = 1 [Command] name = "down_y" command = /$D,y time = 1 [Command] name = "down_z" command = /$D,z time = 1 [Command] name = "fwd_x" command = /$F,x time = 1 [Command] name = "fwd_y" command = /$F,y time = 1 [Command] name = "fwd_z" command = /$F,z time = 1 [Command] name = "up_x" command = /$U,x time = 1 [Command] name = "up_y" command = /$U,y time = 1 [Command] name = "up_z" command = /$U,z time = 1 [Command] name = "back_a" command = /$B,a time = 1 [Command] name = "back_b" command = /$B,b time = 1 [Command] name = "back_c" command = /$B,c time = 1 [Command] name = "down_a" command = /$D,a time = 1 [Command] name = "down_b" command = /$D,b time = 1 [Command] name = "down_c" command = /$D,c time = 1 [Command] name = "fwd_a" command = /$F,a time = 1 [Command] name = "fwd_b" command = /$F,b time = 1 [Command] name = "fwd_c" command = /$F,c time = 1 [Command] name = "up_a" command = /$U,a time = 1 [Command] name = "up_b" command = /$U,b time = 1 [Command] name = "up_c" command = /$U,c 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 = "s" command = s time = 1 ;-| Single Dir |------------------------------------------------------------ [Command] name = "fwd" ;Required (do not remove) command = $F time = 1 [Command] name = "downfwd" command = $DF time = 1 [Command] name = "down" ;Required (do not remove) command = $D time = 1 [Command] name = "downback" command = $DB time = 1 [Command] name = "back" ;Required (do not remove) command = $B time = 1 [Command] name = "upback" command = $UB time = 1 [Command] name = "up" ;Required (do not remove) command = $U time = 1 [Command] name = "upfwd" command = $UF time = 1 ;-| Hold Button |-------------------------------------------------------------- [Command] name = "hold_x" command = /x time = 1 [Command] name = "hold_y" command = /y time = 1 [Command] name = "hold_z" command = /z time = 1 [Command] name = "hold_a" command = /a time = 1 [Command] name = "hold_b" command = /b time = 1 [Command] name = "hold_c" command = /c time = 1 [Command] name = "hold_s" command = /s time = 1 ;-| Hold Dir |-------------------------------------------------------------- [Command] name = "holdfwd" ;Required (do not remove) command = /$F time = 1 [Command] name = "holddownfwd" command = /$DF time = 1 [Command] name = "holddown" ;Required (do not remove) command = /$D time = 1 [Command] name = "holddownback" command = /$DB time = 1 [Command] name = "holdback" ;Required (do not remove) command = /$B time = 1 [Command] name = "holdupback" command = /$UB time = 1 [Command] name = "holdup" ;Required (do not remove) command = /$U time = 1 [Command] name = "holdupfwd" command = /$UF time = 1 ;--------------------------------------------------------------------------- ; 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 Start ;=========================================================================== [State -3, Methods] type = VarSet triggerall = numenemy triggerall = AILevel trigger1 = enemynear(var(57)),StateType != C fvar(35) = 0 [State -3, Methods] type = VarSet triggerall = numenemy triggerall = AILevel triggerall = inguarddist trigger1 = (enemynear(var(57)),HitDefAttr = C,AA,AP) || enemynear(var(57)),StateType = C || (enemynear(var(57)),stateno = [400,450]) trigger2 = PlayerIdExist(helper(33333333),var(4)) trigger2 = PlayerID(helper(33333333),var(4)), statetype = C trigger3 = PlayerIdExist(helper(33333333),var(4)) trigger3 = PlayerID(helper(33333333),var(4)), hitdefattr = C,AA,AP trigger4 = numhelper(15900) trigger4 = enemynear(var(57)),stateno = helper(15900),var(0) || enemynear(var(57)),stateno = helper(15900),var(1) || enemynear(var(57)),stateno = helper(15900),var(2) || enemynear(var(57)),stateno = helper(15900),var(3) fvar(35) = 1 ignorehitpause = 1 [State -1, Simul/Tag] Type = Varset trigger1 = AILevel var(57) = IfElse((!EnemyNear,Alive && NumEnemy = 2),1,0) [state -2,yaccel] type = varset trigger1 = fvar(20) != enemynear(var(57)),const(movement.yaccel) trigger1 = enemynear(var(57)),stateno != [5000,5210] trigger1 = enemynear(var(57)),vel y != 0 fv = 20 value = enemynear(var(57)),const(movement.yaccel) ignorehitpause = 1 [state -2,yaccel] type = varset trigger1 = fvar(20) != enemynear(var(57)),gethitvar(yaccel) trigger1 = enemynear(var(57)),stateno = [5000,5210] fv = 20 value = enemynear(var(57)),gethitvar(yaccel) ignorehitpause = 1 [state -2, yaccel] type = varset trigger1 = fvar(20) != 0 trigger1 = enemynear(var(57)),vel y = 0 fv = 20 value = 0 ignorehitpause = 1 [State -1, SUPER YOSHI] type = ChangeState value = 3800 triggerall = AILevel && RoundState = 2 triggerall = life <= 250 triggerall = power >= 3000 triggerall = p2dist x > 0 trigger1 = statetype != A && ctrl [State -1, AI Running] type = ChangeState value = 102 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = stateno != 102 triggerall = enemynear(var(57)),stateno != [120,159] trigger1 = numhelper(2201) > 0 trigger1 = var(53) > 0 [State 5050, 4] type = ChangeState triggerall = StateNo = 5050 triggerall = Vel Y > 0 triggerall = Pos Y >= 0 triggerall = alive triggerall = AILevel triggerall = p2bodydist x >= 50 || p2dist y < -50 || (enemynear(var(57)),ctrl = 0 && enemynear(var(57)),movetype != A) trigger1 = CanRecover value = 5200 ;HITFALL_RECOVER [State 5050, 4] type = ChangeState triggerall = StateNo = 5050 triggerall = AILevel triggerall = alive triggerall = CanRecover trigger1 = p2bodydist x >= 50 || p2dist y >= 150 || (enemynear(var(57)),ctrl = 0 && enemynear(var(57)),movetype != A) value = 5210 [State -1, AI Roll past Projectile] type = ChangeState value = 910 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear,ctrl = 0 triggerall = enemynear,animtime <= -10 triggerall = p2bodydist x >= 120 + (enemynear,animtime) trigger1 = PlayerIdExist(helper(33333333),var(4)) trigger1 = PlayerID(helper(33333333),var(4)), vel x != 0 ; Avoid "Division by Zero" debug overflow trigger1 = (PlayerId(helper(33333333),var(4)), p2bodydist x) / (PlayerId(helper(33333333),var(4)), vel x) > 1 trigger1 = (PlayerId(helper(33333333),var(4)), p2bodydist x) / (PlayerId(helper(33333333),var(4)), vel x) < 20 ;=========================================================================== ; Oki ;=========================================================================== [State -1, Super Dragon] type = ChangeState value = 3600 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = power >= 2000 triggerall = NumHelper(3607) = 0 triggerall = numhelper(3615) = 0 triggerall = enemynear(var(57)),ctrl = 0 triggerall = random <= (150 + (150 * (teammode = simul || numhelper(2401) > 0))) triggerall = p2bodydist x > 0 trigger1 = enemynear(var(57)),statetype = L trigger1 = enemynear(var(57)),stateno != 5120 trigger2 = enemynear(var(57)),hitfall = 1 trigger2 = enemynear(var(57)),canrecover = 0 [State -1, Spit it out!] type = ChangeState value = 2200 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = p2bodydist x+floor(10*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) > 60 triggerall = p2bodydist y+floor(10*(enemynear(var(57)),vel y)+(10*(10+1)/2)*fvar(20)) >= 0 triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = enemynear(var(57)),stateno = 5120 triggerall = (enemynear(var(57)),stateno = 5120 && enemynear(var(57)),animtime <= -(16+((P2BodyDist X)/14))) triggerall = numhelper(2201) = 0 trigger1 = random <= (50 + (50 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) trigger2 = numhelper(2101) > 0 trigger2 = random <= (125 + (125 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) trigger3 = numhelper(2101) > 0 && (numhelper(1601) > 0 || numhelper(1616) > 0) trigger3 = random <= (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) [State -1, Spit it out!] type = ChangeState value = 1600 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = p2bodydist x+floor(9*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) >= 60 triggerall = p2bodydist y+floor(9*(enemynear(var(57)),vel y)+(9*(9+1)/2)*fvar(20)) >= 0 triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = numhelper(1601) = 0 triggerall = numhelper(1616) = 0 triggerall = enemynear(var(57)),stateno = 5120 triggerall = (enemynear(var(57)),stateno = 5120 && enemynear(var(57)),animtime <= -(16+((P2BodyDist X)/14))) trigger1 = !numhelper(2101) trigger1 = random <= 250 trigger2 = numhelper(2101) [State -1, Birdo] type = ChangeState value = 2400 triggerall = AILevel && RoundState = 2 triggerall = p2bodydist x >= 0 triggerall = numhelper(2401) = 0 triggerall = numhelper(2405) = 0 triggerall = ctrl && statetype != A triggerall = p2bodydist x > 0 triggerall = random <= (250 + (750 * (numhelper(2101) > 0))) trigger1 = enemynear(var(57)),statetype = L trigger1 = enemynear(var(57)),stateno = [5100,5150] trigger2 = enemynear(var(57)),hitfall = 1 [State -1, Spiny] type = ChangeState value = 2100 triggerall = AILevel && RoundState = 2 triggerall = enemynear(var(57)),statetype = L triggerall = enemynear(var(57)),stateno = [5100,5150] triggerall = p2bodydist x+floor(4*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) >= 20 triggerall = p2bodydist y+floor(4*(enemynear(var(57)),vel y)+(4*(4+1)/2)*fvar(20)) >= 0 triggerall = !numhelper(2101) trigger1 = ctrl ;=========================================================================== ; ;=========================================================================== [State -1, Super Egg Throw (SMBZ-inspired)] type = ChangeState value = 3400 triggerall = AILevel && RoundState = 2 triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),stateno != [120,159] triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = !var(55) && !var(53) triggerall = p2bodydist x >= 60 triggerall = p2bodydist y = [-160,0] triggerall = power >= 1500 triggerall = NumHelper(3404) = 0 triggerall = NumHelper(3420) = 0 triggerall = ctrl trigger1 = random <= (100 + (100 * (enemynear(var(57)),backedgedist <= 50))) trigger2 = !enemynear(var(57)),ctrl trigger2 = random <= (200 + (200 * (enemynear(var(57)),backedgedist <= 50))) trigger3 = enemynear(var(57)),ctrl = 0 trigger3 = p2bodydist x >= 160 [State -1, Stampede] type = ChangeState value = 3500 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),stateno != [120,159] triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = numhelper(3505) = 0 triggerall = p2bodydist x >= 30 triggerall = p2bodydist y >= -30 triggerall = !var(53) triggerall = power >= 1500 trigger1 = enemynear(var(57)),ctrl = 0 || (enemynear(var(57)),prevstateno = [140,159]) trigger1 = random <= (200 + (200 * (enemynear(var(57)),backedgedist <= 40 || enemynear(var(57)),vel x > 0))) [State -1, Dash Pepper] type = ChangeState value = 3200 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),stateno != [120,159] triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = numhelper(3201) = 0 triggerall = numhelper(3215) = 0 triggerall = p2bodydist x > 0 triggerall = p2bodydist y >= 0 triggerall = !var(53) triggerall = power >= 1000 trigger1 = enemynear(var(57)),movetype != A || p2bodydist x > 50 trigger1 = enemynear(var(57)),anim = [0,100] ; prevent reacting to AI states trigger1 = enemynear(var(57)),ctrl = 0 trigger1 = random <= (250 + (250 * (prevstateno = 751))) trigger2 = enemynear(var(57)),movetype = H [State -1, Spit it out!] type = ChangeState value = 2200 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),stateno != [150,159] triggerall = p2bodydist x+floor(10*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) > 60 triggerall = p2bodydist y+floor(10*(enemynear(var(57)),vel y)+(10*(10+1)/2)*fvar(20)) >= 0 triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = !var(53) triggerall = numhelper(2201) = 0 trigger1 = random <= (50 + (50 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) trigger2 = numhelper(2101) > 0 trigger2 = random <= (125 + (125 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) trigger3 = numhelper(2101) > 0 && (numhelper(1601) > 0 || numhelper(1616) > 0) trigger3 = random <= (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) [State -1, Spit it out!] type = ChangeState value = 1600 triggerall = AILevel && RoundState = 2 triggerall = ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),stateno != [150,159] triggerall = p2bodydist x+floor(9*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) > 60 triggerall = p2bodydist y+floor(9*(enemynear(var(57)),vel y)+(9*(9+1)/2)*fvar(20)) >= 0 triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = var(58) != 2 triggerall = var(58) != 5 triggerall = !var(53) triggerall = numhelper(1601) = 0 triggerall = numhelper(1616) = 0 trigger1 = !numhelper(2101) trigger1 = random <= (100 + (100 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) trigger2 = numhelper(2101) > 0 trigger2 = random <= (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) [State -1, Spit it out!] type = ChangeState value = 1600 triggerall = AILevel && RoundState = 2 triggerall = ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),stateno != [150,159] triggerall = p2bodydist x+floor(9*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) > 60 triggerall = p2bodydist y+floor(9*(enemynear(var(57)),vel y)+(9*(9+1)/2)*fvar(20)) = [-30,30] triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = var(58) = 5 triggerall = !var(53) triggerall = numhelper(1601) = 0 triggerall = numhelper(1616) = 0 trigger1 = !numhelper(2101) trigger1 = random <= (100 + (100 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) trigger2 = numhelper(2101) > 0 trigger2 = random <= (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) [State -1, Spit it out!] type = ChangeState value = 1600 triggerall = AILevel && RoundState = 2 triggerall = ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),stateno != [150,159] triggerall = p2bodydist x+floor(9*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) > 60 triggerall = p2bodydist y+floor(9*(enemynear(var(57)),vel y)+(9*(9+1)/2)*fvar(20)) = [-60,60] triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = var(58) = 2 triggerall = !var(53) triggerall = numhelper(1601) = 0 triggerall = numhelper(1616) = 0 trigger1 = !numhelper(2101) trigger1 = random <= (100 + (100 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) trigger2 = numhelper(2101) > 0 trigger2 = random <= (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x > 0))) [State -1, Birdo] type = ChangeState value = 2400 triggerall = AILevel && RoundState = 2 triggerall = numhelper(2401) = 0 triggerall = numhelper(2405) = 0 triggerall = ctrl && statetype != A triggerall = p2bodydist x > 80 triggerall = p2bodydist x >= 0 triggerall = random <= (250 + (250 * (numhelper(2101) > 0))) triggerall = !var(53) trigger1 = enemynear(var(57)),stateno = [120,159] trigger2 = enemynear(var(57)),vel x < 0 trigger2 = enemynear(var(57)),ctrl = 0 [State -1, Spiny] type = ChangeState value = 2100 triggerall = AILevel && RoundState = 2 triggerall = ctrl triggerall = var(58) != [5,7] triggerall = enemynear(var(57)),statetype != L triggerall = p2bodydist x+floor(4*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) > 60 triggerall = p2bodydist y+floor(4*(enemynear(var(57)),vel y)+(4*(4+1)/2)*fvar(20)) >= -90 triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = !var(53) triggerall = !numhelper(2101) trigger1 = random <= (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x < 0))) [State -1] type = ChangeState value = 2100 triggerall = AILevel && RoundState = 2 triggerall = ctrl && statetype != A triggerall = var(58) = [5,7] triggerall = enemynear(var(57)),statetype != L triggerall = p2bodydist x+floor(4*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [0,120] triggerall = p2bodydist y+floor(4*(enemynear(var(57)),vel y)+(4*(4+1)/2)*fvar(20)) >= -90 triggerall = !(inguarddist || enemy,numproj) || prevstateno = 751 triggerall = !var(53) triggerall = !numhelper(2101) triggerall = enemynear(var(57)),stateno != 6003 trigger1 = random <= (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear,vel x < 0))) ;=========================================================================== ; Normals ;=========================================================================== [State -1] type = ChangeState value = 650 triggerall = AILevel && RoundState = 2 triggerall = statetype = A && ctrl triggerall = p2bodydist x+floor(4*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-15,45] triggerall = p2bodydist y = [-25-floor(4*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55),70-floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55)] triggerall = pos y+floor(-floor(4*vel y)-(4*(4)/2)*0.52) <= 0 triggerall = enemynear(var(57)),movetype != A || enemynear(var(57)),movetype = A && enemynear(var(57)),stateno != [3000,3999] triggerall = enemynear(var(57)),statetype != L triggerall = !inguarddist || enemynear(var(57)),facing = facing || enemynear,animtime >= -4-1 triggerall = !var(55) || (vel y > 0 && prevstateno != 1400) trigger1 = random <= (100 + (100 * (vel y > 0 || prevstateno = 5210))) [State -1] type = ChangeState value = 610 triggerall = AILevel && RoundState = 2 triggerall = statetype = A && ctrl triggerall = p2bodydist x+floor(6*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [0,60] triggerall = p2bodydist y = [-60-floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55),60-floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55)] triggerall = pos y+floor(-floor(6*vel y)-(6*(6)/2)*0.52) <= 0 triggerall = enemynear(var(57)),movetype != A || enemynear(var(57)),movetype = A && enemynear(var(57)),stateno != [3000,3999] triggerall = enemynear(var(57)),statetype != L triggerall = stateno != 2001 triggerall = !inguarddist triggerall = !var(55) trigger1 = random <= (250 + (250 * (stateno = 110 || !enemynear(var(57)),ctrl))) [State -1] type = ChangeState value = 600 triggerall = AILevel && RoundState = 2 triggerall = statetype = A && ctrl triggerall = p2bodydist x+floor(6*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-5,40] triggerall = p2bodydist y = [-40-floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55),40-floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55)] triggerall = pos y+floor(-floor(6*vel y)-(6*(6)/2)*0.52) <= 0 triggerall = enemynear(var(57)),movetype != A || enemynear(var(57)),movetype = A && enemynear(var(57)),stateno != [3000,3999] triggerall = enemynear(var(57)),statetype != L triggerall = stateno != 2001 triggerall = !inguarddist triggerall = !var(55) trigger1 = enemynear(var(57)),statetype = A [State -1, Super Egg Lay] type = ChangeState value = 3100 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L && enemynear(var(57)),statetype != A triggerall = enemynear(var(57)),movetype != H triggerall = enemynear(var(57)),prevstateno != 5120 triggerall = p2bodydist x+floor(15*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [0,100] triggerall = !inguarddist || prevstateno = 751 triggerall = power >= 1000 triggerall = !var(53) triggerall = !numhelper(3104) triggerall = prevstateno != 102 triggerall = random <= (250 + (250 * (!enemynear(var(57)),ctrl))) trigger1 = enemynear(var(57)),stateno = [130,139] trigger2 = enemynear(var(57)),vel x <= 0 trigger2 = enemynear(var(57)),facing = facing [State -1, Stand Light Punch] type = ChangeState value = 420+1*(p2bodydist x > 15) triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),movetype != A || enemynear(var(57)),movetype = A && enemynear(var(57)),stateno != [3000,3999] triggerall = (enemynear(var(57)),stateno != [120,159]) || (enemynear(var(57)),stateno = [140,149]) triggerall = !inguarddist || enemynear(var(57)),animtime >= -7 || (enemynear(var(57)),ctrl = 0 && enemynear(var(57)),movetype = I) || enemynear(var(57)),facing = facing || prevstateno = 751 triggerall = p2bodydist y < 0 trigger1 = p2bodydist x <= 15 trigger1 = p2bodydist x+floor(7*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-15,15] trigger1 = p2bodydist y+floor(7*(enemynear(var(57)),vel y)+(7*(7+1)/2)*fvar(20)) >= -70 trigger1 = random <= (250 + (500 * (enemynear,vel y > 0))) trigger2 = p2bodydist x > 15 trigger2 = p2bodydist x+floor(8*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-5,50] trigger2 = p2bodydist y+floor(8*(enemynear(var(57)),vel y)+(7*(7+1)/2)*fvar(20)) >= -70 trigger2 = random <= (250 + (500 * (enemynear,vel y > 0))) [State -1, Stand Medium Punch] type = ChangeState value = 210 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L || enemynear(var(57)),animtime >= -6-1 triggerall = enemynear(var(57)),movetype = I || enemynear(var(57)),movetype = A && enemynear(var(57)),stateno != [3000,3999] triggerall = p2bodydist x+floor(6*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [35,60] triggerall = p2bodydist y+floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)) >= -30 triggerall = !inguarddist || prevstateno = 751 trigger1 = random <= (100 + (100 * (enemynear(var(57)),vel x < 0 || enemynear(var(57)),backedgedist < 40))) [State -1, Stand Light Punch] type = ChangeState value = 430 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L triggerall = enemynear(var(57)),movetype != A || enemynear(var(57)),movetype = A && enemynear(var(57)),stateno != [3000,3999] triggerall = p2bodydist x+floor(6*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-5,35] triggerall = p2bodydist y+floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)) >= 0 triggerall = !inguarddist || prevstateno = 751 trigger1 = random <= 500 trigger2 = enemynear(var(57)),stateno = [120,159] trigger2 = enemynear(var(57)),statetype != C [State -1, Stand Light Punch] type = ChangeState value = 200 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),statetype != L || (enemynear(var(57)),stateno = 5120 && enemynear(var(57)),animtime >= -6-1) triggerall = enemynear(var(57)),movetype != A || enemynear(var(57)),movetype = A && enemynear(var(57)),stateno != [3000,3999] triggerall = p2bodydist x+floor(6*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-5,30] triggerall = p2bodydist y+floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)) >= -20 trigger1 = !inguarddist || prevstateno = 751 ;=========================================================================== ; Combos [State -1, Combo] Type = VarSet triggerall = AILevel triggerall = var(55) > 0 trigger1 = statetype != A var(55) = 0 [State -1, Super Jump Attack] type = ChangeState value = 600 triggerall = AILevel && RoundState = 2 triggerall = statetype = A triggerall = p2bodydist x+floor(6*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-5,40] triggerall = p2bodydist y = [-50-floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55),50-floor(6*(enemynear(var(57)),vel y)+(6*(6+1)/2)*fvar(20)-6*(vel y)-(6*(6+1)/2)*0.55)] triggerall = pos y+floor(-floor(6*vel y)-(6*(6)/2)*0.52) <= 0 trigger1 = stateno = 2001 [State -1, Combo] Type = Varset triggerall = AILevel trigger1 = movetype != A trigger2 = roundstate != 2 var(52) = 0 [State -1, Combo] Type = VarSet triggerall = AILevel trigger1 = enemynear(var(57)),movetype != H trigger1 = movetype != A var(53) = 0 [State -1, Combo] Type = VarAdd triggerall = AILevel triggerall = stateno = 2200 && time = 1 triggerall = prevstateno = 220 trigger1 = numtarget var(53) = 1 [State -1, Combo] Type = VarSet triggerall = AILevel trigger1 = enemynear(var(57)),movetype != H var(53) = 0 [State -1, Combo] Type = VarAdd triggerall = AILevel triggerall = stateno = 2200 && time = 1 trigger1 = numtarget var(53) = 1 [State -1, Combo] Type = VarSet triggerall = AILevel trigger1 = enemynear(var(57)),movetype != H var(54) = 0 [State -1, loop] type = ChangeState value = 430 triggerall = AILevel && RoundState = 2 trigger1 = stateno = 230 && movecontact [State -1, loop] type = ChangeState value = 440 triggerall = AILevel && RoundState = 2 triggerall = stateno = 210 && movecontact triggerall = var(53) < 6 trigger1 = var(53) > 0 [State -1, loop] type = ChangeState value = 220 triggerall = AILevel && RoundState = 2 triggerall = stateno = 440 && movecontact triggerall = var(53) < 6 trigger1 = var(53) > 0 [State -1, loop] type = ChangeState value = 2200 triggerall = AILevel && RoundState = 2 triggerall = stateno = 220 && movecontact triggerall = NumHelper(2201) = 0 triggerall = var(53) < 6 trigger1 = var(53) > 0 [State -1, 200 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 200 && movecontact ; 430 trigger1 = p2bodydist x <= 60 trigger1 = enemynear(var(57)),statetype = S trigger1 = (enemynear(var(57)),stateno = [120,159]) trigger1 = var(52) := 430 || 1 ; 400 trigger2 = p2bodydist x <= 60 trigger2 = enemynear(var(57)),statetype != A trigger2 = var(52) := 400 || 1 ; 210 trigger3 = p2bodydist x > 60 || (enemynear(var(57)),statetype = A) || var(53) > 0 trigger3 = var(52) := 210 || 1 [State -1, 210 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 210 && movecontact ; 2200 trigger1 = p2bodydist x > 60 trigger1 = NumHelper(2201) = 0 trigger1 = var(52) := 2200 || 1 ; 240 trigger2 = p2bodydist x <= 60 trigger2 = !var(53) trigger2 = prevstateno = 400 trigger2 = enemynear(var(57)),statetype != A trigger2 = var(52) := 240 || 1 ; 440 trigger3 = enemynear(var(57)),statetype = S trigger3 = (enemynear(var(57)),stateno = [120,159]) || moveguarded trigger3 = var(52) := 440 || 1 ; 220 trigger4 = p2bodydist x <= 60 trigger4 = enemynear(var(57)),statetype != A trigger4 = var(53) < 6 || enemynear(var(57)),backedgedist >= 20 trigger4 = var(52) := 220 || 1 ; 420 trigger5 = enemynear(var(57)),statetype = A || (var(53) >= 6 && enemynear(var(57)),backedgedist <= 20) trigger5 = var(52) := 420+1*(p2bodydist x > 15) || 1 [State -1, 220 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 220 && movecontact ; 2200 trigger1 = var(53) < 6 || enemynear(var(57)),backedgedist > 20 trigger1 = NumHelper(2201) = 0 trigger1 = var(52) := 2200 || 1 [State -1, 400 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 400 && movecontact ; 430 trigger1 = enemynear(var(57)),statetype != A trigger1 = p2bodydist x <= 60 trigger1 = var(52) := 430 || 1 ; 420 trigger2 = p2bodydist x > 60 || enemynear(var(57)),statetype = A trigger2 = var(52) := 420+1*(p2bodydist x > 15) || 1 [State -1, 430 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 430 && movecontact ; 410 trigger1 = p2bodydist x <= 60 trigger1 = enemynear(var(57)),statetype != A trigger1 = var(52) := 410 || 1 ; 420 trigger2 = p2bodydist x > 60 || enemynear(var(57)),statetype = A trigger2 = var(52) := 420+1*(p2bodydist x > 15) || 1 [State -1, 410 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 410 && movecontact ; 2200 trigger1 = p2bodydist x > 100 trigger1 = NumHelper(2201) = 0 trigger1 = var(52) := 2200 || 1 ; 440 trigger2 = p2bodydist x <= 60 trigger2 = enemynear(var(57)),statetype != A trigger2 = var(52) := 440 || 1 ; 420 trigger3 = p2bodydist x > 60 || enemynear(var(57)),statetype = A trigger3 = var(52) := 420+1*(p2bodydist x > 15) || 1 [State -1, 440 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 440 && movecontact ; 450 trigger1 = enemynear(var(57)),statetype = S trigger1 = (enemynear(var(57)),stateno = [120,159]) trigger1 = var(52) := 450 || 1 ; 220 trigger2 = p2bodydist x <= 60 trigger2 = enemynear(var(57)),statetype != A trigger2 = var(53) < 6 || enemynear(var(57)),backedgedist >= 20 trigger2 = var(52) := 220 || 1 ; 420 trigger3 = p2bodydist x > 60 || enemynear(var(57)),statetype = A || (var(53) >= 6 && enemynear(var(57)),backedgedist <= 20) trigger3 = var(52) := 420+1*(p2bodydist x > 15) || 1 [State -1, 420 blocked] type = ChangeState value = 2200 triggerall = AILevel && RoundState = 2 triggerall = stateno = 420 && moveguarded trigger1 = NumHelper(2201) = 0 [State -1, 600 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 600 && movecontact triggerall = !var(55) ; 630 trigger1 = pos y <= -75 || vel y < 0 trigger1 = var(52) := 630 || 1 ; 610 trigger1 = pos y > -75 trigger1 = var(52) := 610 || 1 [State -1, 630 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 630 && movecontact triggerall = !var(55) ; 610 trigger1 = pos y <= -50 trigger1 = var(52) := 610 || 1 ; 620 trigger1 = pos y > -50 trigger1 = var(52) := 620 || 1 [State -1, 610 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 610 && movecontact triggerall = !var(55) ; 640 trigger1 = pos y <= -50 trigger1 = var(52) := 640 || 1 ; 620 trigger1 = pos y > -50 trigger1 = var(52) := 620 || 1 [State -1, 640 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 640 && movecontact triggerall = !var(55) trigger1 = var(52) := 620 || 1 ; SJ Combos [State -1, Super Jump Attack] type = ChangeState value = 630 triggerall = AILevel && RoundState = 2 triggerall = statetype = A triggerall = var(55) trigger1 = stateno = 600 && movecontact [State -1, Super Jump Attack] type = ChangeState value = 610 triggerall = AILevel && RoundState = 2 triggerall = statetype = A triggerall = var(55) trigger1 = stateno = 630 && movecontact [State -1, Super Jump Attack] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = statetype = A triggerall = var(55) triggerall = stateno = 610 && movecontact trigger1 = enemynear(var(57)),hitfall = 1 trigger1 = var(52) := 620 trigger2 = enemynear(var(57)),hitfall = 0 trigger2 = var(52) := 640 [State -1, Super Jump Attack] type = ChangeState value = 1700 triggerall = AILevel && RoundState = 2 triggerall = statetype = A triggerall = var(55) trigger1 = stateno = 640 && movecontact [State -1, Super Jump Attack] type = ChangeState value = 1400 triggerall = AILevel && RoundState = 2 triggerall = statetype = A triggerall = vel y >= 1 trigger1 = stateno = 1701 && movecontact [State -1, 1400 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = prevstateno = 1400 triggerall = statetype = A && ctrl triggerall = enemynear(var(57)),movetype = H ; 1600 trigger1 = NumHelper(3404) = 0 trigger1 = NumHelper(3420) = 0 trigger1 = NumHelper(1601) = 0 trigger1 = NumHelper(1616) = 0 trigger1 = var(58) != 5 trigger1 = power >= 1500 trigger1 = var(54) >= 2 || pos y >= 50 trigger1 = var(52) := 1600 ; 3400 trigger2 = NumHelper(3404) = 0 trigger2 = NumHelper(3420) = 0 trigger2 = var(58) = 5 trigger2 = power >= 1500 trigger2 = var(54) >= 2 || pos y >= 50 trigger2 = var(52) := 3400 ; 1700 trigger3 = var(54) < 2 || power < 1500 trigger3 = var(52) := 1700 [State -1, 1600 combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = prevstateno = 1600 || prevstateno = 2100 triggerall = var(55) triggerall = statetype = A && ctrl triggerall = enemynear(var(57)),movetype = H ; 1600 trigger1 = NumHelper(3404) = 0 trigger1 = NumHelper(3420) = 0 trigger1 = power >= 1500 trigger1 = var(54) >= 2 || pos y >= 50 trigger1 = var(52) := 3400 ;=========================================================================== ; Misc. ;=========================================================================== [State -1, Power Charge] type = ChangeState value = 950 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = enemynear(var(57)),vel x <= 0 triggerall = !(inguarddist || enemy,numproj) triggerall = !playeridexist(helper(33333333),var(4)) triggerall = !var(53) && stateno != 102 triggerall = prevstateno != 951 triggerall = power < 3000 triggerall = p2bodydist x >= 60 triggerall = random <= 80+((enemynear(var(57)),power-power)*3)|| life <= 250 trigger1 = enemynear(var(57)),statetype = L || enemynear(var(57)),hitfall = 1 trigger1 = enemynear(var(57)),stateno != 5120 trigger1 = prevstateno != 52 trigger2 = enemynear(var(57)),anim = 5300 trigger2 = enemynear(var(57)),ctrl = 0 [State -1, AI Dash Back] type = ChangeState value = 105 triggerall = AILevel && RoundState = 2 triggerall = ctrl && statetype != A triggerall = enemynear,movetype != H || enemynear,statetype = L triggerall = (enemynear,stateno != [120,159]) || (prevstateno = [200,499]) triggerall = enemynear(var(57)),facing != facing triggerall = enemynear(var(57)),vel x >= 0 triggerall = backedgedist >= 50 triggerall = p2dist x > 0 triggerall = stateno != 105 trigger1 = prevstateno != 105 || inguarddist trigger1 = p2bodydist x <= 120+(enemynear(var(57)),const(velocity.run.fwd.x)*enemynear(var(57)),vel x) trigger1 = random <= (10 + ceil(enemynear(var(57)),vel x * 10)) trigger2 = enemynear(var(57)),stateno = 5120 trigger2 = p2bodydist x <= 60 trigger2 = random <= (250 + (250 * (enemynear(var(57)),time <= 5))) || (prevstateno = [200,1999]) [State -1, AI Running] type = ChangeState value = 100 triggerall = AILevel && RoundState = 2 triggerall = statetype != A && ctrl triggerall = !(inguarddist || enemy,numproj) triggerall = frontedgedist >= 10 triggerall = stateno != 100 triggerall = !var(53) trigger1 = enemynear(var(57)),movetype != H trigger1 = random <= (10 + ceil(p2bodydist x * 2)) trigger1 = p2bodydist x >= 90+(enemynear(var(57)),vel x) trigger2 = enemynear(var(57)),movetype = H trigger2 = enemynear(var(57)),statetype != L trigger2 = random <= (25 + ceil(p2bodydist x * 2)) trigger2 = p2bodydist x >= 0+(enemynear(var(57)),vel x) ctrl = 1 [State -1, Guard Counter Attack] type = ChangeState value = 750 triggerall = AILevel && RoundState = 2 triggerall = statetype != A triggerall = stateno = [150,153] triggerall = power >= 1000 triggerall = enemynear(var(57)),ctrl = 0 triggerall = enemynear(var(57)),stateno != [2000,3999] triggerall = p2bodydist x+floor(4*(enemynear(var(57)),vel x))*(enemynear(var(57)),facing)*ifelse((enemynear(var(57)),pos x-pos x)>=0,1,-1)*(enemynear(var(57)),statetype=A) = [-10,40] triggerall = p2bodydist y+floor(4*(enemynear(var(57)),vel y)+(4*(4+1)/2)*fvar(20)) >= -100 triggerall = random <= (150 + (350 * (power >= 2000))) trigger1 = backedgebodydist <= 30 || frontedgebodydist <= 30 trigger2 = enemynear(var(57)),statetype = A [State -1, Guard Counter Parry] type = ChangeState value = 751 triggerall = AILevel && RoundState = 2 triggerall = statetype != A trigger1 = stateno = 150 || stateno = 152 [State -1, AI Dodge Forward] type = ChangeState value = 910 triggerall = AILevel && RoundState = 2 triggerall = ctrl && statetype != A triggerall = enemynear(var(57)),stateno != [3000,3999] triggerall = enemynear(var(57)),animtime <= cond(backedgedist <= 50 || enemynear(var(57)),vel x > 0, -15, -20) triggerall = enemynear(var(57)),vel x >= 0 triggerall = enemynear(var(57)),vel y >= -2 triggerall = enemynear(var(57)),hitdefattr != SCA,AT triggerall = frontedgedist >= 50 triggerall = inguarddist triggerall = p2bodydist x = [0,100+3*(enemynear(var(57)),vel x)] triggerall = p2bodydist y >= -80-3*(enemynear(var(57)),vel y) trigger1 = random <= (500 + (500 * (enemynear(var(57)),vel x > 0 || backedgedist <= 50))) [State -1, AI Dodge Backward] type = ChangeState value = 920 triggerall = AILevel && RoundState = 2 triggerall = ctrl && statetype != A triggerall = enemynear(var(57)),stateno != [3000,3999] triggerall = enemynear(var(57)),animtime <= -20 triggerall = enemynear(var(57)),vel x <= 0 triggerall = enemynear(var(57)),vel y >= -2 triggerall = enemynear(var(57)),hitdefattr != SCA,AT triggerall = backedgedist >= 50 triggerall = inguarddist triggerall = p2bodydist x = [0,60+3*(enemynear(var(57)),vel x)] triggerall = p2bodydist y >= -80-3*(enemynear(var(57)),vel y) triggerall = prevstateno != 910 trigger1 = random <= (500 + (500 * (enemynear(var(57)),vel x < 0 || frontedgedist <= 50))) [State -1, AI Air Dash Forward] type = ChangeState value = 110 triggerall = AILevel && RoundState = 2 triggerall = (statetype = A && ctrl) && (stateno != [110,116]) triggerall = !inguarddist || (enemynear(var(57)),animtime >= -(10+((P2BodyDist X)/14))) triggerall = frontedgedist >= 20 + 5*(vel x+enemynear(var(57)),vel x) triggerall = p2bodydist x + (enemynear(var(57)),vel x * 2) >= 75 - (55 * (enemynear(var(57)),movetype = H || enemynear(var(57)),vel x < 0 || (enemynear(var(57)),ctrl = 0 && (enemynear(var(57)),movetype != A || ((prevstateno = [140,159]) || (prevstateno = [900,902])))))) triggerall = p2dist y = [-30 - ((p2dist x/10)),30] triggerall = (vel x < const(velocity.runjump.fwd.x) || enemynear(var(57)),vel x < -const(velocity.runjump.fwd.x)) triggerall = stateno != 2001 triggerall = (pos y <= -20 || p2bodydist x >= 100) trigger1 = random < (250 + (250 * (enemynear(var(57)),ctrl = 0 || enemynear(var(57)),backedgedist < 30))) trigger2 = enemynear,movetype = H || ((enemynear(var(57)),prevstateno = [140,149]) && enemynear(var(57)),ctrl = 0 && enemynear(var(57)),movetype != A) trigger2 = random < (500 + (500 * (enemynear(var(57)),vel x < 0))) [State -1, AI Air Dash Back] type = ChangeState value = 115 triggerall = AILevel && RoundState = 2 triggerall = (statetype = A && ctrl) && (stateno != [110,116]) triggerall = backedgedist >= 60 + 5*(vel x+enemynear(var(57)),vel x) triggerall = (facing != enemynear(var(57)),facing) && p2dist x > 0 triggerall = p2dist y = [-80 - ((p2dist x/10)),90] triggerall = p2dist x < 80 triggerall = stateno != 2001 trigger1 = (enemynear(var(57)),stateno != [120,159]) trigger1 = (enemynear(var(57)),stateno != [5000,5150]) trigger1 = !numhelper(3000) trigger1 = random < (100 + (100 * (life < (lifemax * 0.25) || (prevstateno = [1050,1053]) || enemynear,vel x > 0 && (enemynear(var(57)),prevstateno = [140,149]) || (stateno = 39 || prevstateno = 39)))) trigger2 = ((stateno = [200,699]) && time >= 25) && (!movecontact || !numtarget) trigger2 = (enemynear(var(57)),stateno = [5200,5210]) || (enemynear(var(57)),movetype = H && enemynear(var(57)),ctrl = 1) || (enemynear(var(57)),hitfall = 1 && enemynear(var(57)),canrecover) trigger2 = random < (250 + (250 * (enemynear(var(57)),ctrl = 1))) trigger3 = inguarddist && !numhelper(3000) trigger3 = random < (300 + 300 * (enemynear(var(57)),time <= 2 || (enemynear(var(57)),vel x = [-2,2]))) [State -3, AI Guard] type = ChangeState triggerall = AILevel && RoundState = 2 triggerall = ctrl trigger1 = inguarddist value = 120 ignorehitpause = 1 [State -1, AI Walking] type = ChangeState value = 21 triggerall = AILevel && RoundState = 2 triggerall = !inguarddist triggerall = statetype != A triggerall = stateno != 100 triggerall = stateno != 105 triggerall = (stateno != 0 || prevstateno != 21 || random <= 10) trigger1 = ctrl ctrl = 1 [State -3, Taunt] type = ChangeState value = 195+random%3 triggerall = AILevel triggerall = statetype != A triggerall = roundstate = 3 triggerall = win || winko triggerall = time = [0,120] triggerall = stateno != [195,197] triggerall = prevstateno != [195,197] triggerall = prevstateno != [1950,1955] trigger1 = ctrl [State -3, AssertSpecial] type = AssertSpecial trigger1 = AILevel flag = nowalk ;=========================================================================== ; END AI ;=========================================================================== [State -1,Dodge] type = changestate value = 920 triggerall = !AILevel triggerall = command = "Dodge" triggerall = command = "holdback" trigger1 = statetype = S trigger1 = ctrl [State -1,Dodge] type = changestate value = 910 triggerall = !AILevel triggerall = command = "Dodge" triggerall = command = "holdfwd" trigger1 = statetype = S trigger1 = ctrl [State -1,Dodge] type = changestate value = 900 triggerall = !AILevel triggerall = command = "Dodge" trigger1 = statetype = S trigger1 = ctrl ;--------------------------------------------------------------------------- ; Run Fwd [State -1, Run Fwd] type = ChangeState value = 100 triggerall = !AILevel trigger1 = command = "FF" trigger1 = statetype = S trigger1 = ctrl ;--------------------------------------------------------------------------- ; Run Back [State -1, Run Back] type = ChangeState value = 105 triggerall = !AILevel trigger1 = command = "BB" trigger1 = statetype = S trigger1 = ctrl ;--------------------------------------------------------------------------- ;Dash Fwd [State -1, Air] type = ChangeState value = 110 triggerall = stateno != 110 && stateno != 115 && stateno != 116 triggerall =!AILevel trigger1 = command = "FF" trigger1 = statetype = A trigger1 = ctrl ;--------------------------------------------------------------------------- ;Dash Back [State -1, Air] type = ChangeState value = 115 triggerall = stateno != 110 && stateno != 115 && stateno != 116 triggerall =!AILevel trigger1 = command = "BB" trigger1 = statetype = A trigger1 = ctrl ;--------------------------------------------------------------------------- [State -1, Super Jump] type = ChangeState value = 2000 triggerall = !AILevel trigger1 = Command = "Super Jump" trigger1 = ctrl && statetype != A trigger2 = stateno = 420 || stateno = 421 trigger2 = (movecontact) && (command = "holdup") ;--------------------------------------------------------------------------- ; Wings out [State -1, Wings out] type = ChangeState value = 2002 triggerall = var(58) != 4 triggerall = var(58) != 2 triggerall = var(58) != 1 triggerall = var(58) != 7 triggerall = var(58) != 6 triggerall = var(58) != 5 triggerall = var(58) != 8 triggerall = var(58) != 9 triggerall = var(58) != 10 triggerall = var(58) != 11 triggerall = var(58) != 12 triggerall = palno = 3||var(58)=3&&palno=[1,12] triggerall = !AILevel trigger1 = command = "UU" trigger1 = ctrl trigger1 = pos y < -110 trigger1 = statetype = A ;--------------------------------------------------------------------------- ; Power Charge [State -1, Power Charge] type = ChangeState value = 950 triggerall = !AILevel triggerall = power < 3000 triggerall = command = "hold_y" triggerall = command = "hold_b" trigger1 = ctrl && statetype != A ;--------------------------------------------------------------------------- ; Throw [State -1, Throw] type = ChangeState value = 800 triggerall = !AILevel triggerall = command = "y" triggerall = statetype = S triggerall = ctrl triggerall = stateno != 100 trigger1 = command = "holdfwd" trigger1 = p2bodydist X < 10 trigger1 = (p2statetype = S) || (p2statetype = C) trigger1 = p2movetype != H trigger2 = command = "holdback" trigger2 = p2bodydist X < 10 trigger2 = (p2statetype = S) || (p2statetype = C) trigger2 = p2movetype != H ;=========================================================================== ; AIR Throw [State -1, AIR Throw] type = ChangeState value = 830 triggerall = !AILevel triggerall = command = "y" triggerall = statetype = A triggerall = ctrl triggerall = stateno != 100 trigger1 = command = "holdfwd" trigger1 = p2bodydist X < 10 trigger1 = (p2statetype = A) trigger1 = p2movetype != H trigger2 = command = "holdback" trigger2 = p2bodydist X < 10 trigger2 = (p2statetype = A) trigger2 = p2movetype != H trigger2 = p2movetype != H ;---------------------------------------------------------------------------- ;OHKO ;SUPER YOSHI [State -1, SUPER YOSHI] type = ChangeState value = 3800 triggerall = !AILevel triggerall = Life <= 250 triggerall = Power >= 3000 triggerall = command = "SUPER YOSHI" triggerall = statetype = S trigger1 = ctrl ;=========================================================================== ;HYPERS ;Yoshi Spin (or tatsumaki but I'm calling it Yoshi Spin anyway so shut up) [State -1, Yoshi Spin] type = ChangeState value = 3000 Triggerall = !AILevel triggerall = power>=1000 triggerall = command = "Yoshi Spin" triggerall = statetype != A trigger1 = ctrl trigger2 = stateno = 200 && movecontact && time >=2 trigger3 = stateno = 210 && movecontact && time >=2 trigger4 = stateno = 230 && movecontact && time >=2 trigger5 = stateno = 240 && movecontact && time >=2 trigger6 = stateno = 400 && movecontact && time >=2 trigger7 = stateno = 410 && movecontact && time >=2 trigger8 = stateno = 430 && movecontact && time >=2 trigger9 = stateno = 440 && movecontact && time >=2 trigger10 = stateno = 1000 && movecontact && time >=10 trigger11 = stateno = 1101 && movecontact && time >= 10 trigger11 = statetype = S trigger12 = stateno = 1701 && movecontact && time >=2 trigger12 = statetype = S trigger13 = stateno = 1402 && movecontact && time >=2 trigger14 = stateno = 1400 && movecontact && time >=2 ;--------------------------------------------------------------------------- ;Yoshi Spin (AIR) (cause I'm not aiming for accuracy here so shut up) [State -1, Yoshi Spin (AIR)] type = ChangeState value = 3001 Triggerall = !AILevel triggerall = power>=1000 triggerall = command = "Yoshi Spin" triggerall = statetype = A trigger1 = ctrl trigger2 = stateno = 600 && movecontact && time >=2 trigger3 = stateno = 610 && movecontact && time >=2 trigger4 = stateno = 630 && movecontact && time >=2 trigger5 = stateno = 640 && movecontact && time >=2 trigger6 = stateno = 1002 && movecontact && time >=10 trigger7 = stateno = 1101 && movecontact && time >= 10 trigger7 = statetype = A trigger8 = stateno = 1701 && movecontact && time >=2 trigger8 = statetype = A trigger9 = stateno = 1400 && movecontact && time >=2 ;--------------------------------------------------------------------------- ;Super Egg Lay [State -1, Super Egg Lay] type = ChangeState value = 3100 Triggerall = !AILevel triggerall = power>=1000 triggerall = command = "Super Egg Lay" triggerall = statetype != A triggerall = NumHelper(3104) = 0 trigger1 = ctrl ;--------------------------------------------------------------------------- ;Dash Pepper [State -1, Dash Pepper] type = ChangeState value = 3200 Triggerall = !AILevel triggerall = power>=1000 triggerall = command = "Dash Pepper" triggerall = statetype != A triggerall = NumHelper(3201) = 0 triggerall = NumHelper(3215) = 0 trigger1 = ctrl ;--------------------------------------------------------------------------- ;Bulb Berry [State -1, Bulb Berry] type = ChangeState value = 3300 Triggerall = !AILevel triggerall = power>=1000 triggerall = command = "Bulb Berry" triggerall = statetype != A triggerall = NumHelper(3301) = 0 triggerall = NumHelper(3305) = 0 triggerall = numhelper(3306) = 0 trigger1 = ctrl ;--------------------------------------------------------------------------- ;Super Egg Throw (SMBZ-inspired) [State -1, Super Egg Throw (SMBZ-inspired)] type = ChangeState value = 3400 Triggerall = !AILevel triggerall = power>=1500 triggerall = command = "Super Egg Throw (SMBZ-inspired)" triggerall = statetype != A triggerall = NumHelper(3404) = 0 triggerall = NumHelper(3420) = 0 trigger1 = ctrl ;--------------------------------------------------------------------------- ;Super Egg Throw (SMBZ-inspired) (AIR) [State -1, Super Egg Throw (SMBZ-inspired) (AIR)] type = ChangeState value = 3400 Triggerall = !AILevel triggerall = power>=1500 triggerall = command = "Super Egg Throw (SMBZ-inspired)" triggerall = statetype = A triggerall = NumHelper(3404) = 0 triggerall = NumHelper(3420) = 0 trigger1 = ctrl ;--------------------------------------------------------------------------- ;Stampede! [State -1, Stampede!] type = ChangeState value = 3500 Triggerall = !AILevel triggerall = power>=1500 triggerall = command = "Stampede!" triggerall = statetype != A triggerall = NumHelper(3505) = 0 trigger1 = ctrl ;--------------------------------------------------------------------------- ;Super Dragon [State -1, Super Dragon] type = ChangeState value = 3600 Triggerall = !AILevel triggerall = power>=2000 triggerall = command = "Super Dragon" triggerall = statetype != A triggerall = NumHelper(3607) = 0 triggerall = numhelper(3615) = 0 trigger1 = ctrl ;--------------------------------------------------------------------------- ;Robirdo [State -1, Robirdo] type = ChangeState value = 3700 Triggerall = !AILevel triggerall = power>=3000 triggerall = command = "Robirdo" triggerall = statetype != A triggerall = NumHelper(3705) = 0 trigger1 = ctrl ;=========================================================================== ;This is not a move, but it sets up var(1) to be 1 if conditions are right ;for a combo into a special move (used below). ;Since a lot of special moves rely on the same conditions, this reduces ;redundant logic. [State -1, Combo condition Reset] type = VarSet trigger1 = 1 var(9) = 0 [State -1, Combo condition Check] type = VarSet trigger1 = statetype != A trigger1 = ctrl trigger2 = (stateno = [200,299]) || (stateno = [400,499]) trigger2 = stateno != 450 ;Except for sweep kick trigger2 = movecontact var(9) = 1 [State -1, Combo condition Reset] type = VarSet trigger1 = 1 var(10) = 0 [State -1, Combo condition Check] type = VarSet trigger1 = statetype = A trigger1 = ctrl trigger2 = (stateno = [600,619]) || (stateno = [630,699]) trigger2 = stateno != 620 ;Except for sweep kick trigger2 = stateno != 650 trigger2 = movecontact var(10) = 1 ;--------------------------------------------------------------------------- ;A Quick Lick [State -1, A Quick Lick] type = ChangeState value = 1000 triggerall = !AILevel triggerall = command = "A Quick Lick" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;A Quick Lick (AIR) [State -1, A Quick Lick (AIR)] type = ChangeState value = 1002 triggerall = !AILevel triggerall = command = "A Quick Lick" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Egg Roll [State -1, Egg Roll] type = ChangeState value = 1100 triggerall = !AILevel triggerall = command = "Egg Roll" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) trigger3 = stateno = 1000 && movecontact && time >=10 ;--------------------------------------------------------------------------- ;Egg Roll (AIR) [State -1, Egg Roll (AIR)] type = ChangeState value = 1108 triggerall = !AILevel triggerall = command = "Egg Roll" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) trigger3 = stateno = 1002 && movecontact && time >=10 ;--------------------------------------------------------------------------- ;Yoshi Bomb [State -1, Yoshi Bomb] type = ChangeState value = 1200 triggerall = NumHelper(1202) = 0 triggerall = !AILevel triggerall = command = "Yoshi Bomb" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) trigger3 = stateno = 1000 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = S trigger5 = stateno = 1402 && movecontact && time >=2 trigger6 = stateno = 1400 && movecontact && time >=2 trigger7 = stateno = 1701 && movecontact && time >=2 trigger7 = statetype = S ;--------------------------------------------------------------------------- ;Yoshi Bomb (AIR) [State -1, Yoshi Bomb (AIR)] type = ChangeState value = 1201 triggerall = NumHelper(1202) = 0 triggerall = !AILevel triggerall = command = "Yoshi Bomb" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) trigger3 = stateno = 1002 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = A trigger5 = stateno = 1701 && movecontact && time >=2 trigger5 = statetype = A ;--------------------------------------------------------------------------- ;Egg Throw EX [State -1, Egg Throw EX] type = ChangeState value = 1310 triggerall = numhelper(1301) = 0 triggerall = numhelper(1311) = 0 triggerall = power>=500 triggerall = !AILevel triggerall = command = "Egg Throw EX" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Egg Throw (EX AIR) [State -1, Egg Throw (EX AIR)] type = ChangeState value = 1310 triggerall = numhelper(1301) = 0 triggerall = numhelper(1311) = 0 triggerall = power>=500 triggerall = !AILevel triggerall = command = "Egg Throw EX" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Egg Throw [State -1, Egg Throw] type = ChangeState value = 1300 triggerall = NumHelper(1301) = 0 triggerall = numhelper(1311) = 0 triggerall = !AILevel triggerall = command = "Egg Throw" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Egg Throw (AIR) [State -1, Egg Throw (AIR)] type = ChangeState value = 1300 triggerall = NumHelper(1301) = 0 triggerall = numhelper(1311) = 0 triggerall = !AILevel triggerall = command = "Egg Throw" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Flippin' Splits [State -1, Flippin' Splits] type = ChangeState value = 1400 triggerall = !AILevel triggerall = command = "Flippin' Splits" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) trigger3 = stateno = 1000 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = S trigger5 = stateno = 1701 && movecontact && time >=2 trigger5 = statetype = S ;--------------------------------------------------------------------------- ;Flippin' Splits (AIR) [State -1, Flippin' Splits (AIR)] type = ChangeState value = 1400 triggerall = !AILevel triggerall = command = "Flippin' Splits" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) trigger3 = stateno = 1002 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = A trigger5 = stateno = 1701 && movecontact && time >=2 trigger5 = statetype = A ;--------------------------------------------------------------------------- ;Dolphin [State -1, Dolphin] type = ChangeState value = 1500 triggerall = !AILevel triggerall = command = "Dolphin" trigger1 = (statetype = S) && ctrl triggerall = numhelper(1504) = 0 triggerall = numhelper(1505) = 0 trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Spit it out! [State -1, Spit it out!] type = ChangeState value = 1600 triggerall = NumHelper(1601) = 0 triggerall = NumHelper(1616) = 0 triggerall = !AILevel triggerall = command = "Spit it out!" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Spit it out! (AIR) [State -1, Spit it out! (AIR)] type = ChangeState value = 1600 triggerall = NumHelper(1601) = 0 triggerall = NumHelper(1616) = 0 triggerall = !AILevel triggerall = command = "Spit it out!" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Da sword EX [State -1, Da sword EX] type = ChangeState value = 1703 triggerall = power>=500 triggerall = !AILevel triggerall = command = "Da sword EX" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) trigger3 = stateno = 1000 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = S ;--------------------------------------------------------------------------- ;Da sword EX (AIR) [State -1, Da sword EX (AIR)] type = ChangeState value = 1703 triggerall = power>=500 triggerall = !AILevel triggerall = command = "Da sword EX" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) trigger3 = stateno = 1002 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = A ;--------------------------------------------------------------------------- ;Da sword [State -1, Da sword] type = ChangeState value = 1700 triggerall = !AILevel triggerall = command = "Da sword" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) trigger3 = stateno = 1000 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = S ;--------------------------------------------------------------------------- ;Da sword (AIR) [State -1, Da sword (AIR)] type = ChangeState value = 1700 triggerall = !AILevel triggerall = command = "Da sword" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) trigger3 = stateno = 1002 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = A ;--------------------------------------------------------------------------- ;Spiny and Stuff [State -1, Spiny and Stuff] type = ChangeState value = 2100 triggerall = NumHelper(2101) = 0 triggerall = !AILevel triggerall = command = "Spiny and Stuff" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Spiny and Stuff (AIR) [State -1, Spiny and Stuff (AIR)] type = ChangeState value = 2100 triggerall = NumHelper(2101) = 0 triggerall = !AILevel triggerall = command = "Spiny and Stuff" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Huffin Puffin Throw [State -1, Huffin Puffin Throw] type = ChangeState value = 2200 triggerall = NumHelper(2201) = 0 triggerall = !AILevel triggerall = command = "Huffin Puffin Throw" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Huffin Puffin Throw (AIR) [State -1, Huffin Puffin Throw (AIR)] type = ChangeState value = 2200 triggerall = NumHelper(2201) = 0 triggerall = !AILevel triggerall = command = "Huffin Puffin Throw" trigger1 = (statetype = A) && ctrl trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Egg Drop [State -1, Egg Drop] type = ChangeState value = 2300 triggerall = !AILevel triggerall = command = "Egg Drop" trigger1 = (statetype = S) && ctrl trigger1 = ctrl trigger2 = var(9) ;--------------------------------------------------------------------------- ;Birdo [State -1, Birdo] type = ChangeState value = 2400 triggerall = !AILevel triggerall = command = "Birdo" trigger1 = (statetype = S) && ctrl triggerall = numhelper(2401) = 0 triggerall = numhelper(2405) = 0 trigger2 = var(9) ;Use combo condition (above) ;--------------------------------------------------------------------------- ;Dive Kick [State -1, Dive Kick] type = ChangeState value = 2500 triggerall = !AILevel triggerall = command = "Dive Kick" trigger1 = statetype = A trigger1 = ctrl trigger2 = var(10) ;Use combo condition (above) trigger3 = stateno = 1002 && movecontact && time >=10 trigger4 = stateno = 1101 && movecontact && time >=5 trigger4 = statetype = A trigger5 = stateno = 1701 && movecontact && time >=2 trigger5 = statetype = A ;--------------------------------------------------------------------------- ; Taunt [State -1, Taunt] type = ChangeState value = 196 triggerall = !AILevel triggerall = command = "s" triggerall = command = "holdfwd" || command = "holdback" trigger1 = statetype != A trigger1 = ctrl [State -1, Taunt] type = ChangeState value = 195 triggerall = !AILevel triggerall = command = "s" triggerall = command = "holddown" trigger1 = statetype != A trigger1 = ctrl [State -1, Taunt] type = ChangeState value = 197 triggerall = !AILevel triggerall = command = "s" trigger1 = statetype != A trigger1 = ctrl ;=========================================================================== [State -1, Guard Counter Attack] type = ChangeState value = 750 triggerall =!AILevel triggerall = command = "GuardCancel" triggerall = statetype != A triggerall = power >= 1000 trigger1 = stateno = [150,153] ;--------------------------------------------------------------------------- [State -1, Guard Counter Parry] type = ChangeState value = 751 triggerall =!AILevel triggerall = command = "fwd" triggerall = statetype != A trigger1 = stateno = 150 || stateno = 152 ;--------------------------------------------------------------------------- ; Stand Light Punch [State -1, Stand Light Punch] type = ChangeState value = 200 triggerall = !AILevel triggerall = command = "x" triggerall = command != "holddown" trigger1 = statetype = S trigger1 = ctrl ;--------------------------------------------------------------------------- ; Stand Medium Punch [State -1, Stand Medium Punch] type = ChangeState value = 210 triggerall = !AILevel triggerall = command = "y" triggerall = command != "holddown" trigger1 = statetype = S trigger1 = ctrl trigger2 = stateno = 200 && movecontact && time >=2 trigger3 = stateno = 230 && movecontact && time >=2 trigger4 = stateno = 400 && movecontact && time >=2 trigger5 = stateno = 430 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Stand Strong Punch [State -1, Stand Strong Punch] type = ChangeState value = 220 triggerall = !AILevel triggerall = command = "z" triggerall = command != "holddown" trigger1 = statetype = S trigger1 = ctrl trigger2 = stateno = 200 && movecontact && time >=2 trigger3 = stateno = 230 && movecontact && time >=2 trigger4 = stateno = 240 && movecontact && time >=2 trigger5 = stateno = 210 && movecontact && time >=2 trigger6 = stateno = 400 && movecontact && time >=2 trigger7 = stateno = 410 && movecontact && time >=2 trigger8 = stateno = 430 && movecontact && time >=2 trigger9 = stateno = 440 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Stand Light Kick [State -1, Stand Light Kick] type = ChangeState value = 230 triggerall = !AILevel triggerall = command = "a" triggerall = command != "holddown" trigger1 = statetype = S trigger1 = ctrl trigger2 = stateno = 200 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Standing Medium Kick [State -1, Standing Medium Kick] type = ChangeState value = 240 triggerall = !AILevel triggerall = command = "b" triggerall = command != "holddown" trigger1 = statetype = S trigger1 = ctrl trigger2 = stateno = 200 && movecontact && time >=2 trigger3 = stateno = 210 && movecontact && time >=2 trigger4 = stateno = 230 && movecontact && time >=2 trigger5 = stateno = 400 && movecontact && time >=2 trigger6 = stateno = 410 && movecontact && time >=2 trigger7 = stateno = 430 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Standing Strong Kick [State -1, Standing Strong Kick] type = ChangeState value = 250 triggerall = !AILevel triggerall = command = "c" triggerall = command != "holddown" trigger1 = statetype = S trigger1 = ctrl trigger2 = stateno = 200 && movecontact && time >=2 trigger3 = stateno = 210 && movecontact && time >=2 trigger4 = stateno = 230 && movecontact && time >=2 trigger5 = stateno = 240 && movecontact && time >=2 trigger6 = stateno = 220 && movecontact && time >=2 trigger7 = stateno = 400 && movecontact && time >= 2 trigger8 = stateno = 410 && movecontact && time >= 2 trigger9 = stateno = 430 && movecontact && time >= 2 trigger10 = stateno = 440 && movecontact && time >= 2 ;--------------------------------------------------------------------------- ; Crouching Light Punch [State -1, Crouching Light Punch] type = ChangeState value = 400 triggerall = !AILevel triggerall = command = "x" triggerall = command = "holddown" trigger1 = statetype = C trigger1 = ctrl trigger2 = stateno = 200 && movecontact && time >=2 trigger3 = stateno = 230 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Crouching Medium Punch [State -1, Crouching Medium Punch] type = ChangeState value = 410 triggerall = !AILevel triggerall = command = "y" triggerall = command = "holddown" trigger1 = statetype = C trigger1 = ctrl trigger2 = stateno = 400 && movecontact trigger3 = stateno = 430 && movecontact trigger4 = stateno = 200 && movecontact && time >=2 trigger5 = stateno = 210 && movecontact && time >=2 trigger6 = stateno = 230 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Crouching Strong Punch [State -1, Crouching Strong Punch] type = ChangeState value = ifelse(p2bodydist X < 15,420,421) triggerall = !AILevel triggerall = command = "z" triggerall = command = "holddown" trigger1 = statetype = C trigger1 = ctrl trigger2 = stateno = 410 && movecontact trigger3 = stateno = 400 && movecontact trigger4 = stateno = 430 && movecontact trigger5 = stateno = 440 && movecontact trigger6 = stateno = 200 && movecontact && time >=2 trigger7 = stateno = 210 && movecontact && time >=2 trigger8 = stateno = 230 && movecontact && time >=2 trigger9 = stateno = 240 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Crouching Light Kick [State -1, Crouching Light Kick] type = ChangeState value = 430 triggerall = !AILevel triggerall = command = "a" triggerall = command = "holddown" trigger1 = statetype = C trigger1 = ctrl trigger2 = stateno = 400 && movecontact trigger3 = stateno = 200 && movecontact && time >=2 trigger4 = stateno = 230 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Crouching Medium Kick [State -1, Crouching Medium Kick] type = ChangeState value = 440 triggerall = !AILevel triggerall = command = "b" triggerall = command = "holddown" trigger1 = statetype = C trigger1 = ctrl trigger2 = stateno = 400 && movecontact trigger3 = stateno = 410 && movecontact trigger4 = stateno = 430 && movecontact trigger5 = stateno = 200 && movecontact && time >=2 trigger6 = stateno = 210 && movecontact && time >=2 trigger7 = stateno = 230 && movecontact && time >=2 trigger8 = stateno = 240 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Crouching Strong Kick [State -1, Crouching Strong Kick] type = ChangeState value = 450 triggerall = !AILevel triggerall = command = "c" triggerall = command = "holddown" trigger1 = statetype = C trigger1 = ctrl trigger2 = stateno = 400 && movecontact trigger3 = stateno = 410 && movecontact trigger4 = stateno = 430 && movecontact trigger5 = stateno = 440 && movecontact trigger6 = stateno = 200 && movecontact && time >=2 trigger7 = stateno = 210 && movecontact && time >=2 trigger8 = stateno = 230 && movecontact && time >=2 trigger9 = stateno = 240 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Jump Light Punch [State -1, Jump Light Punch] type = ChangeState value = 600 triggerall = !AILevel triggerall = command = "x" trigger1 = statetype = A trigger1 = ctrl ;--------------------------------------------------------------------------- ; Jump Medium Punch [State -1, Jump Medium Punch] type = ChangeState value = 610 triggerall = !AILevel triggerall = command = "y" trigger1 = statetype = A trigger1 = ctrl trigger2 = stateno = 600 && movecontact && time >=2 trigger3 = stateno = 630 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Jump Strong Punch [State -1, Jump Strong Punch] type = ChangeState value = 620 triggerall = !AILevel triggerall = command = "z" trigger1 = statetype = A trigger1 = ctrl trigger2 = stateno = 600 && movecontact && time >=2 trigger3 = stateno = 610 && movecontact && time >=2 trigger4 = stateno = 630 && movecontact && time >=2 trigger5 = stateno = 640 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Jump Light Kick [State -1, Jump Light Kick] type = ChangeState value = 630 triggerall = !AILevel triggerall = command = "a" trigger1 = statetype = A trigger1 = ctrl trigger2 = stateno = 600 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Jump Medium Kick [State -1, Jump Medium Kick] type = ChangeState value = 640 triggerall = !AILevel triggerall = command = "b" trigger1 = statetype = A trigger1 = ctrl trigger2 = stateno = 600 && movecontact && time >=2 trigger3 = stateno = 610 && movecontact && time >=2 trigger4 = stateno = 630 && movecontact && time >=2 ;--------------------------------------------------------------------------- ; Jump Strong Kick [State -1, Jump Strong Kick] type = ChangeState value = 650 triggerall = !AILevel triggerall = command = "c" trigger1 = statetype = A trigger1 = ctrl trigger2 = stateno = 600 && movecontact && time >=2 trigger3 = stateno = 610 && movecontact && time >=2 trigger4 = stateno = 630 && movecontact && time >=2 trigger5 = stateno = 640 && movecontact && time >=2 ;--------------------------------------------------------------------------- ;--------------------------------------------------------------------------- [State -1, Lie Down Forward Recovery Roll] type = ChangeState value = 910 triggerall = !AILevel triggerall = command = "holdfwd" triggerall = time = 1 trigger1 = stateno = 5120 trigger1 = alive = 1 ;--------------------------------------------------------------------------- [State -1, Lie Down Backward Recovery Roll] type = ChangeState value = 920 triggerall = !AILevel triggerall = command = "holdback" triggerall = time = 1 trigger1 = stateno = 5120 trigger1 = alive = 1
Back
Top