top of page

- Character State Module Tutorial -
- Medium / Heavy Attacks -

    Welcome! In this section we will be making our Medium and Heavy Attack State Modules and make calls for them. They will be very simple Attack State Modules as most of the time there is nothing detailed going on with such Moves.
 

    Before we start, I assume that you have checked all the previous tutorials, got an "MyOmen" Fighter going on already as almost all Tutorials will be related to him. Also make sure you went through the Light Attacks Section as this section will only make sense if you did so!

  • Video to the right is a demonstration of the State Modules we will be creating.
     

  • We will also be using Ken Masters as the other Fighter to mainly focus on one "MyOmen".

Preparation

  • Let's make another Graph specially made for Medium Attacks.
     

  • If you follow the Light Attacks Tutorial Section (which you must!) then you already have a "MyOmen_BasicAttacks_SM" so let's continue within!

A - Standing Medium Punch

  • Since Medium Punch isn't too different than a Light Punch, there is no reason not to copy it to save time!
     

  • Now let's copy "Standing Light Punch" and change Comment name to "Medium Punch" and change Custom Event's name to State 1300 along side with State ID value in "New State Definition - Standard" node!
     

  • PS: If you see me selecting and copying stuff, that means I am pressing [Ctrl + C] and then [Ctrl + V].

  • Now it is time to make something unique. We will make it so Omen will play a "Ha!" voice for a 30% chance every time he does a Standing Medium Punch.
     

  • For this we will be making a variable by using "Variables" Tab and name it "Play Self Voice. Then drag it onto the coding area and select "Set" and link it to a node named "Random Bool with Weight" and set its "Weight" value to 0.3.

  • This is a Random Bool Function where the 0.3 value means whenever this State Triggers, the variable it is linked to will be TRUE for 30% chance.

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_SMP_FB".
     

  • When we check it out the actual attempt to hit is in "Frame Run 1" so we don't need to change anything on the Play Sound Addon's Condition. However we can still change it to another whiff sound because why not!

  • Now let's use the variable we created above. We will be copy pasting the same State Addon with its Condition intact but also link an "And" node to it then link the variable we just made.
     

  • Now this Addon will only trigger if the variable created is set to TRUE, making Omen say "Ha!" time to time!

  • Attack Definition need some adjustments as well. We shall change the Box Trigger values to "<=2". This is because this time our Hit and Guard Box container Sprites are both 1 and 2
     

  • You might be wondering that "<=2" also contains Sprite 0. But what happens if that sprite got no Hit or Guard Box data? Well, nothing so it is safe to do it this way too!

  • Optionally we can also increase the damage we do by editing "Attack Extension Impact Damage"!

  • Now let's change "Attack Segment - Movement Data" Extension values so the Enemy slides further away when it gets hit!

  • Next lets update Impact Attributes. This time we will change the "Animation" in "Attack Attributes" section to "Medium" to show that impact is bigger than Light Attacks.
     

  • We can also increase the "Hit Times" as well but these are all optional changes that we make.

  • Lastly we can change the Impact Sound and Effect 2D values.
     

  • We will just use another sound and a bigger impact effect that is provided in Omen's own folders.

  • Now lets copy the Input State Definition of Standing Light Punch and convert it to Medium Punch instead!
     

  • We are using value "6" for "Act System Bool List" and set "State to Trigger" to "1300" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Medium Punch".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • You will also notice that "Ha!" sound is not coming out all the time so it is working correctly as well!
     

  • Now let's do the Crouching Medium Punch!

B - Crouching Medium Punch

  • Now let's copy "Standing Medium Punch", change Comment name to "Crouching Medium Punch" and change Custom Event's name to State 1305 along side with State ID value in "New State Definition - Standard" node!
     

  • I am also deleting the extra variable set and Play Sound Addon that were unique to the previous State.

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_CMP_FB".
     

  • The attempt to hit is in "Frame Run 2" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=2".
     

  • Lastly we change State Change Addon's value to 11, which is the Crouching Idle State.

  • Next let's not forget changing "Character Stance" in State Definition and "Attack Stance" in Attack Definition to "Crouching" as well.
     

  • Finally we will be setting "Aim" values to "Mid" in Impact Attributes Extension.

  • Now lets copy the Input State Definition of Crouching Light Punch and convert it to Medium Punch instead!
     

  • We are using value "6" for "Act System Bool List" and set "State to Trigger" to "1305" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Medium Punch".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Aerial Medium Punch!

C - Aerial Medium Punch

  • Now let's copy "Crouching Medium Punch", change Comment name to "Aerial Medium Punch" and change Custom Event's name to State 1310 along side with State ID value in "New State Definition - Standard" node!
     

  • Also let's not forget to change Character Stance in the State Definition as well (like I did previously ^-^).

  • Now that we have our State Definition ready, we can move on. We don't need to change Control Adjustment but we need to change Movement Adjustment!
     

  • We will set its values to "No Changes". But  we need to tell UF2D that this Fighter is not simply Jumping anymore but changing State, so the "Ground Landing" result should be redefined!
     

  • We will do it with "Movement Extension - Z Contact SM Triggers" just like we did in "Aerial Light Punch" previously.

  • Let's move on. It is time to change the Animation to "Omen_AMP_FB" in "Update Animation" Component.
     

  • The attempt to hit is in "Frame Run 3" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=3".
     

  • Then we can remove State Change Addon as we already fixed that with Movement Extension.

  • Next let's not forget changing "Attack Stance" in Attack Definition to "Aerial".
     

  • Now change the Trigger Conditions for Hit Box to "=3" and for Guard Box to "<=3". If you check the Animation you will know why!

  • Let's make it a "2 Hit" State while at it! If we check the Animation there are 2 Sprites that has Hit Boxes;
     

  • First one is Frame Run 3 (which we have our current Hitbox) and Second one is Frame Run 4.

  • So let's just copy and paste the WHOLE Attack Definition and Extensions. Then link it to the "Additional Addon Entry" output.
     

  • Finally change the Trigger Conditions for Hit Box and Guard Box to "=4". Since the previous Hit Definition is using data from "<=3" Animation Elements, to avoid duplicate triggering we are only using "4" as value!

  • Now lets copy the Input State Definition of Aerial Light Punch and convert it to Medium Punch instead!
     

  • We are using value "6" for "Act System Bool List" and set "State to Trigger" to "1310" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Medium Punch".

  • Let's see if our State is now in the game! If you followed up till now, it should all work! You can also see that it is a double hit attack!
     

  • Now let's do the Kicks!

D - Standing Medium Kick

  • Since Medium Kick isn't too different than a Medium Punch, there is no reason not to copy it to save time!
     

  • Now let's copy "Standing Medium Punch" and change Comment name to "Medium Kick" and change Custom Event's name to State 1400 along side with State ID value in "New State Definition - Standard" node!
     

  • I am also deleting the extra variable set and Play Sound Addon that were unique to the previous State.

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_SMK_FB".
     

  • The attempt to hit is in "Frame Run 3" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=3".
     

  • Lastly State Change Addon's can stay 0 as it is the Standing Idle State.

  • Let's make it a "2 Hit" State as well! If we check the Animation there are 2 Sprites that has Hit Boxes;
     

  • First one is Frame Run 3 (which we have our current Hitbox) and Second one is Frame Run 4.
     

  • So let's just copy and paste the WHOLE Attack Definition and Extensions. Then link it to the "Additional Addon Entry" output.

  • Finally change the Trigger Conditions for Hit Box and Guard Box to "=4". Since the previous Hit Definition is using data from "<=3" Animation Elements, to avoid duplicate triggering we are only using "4" as value!

  • Now lets copy the Input State Definition of Standing Medium Punch and convert it to Medium Kick instead!
     

  • We are using value "9" for "Act System Bool List" and set "State to Trigger" to "1400" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Medium Kick".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Crouching Medium Kick!

E - Crouching Medium Kick

  • Now let's copy "Crouching Medium Punch", change Comment name to "Medium Kick" and change Custom Event's name to State 1405 along side with State ID value in "New State Definition - Standard" node!

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_CMK_FB".
     

  • When we check it out the actual attempt to hit is in "Frame Run 2" so we don't need to change anything on the Play Sound Addon's Condition. This goes for Attack Definition's Box Triggers as well.
     

  • Stage Change Addon can also stay same.

  • Lastly since this is an Attack that is aimed at lower section of Enemy, lets change the "Aim" values to "Low" that reside in "Impact Attributes" Extension.
     

  • Feel free to change the "Impact Sound" Extension value to "Omen_MKHit" as well!
     

  • PS: Changed "Standing Medium Kick" impact sounds as well while at it.

  • Now lets copy the Input State Definition of Crouching Medium Punch and convert it to Medium Kick instead!
     

  • We are using value "9" for "Act System Bool List" and set "State to Trigger" to "1405" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Medium Kick".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Aerial Medium Kick!

F - Aerial Medium Kick

  • Now let's copy "Aerial Medium Punch", change Comment name to "Medium Kick" and change Custom Event's name to State 1410 along side with State ID value in "New State Definition - Standard" node!

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_AMK_FB".
     

  • The attempt to hit is in "Frame Run 1" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=1".

  • Attack Definition need some adjustments as well. We shall change the Box Trigger values to "<=1. This is because this time our Hit and Guard Box container Sprites are both 0 and 1
     

  • And for a change lets change Impact Attributes' Aim (Ground) value to "High" as well so that the hit is aimed towards the Enemy's head when they are on ground!

  • Feel free to change the "Impact Sound" Extension value to "Omen_MKHit" as well!

  • Now lets copy the Input State Definition of Aerial Light Kick and convert it to Medium Kick instead!
     

  • We are using value "9" for "Act System Bool List" and set "State to Trigger" to "1410" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Medium Kick".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Standing Heavy Punch!

Preparation

  • Let's make another Graph specially made for Heavy Attacks inside "MyOmen BasicAttacks SM" just like we did for Medium Attacks!

G - Standing Heavy Punch

  • Since Heavy Punch isn't too different than a Medium Punch, there is no reason not to copy it to save time!
     

  • Now let's copy "Standing Medium Punch" and change Comment name to "Heavy Punch" and change Custom Event's name to State 1500 along side with State ID value in "New State Definition - Standard" node!
     

  • I am also deleting the extra variable set and Play Sound Addon that were unique to the previous State.

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_SHP_FB".
     

  • The attempt to hit is in "Frame Run 3" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=3" and optionally change sound value to another Whiff sound!
     

  • Lastly we keep State Change Addon as it is.

  • Attack Definition need some adjustments as well. We shall change the Box Trigger values to "<=3". This is because this time our Hit and Guard Box container Sprites are both 1 and 2
     

  • We can also change the "Impact Damage" values to increase the damage and change "Attack Segment - Movement Data" values to give a bigger push on X Axis!

  • ​And let's not forget to change Impact Attributes' "Animation Values" to "Hard" as well so that the the impact will be heavier compared to what Medium Attacks were doing!
     

  • Optionally we can change the Impact Sound and Effect 2D values as well!

  • Now lets copy the Input State Definition of Standing Medium Punch and convert it to Heavy Punch instead!
     

  • We are using value "7" for "Act System Bool List" and set "State to Trigger" to "1500" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Heavy Punch".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Crouching Heavy Punch!

H - Crouching Heavy Punch

  • Now let's copy "Standing Heavy Punch", change Comment name to "Crouching Heavy Punch" and change Custom Event's name to State 1505 along side with State ID value in "New State Definition - Standard" node!
     

  • Next let's not forget changing "Character Stance" in State Definition and "Attack Stance" in Attack Definition to "Crouching" as well.

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_CHP_FB".
     

  • The attempt to hit is in "Frame Run 1" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=1".
     

  • We also change State Change Addon's value to 11, which is the Crouching Idle State.

  • Lastly as we check the Flipbooks' Sprites, we see that we are attempting to hit the Target in both Frame Run 1 and 2 so we set the Box Trigger Conditions on Attack Definition to "<=2".

  • We will be using this Attack as an Uppercut to launch Enemy into the air so we need to change "Attack Segment - Movement Data" only for "Standing" input of "Impact Movements Extension.

  • ​​And let's not forget to change Impact Attributes' "Aim Values" to "Mid" and "Animation Values" to "Up" for Ground and "Medium for "Air" so that the the impact will be more towards the Stomach of the Enemy. 
     

  • The value "Up" is meant for showing a bigger force than a regular Attack. You will immediately see the difference than a regular one once we do the Attack!

  • Now lets copy the Input State Definition of Crouching Medium Punch and convert it to Heavy Punch instead!
     

  • We are using value "7" for "Act System Bool List" and set "State to Trigger" to "1505" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Heavy Punch".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Aerial Heavy Punch!

I - Aerial Heavy Punch

  • Now let's copy "Crouching Heavy Punch", change Comment name to "Aerial Heavy Punch" and change Custom Event's name to State 1510 along side with State ID value in "New State Definition - Standard" node!
     

  • Also let's not forget to change Character Stance in the State Definition as well (like I did previously ^-^).

  • Now that we have our State Definition ready, we can move on. We don't need to change Control Adjustment but we need to change Movement Adjustment!
     

  • We will set its values to "No Changes". But  we need to tell UF2D that this Fighter is not simply Jumping anymore but changing State, so the "Ground Landing" result should be redefined!
     

  • We will do it with "Movement Extension - Z Contact SM Triggers" just like we did in "Aerial Medium Punch" previously.

  • Let's move on. It is time to change the Animation to "Omen_AHP_FB" in "Update Animation" Component.
     

  • The attempt to hit is in "Frame Run 2" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=2".
     

  • Then we can remove State Change Addon as we already fixed that with Movement Extension.

  • Next let's not forget changing "Attack Stance" in Attack Definition to "Aerial".
     

  • We can keep Trigger Conditions for Hit and Guard Box to "<=2".

  • We will be using this Attack as a way to force Enemy fall to the ground so we need to change "Attack Segment - Movement Data" only for "Aerial" input of "Impact Movements Extension.
     

  • We will do this by giving "Z Velocity" a NEGATIVE value and set "Fall If In Air" boolean TRUE.

  • Now lets copy the Input State Definition of Aerial Medium Punch and convert it to Heavy Punch instead!
     

  • We are using value "7" for "Act System Bool List" and set "State to Trigger" to "1510" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Heavy Punch".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Ground Heavy Kick!

J - Standing Heavy Kick

  • Since Heavy Kick isn't too different than a Heavy Punch, there is no reason not to copy it to save time!
     

  • Now let's copy "Standing Heavy Punch" and change Comment name to "Heavy Kick" and change Custom Event's name to State 1600 along side with State ID value in "New State Definition - Standard" node!

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_SHK_FB".
     

  • The attempt to hit is in "Frame Run 2" so we need to change the Play Sound Addon's Condition to reflect that to match the whiff sound so we set it "=2".
     

  • Lastly State Change Addon's can stay 0 as it is the Standing Idle State.

  • Attack Definition doesn't need too much of a change as the Box Trigger Conditions are fine as they are.
     

  • You can still change the Impact Sound though to Omen_HKHit if you so prefer!

  • Now lets copy the Input State Definition of Standing Medium Kick and convert it to Heavy Kick instead!
     

  • We are using value "10" for "Act System Bool List" and set "State to Trigger" to "1600" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Heavy Kick".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Crouching Heavy Kick!

J - Crouching Heavy Kick

  • Now let's copy "Crouching Heavy Punch", change Comment name to "Heavy Kick" and change Custom Event's name to State 1605 along side with State ID value in "New State Definition - Standard" node!
     

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_CHK_FB".

  • The attempt to hit is in "Frame Run 1" so we can keep the Play Sound Addon's Condition same. Same goes for Stage Change Addon as well.
     

  • We also change State Change Addon's value to 11, which is the Crouching Idle State.

  • Now let's turn this Attack Definition an attempt to Trip the Enemy. Attack is done in Animation Element 1 so it is okay to set Trigger Conditions for Hit and Guard Box to "<=1".
     

  • A Trip is not meant to be guardable if the Enemy is in Standing Stance so lets change "Guard Flag List" by setting its "Standing" value to FALSE.

  • We will be using this Attack as to make Enemy trip and fall to the ground so we need to change "Attack Segment - Movement Data" and its "Impact Movements Extensions.
     

  • First Extension that will be changed is for the "Success - Standing / Crouching / Aerial". We will not have any X Movement and Z Movement will be a slight rise up and fall. We will also set "Fall If In Air AND On Ground" booleans TRUE. Let's make sure that Enemy can't bounce from ground too.

  • Second Extension will be for "Guard - Standing / Crouching" and it can stay as it is. For "Guard - Aerial" one we can just have a smaller Z Velocity and it will be fine!

  • ​And let's not forget to change Impact Attributes' "Aim Values" to "Low" and "Animation Values" to "Trip" so that the the impact will be more like a Tripping animation wise.
     

  • You can still change the Impact Sound though to Omen_HKHit if you so prefer!

  • Now lets copy the Input State Definition of Crouching Heavy Punch and convert it to Heavy Kick instead!
     

  • We are using value "10" for "Act System Bool List" and set "State to Trigger" to "1605" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Heavy Kick".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!
     

  • Now let's do the Aerial Heavy Kick!

K - Aerial Heavy Kick

  • Now let's copy "Aerial Heavy Punch", change Comment name to "Aerial Heavy Kick" and change Custom Event's name to State 1610 along side with State ID value in "New State Definition - Standard" node!
     

  • Let's move on. Movement and Control Adjustments can stay as they are but of course we need to change the Animation to "Omen_AHK_FB".

  • ​And let's not forget to change Impact Attributes' Animation Values" to "Hard" so that the attack land will look impactful.
     

  • You can still change the Impact Sound though to Omen_HKHit if you so prefer!

  • Now lets copy the Input State Definition of Aerial Heavy Punch and convert it to Heavy Kick instead!
     

  • We are using value "10" for "Act System Bool List" and set "State to Trigger" to "1605" since it is the State ID this move belongs to.
     

  • Also lets change "Single Tap" value to "Heavy Kick".

  • Let's see if our State is now in the game! If you followed up till now, it should all work!

    This concludes our long journey about Medium and Heavy Attacks! We will be talking about how to connect them to each other to make combos but for now let's move on to making a simple Forward and Backward Dash in next section!

bottom of page