#Whats the best way to make a combat system?

1 messages · Page 1 of 1 (latest)

gray lark
#

hi i am a newbie in scripting with 3 months of experience and I need opinion on whats the best way to build a responsive combat system and what r the good habits i should keep in mind?

mighty river
#

the best way is to first know what you're doing, and second have experience making combat systems Thumbs

young pulsar
#

As pyro said: get some experience in combat systems. It's best to have a rough understanding of what you need in such a system before making an advanced one (as else you can very well end up in an improvement loop (constantly rewriting stuff as it could've been written better instead of actually adding new stuff to it))

Anyways, responsiveness is often linked to a few major factors:

  • Newtons 3rd law of motion: "newton every action has an equal and opposite reaction". If you swing a giant sword around as if it weighs nothing then your players won't have the feeling of it being a massive sword (i.e. they will assume it's a kitchen knife). Make knockback realistic, make the animations feel like it's heavy, add stamina or a longer delay between slashes, etc. Same goes for guns, big 50 cal guns should feel like big heavy guns, not like a nerf gun

  • networking, a boring part of any combat system but it does have to happen. If an attack feels like it should've connected (= should've hit) then it's often best for it to have connected. Yet a network delay (also known as ping) can change this fact. If I attack a moving player, but have a 300ms delay, then the system should be able to check the ping, then see what it was looking like on my screen (lots of ways of doing this, comes down to: check ping -> check the status x ms ago -> decide whether it should connect). That last part is often the hardest, as you need to balance it in a way it feels fair to both parties. A laggy player being able to hit everything is not fun, a laggy player not being able to hit anything is also not fun. The hard part is also deciding on your extrapolation method (how you roll back the game to decide stuff), as there are many ways of doing that, and not all are created equally

and lastly, which is not quite related to responsiveness but more so intuition (new message as I'm out of chars)

#
  • Make the screen react to the state of the player. A little bar showing my hp or stamina? fine. But make me actually "feel" the state of my character by showing some mild effects on the screen. It's a fine line between it feeling intuitive and it feeling annoying. But try to find that line. Add some effects like making stuff less saturated, make my camera zoom in/out depending on my stamina, etc. A lot of small stuff can make the game feel way more immersive, which will not only help with intuition, but eventually also help with how responsive it feels
humble estuary
# gray lark hi i am a newbie in scripting with 3 months of experience and I need opinion on ...

in all honesty the best way i've learned to make responsive combat systems is to copy games look how a already popular game does there combat. look at how long someone gets stunned think about how do they get people in the air and keep them. stuff like that and when you study everything you need. then I suggest start working on your first combat script. keep it simple start with a swing and a stun then evolve from ther

gray lark
#

Thank you guys for all the advice, I actually made a combat system with a working parry mechanic nd dashes too, however I feel like it is not good enough thats why i am looking for some advice.

gray lark
#

Alr hold up

covert agateBOT
#

studio** You are now Level 3! **studio

gray lark
#

I haven’t added any vfx for now since idk where to get it

craggy path