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 — SuperMario-R.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) ; buffer.time = time (optional) ; ; - 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. Each of these ; buttons or directions is referred to as a "symbol". ; 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 ; greater-than (>) - means there must be no other keys pressed or released ; between the previous and the current symbol. ; egs. command = a, >~a ;press a and release it without having hit ; ;or released any other keys in between ; You can combine the symbols: ; eg. command = ~30$D, a+b ;hold D, DB or DF for 30 ticks, release, ; ;then press a and b together ; ; Note: Successive direction symbols are always expanded in a manner similar ; to this example: ; command = F, F ; is expanded when MUGEN reads it, to become equivalent to: ; command = F, >~F, >F ; ; It is recommended that for most "motion" commads, eg. quarter-circle-fwd, ; you start off with a "release direction". This makes the command easier ; to do. ; ; - time (optional) ; Time allowed to do the command, given in game-ticks. The default ; value for this is set in the [Defaults] section below. A typical ; value is 15. ; ; - buffer.time (optional) ; Time that the command will be buffered for. If the command is done ; successfully, then it will be valid for this time. The simplest ; case is to set this to 1. That means that the command is valid ; only in the same tick it is performed. With a higher value, such ; as 3 or 4, you can get a "looser" feel to the command. The result ; is that combos can become easier to do because you can perform ; the command early. Attacks just as you regain control (eg. from ; getting up) also become easier to do. The side effect of this is ; that the command is continuously asserted, so it will seem as if ; you had performed the move rapidly in succession during the valid ; time. To understand this, try setting buffer.time to 30 and hit ; a fast attack, such as KFM's light punch. ; The default value for this is set in the [Defaults] section below. ; This parameter does not affect hold-only commands (eg. /F). It ; will be assumed to be 1 for those commands. ; ; 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 = 15 ; Default value for the "buffer.time" parameter of a Command. Minimum 1, ; maximum 30. command.buffer.time = 3 ;-| 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 = "Super Star" command = ~D,DF,$F,D,DF,$F,z time = 30 buffer.time = 3 [Command] name = "Mario Finale" command = ~D,DB,$B,D,DB,$B,z time = 30 buffer.time = 3 [Command] name = "Super Hammer" command = ~D,DF,$F,D,DF,$F,y time = 30 buffer.time = 3 [Command] name = "F.L.U.D.D" command = ~D,DB,$B,D,DB,$B,y time = 30 buffer.time = 3 [Command] name = "Super Flame" command = ~D,DF,$F,D,DF,$F,x time = 30 buffer.time = 3 [Command] name = "Galaxy Spin" command = ~D,DB,$B,D,DB,$B,x time = 30 buffer.time = 3 ;-| Special Motions |------------------------------------------------------ [Command] name = "Fireball_x" command = ~D, DF, $F, x time = 15 buffer.time = 3 [Command] name = "Fireball_y" command = ~D, DF, $F, y time = 15 buffer.time = 3 [Command] name = "Fireball_z" command = ~D, DF, $F, z time = 15 buffer.time = 3 [Command] name = "Fireball_EX" command = ~D, DF, $F, x+y time = 15 buffer.time = 3 [Command] name = "Fireball_EX" command = ~D, DF, $F, x+z time = 15 buffer.time = 3 [Command] name = "Fireball_EX" command = ~D, DF, $F, y+z time = 15 buffer.time = 3 [Command] name = "Tornado_x" command = ~D, DB, $B, x time = 15 buffer.time = 3 [Command] name = "Tornado_y" command = ~D, DB, $B, y time = 15 buffer.time = 3 [Command] name = "Tornado_z" command = ~D, DB, $B, z time = 15 buffer.time = 3 [Command] name = "Tornado_EX" command = ~D, DB, $B, x+y time = 15 buffer.time = 3 [Command] name = "Tornado_EX" command = ~D, DB, $B, x+z time = 15 buffer.time = 3 [Command] name = "Tornado_EX" command = ~D, DB, $B, y+z time = 15 buffer.time = 3 [Command] name = "SuperJumpPunch_x" command = ~F, D, $F, x time = 15 buffer.time = 3 [Command] name = "SuperJumpPunch_y" command = ~F, D, $F, y time = 15 buffer.time = 3 [Command] name = "SuperJumpPunch_z" command = ~F, D, $F, z time = 15 buffer.time = 3 [Command] name = "SuperJumpPunch_EX" command = ~F, D, $F, x+y time = 15 buffer.time = 3 [Command] name = "SuperJumpPunch_EX" command = ~F, D, $F, y+z time = 15 buffer.time = 3 [Command] name = "SuperJumpPunch_EX" command = ~F, D, $F, x+z time = 15 buffer.time = 3 [Command] name = "R-SuperJumpPunch_x" command = ~B, D, $B, x time = 15 buffer.time = 3 [Command] name = "R-SuperJumpPunch_y" command = ~B, D, $B, y time = 15 buffer.time = 3 [Command] name = "R-SuperJumpPunch_z" command = ~B, D, $B, z time = 15 buffer.time = 3 [Command] name = "R-SuperJumpPunch_EX" command = ~B, D, $B, x+y time = 15 buffer.time = 3 [Command] name = "R-SuperJumpPunch_EX" command = ~B, D, $B, y+z time = 15 buffer.time = 3 [Command] name = "R-SuperJumpPunch_EX" command = ~B, D, $B, x+z time = 15 buffer.time = 3 [Command] name = "GroundPound_x" command = ~D, D, x time = 15 buffer.time = 3 [Command] name = "GroundPound_y" command = ~D, D, y time = 15 buffer.time = 3 [Command] name = "GroundPound_z" command = ~D, D, z time = 15 buffer.time = 3 [Command] name = "GroundPound_EX" command = ~D, D, x+y time = 15 buffer.time = 3 [Command] name = "GroundPound_EX" command = ~D, D, y+z time = 15 buffer.time = 3 [Command] name = "GroundPound_EX" command = ~D, D, x+z time = 15 buffer.time = 3 [Command] name = "Cape_x" command = ~B, DB, D, DF, $F, x time = 24 buffer.time = 3 [Command] name = "Cape_y" command = ~B, DB, D, DF, $F, y time = 24 buffer.time = 3 [Command] name = "Cape_z" command = ~B, DB, D, DF, $F, z time = 24 buffer.time = 3 [Command] name = "Cape_EX" command = ~B, DB, D, DF, $F, x+y time = 24 buffer.time = 3 [Command] name = "Cape_EX" command = ~B, DB, D, DF, $F, y+z time = 24 buffer.time = 3 [Command] name = "Cape_EX" command = ~B, DB, D, DF, $F, x+z time = 24 buffer.time = 3 [Command] name = "R-Cape_x" command = ~F, DF, D, DB, $B, x time = 24 buffer.time = 3 [Command] name = "R-Cape_y" command = ~F, DF, D, DB, $B, y time = 24 buffer.time = 3 [Command] name = "R-Cape_z" command = ~F, DF, D, DB, $B, z time = 24 buffer.time = 3 [Command] name = "R-Cape_EX" command = ~F, DF, D, DB, $B, x+y time = 24 buffer.time = 3 [Command] name = "R-Cape_EX" command = ~F, DF, D, DB, $B, y+z time = 24 buffer.time = 3 [Command] name = "R-Cape_EX" command = ~F, DF, D, DB, $B, x+z time = 24 buffer.time = 3 [Command] name = "Dash Attack" ;Required (do not remove) command = ~F, >F, x+y time = 15 buffer.time = 3 [Command] name = "Dash Attack" ;Required (do not remove) command = ~F, >F, y+z time = 15 buffer.time = 3 [Command] name = "Dash Attack" ;Required (do not remove) command = ~F, >F, x+z time = 15 buffer.time = 3 ;-| Double Tap |----------------------------------------------------------- [Command] name = "FF" ;Required (do not remove) command = ~F, >F time = 5 buffer.time = 3 [Command] name = "BB" ;Required (do not remove) command = ~B, >B time = 5 buffer.time = 3 ;-| 2/3 Button Combination |----------------------------------------------- [Command] name = "recovery";Required (do not remove) command = x+y time = 1 [Command] name = "recovery";Required (do not remove) command = x+z time = 1 [Command] name = "recovery";Required (do not remove) command = y+z time = 1 ;-| Dir + Button |--------------------------------------------------------- [Command] name = "down_a" command = /$D,a time = 1 [Command] name = "down_b" command = /$D,b time = 1 ;-| Single Button |--------------------------------------------------------- [Command] name = "a" command = a time = 1 buffer.time = 3 [Command] name = "b" command = b time = 1 buffer.time = 3 [Command] name = "c" command = c time = 1 buffer.time = 3 [Command] name = "x" command = x time = 1 buffer.time = 3 [Command] name = "y" command = y time = 1 buffer.time = 3 [Command] name = "z" command = z time = 1 buffer.time = 3 [Command] name = "start" command = s time = 1 buffer.time = 3 ;-| 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 = "holda" command = /a time = 1 [Command] name = "holdb" command = /b time = 1 [Command] name = "holdc" command = /c time = 1 [Command] name = "holdx" command = /x time = 1 [Command] name = "holdy" command = /y time = 1 [Command] name = "holdz" command = /z time = 1 [Command] name = "holdstart" command = /s time = 1 [Command] name = "fwd" command = $F time = 1 [Command] name = "back" command = $B time = 1 [Command] name = "up" command = $U time = 1 [Command] name = "down" command = $D time = 1 [Command] name = "SuperJump" command = $D, $U buffer.time = 3 ;--------------------------------------------------------------------------- ; 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] ;============================================================================================== ; Start AI ;============================================================================================== ; Setup [state -1, AI Detect Projectile System] type = helper trigger1 = ailevel ;M.U.G.E.N 1.0+ trigger1 = !numhelper(33333333) name = "AI Detect Projectile System" ID = 33333333 stateno = 33333333 postype = p1 ownpal = 1 keyctrl = 0 size.xscale = 1.0 size.yscale = 1.0 supermovetime = 2147483647 pausemovetime = 2147483647 ignorehitpause = 1 [state -1, AI Blocking Helper] type = helper triggerall = ailevel trigger1 = !numhelper(15900) name = "AI Blocking Helper" ID = 15900 stateno = 15900 postype = p1 ownpal = 1 keyctrl = 0 supermovetime = 2147483647 pausemovetime = 2147483647 ignorehitpause = 1 [state -1, AI Memory Helper] type = helper triggerall = ailevel trigger1 = !numhelper(18000) name = "AI Memory Helper" ID = 18000 stateno = 18000 postype = p1 ownpal = 1 keyctrl = 0 supermovetime = 2147483647 pausemovetime = 2147483647 ignorehitpause = 1 [state -1, AI Memory Helper] type = helper triggerall = ailevel trigger1 = !numhelper(18100) name = "AI Right Bound" ID = 18100 stateno = 18100 pos = 0,0 ownpal = 1 keyctrl = 0 supermovetime = 2147483647 pausemovetime = 2147483647 ignorehitpause = 1 [state -1, AI Memory Helper] type = helper triggerall = ailevel trigger1 = !numhelper(18200) name = "AI Left Bound" ID = 18200 stateno = 18100 pos = 0,0 ownpal = 1 keyctrl = 0 supermovetime = 2147483647 pausemovetime = 2147483647 ignorehitpause = 1 [state -1, yaccel] type = varset trigger1 = fvar(18) != enemynear(var(58)),const(movement.yaccel) trigger1 = enemynear(var(58)),stateno != [5000,5210] trigger1 = enemynear(var(58)),vel y != 0 fv = 18 value = enemynear(var(58)),const(movement.yaccel) ignorehitpause = 1 [state -1, yaccel] type = varset trigger1 = fvar(18) != enemynear(var(58)),gethitvar(yaccel) trigger1 = enemynear(var(58)),stateno = [5000,5210] fv = 18 value = enemynear(var(58)),gethitvar(yaccel) ignorehitpause = 1 [state -1, yaccel] type = varset trigger1 = fvar(18) != 0 trigger1 = enemynear(var(58)),vel y = 0 fv = 18 value = 0 ignorehitpause = 1 [state -1, Ground Velocity] type = varset triggerall = fvar(17) != 0 trigger1 = !AILevel trigger2 = statetype = A trigger3 = (stateno != [100,101]) && stateno != 911 fvar(17) = 0 [state -1, Ground Velocity] type = varset triggerall = AILevel triggerall = statetype != A trigger1 = (stateno = [100,101]) || stateno = 911 trigger1 = vel x != 0 fvar(17) = (vel x * 0.85) [state -1, Enemy X-Velocity] type = varset triggerall = !AILevel trigger1 = fvar(35) != 0 fvar(35) = 0 [state -1, Enemy X-Velocity] type = varset triggerall = AILevel triggerall = !ishelper triggerall = facing != enemynear(var(58)),facing trigger1 = fvar(35) != enemynear(var(58)),vel x fvar(35) = enemynear(var(58)),vel x [state -1, Enemy X-Velocity] type = varset triggerall = AILevel triggerall = !ishelper triggerall = facing = enemynear(var(58)),facing trigger1 = fvar(35) != enemynear(var(58)),vel x fvar(35) = -enemynear(var(58)),vel x [State -3, Blocking Methods] type = VarSet triggerall = AILevel trigger1 = helper(15900),var(41) != 2 || !numhelper(15900) var(44) = 1 ignorehitpause = 1 [State -3, Blocking Methods] type = VarSet triggerall = AILevel triggerall = numhelper(15900) trigger1 = enemynear(var(58)),hitdefattr = A,AA,AP,AT || enemynear(var(58)),statetype = A trigger2 = PlayerIdExist(helper(33333333),var(4)) trigger2 = PlayerID(helper(33333333),var(4)), statetype = A trigger3 = PlayerIdExist(helper(33333333),var(4)) trigger3 = PlayerID(helper(33333333),var(4)), hitdefattr = A,AA,AP trigger4 = helper(15900),var(41) = 2 var(44) = 0 ignorehitpause = 1 [State -3, Blocking Methods] type = VarSet triggerall = AILevel triggerall = numhelper(15900) trigger1 = enemynear(var(58)),hitdefattr = C,AA,AP,AT || enemynear(var(58)),statetype = C 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 = helper(15900),var(41) = 1 var(44) = 1 ignorehitpause = 1 [State -3, Check Frame Advantage] type = VarSet triggerall = AILevel triggerall = var(46) > 0 trigger1 = enemynear(var(58)),stateno != var(45) trigger1 = 1 || var(45):= 0 var(46) = 0 [State -3, Check Frame Advantage] type = VarSet triggerall = AILevel && RoundState = 2 triggerall = enemynear(var(58)),movetype = A triggerall = enemynear(var(58)),movecontact triggerall = ctrl && enemynear(var(58)),ctrl = 0 trigger1 = 1 || var(45):= enemynear(var(58)),stateno var(46) = -(enemynear(var(58)),animtime) [State -1, Default Guarding Disabled] type = AssertSpecial trigger1 = AILevel flag = nostandguard flag2 = nocrouchguard flag3 = noairguard ignorehitpause = 1 [State -1, Default Walking Disabled] type = AssertSpecial trigger1 = AILevel flag = nowalk ignorehitpause = 1 ;============================================================================================== ; AI Tech / Getup ;============================================================================================== [State 5050, AI Fall Recovery] type = ChangeState triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = StateNo = 5050 triggerall = Vel Y > 0 triggerall = Pos Y >= Const(movement.air.gethit.groundrecover.ground.threshold) triggerall = alive triggerall = AILevel trigger1 = CanRecover value = 5200 ;HITFALL_RECOVER [State 5050, AI Fall Recovery] type = SelfState triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = StateNo = 5050 triggerall = helper(18000),fvar(25) >= 1 || time >= floor(30-(30*helper(18000),fvar(25))) || random <= 10 triggerall = alive triggerall = Vel Y > Const(movement.air.gethit.airrecover.threshold) triggerall = helper(18000),fvar(25) != 0 triggerall = helper(18000),fvar(25) >= 1 || random <= ceil(500*helper(18000),fvar(25)) triggerall = CanRecover trigger1 = fvar(0) >= 100 || (fvar(1) <= -100 && enemynear(var(58)),vel y > 0) || fvar(1) <= -150 trigger2 = enemynear(var(58)),ctrl = 0 trigger2 = fvar(0) >= 50 || (fvar(1) <= -50 && enemynear(var(58)),vel y > 0) || fvar(1) <= -100 trigger3 = enemynear(var(58)),ctrl = 0 trigger3 = enemynear(var(58)),stateno >= 200 trigger3 = enemynear(var(58)),animtime <= -30-1 value = 5210 [State 5050, AI Get Up From Knockdown] type = ChangeState value = 5120 triggerall = AILevel && RoundState = 2 && alive > 0 trigger1 = stateno = 5110 && time >= 0 ;============================================================================================== ; AI Combos ;============================================================================================== [State 0, AI Go for a Finisher] type = varset trigger1 = AILevel var(54) = (var(25) && (var(27)||power<500) && var(28)) [State 0, AI Enable Combo Movement] type = varset triggerall = var(49) > 0 trigger1 = enemynear(var(58)),movetype != H || (enemynear(var(58)),stateno = [2210,2211]) trigger2 = enemynear(var(58)),ctrl > 0 trigger3 = var(25) > 1 var(49) = 0 [State 0, AI Enable Combo Movement] type = varset triggerall = AILevel triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = enemynear(var(58)),movetype = H trigger1 = (enemynear(var(58)),stateno = [1025,1028]) || (enemynear(var(58)),stateno = [10270,10280]) || (enemynear(var(58)),stateno = [1425,1427]) trigger2 = enemynear(var(58)),stateno != 2210 trigger2 = enemynear(var(58)),hitfall = 1 trigger2 = enemynear(var(58)),canrecover = 0 var(49) = 1 [State -1, AI Safety Super Star] type = ChangeState value = 2500 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = power >= 3000 && !numhelper(3500) triggerall = var(49) <= 0 triggerall = enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A || (((stateno = [1100,1105]) || (stateno = 1200 || stateno = 1205 || stateno = 1210 || stateno = 1215 || stateno = 1220) || (stateno = [1300,1315]) || (stateno = 1420)) && moveguarded) || movereversed trigger1 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger2 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger3 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger4 = (stateno = 500 && (movecontact||movereversed)) trigger5 = (stateno = [1000,1005]) && var(37) trigger6 = (stateno = [1100,1105]) || (stateno = 1200 || stateno = 1205 || stateno = 1210 || stateno = 1215 || stateno = 1220) || (stateno = [1300,1315]) || (stateno = 1420) trigger6 = (movecontact||movereversed) trigger7 = stateno = 1315 && var(37) [State -1, AI Safety Super Flame] type = ChangeState value = 2000 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = power >= 1000 && !numhelper(3500) triggerall = inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A triggerall = enemynear(var(58)),ctrl = 0 triggerall = enemynear(var(58)),stateno != [0,199] triggerall = enemynear(var(58)),stateno != [2000,5999] triggerall = enemynear(var(58)),stateno != 5120 || enemynear(var(58)),animtime >= -6-1 triggerall = enemynear(var(58)),statetype != L || enemynear(var(58)),stateno != [700,703] triggerall = fvar(0) = [-50+floor(9*(fvar(35))),50+floor(9*(fvar(35)))] triggerall = fvar(1) >= -120-floor(9*(enemynear(var(58)),vel y)+(9*(9+1)/2)*fvar(18)) trigger1 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger2 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger3 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger4 = (stateno = 500 && (movecontact||movereversed)) trigger5 = (stateno = [1000,1005]) && var(37) trigger6 = (stateno = [1100,1105]) || (stateno = 1200 || stateno = 1205 || stateno = 1210 || stateno = 1215 || stateno = 1220) || (stateno = [1300,1315]) || (stateno = 1420) trigger6 = (movecontact||movereversed) trigger7 = stateno = 1315 && var(37) [State -1, AI Safety Galaxy Spin] type = ChangeState value = 2100 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = power >= 1000 && !numhelper(3500) triggerall = enemynear(var(58)),ctrl = 0 triggerall = enemynear(var(58)),movetype != H triggerall = enemynear(var(58)),statetype != L triggerall = fvar(0) = [-70+floor(2*(fvar(35))),70+floor(2*(fvar(35)))] triggerall = fvar(1) = [-60-floor(2*(enemynear(var(58)),vel y)+(2*(2+1)/2)*fvar(18)),60-floor(2*(enemynear(var(58)),vel y)+(2*(2+1)/2)*fvar(18))] triggerall = inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A trigger1 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger2 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger3 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger4 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) trigger5 = (stateno = [1000,1005]) && var(37) trigger6 = (stateno = [1050,1055]) && var(37) trigger7 = (stateno = [1100,1125]) || (stateno = [1200,1220]) || (stateno = [1300,1315]) || (stateno = [1330,1345]) || (stateno = [1400,1420]) trigger7 = (movecontact||movereversed) trigger8 = (stateno = 1315 || stateno = 1345) && var(37) [State -1, AI Safety Super Jump Punch] type = ChangeState value = var(55) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = ((stateno = [200,500]) && (movecontact||movereversed)) triggerall = inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A triggerall = enemynear(var(58)),ctrl = 0 triggerall = enemynear(var(58)),stateno != [0,199] triggerall = enemynear(var(58)),stateno != [2000,5999] triggerall = enemynear(var(58)),animtime <= -6 || enemynear(var(58)),statetype = A triggerall = !numhelper(3500) ; Low Opponents (Strong/EX) trigger1 = fvar(0) = [-10,65+floor(6*(fvar(35)))] trigger1 = fvar(1) >= -50-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)) trigger1 = var(55):= 1210+5*(power>=500&&random<=floor(power/3)) || 1 ; Air Opponents (EX) trigger2 = enemynear(var(58)),statetype = A trigger2 = power >= 500 && random <= floor(power/3) trigger2 = ((fvar(0) = [-10,90+floor(7*(fvar(35)))]) && (fvar(1) = [-90-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)),-10])) || ((fvar(0) = [90,170+floor(7*(fvar(35)))]) && (fvar(1) = [-170-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)),-90])) trigger2 = var(55):= 1215 || 1 ; Air Opponents (Medium) trigger3 = enemynear(var(58)),statetype = A trigger3 = ((fvar(0) = [-10,90+floor(7*(fvar(35)))]) && (fvar(1) = [-90-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)),-10])) trigger3 = var(55):= 1205 || 1 [State -1, SL Combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = (stateno = 200 || stateno = 201) && movecontact ; SL 1/2 to CM trigger1 = enemynear(var(58)),stateno = [120,159] trigger1 = enemynear(var(58)),statetype = S trigger1 = var(52):= 410 || 1 ; SL 1 to SLP 2 trigger2 = stateno = 200 trigger2 = var(52):= 201 || 1 ; SL 2 to SM trigger3 = stateno = 201 trigger3 = var(52):= 210 || 1 [State -1, CL Combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = stateno = 400 && movecontact ; CL to CL trigger1 = enemynear(var(58)),statetype != A && enemynear(var(58)),statetype != L trigger1 = fvar(0) <= 15+floor(3*(enemynear(var(58)),vel x)+floor(3*(fvar(17)))*facing*enemynear(var(58)),facing*-1) trigger1 = var(52):= 400 || 1 ; CL to SM trigger2 = enemynear(var(58)),statetype = A || enemynear(var(58)),statetype = L trigger2 = var(52):= 210 || 1 ; CL to CM trigger3 = var(52):= 410 || 1 [State -1, SM/CM Combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = (stateno = 210 || stateno = 410) && movecontact ; SM to CH trigger1 = enemynear(var(58)),stateno = [120,159] trigger1 = enemynear(var(58)),statetype = S trigger1 = var(52):= 420 || 1 ; SM to SH trigger2 = var(52):= 220 || 1 [State -1, Heavy Combos Finisher] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = (stateno = 220 || stateno = 420) && movecontact triggerall = var(54) > 0 ; Go for Finale Attempt trigger1 = power >= 3000 trigger1 = var(52):= 500 || 1 ; SH to Super Hammer or F.L.U.U.D trigger2 = power >= 2000 trigger2 = var(52):= cond(random <= 500, 2300, 2200) || 1 ; Go for Galaxy Spin Attempt trigger3 = power >= 1000 trigger3 = var(52):= 500 || 1 ; SH to EX Coin Punch trigger4 = power >= 500 trigger4 = var(52):= 1215 || 1 ; SH to Coin Punch trigger5 = var(52):= 1210 || 1 [State -1, Heavy Combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = (stateno = 220 || stateno = 420) && movecontact triggerall = var(54) = 0 ; SH to EX Cape trigger1 = moveguarded trigger1 = power >= 500 trigger1 = var(52):= 1315 || 1 ; SH to Launcher trigger2 = movehit trigger2 = fvar(0) <= 50+floor(7*(enemynear(var(58)),vel x)+floor(7*(fvar(17)))*facing*enemynear(var(58)),facing*-1) trigger2 = var(52):= 500 || 1 ; SH to Coin Punch trigger3 = movehit trigger3 = fvar(0) = [50,65] trigger3 = var(52):= 1210 || 1 ; SH to EX Fireball trigger4 = power >= 500 trigger4 = random <= floor(power/3) trigger4 = var(52):= 1005 || 1 ; SH to Fireball trigger5 = var(52):= 1002 || 1 [State -1, Special Cancel Coin Punches] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = ((stateno = 1201 || stateno = 1206 || stateno = 1211) && time >= 5) || (stateno = 1216 && time >= 7) triggerall = enemynear(var(58)),movetype = H triggerall = movecontact ; Mario Finale trigger1 = power >= 3000 trigger1 = var(52):= 2400 || 1 ; F.L.U.U.D trigger2 = power >= 2000 trigger2 = var(52):= 2300 || 1 ; Galaxy Spin trigger3 = movehit trigger3 = power >= 1000 trigger3 = var(52):= 2100 || 1 [State -1, Special Cancel Projectiles] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = (stateno = [1000,1055]) || (stateno = 1315 || stateno = 1345) triggerall = enemynear(var(58)),movetype = H triggerall = var(37) > 0 ; Mario Finale trigger1 = power >= 3000 trigger1 = var(52):= 2400 || 1 ; F.L.U.U.D trigger2 = power >= 2000 trigger2 = var(52):= 2300 || 1 ; Galaxy Spin trigger3 = enemynear(var(58)),stateno != [120,159] trigger3 = fvar(0) = [-70+floor(2*(enemynear(var(58)),vel x)*facing*enemynear(var(58)),facing*-1),70+floor(2*(enemynear(var(58)),vel x)*facing*enemynear(var(58)),facing*-1)] trigger3 = fvar(1) = [-60-floor(2*(enemynear(var(58)),vel y)+(2*(2+1)/2)*fvar(18)),60-floor(2*(enemynear(var(58)),vel y)+(2*(2+1)/2)*fvar(18))] trigger3 = power >= 1000 trigger3 = var(52):= 2100 || 1 [State -1, AI Crouching Light Punch] type = ChangeState value = 600 triggerall = AILevel && RoundState = 2 triggerall = statetype = A && ctrl triggerall = fvar(0) = [-10,35+floor(4*(enemynear(var(58)),vel x)+floor(4*(vel x)))] triggerall = fvar(1) = [-35-floor(4*(enemynear(var(58)),vel y)+(4*(4+1)/2)*fvar(18)-floor(4*vel y)-(4*(4+1)/2)*0.47),35-floor(4*(enemynear(var(58)),vel y)+(4*(4+1)/2)*fvar(18)-floor(4*vel y)-(4*(4+1)/2)*0.47)] triggerall = pos Y + 4 * vel y + const(movement.yaccel)*4*8/2 < 0 trigger1 = stateno = [4000,4001] [State -1, Air Combos] type = ChangeState value = var(52) triggerall = AILevel && RoundState = 2 triggerall = statetype = A triggerall = movecontact ; Normals trigger1 = stateno = 600 || stateno = 610 trigger1 = var(52):= stateno+10 || 1 ; Super trigger2 = stateno = 620 trigger2 = var(54) > 0 trigger2 = enemynear(var(58)),statetype = A trigger2 = power >= 1000 trigger2 = var(52):= cond(power >= 3000 && frontedgedist >= 50, 2400, cond(power >= 2000, 2300, 2100)) || 1 ; EX Tornado trigger3 = stateno = 620 trigger3 = !var(27) trigger3 = enemynear(var(58)),statetype = A trigger3 = power >= 500 trigger3 = var(52):= 1125 || 1 ; Ground Pound trigger4 = stateno = 620 trigger4 = !var(28) trigger4 = enemynear(var(58)),statetype = A trigger4 = var(52):= 1410+5*(power>=500&&random<=floor(power/3)) || 1 ; Special trigger5 = stateno = 620 trigger5 = var(52):= 700 || 1 ; Launcher Setup [State -1, Launcher Follow-Up] type = ChangeState value = 500 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = ctrl || stateno = 22 || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),movetype = H triggerall = enemynear(var(58)),statetype != L triggerall = enemynear(var(58)),stateno != [120,159] triggerall = fvar(0) = [-30,30+floor(7*(fvar(35))+floor(7*(fvar(17))))] triggerall = fvar(1) >= -70-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)) trigger1 = var(49) > 0 [State -1, Crouch Medium Kick] type = ChangeState value = 410 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || stateno = 22 || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),stateno != 0 triggerall = enemynear(var(58)),stateno != 5120 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [21,35+floor(6*(fvar(35)))+floor(6*(fvar(17)))] triggerall = fvar(1) >= 0-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)) || enemynear(var(58)),statetype = L trigger1 = enemynear(var(58)),statetype = L trigger1 = var(49) > 0 [State -1, Crouch Light Kick] type = ChangeState value = 400 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || stateno = 22 || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),stateno != 0 triggerall = enemynear(var(58)),stateno != 5120 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [-10,20+floor(3*(fvar(35))+floor(3*(fvar(17))))] triggerall = fvar(1) >= 0-floor(3*(enemynear(var(58)),vel y)+(3*(3+1)/2)*fvar(18)) || enemynear(var(58)),statetype = L trigger1 = enemynear(var(58)),statetype = L trigger1 = var(49) > 0 [State -1, AI Walking] type = ChangeState value = 22 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = ctrl || stateno = 100 triggerall = fvar(0) = [-10,10] trigger1 = enemynear(var(58)),stateno != 703 || var(25) <= 1 trigger1 = enemynear(var(58)),statetype != L trigger1 = var(49) > 0 [State -1, AI Running] type = ChangeState value = 100 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = ctrl || stateno = 100 triggerall = stateno != 100 triggerall = fvar(0) > 10 trigger1 = enemynear(var(58)),stateno != 703 || var(25) <= 1 trigger1 = var(49) > 0 ;============================================================================================== ; AI Tick Throw ;============================================================================================== [State -1, AI Throw] type = ChangeState value = 800 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = enemynear(var(58)),gethitvar(hittime) < 0 triggerall = enemynear(var(58)),statetype != L && ((enemynear(var(58)),statetype != A && statetype != A) || (enemynear(var(58)),statetype = A && statetype = A)) triggerall = enemynear(var(58)),prevstateno != [5200,5210] triggerall = enemynear(var(58)),hitdefattr != SCA,HA,HP,HT triggerall = helper(18000),fvar(9) <= 0 triggerall = fvar(0) = [-15,15+(10*(stateno = 100 || stateno = 110))+floor(fvar(17))] triggerall = fvar(1) = [-35,35] trigger1 = stateno = 23 [State -1, AI Walking (tick throw)] type = ChangeState value = 23 triggerall = AILevel && RoundState = 2 triggerall = statetype != A triggerall = stateno != [100,101] triggerall = fvar(0) = [-10,40] triggerall = !inguarddist triggerall = ctrl trigger1 = enemynear(var(58)),statetype != A trigger1 = enemynear(var(58)),stateno = [120,159] trigger1 = enemynear(var(58)),gethitvar(hittime) > 0 ctrl = 0 ;============================================================================================== ; Anti-Projectile Options ;============================================================================================== [State -1, AI Cape] type = ChangeState value = var(55) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 triggerall = enemynear(var(58)),statetype != L || enemynear(var(58)),stateno = 5120 triggerall = fvar(0) >= 50 triggerall = playeridexist(helper(33333333),var(4)) triggerall = cond(numhelper(33333333),helper(33333333), cond(1, var(20) := 1, 0), 0) ; the 15 in "var(20) := 15" represents the 15th time this trigger was used. the number should be different everytime this is added/used. triggerall = cond(helper(33333333),numexplod((helper(33333333),var(20)*100000000)+PlayerID(helper(33333333),var(4)),stateno) = 0, 1, helper(33333333),numexplod((helper(33333333),var(20)*100000000)+abs(floor(PlayerID(helper(33333333),var(4)),vel x))) = 0) ; EX Cape trigger1 = power >= 500 trigger1 = fvar(1) = [-150,150] trigger1 = playerid(helper(33333333),var(4)), pos y = [-150,150] trigger1 = (((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) - const(size.ground.front) - PlayerID(helper(33333333),var(4)),const(size.ground.front)) / (PlayerId(helper(33333333),var(4)),vel x) = [5,30] trigger1 = random <= floor(power/2) || prevstateno = 951 trigger1 = var(55):= 1315+(30*(statetype = A)) || 1 ; Strong Cape trigger2 = fvar(1) = [-100,100] trigger2 = playerid(helper(33333333),var(4)), pos y = [-100,100] trigger2 = (((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) - const(size.ground.front) - PlayerID(helper(33333333),var(4)),const(size.ground.front)) / (PlayerId(helper(33333333),var(4)),vel x) = [9,13] trigger2 = var(55):= 1310+(30*(statetype = A)) || 1 ; Medium Cape trigger3 = fvar(1) = [-100,100] trigger3 = playerid(helper(33333333),var(4)), pos y = [-100,100] trigger3 = (((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) - const(size.ground.front) - PlayerID(helper(33333333),var(4)),const(size.ground.front)) / (PlayerId(helper(33333333),var(4)),vel x) = [7,11] trigger3 = var(55):= 1305+(30*(statetype = A)) || 1 ; Light Cape trigger4 = fvar(1) = [-100,100] trigger4 = playerid(helper(33333333),var(4)), pos y = [-100,100] trigger4 = (((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) - const(size.ground.front) - PlayerID(helper(33333333),var(4)),const(size.ground.front)) / (PlayerId(helper(33333333),var(4)),vel x) = [5,9] trigger4 = var(55):= 1300+(30*(statetype = A)) || 1 [State -1, AI Roll past Projectile] type = ChangeState value = 900 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = ctrl || (stateno = [21,23]) || (stateno = [100,101]) || (stateno = [120,149]) triggerall = enemynear(var(58)),ctrl = 0 || fvar(0) >= 140 triggerall = enemynear(var(58)),animtime <= -10 || fvar(0) >= 140 triggerall = fvar(0) >= 50 trigger1 = PlayerIdExist(helper(33333333),var(4)) trigger1 = cond(numhelper(33333333),helper(33333333), cond(1, var(20) := 2, 0), 0) ; the 15 in "var(20) := 15" represents the 15th time this trigger was used. the number should be different everytime this is added/used. trigger1 = cond(helper(33333333),numexplod((helper(33333333),var(20)*100000000)+PlayerID(helper(33333333),var(4)),stateno) = 0, 1, helper(33333333),numexplod((helper(33333333),var(20)*100000000)+abs(floor(PlayerID(helper(33333333),var(4)),vel x))) = 0) 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 [State -1, AI Jump over Projectile (Neu Jump)] type = ChangeState value = 43 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = ctrl || (stateno = [21,23]) || stateno = 100 || (stateno = [120,149]) triggerall = PlayerIdExist(helper(33333333),var(4)) ;enemy projectile exists triggerall = PlayerID(helper(33333333),var(4)), vel x != 0 ; Avoid "Division by Zero" debug overflow triggerall = PlayerID(helper(33333333),var(4)), pos y >= -100 || PlayerID(helper(33333333),var(4)), vel y > 0 ; Avoid jumping over projectiles that are to high. 100 = char height triggerall = PlayerID(helper(33333333),var(4)), movetype = A triggerall = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x ) = floor(abs(const(velocity.jump.y)) / const(movement.yaccel)) triggerall = cond(numhelper(33333333),helper(33333333), cond(1, var(20) := 3, 0), 0) ; the 15 in "var(20) := 15" represents the 15th time this trigger was used. the number should be different everytime this is added/used. triggerall = cond(helper(33333333),numexplod((helper(33333333),var(20)*100000000)+PlayerID(helper(33333333),var(4)),stateno) = 0, 1, helper(33333333),numexplod((helper(33333333),var(20)*100000000)+abs(floor(PlayerID(helper(33333333),var(4)),vel x))) = 0) trigger1 = random <= 500 [State -1, AI Jump over Projectile (Fwd Jump)] type = ChangeState value = 42 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = ctrl || (stateno = [21,23]) || stateno = 100 || (stateno = [120,149]) triggerall = PlayerIdExist(helper(33333333),var(4)) ;enemy projectile exists triggerall = PlayerID(helper(33333333),var(4)), vel x != 0 ; Avoid "Division by Zero" debug overflow triggerall = PlayerID(helper(33333333),var(4)), pos y >= -100 || PlayerID(helper(33333333),var(4)), vel y > 0 ; Avoid jumping over projectiles that are to high. 100 = char height triggerall = PlayerID(helper(33333333),var(4)), movetype = A triggerall = cond(numhelper(33333333),helper(33333333), cond(1, var(20) := 4, 0), 0) ; the 15 in "var(20) := 15" represents the 15th time this trigger was used. the number should be different everytime this is added/used. triggerall = cond(helper(33333333),numexplod((helper(33333333),var(20)*100000000)+PlayerID(helper(33333333),var(4)),stateno) = 0, 1, helper(33333333),numexplod((helper(33333333),var(20)*100000000)+abs(floor(PlayerID(helper(33333333),var(4)),vel x))) = 0) trigger1 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/2) / const(movement.yaccel))) trigger2 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.9) / const(movement.yaccel))) trigger3 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.8) / const(movement.yaccel))) trigger4 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.7) / const(movement.yaccel))) trigger5 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.6) / const(movement.yaccel))) trigger6 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.5) / const(movement.yaccel))) trigger7 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.4) / const(movement.yaccel))) trigger8 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.3) / const(movement.yaccel))) trigger9 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.2) / const(movement.yaccel))) trigger10 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)/1.1) / const(movement.yaccel))) trigger11 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) * abs(const(velocity.jump.fwd.x)) / const(movement.yaccel))) trigger12 = ceil(((PlayerID(helper(33333333),var(4)), pos x - pos x )* facing) / PlayerID(helper(33333333),var(4)), vel x) = floor(abs((const(velocity.jump.y)) / const(movement.yaccel))) ;============================================================================================== ; AI General ;============================================================================================== ; AI Supers [State -1, AI Super Star] type = ChangeState value = 2500 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = power >= 3000 && !numhelper(3500) triggerall = enemynear(var(58)),movetype != H || enemynear(var(58)),statetype = L || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) triggerall = (enemynear(var(58)),stateno != [120,159]) || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) triggerall = var(25) > 1 || (enemynear(var(58)),stateno != [701,703]) || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) triggerall = var(49) <= 0 || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) trigger1 = random <= (1 - (((Life*0.1)/(LifeMax*0.1))))*1000 || life < (lifemax*0.5 || 250) || enemynear(var(58)),life-250 >= life trigger2 = enemynear(var(58)),hitdefattr = SCA,HA,HP,HT [State -1, Mario Finale] type = ChangeState value = 2400 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 triggerall = power >= 3000 && !numhelper(3500) triggerall = enemynear(var(58)),statetype != L || (enemynear(var(58)),stateno = 5120 && enemynear(var(58)),animtime <= -(16+((fvar(0))/14))) || (enemynear(var(58)),stateno = 703 && var(25) > 1) triggerall = enemynear(var(58)),movetype != H || enemynear(var(58)),statetype = L || (enemynear(var(58)),stateno = [120,159]) triggerall = enemynear(var(58)),stateno != 5300 && enemynear(var(58)),anim != 5300 triggerall = fvar(0) >= 0+floor(5*(fvar(35))) triggerall = fvar(1) = [-180-floor(5*(enemynear(var(58)),vel y)+(5*(5+1)/2)*fvar(18)),180-floor(5*(enemynear(var(58)),vel y)+(5*(5+1)/2)*fvar(18))] triggerall = var(49) <= 0 || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) trigger1 = random <= floor(fvar(0)*2) trigger2 = enemynear(var(58)),stateno != [0,99] trigger2 = enemynear(var(58)),stateno != [120,159] trigger2 = enemynear(var(58)),ctrl = 0 trigger2 = random <= (100 + (250 *(inguarddist || helper(15900),inguarddist)))+floor(fvar(0)*2) trigger3 = (enemynear(var(58)),stateno = 5120 && enemynear(var(58)),animtime <= -(16+((fvar(0))/14))) || (enemynear(var(58)),stateno = 703 && var(25) > 1) trigger3 = random <= (100+floor(fvar(0)*2)) [State -1, F.L.U.D.D] type = ChangeState value = 2300 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 triggerall = power >= 2000 && !numhelper(3500) triggerall = enemynear(var(58)),movetype != H || (stateno != 4001 && (enemynear(var(58)),stateno != [1425,1427]) && (enemynear(var(58)),stateno != [1025,1028]) && (enemynear(var(58)),stateno != [10270,10280])) triggerall = enemynear(var(58)),statetype != L || (enemynear(var(58)),stateno = 5120 && enemynear(var(58)),animtime >= -5-1) triggerall = fvar(0) >= 0 triggerall = fvar(1) = [-100-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)),50-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18))] triggerall = var(49) <= 0 || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) ; Random Usage trigger1 = enemynear(var(58)),ctrl = 0 trigger1 = enemynear(var(58)),stateno != [0,99] trigger1 = enemynear(var(58)),stateno != [120,159] trigger1 = random <= floor((fvar(7) * 0.1)) trigger2 = enemynear(var(58)),vel x*facing*enemynear(var(58)),facing*-1 < 0 trigger2 = random <= (100+(100*(enemynear(var(58)),ctrl = 0))+(100*(enemynear(var(58)),vel x*facing*enemynear(var(58)),facing*-1 < const(velocity.run.back.x))))+floor((fvar(7)*0.25)) trigger3 = fvar(0) >= 70 trigger3 = random <= (250 + (250 * (enemynear(var(58)),ctrl = 0)))+floor((fvar(7)*0.25)) ; Counter from Afar trigger4 = fvar(0) >= 70 trigger4 = enemynear(var(58)),stateno != 0 trigger4 = helper(18000),var(0) >= 0 || helper(18000),fvar(8) > 0 || var(46) > 0 trigger5 = fvar(0) >= 70 trigger5 = enemynear(var(58)),stateno != 0 trigger5 = enemynear(var(58)),stateno = helper(18000),var(58) trigger5 = enemynear(var(58)),time <= helper(18000),var(59) [State -1, AI Galaxy Spin] type = ChangeState value = 2100 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = ctrl && statetype = A || (stateno = [110,115]) triggerall = power >= 1000 && !numhelper(3500) triggerall = enemynear(var(58)),ctrl = 0 triggerall = enemynear(var(58)),stateno != [0,99] triggerall = enemynear(var(58)),stateno != [120,159] triggerall = enemynear(var(58)),movetype != H triggerall = enemynear(var(58)),statetype != L triggerall = var(49) <= 0 || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) triggerall = fvar(0) = [-70+floor(2*((fvar(35)))),70+floor(2*((fvar(35))))] triggerall = fvar(1) = [-60-floor(2*(enemynear(var(58)),vel y)+(2*(2+1)/2)*fvar(18)),60-floor(2*(enemynear(var(58)),vel y)+(2*(2+1)/2)*fvar(18))] trigger1 = random <= (250 + (250 * (enemynear(var(58)),backedgedist <= 50 || enemynear(var(58)),frontedgedist <= 50 || enemynear(var(58)),animtime <= -10))) trigger2 = inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A trigger2 = random <= (500 + (500 * (enemynear(var(58)),backedgedist <= 50 || enemynear(var(58)),frontedgedist <= 50 || enemynear(var(58)),animtime <= -10))) [State -1, AI Super Flame] type = ChangeState value = 2000 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = power >= 1000 && !numhelper(3500) triggerall = enemynear(var(58)),ctrl = 0 triggerall = enemynear(var(58)),stateno != [0,159] triggerall = enemynear(var(58)),stateno != 5120 || enemynear(var(58)),animtime >= -6-1 triggerall = enemynear(var(58)),statetype != L || enemynear(var(58)),stateno != [700,703] triggerall = var(49) <= 0 || (inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A) triggerall = fvar(0) = [-50+floor(9*(fvar(35))),50+floor(9*(fvar(35)))] triggerall = fvar(1) >= -200-floor(9*(enemynear(var(58)),vel y)+(9*(9+1)/2)*fvar(18)) trigger1 = random <= (250 + (250 * (enemynear(var(58)),backedgedist <= 50 || enemynear(var(58)),frontedgedist <= 50 || enemynear(var(58)),animtime <= -10))) trigger2 = inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A trigger2 = random <= (500 + (500 * (enemynear(var(58)),backedgedist <= 50 || enemynear(var(58)),frontedgedist <= 50 || enemynear(var(58)),animtime <= -10))) ; Reversal States [State -1, AI Super Jump Punch] type = ChangeState value = var(55) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),ctrl = 0 triggerall = inguarddist || helper(15900),inguarddist || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT || enemynear(var(58)),movetype = A triggerall = enemynear(var(58)),stateno != [0,199] triggerall = enemynear(var(58)),stateno != [2000,5999] triggerall = enemynear(var(58)),animtime <= -6-1 || enemynear(var(58)),statetype = A triggerall = !numhelper(3500) ; Low Opponents (Strong/EX) trigger1 = fvar(0) = [-10,65+floor(6*(fvar(35)))] trigger1 = fvar(1) >= -50-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)) trigger1 = var(55):= 1210+5*(power>=500&&random<=floor(power/3)) || 1 ; Air Opponents (EX) trigger2 = enemynear(var(58)),statetype = A trigger2 = power >= 500 && random <= floor(power/3) trigger2 = ((fvar(0) = [-10,90+floor(7*(fvar(35)))]) && (fvar(1) = [-90-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)),-10])) || ((fvar(0) = [90,170+floor(7*(fvar(35)))]) && (fvar(1) = [-170-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)),-90])) trigger2 = var(55):= 1215 || 1 ; Air Opponents (Medium) trigger3 = enemynear(var(58)),statetype = A trigger3 = ((fvar(0) = [-10,90+floor(7*(fvar(35)))]) && (fvar(1) = [-90-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)),-10])) trigger3 = var(55):= 1205 || 1 [State -1, Launcher] type = ChangeState value = 500 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),statetype = A triggerall = enemynear(var(58)),stateno != [120,159] triggerall = fvar(0) = [-30,30+floor(7*(fvar(35)))+floor(7*(fvar(17)))] triggerall = fvar(1) >= -70-floor(7*(enemynear(var(58)),vel y)+(7*(7+1)/2)*fvar(18)) trigger1 = random <= 500 || (enemynear(var(58)),stateno = [5200,5210]) trigger2 = enemynear(var(58)),ctrl = 0 trigger2 = (enemynear(var(58)),statetype = A && (enemynear(var(58)),movetype = A || inguarddist || helper(15900),inguarddist)) || enemynear(var(58)),hitdefattr = A,AA,AT,AP ; Counter States [State -1, Stand Light Punch] type = ChangeState value = 220 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),statetype != L || helper(18000),fvar(11) >= -10 triggerall = enemynear(var(58)),stateno != 0 triggerall = enemynear(var(58)),stateno != [120,159] triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [41,93+floor(10*(fvar(35)))+floor(10*(fvar(17)))] triggerall = fvar(1) >= -50-floor(10*(enemynear(var(58)),vel y)+(10*(10+1)/2)*fvar(18)) triggerall = random <= 500 trigger1 = enemynear(var(58)),animtime <= -9-1 trigger1 = helper(18000),var(0) >= 0 || helper(18000),var(5) > 0 trigger2 = enemynear(var(58)),stateno = helper(18000),var(58) trigger2 = enemynear(var(58)),time <= helper(18000),var(59)-9 [State -1, Crouch Medium Kick] type = ChangeState value = 410 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),stateno != 0 triggerall = enemynear(var(58)),stateno != 5120 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [21,35+floor(6*(fvar(35)))+floor(6*(fvar(17)))] triggerall = fvar(1) >= 0-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)) || enemynear(var(58)),statetype = L triggerall = random <= 500 trigger1 = helper(18000),var(0) >= 0 || helper(18000),var(5) > 0 trigger2 = enemynear(var(58)),stateno = helper(18000),var(58) trigger2 = enemynear(var(58)),time <= helper(18000),var(59)-5 [State -1, Stand Light Punch] type = ChangeState value = 210 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),statetype != L || helper(18000),fvar(11) >= -6 triggerall = enemynear(var(58)),stateno != 0 triggerall = enemynear(var(58)),stateno != [120,159] triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [21,40+floor(6*(fvar(35))+floor(6*(fvar(17))))] triggerall = fvar(1) >= -25-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)) trigger1 = helper(18000),var(0) >= 0 || helper(18000),var(5) > 0 trigger2 = enemynear(var(58)),stateno = helper(18000),var(58) trigger2 = enemynear(var(58)),time <= helper(18000),var(59)-5 [State -1, Crouch Light Kick] type = ChangeState value = 400 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),stateno != 0 triggerall = enemynear(var(58)),stateno != 5120 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [-10,20+floor(3*(fvar(35))+floor(3*(fvar(17))))] triggerall = fvar(1) >= 0-floor(3*(enemynear(var(58)),vel y)+(3*(3+1)/2)*fvar(18)) || enemynear(var(58)),statetype = L triggerall = random <= 500 trigger1 = helper(18000),var(0) >= 0 || helper(18000),var(5) > 0 trigger2 = enemynear(var(58)),stateno = helper(18000),var(58) trigger2 = enemynear(var(58)),time <= helper(18000),var(59)-2 [State -1, Stand Light Punch] type = ChangeState value = 200 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),statetype != L || helper(18000),fvar(11) >= -4 triggerall = enemynear(var(58)),stateno != 0 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [-10,20+floor(4*(fvar(35))+floor(4*(fvar(17))))] triggerall = fvar(1) = [-35-floor(4*(enemynear(var(58)),vel y)+(4*(4+1)/2)*fvar(18)),0] trigger1 = helper(18000),var(0) >= 0 || helper(18000),var(5) > 0 trigger2 = enemynear(var(58)),stateno = helper(18000),var(58) trigger2 = enemynear(var(58)),time <= helper(18000),var(59)-3 ; Regular States [State -1, AI Air Fireballs] type = ChangeState value = var(55) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype = A && ctrl || (stateno = [110,115]) triggerall = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 triggerall = enemynear(var(58)),statetype != L || (enemynear(var(58)),stateno = 5120 && enemynear(var(58)),animtime <= -(16+((fvar(0))/14))) || (enemynear(var(58)),stateno = 703 && var(25) > 1) triggerall = enemynear(var(58)),movetype != H || enemynear(var(58)),statetype = L || (enemynear(var(58)),stateno = [120,159]) triggerall = enemynear(var(58)),stateno != 5300 && enemynear(var(58)),anim != 5300 triggerall = fvar(0) >= 50 triggerall = fvar(1) >= -20 triggerall = var(36) < 2 && var(49) <= 0 triggerall = random <= 100+floor(fvar(7)*0.5)+100*(enemynear(var(58)),statetype = L) ; Heavy trigger1 = fvar(0) >= 140 trigger1 = var(55):= 1052 || 1 ; Medium/Light trigger2 = var(55):= 1051-1*(enemynear(var(58)),statetype = L || enemynear(var(58)),backedgedist <= 30) || 1 [State -1, AI EX Fireball] type = ChangeState value = 1005 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 triggerall = enemynear(var(58)),statetype != L || (enemynear(var(58)),stateno = 5120 && enemynear(var(58)),animtime <= -(16+((fvar(0))/14))) || (enemynear(var(58)),stateno = 703 && var(25) > 1) triggerall = enemynear(var(58)),movetype != H || enemynear(var(58)),statetype = L || (enemynear(var(58)),stateno = [120,159]) triggerall = enemynear(var(58)),stateno != 40 && enemynear(var(58)),anim != 40 triggerall = enemynear(var(58)),stateno != 5300 && enemynear(var(58)),anim != 5300 triggerall = !numhelper(1003) && var(49) <= 0 triggerall = fvar(1) >= -40-floor(13*(enemynear(var(58)),vel y)+(13*(13+1)/2)*fvar(18)) triggerall = power >= 500 trigger1 = fvar(0) >= 70+floor(13*(fvar(17))) trigger1 = random <= (50 + (50 * (enemynear(var(58)),statetype = L)) - 25 * (stateno = 100 || stateno = 911))+floor(fvar(0)*0.25) trigger2 = fvar(0) >= 50 trigger2 = enemynear(var(58)),statetype = L || (enemynear(var(58)),stateno = [5200,5210]) trigger2 = random <= (100 + (100 * (enemynear(var(58)),statetype = L)))+floor(fvar(0)*0.25) [State -1, AI Fireballs] type = ChangeState value = var(55) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 triggerall = enemynear(var(58)),statetype != L || (enemynear(var(58)),stateno = 5120 && enemynear(var(58)),animtime <= -(16+((fvar(0))/14))) || (enemynear(var(58)),stateno = 703 && var(25) > 1) triggerall = enemynear(var(58)),movetype != H || enemynear(var(58)),statetype = L || (enemynear(var(58)),stateno = [120,159]) triggerall = enemynear(var(58)),stateno != 40 && enemynear(var(58)),anim != 40 triggerall = enemynear(var(58)),stateno != 5300 && enemynear(var(58)),anim != 5300 triggerall = fvar(0) >= 70+floor(13*(fvar(17))) triggerall = fvar(1) >= -20 triggerall = var(36) < 2 && var(49) <= 0 triggerall = random <= (100 + (100 * (enemynear(var(58)),statetype = L)) - 50 * (stateno = 100 || stateno = 911))+floor(fvar(0)*0.25) ; Heavy trigger1 = fvar(0) >= 140 trigger1 = var(55):= 1002 || 1 ; Medium/Light trigger2 = var(55):= 1001-1*(enemynear(var(58)),statetype = L || enemynear(var(58)),backedgedist <= 30) || 1 [State -1, AI Throw] type = ChangeState value = 800 + 30 * (statetype = A) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 triggerall = enemynear(var(58)),gethitvar(hittime) < 0 || ((enemynear(var(58)),stateno = [150,159]) && statetype = A) triggerall = enemynear(var(58)),statetype != L && ((enemynear(var(58)),statetype != A && statetype != A) || (enemynear(var(58)),statetype = A && statetype = A)) triggerall = enemynear(var(58)),prevstateno != [5200,5210] triggerall = enemynear(var(58)),hitdefattr != SCA,HA,HP,HT triggerall = helper(18000),fvar(9) <= 0 triggerall = fvar(0) = [-15,15+(10*(stateno = 100 || stateno = 110))+floor(fvar(17))] triggerall = fvar(1) = [-35,35] trigger1 = random <= (250 + (250 * (!enemynear(var(58)),ctrl || enemynear(var(58)),vel x >= enemynear(var(58)),const(velocity.run.fwd.x)) * cond((backedgedist <= 35 || frontedgedist <= 35 || (enemynear(var(58)),prevstateno = [120,159]) || enemynear(var(58)),facing = facing), 2, 1))) || fvar(0) <= 0 trigger2 = enemynear(var(58)),stateno = [120,149] trigger3 = enemynear(var(58)),movetype = A || var(46) > 0 trigger4 = numhelper(3500) [State -1, Jump Light Attack] type = ChangeState value = 600 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype = A && ctrl || (stateno = [110,115]) triggerall = numhelper(3500) > 0 || enemynear(var(58)),hitdefattr != SCA,AA || enemynear(var(58)),facing = facing || (enemynear(var(58)),stateno = helper(18000),var(58) && enemynear(var(58)),time < helper(18000),var(59)-2) || helper(18000),var(0) >= 0 || helper(18000),fvar(8) > 0 triggerall = enemynear(var(58)),statetype != L || (enemynear(var(58)),stateno = 5120 && helper(18000),fvar(11) >= -3) triggerall = enemynear(var(58)),movetype != H || vel y > 0 || stateno != 4001 triggerall = random >= 500 trigger1 = fvar(0) = [-10,35+floor(4*(fvar(35))+floor(4*(vel x)))] trigger1 = fvar(1) = [-60-floor(4*(enemynear(var(58)),vel y)+(4*(4+1)/2)*fvar(18)-floor(4*vel y)-(4*(4+1)/2)*0.47),60-floor(4*(enemynear(var(58)),vel y)+(4*(4+1)/2)*fvar(18)-floor(4*vel y)-(4*(4+1)/2)*0.47)] trigger1 = pos Y + 4 * vel y + const(movement.yaccel)*4*8/2 < 0 [State -1, Jump Medium Attack] type = ChangeState value = 610 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype = A && ctrl || (stateno = [110,115]) triggerall = numhelper(3500) > 0 || enemynear(var(58)),hitdefattr != SCA,AA || enemynear(var(58)),facing = facing || (enemynear(var(58)),stateno = helper(18000),var(58) && enemynear(var(58)),time < helper(18000),var(59)-2) || helper(18000),var(0) >= 0 || helper(18000),fvar(8) > 0 triggerall = enemynear(var(58)),statetype != L || (enemynear(var(58)),stateno = 5120 && helper(18000),fvar(11) >= -3) triggerall = enemynear(var(58)),movetype != H || vel y > 0 || stateno != 4001 triggerall = fvar(39):= cond(cond(enemynear(var(58)),statetype != C, enemynear(var(58)),const(size.head.pos.y), enemynear(var(58)),const(size.head.pos.y)*0.5) >= -40, 40, -(enemynear(var(58)),const(size.head.pos.y))*cond(enemynear(var(58)),statetype = C, 0.5, 1)) || 1 triggerall = random <= 500 trigger1 = fvar(0) = [-10,50+floor(3*(fvar(35))+floor(3*(vel x)))] trigger1 = fvar(1) = [-40-floor(3*(enemynear(var(58)),vel y)+(3*(3+1)/2)*fvar(18)-floor(3*vel y)-(3*(3+1)/2)*0.47),(fvar(39))-floor(3*(enemynear(var(58)),vel y)+(3*(3+1)/2)*fvar(18)-floor(3*vel y)-(3*(3+1)/2)*0.47)] trigger1 = pos Y + 3 * vel y + const(movement.yaccel)*3*8/2 < 0 [State -1, Crouch Medium Kick] type = ChangeState value = 410 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 ;|| helper(18000),var(0) >= 0 || helper(18000),fvar(8) > 0 || numhelper(3500) > 0 || (enemynear(var(58)),stateno = helper(18000),var(58) && enemynear(var(58)),time < helper(18000),var(59)-5) triggerall = enemynear(var(58)),stateno != 5120 || helper(18000),fvar(11) >= -6 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [21,35+floor(6*(fvar(35))+floor(6*(fvar(17))))] triggerall = fvar(1) >= 0-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)) || enemynear(var(58)),statetype = L triggerall = random <= 500 || enemynear(var(58)),statetype = L trigger1 = (enemynear(var(58)),stateno = [120,159]) || (enemynear(var(58)),prevstateno = [120,159]) trigger1 = enemynear(var(58)),statetype != C trigger2 = enemynear(var(58)),statetype = L [State -1, Crouch Light Kick] type = ChangeState value = 400 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 triggerall = enemynear(var(58)),stateno != 5120 || helper(18000),fvar(11) >= -3 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [-10,20+floor(3*(fvar(35))+floor(3*(fvar(17))))] triggerall = fvar(1) >= 0-floor(3*(enemynear(var(58)),vel y)+(3*(3+1)/2)*fvar(18)) || enemynear(var(58)),statetype = L trigger1 = random >= 500 trigger2 = enemynear(var(58)),statetype = L && enemynear(var(58)),stateno != 5120 trigger3 = enemynear(var(58)),stateno = [120,159] trigger3 = enemynear(var(58)),statetype != C [State -1, Stand Light Punch] type = ChangeState value = 210 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),movetype != H triggerall = enemynear(var(58)),statetype != L || helper(18000),fvar(11) >= -6 triggerall = enemynear(var(58)),stateno != [120,159] triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [21,40+floor(6*(fvar(35))+floor(6*(fvar(17))))] triggerall = fvar(1) >= -25-floor(6*(enemynear(var(58)),vel y)+(6*(6+1)/2)*fvar(18)) trigger1 = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 trigger1 = enemynear(var(58)),vel x <= 0 || vel x <= 0 || (prevstateno = [140,159]) trigger1 = random <= 250 [State -1, Stand Light Punch] type = ChangeState value = 200 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),statetype != L || helper(18000),fvar(11) >= -4 triggerall = enemynear(var(58)),stateno != [5200,5210] triggerall = enemynear(var(58)),stateno != 703 || var(25) <= 1 triggerall = fvar(0) = [-10,20+floor(4*(fvar(35))+floor(4*(fvar(17))))] triggerall = fvar(1) = [-35-floor(4*(enemynear(var(58)),vel y)+(4*(4+1)/2)*fvar(18)),0] triggerall = random <= 500 trigger1 = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 ; Power Charge [State -1, Power Charge - Opponent Unhittable] type = ChangeState value = 950 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),vel x <= 0 triggerall = enemynear(var(58)),movetype != A triggerall = !inguarddist && !helper(15900),inguarddist triggerall = prevstateno != 951 triggerall = power <= powermax triggerall = fvar(0) >= 0 triggerall = (enemynear(var(58)),stateno != [701,703]) || var(25) > 1 triggerall = !numhelper(3500) triggerall = !var(49) trigger1 = (enemynear(var(58)),stateno = [701,703]) && var(25) > 1 trigger2 = (enemynear(var(58)),stateno = [2210,2211]) [State -1, Power Charge - Default] type = ChangeState value = 950 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) || stateno = 911 triggerall = enemynear(var(58)),movetype != A triggerall = !inguarddist && !helper(15900),inguarddist triggerall = power <= powermax triggerall = fvar(0) >= 50 triggerall = (enemynear(var(58)),stateno != [701,703]) || var(25) > 1 triggerall = !numhelper(3500) triggerall = !var(49) triggerall = random <= 500-floor(power/5) trigger1 = enemynear(var(58)),statetype = L || enemynear(var(58)),hitfall = 1 trigger1 = enemynear(var(58)),stateno != 5120 trigger2 = enemynear(var(58)),anim = 5300 trigger2 = enemynear(var(58)),ctrl = 0 trigger3 = enemynear(var(58)),stateno = [120,159] trigger3 = enemynear(var(58)),vel x < 0 trigger4 = enemynear(var(58)),movetype = I trigger4 = enemynear(var(58)),time >= 30 trigger5 = fvar(0) >= 260 ;============================================================================================== ; AI Blocking/Movement ;============================================================================================== [State -1, AI Corner Escape] type = ChangeState value = 900 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = ctrl || (stateno = [100,101]) triggerall = backedgebodydist <= 60 triggerall = enemynear(var(58)),movetype = H triggerall = var(25) > 1 triggerall = fvar(0) = [-20,80] trigger1 = enemynear(var(58)),stateno = [701,703] trigger2 = enemynear(var(58)),stateno = [2210,2211] [State -1, AI Dodge Forward] type = ChangeState value = 900 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = enemynear(var(58)),stateno != [3000,3999] triggerall = enemynear(var(58)),animtime <= -20 triggerall = enemynear(var(58)),vel x >= 0 triggerall = enemynear(var(58)),vel y >= -2 triggerall = enemynear(var(58)),hitdefattr != SCA,AT triggerall = inguarddist || helper(15900),inguarddist triggerall = frontedgedist >= 50 || fvar(0) >= 50-frontedgedist triggerall = fvar(0) = [-20,110] triggerall = fvar(1) >= const(size.head.pos.y) triggerall = prevstateno != 900 triggerall = prevstateno != 901 triggerall = !numhelper(3500) triggerall = statetype != A triggerall = ctrl || (stateno = [100,101]) trigger1 = random <= 500 [State -1, AI Dodge Backward] type = ChangeState value = 901 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = enemynear(var(58)),stateno != [3000,3999] triggerall = enemynear(var(58)),animtime <= -20 triggerall = enemynear(var(58)),vel x <= 0 triggerall = enemynear(var(58)),vel y >= -2 triggerall = enemynear(var(58)),hitdefattr != SCA,AT triggerall = inguarddist || helper(15900),inguarddist triggerall = backedgedist >= 50 triggerall = fvar(0) = [-20,110] triggerall = fvar(1) >= const(size.head.pos.y) triggerall = prevstateno != 900 triggerall = prevstateno != 901 triggerall = !numhelper(3500) triggerall = statetype != A triggerall = ctrl || (stateno = [100,101]) trigger1 = random <= 500 [State -1, AI Waveland] type = ChangeState value = 903 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype = A && ctrl triggerall = stateno != 4001 triggerall = enemynear(var(58)),movetype != H || enemynear(var(58)),statetype != A triggerall = stateno != 105 || enemynear(var(58)),statetype != L triggerall = (vel y >= 0 || var(1) = 0) && pos y >= -100 triggerall = fvar(0) >= 0 triggerall = var(35):= 1 || 1 ; Forward - Approach trigger1 = random <= 250+ceil(((fvar(0)*0.25)-(enemynear(var(58)),vel x))*cond((enemynear(var(58)),ctrl = 0 || stateno = 911), 2, 1)) trigger1 = var(57):= 1 || 1 ; Forward - Opening trigger2 = enemynear(var(58)),stateno != [0,199] trigger2 = enemynear(var(58)),ctrl = 0 || helper(18000),var(0) >= 0 || var(46) > 0 || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 trigger2 = random <= 500+ceil((((fvar(0))-(enemynear(var(58)),vel x*2))+(-abs(enemynear(var(58)),animtime)*2))*cond((enemynear(var(58)),ctrl = 0 || stateno = 911), 2, 1)) trigger2 = var(57):= 1 || 1 ; Backward trigger3 = enemynear(var(58)),vel x > 0 trigger3 = enemynear(var(58)),facing != facing trigger3 = enemynear(var(58)),movetype != H || enemynear(var(58)),statetype = L || enemynear(var(58)),ctrl > 0 || (enemynear(var(58)),stateno = [120,159]) || !numtarget trigger3 = enemynear(var(58)),stateno != [120,159] trigger3 = backedgebodydist >= 60 trigger3 = random <= floor(((backedgedist)-((fvar(0))*0.1)+floor(fvar(1)*0.1)+floor(2*(enemynear(var(58)),vel x)))*cond(stateno = 911 || enemynear(var(58)),vel x > -const(velocity.run.back.x), 2, 1)) trigger3 = var(57):= -1 || 1 [State -1, AI Wavedash] type = ChangeState value = 911 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [30,40]) || (stateno = [100,101]) triggerall = !inguarddist && !helper(15900),inguarddist || helper(18000),var(0) >= 0 || var(46) > 0 || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 triggerall = !(playeridexist(helper(33333333),var(4)) && enemy,numproj) || numhelper(3500) > 0 triggerall = enemynear(var(58)),movetype != H || (enemynear(var(58)),statetype = L && fvar(0) > 40) triggerall = fvar(0) >= 0 ; Forward - Approach trigger1 = random <= 10+ceil(((fvar(0)*0.25)-(enemynear(var(58)),vel x))*cond((enemynear(var(58)),ctrl = 0 || stateno = 911), 2, 1)) trigger1 = var(57):= 1 || 1 ; Forward - Opening trigger2 = (enemynear(var(58)),stateno != [701,703]) || var(25) <= 1 trigger2 = enemynear(var(58)),stateno != [2210,2211] trigger2 = enemynear(var(58)),stateno != 5120 trigger2 = enemynear(var(58)),stateno != [0,199] trigger2 = enemynear(var(58)),ctrl = 0 || helper(18000),var(0) >= 0 || var(46) > 0 || numhelper(3500) > 0 || helper(18000),fvar(8) > 0 trigger2 = random <= 500+ceil((((fvar(0))-(enemynear(var(58)),vel x*2))+(-abs(enemynear(var(58)),animtime)*2))*cond((enemynear(var(58)),ctrl = 0 || stateno = 911), 2, 1)) trigger2 = var(57):= 1 || 1 [State -1, AI Fwd Air Dash] type = ChangeState value = 110 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype = A && ctrl triggerall = !inguarddist && !helper(15900),inguarddist || helper(18000),var(0) >= 0 || numhelper(3500) > 0 triggerall = !(playeridexist(helper(33333333),var(4)) && enemy,numproj) || numhelper(3500) > 0 triggerall = (enemynear(var(58)),stateno != [701,703]) || var(25) > 1 triggerall = enemynear(var(58)),stateno != [1025,1028] triggerall = enemynear(var(58)),stateno != [10270,10280] triggerall = stateno != 4001 triggerall = stateno != 105 triggerall = fvar(0) >= 50 || (enemynear(var(58)),vel x < -vel x && fvar(0) >= 0) triggerall = fvar(1) = [-50-floor(fvar(0)*0.25),50+floor(fvar(0)*0.25)] trigger1 = random <= (100+(100 * (enemynear(var(58)),ctrl = 0 || enemynear(var(58)),vel x < 0)))+ceil(fvar(0)) trigger2 = enemynear(var(58)),movetype = H || ((enemynear(var(58)),prevstateno = [140,149]) && enemynear(var(58)),ctrl = 0 && enemynear(var(58)),movetype != A) trigger2 = random <= (250+(250 * (enemynear(var(58)),ctrl = 0 || enemynear(var(58)),vel x < 0)))+ceil(fvar(0)) trigger3 = fvar(0) >= 120 [State -1, AI Back Air Dash] type = ChangeState value = 111 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype = A && ctrl triggerall = !inguarddist && !helper(15900),inguarddist || helper(18000),var(0) >= 0 || numhelper(3500) > 0 triggerall = (enemynear(var(58)),stateno != [701,703]) || var(25) > 1 triggerall = backedgedist >= 60 triggerall = stateno != 105 triggerall = fvar(0) = [-10,100] trigger1 = enemynear(var(58)),vel x > 0 trigger1 = enemynear(var(58)),facing != facing trigger1 = enemynear(var(58)),statetype != L trigger1 = enemynear(var(58)),movetype != H trigger1 = enemynear(var(58)),stateno != [120,159] trigger1 = random <= floor(((backedgedist)-((fvar(0))*0.1)+floor(fvar(1)*0.1)+floor(2*(enemynear(var(58)),vel x)))*cond(stateno = 911 || enemynear(var(58)),vel x > -const(velocity.run.back.x), 2, 1)) trigger2 = enemynear(var(58)),stateno = 5120 trigger3 = enemynear(var(58)),movetype = H trigger3 = (enemynear(var(58)),stateno = [701,703]) && var(25) > 1 trigger4 = enemynear(var(58)),movetype = H trigger4 = enemynear(var(58)),stateno = [2210,2211] [State -1, AI Back Dash] type = ChangeState value = cond(random <= 500, 911, 105) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl triggerall = !inguarddist && !helper(15900),inguarddist || helper(18000),var(0) >= 0 || numhelper(3500) > 0 triggerall = backedgedist >= 60 triggerall = fvar(0) = [-10,100] trigger1 = enemynear(var(58)),stateno = 5120 trigger1 = var(57):= -1 || 1 trigger2 = enemynear(var(58)),stateno = [5200,5210] trigger2 = var(57):= -1 || 1 trigger3 = enemynear(var(58)),movetype = H trigger3 = (enemynear(var(58)),stateno = [701,703]) && var(25) > 1 trigger3 = var(57):= -1 || 1 trigger4 = enemynear(var(58)),movetype = H trigger4 = enemynear(var(58)),stateno = [2210,2211] trigger4 = var(57):= -1 || 1 [State -1, AI Running] type = ChangeState value = 100 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl triggerall = !inguarddist && !helper(15900),inguarddist || helper(18000),var(0) >= 0 || helper(18000),fvar(8) > 0 || numhelper(3500) > 0 triggerall = !(playeridexist(helper(33333333),var(4)) && enemy,numproj) || helper(18000),fvar(8) > 0 || numhelper(3500) > 0 triggerall = stateno != 100 triggerall = fvar(0) >= 0 trigger1 = enemynear(var(58)),movetype != H trigger1 = random <= 10+ceil(((fvar(0)*0.5)-(enemynear(var(58)),vel x * 2))*cond(enemynear(var(58)),ctrl = 0, 2, 1)) trigger2 = var(25) <= 1 || (enemynear(var(58)),stateno != [701,703]) trigger2 = enemynear(var(58)),stateno != 2211 trigger2 = enemynear(var(58)),movetype = H || enemynear(var(58)),statetype = L [State -1, AI Jump] type = ChangeState value = cond(fvar(1) <= -180, 4000, 41) triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A && ctrl || (stateno = [100,101]) triggerall = fvar(0) >= 0 && (fvar(1) = [-250,0]) triggerall = enemynear(var(58)),stateno != [1425,1427] triggerall = enemynear(var(58)),stateno != [1025,1028] triggerall = enemynear(var(58)),stateno != [10270,10280] triggerall = enemynear(var(58)),stateno != [2210,2211] triggerall = !inguarddist && !helper(15900),inguarddist || helper(18000),var(0) >= 0 || helper(18000),fvar(8) > 0 || enemynear(var(58)),hitdefattr = SCA,AA,AP,AT trigger1 = fvar(1) <= -40 trigger1 = enemynear(var(58)),statetype = A trigger1 = random <= (200 + (200 * (enemynear(var(58)),vel y < 0 || enemynear(var(58)),prevstateno = 52))) trigger2 = fvar(1) <= -40 trigger2 = enemynear(var(58)),statetype = A trigger2 = enemynear(var(58)),movetype = H || (enemynear(var(58)),stateno = [5200,5210]) trigger2 = random <= (500 + (500 * (enemynear(var(58)),time <= 4 || enemynear(var(58)),backedgedist < 50))) trigger3 = enemynear(var(58)),hitdefattr = SC,AT trigger3 = random <= (500 + (500 * (enemynear(var(58)),time <= 4 || enemynear(var(58)),animtime >= -15-1))) [State -1, AI Walking] type = ChangeState value = 21 triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = statetype != A triggerall = stateno != 100 triggerall = !inguarddist && !helper(15900),inguarddist || numhelper(3500) > 0 trigger1 = ctrl ctrl = 1 [State -3, AI Guard] type = ChangeState triggerall = AILevel && RoundState = 2 triggerall = AILevel >= 8 || (AILevel < 8 && random < (800 * (AILevel ** 2 / 64.0))) triggerall = ctrl || (stateno = [21,23]) || stateno = 52 || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 triggerall = enemynear(var(58)),hitdefattr != SCA, AT || AILevel <= 3 triggerall = !numhelper(3500) trigger1 = inguarddist trigger2 = numhelper(15900) trigger2 = helper(15900),inguarddist || helper(15900),var(50) > 0 || helper(15900),var(52) > 0 value = 120 [State -3, Taunt] type = ChangeState value = 195+random%4 triggerall = AILevel triggerall = statetype != A triggerall = roundstate = 3 triggerall = win || winko triggerall = time = [0,120] triggerall = stateno != [195,198] triggerall = prevstateno != [195,198] trigger1 = ctrl ;============================================================================================== ; End AI ;============================================================================================== ;********************************************************************************************** ;============================================================================================== ; Tick Fix ;============================================================================================== [State -1, Tick Fix] type = ctrlset triggerall = !ctrl trigger1 = (stateno = 52 || stateno = 101 || stateno = 106 || stateno = 5120) && !animtime trigger2 = (stateno = [200,500]) && !animtime trigger3 = (stateno = 800 || stateno = 830) && !animtime trigger4 = (stateno = 5001 || stateno = 5011 || stateno = 151 || stateno = 153) && hitover value = 1 ;--------------------------------------------------------------------------- ; Super Moves [State -1, Super Star] type = ChangeState value = 2500 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Mario Finale", command = "Super Star") triggerall = statetype != A triggerall = power >= 3000 trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) trigger6 = (stateno = [1000,1005]) && var(37) trigger7 = (stateno = [1100,1105]) || (stateno = 1200 || stateno = 1205 || stateno = 1210 || stateno = 1215 || stateno = 1220) || (stateno = [1300,1315]) || stateno = 1420 trigger7 = (movecontact||movereversed) trigger8 = stateno = 1315 && var(37) [State -1, Mario Finale] type = ChangeState value = 2400 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Super Star", command = "Mario Finale") triggerall = power >= 3000 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) trigger6 = (stateno = [1000,1005]) && var(37) trigger7 = (stateno = [1050,1055]) && var(37) trigger8 = (stateno = [1100,1125]) || (stateno = [1200,1220]) || (stateno = [1300,1315]) || (stateno = [1330,1345]) || (stateno = [1400,1420]) trigger8 = (movecontact||movereversed) trigger9 = (stateno = 1315 || stateno = 1345) && var(37) [State -1, Super Hammer] type = ChangeState value = 2200 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "F.L.U.D.D", command = "Super Hammer") triggerall = statetype != A triggerall = power >= 2000 trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) trigger6 = (stateno = [1000,1005]) && var(37) trigger7 = (stateno = [1100,1105]) || (stateno = 1200 || stateno = 1205 || stateno = 1210 || stateno = 1220) || (stateno = [1300,1315]) || stateno = 1420 trigger7 = (movecontact||movereversed) trigger8 = stateno = 1315 && var(37) [State -1, F.L.U.D.D] type = ChangeState value = 2300 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Super Hammer", command = "F.L.U.D.D") triggerall = power >= 2000 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) trigger6 = (stateno = [1000,1005]) && var(37) trigger7 = (stateno = [1050,1055]) && var(37) trigger8 = (stateno = [1100,1125]) || (stateno = [1200,1220]) || (stateno = [1300,1315]) || (stateno = [1330,1345]) || (stateno = [1400,1420]) trigger8 = (movecontact||movereversed) trigger9 = (stateno = 1315 || stateno = 1345) && var(37) [State -1, Super Flame] type = ChangeState value = 2000 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Galaxy Spin", command = "Super Flame") triggerall = statetype != A triggerall = power >= 1000 trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) trigger6 = (stateno = [1000,1005]) && var(37) trigger7 = (stateno = [1100,1105]) || (stateno = 1200 || stateno = 1205 || stateno = 1210 || stateno = 1215 || stateno = 1220) || (stateno = [1300,1315]) || stateno = 1420 trigger7 = (movecontact||movereversed) trigger8 = stateno = 1315 && var(37) [State -1, Galaxy Spin] type = ChangeState value = 2100 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Super Flame", command = "Galaxy Spin") triggerall = power >= 1000 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) trigger6 = (stateno = [1000,1005]) && var(37) trigger7 = (stateno = [1050,1055]) && var(37) trigger8 = (stateno = [1100,1125]) || (stateno = [1200,1220]) || (stateno = [1300,1315]) || (stateno = [1330,1345]) || (stateno = [1400,1420]) trigger8 = (movecontact||movereversed) trigger9 = (stateno = 1315 || stateno = 1345) && var(37) ;--------------------------------------------------------------------------- ; EX Moves [State -1, EX Super Jump Punch] type = ChangeState value = 1215 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-SuperJumpPunch_EX", command = "SuperJumpPunch_EX") triggerall = statetype != A triggerall = power >= 500 trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) [State -1, EX Cape] type = ChangeState value = 1315 + 30 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-Cape_EX", command = "Cape_EX") triggerall = power >= 500 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, EX Fireball] type = ChangeState value = 1005 + 50 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Tornado_EX", command = "Fireball_EX") triggerall = !numhelper(1003) triggerall = power >= 500 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, EX Mario Tornado] type = ChangeState value = 1105 + 20 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Fireball_EX", command = "Tornado_EX") triggerall = power >= 500 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, EX Ground Pound] type = ChangeState value = 1415 triggerall = !AILevel triggerall = command = "GroundPound_EX" triggerall = statetype = A triggerall = power >= 500 trigger1 = ctrl || (stateno = [110,115]) trigger2 = (stateno = 600 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger3 = (stateno = 700 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ; Cape [State -1, Strong Cape] type = ChangeState value = 1310 + 30 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-Cape_z", command = "Cape_z") trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, Medium Cape] type = ChangeState value = 1305 + 30 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-Cape_y", command = "Cape_y") trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, Light Cape] type = ChangeState value = 1300 + 30 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-Cape_x", command = "Cape_x") trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ; Super Jump Punch [State -1, Strong Super Jump Punch] type = ChangeState value = 1210 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-SuperJumpPunch_z", command = "SuperJumpPunch_z") triggerall = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) [State -1, Medium Super Jump Punch] type = ChangeState value = 1205 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-SuperJumpPunch_y", command = "SuperJumpPunch_y") triggerall = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) [State -1, Light Super Jump Punch] type = ChangeState value = 1200 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "R-SuperJumpPunch_x", command = "SuperJumpPunch_x") triggerall = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ; Fireball [State -1, Strong Fireball] type = ChangeState value = 1002 + 50 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Tornado_z", command = "Fireball_z") triggerall = var(36) < 2 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, Medium Fireball] type = ChangeState value = 1001 + 50 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Tornado_y", command = "Fireball_y") triggerall = var(36) < 2 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, Light Fireball] type = ChangeState value = 1000 + 50 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Tornado_x", command = "Fireball_x") triggerall = var(36) < 2 trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ; Mario Tornado [State -1, Strong Mario Tornado] type = ChangeState value = 1102 + 20 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Fireball_z", command = "Tornado_z") trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, Medium Mario Tornado] type = ChangeState value = 1101 + 20 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Fireball_y", command = "Tornado_y") trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) [State -1, Light Mario Tornado] type = ChangeState value = 1100 + 20 * (statetype = A) triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "Fireball_x", command = "Tornado_x") trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 trigger2 = ((stateno = [200,202]) && (movecontact||movereversed)) || (stateno = 400 && (movecontact||movereversed)) || (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 210 && (movecontact||movereversed)) || (stateno = 410 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 220 && (movecontact||movereversed)) || (stateno = 225 && (movecontact||movereversed)) || (stateno = 420 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger5 = (stateno = 500 && (movecontact||movereversed)) || (stateno = 700 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ; Ground Pound [State -1, Strong Ground Pound] type = ChangeState value = 1410 triggerall = !AILevel triggerall = command = "GroundPound_z" triggerall = statetype = A trigger1 = ctrl || (stateno = [110,115]) trigger2 = (stateno = 600 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger3 = (stateno = 700 && (movecontact||movereversed)) [State -1, Medium Ground Pound] type = ChangeState value = 1405 triggerall = !AILevel triggerall = command = "GroundPound_y" triggerall = statetype = A trigger1 = ctrl || (stateno = [110,115]) trigger2 = (stateno = 600 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger3 = (stateno = 700 && (movecontact||movereversed)) [State -1, Light Ground Pound] type = ChangeState value = 1400 triggerall = !AILevel triggerall = command = "GroundPound_x" triggerall = statetype = A trigger1 = ctrl || (stateno = [110,115]) trigger2 = (stateno = 600 && (movecontact||movereversed)) || (stateno = 610 && (movecontact||movereversed)) || (stateno = 620 && (movecontact||movereversed)) trigger3 = (stateno = 700 && (movecontact||movereversed)) ;=========================================================================== ; Air Dashes [State -1, Air Dash Fwd] type = ChangeState value = 110 triggerall = !AILevel triggerall = command = "FF" triggerall = stateno != 105 triggerall = statetype = A trigger1 = ctrl [State -1, Air Dash Back] type = ChangeState value = 111 triggerall = !AILevel triggerall = command = "BB" triggerall = stateno != 105 triggerall = statetype = A trigger1 = ctrl ;--------------------------------------------------------------------------- ; Ground Dashes [State -1, Run Fwd] type = ChangeState value = 100 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "BB", command = "FF") trigger1 = statetype != A trigger1 = ctrl || stateno = 911 [State -1, Run Back] type = ChangeState value = 105 triggerall = !AILevel triggerall = cond((anim=[5,6]), command = "FF", command = "BB") trigger1 = statetype != A trigger1 = ctrl || stateno = 911 ;--------------------------------------------------------------------------- ;Dodges [State -1, Power Charge] type = ChangeState value = 950 triggerall = !AILevel triggerall = command = "a" && command = "b" triggerall = power < powermax triggerall = !numhelper(3500) triggerall = statetype != A trigger1 = ctrl || (stateno = [100,101]) [State -1, RoA Wavedashing] type = ChangeState value = 911 triggerall = !AILevel triggerall = command = "a" triggerall = command = "holdfwd" || command = "holdback" trigger1 = stateno = 40 [State -1, Roll Fwd] type = ChangeState value = 900 triggerall = !AILevel triggerall = command = "a" && command = "holdfwd" triggerall = statetype != A trigger1 = ctrl || (stateno = [100,101]) [State -1, Roll Back] type = ChangeState value = 901 triggerall = !AILevel triggerall = command = "a" && command = "holdback" triggerall = statetype != A trigger1 = ctrl || (stateno = [100,101]) [State -1, Dodge] type = ChangeState value = 902 triggerall = !AILevel triggerall = command = "a" triggerall = statetype != A trigger1 = ctrl || (stateno = [100,101]) [State -1, Air Dodge] type = ChangeState value = 903 triggerall = !AILevel triggerall = command = "a" triggerall = statetype = A triggerall = stateno != 903 || !var(35) trigger1 = ctrl || (stateno = [110,115]) ;--------------------------------------------------------------------------- ; Throw [State -1, Throw Attempt] type = ChangeState value = 800 + 30 * (statetype = A) triggerall = !AILevel triggerall = command = "b" trigger1 = ctrl || (stateno = [100,101]) || (stateno = [110,115]) || stateno = 911 ;=========================================================================== ; Dash Attack [State -1, Stand Heavy Attack] type = ChangeState value = 225 triggerall = !AILevel triggerall = command = "Dash Attack" trigger1 = statetype != A trigger1 = (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) || (stateno = 210 && (movecontact||movereversed)) || (stateno = 220 && (movecontact||movereversed)) trigger3 = (stateno = 400 && (movecontact||movereversed)) || (stateno = 410 && ((movecontact||movereversed)||movereversed)) ;=========================================================================== ;--------------------------------------------------------------------------- ;Stand Light Punch [State -1, Stand Light Punch] type = ChangeState value = 200 triggerall = !AILevel triggerall = command = "x" triggerall = command != "holddown" trigger1 = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 ;--------------------------------------------------------------------------- ;Stand Medium Attack [State -1, Stand Medium Attack] type = ChangeState value = 210 triggerall = !AILevel triggerall = command = "y" triggerall = command != "holddown" trigger1 = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 || stateno = 201) && (movecontact||movereversed) trigger3 = (stateno = 400 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Stand Strong Attack [State -1, Stand Heavy Attack] type = ChangeState value = 220 triggerall = !AILevel triggerall = command = "z" triggerall = command != "holddown" trigger1 = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 || stateno = 201) && (movecontact||movereversed) trigger3 = (stateno = 400 && (movecontact||movereversed)) trigger4 = (stateno = 210 && (movecontact||movereversed)) trigger5 = (stateno = 410 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Taunt [State -1, Taunt] type = ChangeState value = 197 triggerall = !AILevel triggerall = command = "start" triggerall = command = "holddown" trigger1 = statetype != A trigger1 = ctrl [State -1, Taunt] type = ChangeState value = 195 + 1 * (command = "holdfwd") + 3 * (command = "holdback") triggerall = !AILevel triggerall = command = "start" trigger1 = statetype != A trigger1 = ctrl ;--------------------------------------------------------------------------- ;Crouching Light Punch [State -1, Crouching Light Attack] type = ChangeState value = 400 triggerall = !AILevel triggerall = command = "x" triggerall = command = "holddown" trigger1 = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 && (movecontact||movereversed)) trigger3 = (stateno = 400 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Crouching Strong Punch [State -1, Crouching Medium Attack] type = ChangeState value = 410 triggerall = !AILevel triggerall = command = "y" triggerall = command = "holddown" trigger1 = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 || stateno = 201) && (movecontact||movereversed) trigger3 = (stateno = 400 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Crouching Heavy Attack [State -1, Crouching Heavy Attack] type = ChangeState value = 420 triggerall = !AILevel triggerall = command = "z" triggerall = command = "holddown" trigger1 = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 || stateno = 201) && (movecontact||movereversed) trigger3 = (stateno = 400 && (movecontact||movereversed)) trigger4 = (stateno = 210 && (movecontact||movereversed)) trigger5 = (stateno = 410 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Crouching Heavy Attack [State -1, Crouching Heavy Attack] type = ChangeState value = 500 triggerall = !AILevel triggerall = command = "c" ;triggerall = command = "holddown" trigger1 = statetype != A trigger1 = ctrl || (stateno = [100,101]) || stateno = 911 trigger2 = (stateno = 200 || stateno = 201 || stateno = 202) && (movecontact||movereversed) trigger3 = (stateno = 400 && (movecontact||movereversed)) trigger4 = (stateno = 210 && (movecontact||movereversed)) trigger5 = (stateno = 410 && (movecontact||movereversed)) trigger6 = (stateno = 220 && (movecontact||movereversed)) trigger7 = (stateno = 420 && (movecontact||movereversed)) trigger8 = (stateno = 225 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Jump Light Punch [State -1, Jump Light Punch] type = ChangeState value = 600 triggerall = !AILevel triggerall = command = "x" trigger1 = statetype = A trigger1 = ctrl || (stateno = [110,115]) ;--------------------------------------------------------------------------- ;Jump Strong Punch [State -1, Jump Strong Punch] type = ChangeState value = 610 triggerall = !AILevel triggerall = command = "y" trigger1 = statetype = A trigger1 = ctrl || (stateno = [110,115]) trigger2 = (stateno = 600 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Jump Strong Punch [State -1, Jump Strong Punch] type = ChangeState value = 620 triggerall = !AILevel triggerall = command = "z" trigger1 = statetype = A trigger1 = ctrl || (stateno = [110,115]) trigger2 = (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 610 && (movecontact||movereversed)) ;--------------------------------------------------------------------------- ;Jump Strong Punch [State -1, Jump Strong Punch] type = ChangeState value = 700 triggerall = !AILevel triggerall = command = "c" trigger1 = statetype = A trigger1 = ctrl || (stateno = [110,115]) trigger2 = (stateno = 600 && (movecontact||movereversed)) trigger3 = (stateno = 610 && (movecontact||movereversed)) trigger4 = (stateno = 620 && (movecontact||movereversed)) [State -1, Super Jump] type = ChangeState value = 4000 triggerall = !AILevel triggerall = stateno != 911 triggerall = command = "SuperJump" trigger1 = statetype != A trigger1 = ctrl
Back
Top