The Moon Fields * Combat Junior IIIrd Smash

Working on how attacking and blocking works.

Right now all attacks have a value that we call stunLength. A Moonblade stab and a Moonblade swipe have different values for stunLength. On hitting a player the player that was hit is stunned for time stunLength. Because we don’t have a stamina bar like in Dark Souls we didn’t want players to be able to just mash on the other guy. My first solution was to just stun the aggressive player with stunLength.

This was an OK solution! But!

I wanted some weapons to be stunned MORE and some weapons to be stunned LESS while also giving the shields that do the stunning a variable ability to stun MORE or LESS.

So I gave the shields a value called stunReflect and I gave the weapons a thing called internalStunMultiplier. When calculating the stun given to an attacking player being blocked the new stun time is stunLength * stunReflect * internalStunMultiplier.

tldr hitting a player stuns the hit player for stunLength
AND hitting a shield stuns yourself for stunLength * stunReflect(from enemy’s shield) * internalStunMultipler (from the weapon you used)

So the new system works as such - fast aggro weapons like a hatchet can be spammed without much recourse because its internalStunMultiplier is low, but pokey weapons like a trident can’t be spammed well because its internalStunMultiplier is high. All of this is adjusted based on shield and positioning and rotating around enemies and if you get a hit or don’t get a hit, but… yeah…