Tutorial request: Advanced combo animation system improvement - Unreal Engine 4 + Unreal Engine 5

แชร์
ฝัง
  • เผยแพร่เมื่อ 28 ธ.ค. 2024

ความคิดเห็น •

  • @antwainmarlowe3832
    @antwainmarlowe3832 2 ปีที่แล้ว +5

    For anyone looking to make a NUNS style combat system this is the PERFECT Tutorial to do just that! Absolutely amazing guide. Thanks again man! 🙌🏾

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      Thank you. Glad to hear you like it. :)

    • @akzork
      @akzork ปีที่แล้ว +2

      NUNS?

  • @WAR_1933
    @WAR_1933 2 ปีที่แล้ว +3

    This is a great topic to cover thank you

  • @maddened3746
    @maddened3746 ปีที่แล้ว +2

    this is just great dude ..... the only thing that i felt missing with the previous system was this... and now it's covered and works great with my system ..much much thanks dude ....

  • @JarivanBatista
    @JarivanBatista ปีที่แล้ว +1

    amazing!

  • @natecoet3291
    @natecoet3291 2 ปีที่แล้ว +1

    This was very good,thanks again

  • @XAVES
    @XAVES 2 ปีที่แล้ว +1

    Thank you!

  • @cantTouch948
    @cantTouch948 ปีที่แล้ว +1

    Thanks bro

  • @YakAttack252
    @YakAttack252 2 ปีที่แล้ว +3

    Perfect improvement to the 1st video on combo attacks. Was thinking if a tweak is possible where instead of the same default light/heavy attack, you use an array of attacks that can be randomly selected as the start of the combo, then it follows back into the sequence of animations in the mintage?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +2

      Sure, that is definitely possible You would essentially have it the same way as it is now, with the difference that the first attack is randomly taken from an array like you say. Then the chosen attack itself will have its defined moves in the combo chain like normal.

    • @YakAttack252
      @YakAttack252 2 ปีที่แล้ว +4

      @@LeafBranchGames Yes indeed this was very easy to implement due to how advanced and flexible your combo system is. I just had to create a Name variable which i then changed into an array. then i added each named attack (i.e Light01, Light02 etc) as the array elements then replaced the defaultlightattack/defaultheavyattack node in the eventsetdefaultcombo chain. So now the combo's 1st attack starts with a different attack each time making it less predictable and more dynamic. Got yourself a subscriber and i am looking forward to watching more of the videos. keep up the good work.

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@YakAttack252 Cool to hear it worked out so well for you. Thank you for your support. :)

    • @Maelgrim35
      @Maelgrim35 10 หลายเดือนก่อน

      @@YakAttack252 yes but how did you set up the animation in the montage to be random if we are setting it manuallly and adding notifies and such, thanks

  • @LegitLord2000
    @LegitLord2000 2 ปีที่แล้ว +1

    I could be wrong, since I can’t watch it just yet, but I think this is what I been looking for, for the past 2 weeks lol. Everyone who does tutorials for setting up the paragon attacks always start from scratch and have all this extra stuff like, the blueprint is already there I just need to know how to set up all the attacks and stuff 😂 And usually they’re from 3-4 years ago too

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +2

      This should be a far more flexible and scalable combo system that is in the paragon system. But this video is just improving on the system, the original sytem video you can find in the description. It is a bit longer because we have to setup a framework first.

    • @LegitLord2000
      @LegitLord2000 2 ปีที่แล้ว

      @@LeafBranchGames Thank u Sensei LeafBranch 🙇‍♂️

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@LegitLord2000 You are welcome.

  • @Alex-eu6rw
    @Alex-eu6rw 26 วันที่ผ่านมา

    So how do you combine the light and heavy attacks on separate montages?
    Like light 1
    Heavy 2
    light 3

  • @moiseman
    @moiseman ปีที่แล้ว +2

    So with this cool setup there's a slight problem imo, when the input is triggered it'll instantly skip to the next animation, as long as it's within the ComboNotifyState window, but you probably want each animation of the combo to play smoothly at the same rate regardless as to when the attack input is pressed within the notify state window.
    So for all the people who want to do that, there's a simple fix, all you have to do is set up a boolean "has attacked" or "inputpressed" that is only true during the notify state events and let the end of the notify state trigger plays the animation if it's true. (do that before reseting the combo name obviously)
    Amazing videos though
    👍

    • @LeafBranchGames
      @LeafBranchGames  ปีที่แล้ว

      Thank you for sharing this information.

  • @ussdev1988
    @ussdev1988 2 ปีที่แล้ว +1

    Thank u :)

  • @user-tq7vo4is7w
    @user-tq7vo4is7w 3 หลายเดือนก่อน

    Thank you for the vibes and the information, appreciate it both. Only downside was the unsightly choppy animations which as an animator pains me to look at.
    I just wanted to mention that to vent off and to leave this little tid-bit to here for anyone who finds it in the comment section and cares to read. I love that there are souls-like games, I want to play them but they unfortunately almost always they have such blunt, "springless" animation that it pains me to look at at the trailer let alone play it.
    every indie game developer should and can learn how to design satisfying, great animation. And by learn animation I don't mean just how to animate 3d rigs but learn and get an insight on animation theory. That's what I want to highlight. There are great books and youtube tutorials on this. Making a bad animation and a good animation takes rought equal amount of effort. So the person who animated the stock animation in this video could have done much better with the similar amount of effort. Next Frame Plus youtube channel can be a great place to start. Get the fundamentals that applies to all forms of motion picture and you'll design great animation.
    Dear youtuber, if you actually made that choppy animation which I've been bashing here I'm so sorry I didn't meant to say anything negative about you. Awesome video thanks!

    • @LeafBranchGames
      @LeafBranchGames  3 หลายเดือนก่อน

      Thanks for the feedback. I didn't make the animations. Like I state in the video, they are Paragon animations and therefor made by Epic games.

  • @ParthPatel-dm7yk
    @ParthPatel-dm7yk 2 ปีที่แล้ว +1

    My character keeps moving while the play montage is taking place, How do I create a system where the character stops as soon as the playmontage is presses and resumes the movement once the combo attacks are finished? Everything else about your video works perfectly fine, thankyou so much for creating it. Looking forward to hear from you

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      If you want to be able to swing attacks while moving, then you can blend upper and lower body differently, like in this tutorial: th-cam.com/video/y7iLItzwGTM/w-d-xo.html
      If you don't want to move you can disable the movement for the duration of the played montage on the controller.

    • @hakkutodev
      @hakkutodev 2 ปีที่แล้ว

      excuse me, i'm new to the tutorial, i'm still stuck in this issue, how can i set the duration of movement disable depending of these different animations duration in the montage? Thank you for the great tutorial

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@hakkutodev The events that the montage has ended are places you can use to enable movement again.

  • @mentaltreason
    @mentaltreason 2 ปีที่แล้ว

    How would I be able to implement, actions like hold and double tap to a combo

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      You may want to look at my enhanced input tutorials, you have a lot of functionality with triggers and modifiers there.

  • @SuperMontana2008
    @SuperMontana2008 2 ปีที่แล้ว +1

    can you add spells to this, like the witcher stun for example?

  • @RoninPandaZ
    @RoninPandaZ 2 ปีที่แล้ว +1

    Hello, thanks for the amazing video! Quick question with your combo system is there a way to make it so that after a specific amount of time if a button is pressed it will go into a different animation? For example, if you do a light attack 3x back to back immediately, you get one combo but if you do it two times and delay the last light attack, you get a different combo.
    Also, how would you handle air combos/special attacks with this system, and to add more combos and routes to this combat system, I'm assuming I would just add more animations to the Montage and name them according to the button?
    (Wanted to use your combat system for my fighting game, so just asking all the questions I can now)

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      You just need to add more anim state transitions. So if you want to go from attack A to attack B if they press early, have a state for that, and if you want it to instead go to C just put another state in the combo that goes to C during that period. It is exactly the same as what the system is doing right now, but instead of one transition state you have a few of them in sequence. Depending upon when the button is pressed the active state will determine what the next combo is.

    • @RoninPandaZ
      @RoninPandaZ 2 ปีที่แล้ว

      @@LeafBranchGames
      Ah ok I think I understand, thank you for responding. So I would just need to add a state and place it at a delayed time in the montage to use it for my purpose, but then how would air combos work with this system?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@RoninPandaZ What is the issue?

    • @RoninPandaZ
      @RoninPandaZ 2 ปีที่แล้ว

      @@LeafBranchGames
      My issue is that for air combos would we have to use a branch to check if the character is in the air, then proceed from there into a different route where we call an in air combo montage, which launches the player and the enemy?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      @@RoninPandaZ Your air combo montage would only be holding valid transitions that are contextual. Your launch montage would only be able to transition into to an in air combo. Your in air combo would only be able to transition into other related montages. Your allowed combo path you setup with your transition states. If a player doesn't launch into the air, then then have transitioned into a different montage which will have different paths than in air.

  • @XxRiekXx
    @XxRiekXx 3 หลายเดือนก่อน

    Hey man awesome video! I am still have an issue with the attack starting over if i mash the attack button, I followed the guide to a tee but still no idea what could be wrong? Any ideas? also do you have any new discord links i would love to join

    • @LeafBranchGames
      @LeafBranchGames  3 หลายเดือนก่อน

      Unfortunately, that means you have missed something in the tutorial. :)
      Best approach would probably be to troubleshoot by debugging the specific case where your repeated input is to be executing and see if everything is behaving and looking like expected.

    • @XxRiekXx
      @XxRiekXx 3 หลายเดือนก่อน

      @@LeafBranchGames the only difference I can spot is that I’m using the enhanced inputs on UE5. So I have a started rolling to the branch instead of a pressed from the standard input node. Could that be my issue?

    • @LeafBranchGames
      @LeafBranchGames  3 หลายเดือนก่อน

      @@XxRiekXx Possibly, depending on the input key events and setup for the input action. But it should show up during debugging. Also, the discord link in the description works to join the Discord.

  • @SignificantSin
    @SignificantSin 2 ปีที่แล้ว +1

    how would you make it buffer the input, instead of cancelling the animation straight into the next attack, to make it so if you input in the window it will just do the next attack after the window finishes?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      Sounds like you want to save inputs temporarily, then wait for the end window event to trigger and then process any input you have stored before clearing it - and have that execute the next montage playing.

  • @craneharran9662
    @craneharran9662 2 ปีที่แล้ว +1

    Hey man, great and useful video, the only one that could help me!
    I just wanted to ask a question, is it normal that if i only click the combo button once, it keeps repeating automatically the first slash and doesn't stop?
    I mean, if i don't mesh buttons and just press once, instead of only doing the first slash, he repeat it endlessly..and does the same with every slash.
    Hope to have been clear and hearing you soon, thanks anyway!

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      Thank you, glad to hear you like it. No that is not normal. I would suggest you debug that and see where the erratic behavior is rooted. If you don't know how to debug, I have a beginner tutorial teaching some basics here: th-cam.com/video/zN7XOSlxAJA/w-d-xo.html
      It is really important yo know debugging when trying to find errors.

  • @NlCEWorkShop
    @NlCEWorkShop 2 ปีที่แล้ว +1

    Hello kind sir, I’m currently implementing this in my multiplayer game, and am trying to do the logic in character bp but couldn't get it to work, when I debug with print string it seems the light combo var is being set to light02 correctly and it feeds in to the play montage node, but the client character just doesn't want to play light02(even when print string says light combo var is light02). Server Character goes from light01 to light05 no problem, oh and I have the play montage, set default, next combo and combo variable all set to multicast.

    • @NlCEWorkShop
      @NlCEWorkShop 2 ปีที่แล้ว

      And the reason why I'm trying to move the logic to character bp is that when I setup everything in animbp, it seems the server char animation always twitches and glithes(skipping frames) when viewing from client, works fine when it's the other way around or client to client though... Any workaround or best practice you recommend?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@NlCEWorkShop The only thing I can do for you in this case is direct you to a great resource that goes through how multiplayer works: th-cam.com/video/TEojA3VBXG8/w-d-xo.html
      I tend to avoid troubleshooting multiplayer specific problems because there are so many more aspects of complexity. Sorry.

    • @NlCEWorkShop
      @NlCEWorkShop 2 ปีที่แล้ว

      @@LeafBranchGames It's totally fine, i thought it would be too complex to troubleshoot too, still, your tutorials are really inspiring, maybe instead you could think about making a tutorial on how to replicate this combo system? Thanks again for your time, have a great day!

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      @@NlCEWorkShop I will put it on my todo list. Thank you for the kind words. Glad to hear you are being inspired. :)

  • @DonsT199
    @DonsT199 ปีที่แล้ว

    Now with an Enhanced Input System we had combo trigger will this be helpful for improving this system further ?

    • @LeafBranchGames
      @LeafBranchGames  ปีที่แล้ว

      From what I can tell, it won't add anything useful. But I will think about it and return to the topic if I can find a good use.

  • @pocdavactube3475
    @pocdavactube3475 2 ปีที่แล้ว

    Do you think you could create a tutorial about charged attacks?

  • @jtscott8807
    @jtscott8807 2 ปีที่แล้ว

    Cool! Is there a way the character can rotate while attacking? Kind of like move around?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      Sure. If you have for example a targeting system implemented you can lerp towards your target during or between the animations if you want.

  • @kylegilmore9278
    @kylegilmore9278 2 ปีที่แล้ว +1

    I have four different types of attacks with this system: light, heavy, lightleg, and heavyleg. Heavy01 is the first animation in the montage. When I press Light01 it will play Light01. But when I press HeavyLeg01 and LightLeg01 it will play Heavy01 first then play the first animation for the respected attacks. It’s very strange and I’m not sure what’s wrong with it. Please help.

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      The easiest way to find problems is to understand what is happening. This is done with debugging. If you are unfamiliar with debugging I teach the basics here: th-cam.com/video/zN7XOSlxAJA/w-d-xo.html
      It is a crucial part of software development.

    • @TheMrTaipan
      @TheMrTaipan ปีที่แล้ว

      Same problem, tried for the past few hours to figure it out. I'm trying to play one of two meter burn attacks and it just plays the first animation placed in the montage then it will play the special attacks after. Might just make a separate montage entirely, and somehow get them to still combo out of the light and heavy attacks.

  • @antwainmarlowe3832
    @antwainmarlowe3832 2 ปีที่แล้ว +1

    Hey, quick question. Is there a way to make it ignore an input? Like let’s say the combo goes Light01 > Light02 > Light03. But instead they press Light > Heavy. Is there a way to then cancel out the combo and ignore any further inputs until the most recent animation finishes?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      You can. Not sure it would be very clean. But you can do it in several ways. Have a state to keep track of, or a boolean and reference towards that to see if you want to even consider any new inputs before it resets to default again.

    • @antwainmarlowe3832
      @antwainmarlowe3832 2 ปีที่แล้ว

      @@LeafBranchGames thank you! I'll give that a try and see what happens

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@antwainmarlowe3832 Good luck

  • @chuichui8162
    @chuichui8162 2 ปีที่แล้ว

    Thank You for the tutorials. I did everything exactly like you but somehow it prints "false" only when starting the game. It does print "true" for every attack but never goes back to "false". What could be the problem?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      Then you have unfortunately missed something in the video. I would suggest either going through the video to make sure everything is identical or debugging the code to find the root of the issue.

    • @chuichui8162
      @chuichui8162 2 ปีที่แล้ว

      @@LeafBranchGames Thank You very much for answering! I will start from the beginning but this time with UE 4.27 and pay extra attention.

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@chuichui8162 Good luck!

  • @Duo_Septimdra
    @Duo_Septimdra 2 ปีที่แล้ว

    So how do I make the combo reset when you don't continue attacking immediately?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      What do you mean?

    • @Duo_Septimdra
      @Duo_Septimdra 2 ปีที่แล้ว

      @@LeafBranchGames Sorry I didnt get a notif, but I mean when I use this, it transitions to the next attack the next time I press the attack button no matter what. How can I make it go back to Light01 instead of advancing?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      @@Duo_Septimdra If I understand you correctly, that is not how it works in the demonstration, right? So that just means you missed some part of the logic. Go through the video again and make sure you do everything the same - then it should work fine.

    • @Duo_Septimdra
      @Duo_Septimdra 2 ปีที่แล้ว

      @@LeafBranchGames I will go through it again and make sure I have everything right.

    • @Duo_Septimdra
      @Duo_Septimdra ปีที่แล้ว

      @@LeafBranchGames I came back to the project and I did not miss any logic. The solution was to shorten the notify state so it doesn't go to the end of the section, which resets the combo correctly

  • @twigz7003
    @twigz7003 2 ปีที่แล้ว

    Is it possible to rotate your character in between the transitions? i.e. light01 - light02 change direction to account for enemy movement... My character continues going the initial direction even if I turn the camera or use the movement keys.

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว

      Sure, you can add some rotation change between transitions. Or you could implement rotation during transition if you want to.

    • @redocykuron
      @redocykuron 2 ปีที่แล้ว

      @@LeafBranchGames yeah, but how can we do that?

    • @LeafBranchGames
      @LeafBranchGames  2 ปีที่แล้ว +1

      @@redocykuron You could for example when you get a input to do a new attack either just rotate it directly to look in the correct direction. The direction could be either your camera direction or a targeted enemy if you have a targetting system. Or you could lerp between your current rotation and the target rotation if you want it to be smoother.

  • @michaelderosier3505
    @michaelderosier3505 ปีที่แล้ว +1

    Great Tutorial!