This week I would like to talk about some combat GUI elements, player deaths and movement abilities.


General rule is that you should be able to turn on/off all combat GUI elements, which ever settings you prefer. 

We are going to support player health using both graphic indicators and numbers. You can choose one of them, both or nothing.
In general we are trying to use UMG and avoid any low level "Slates".


First step for us was to plug in ragdoll deaths to the player to avoid extra work for the animator which is not necessary at this stage of development. Deaths will look organic and random without spending valuable resources on it. 

Thanks to "Fade" who prepared the ragdoll setup we now have player deaths ready. For later stages we are aiming to plug in some fatalities, so you can easily end up split in half by a fully automatic Gatling gun etc. 
   Deaths will be dependent on amount of damage , critical strike and/or weapon type/damage which caused the death. Where normal damage should trigger ragdoll and any other fatal (huge) damage should trigger some fatality  animation corresponding to damage element and weapon type.

I implemented a basic damage system by which you can kill other players and modifiable player health regeneration. 
Once the player health reaches zero or less he dies and the body becomes a ragdoll.

As you can see in the video below there is a development version of the "revive option" when player can re-spawn. 

Common practice in games such as Diablo is whenever player dies he/she leaves a tombstone or any kind of interactive beacon for other players to revive him. We really like this mechanic so this will be another addition to our "player death" mechanic.



I am currently working on movement abilities. Particularly on the roll forward motion.
Its quite tricky a task to have smooth results in multiplayer. I will share my experience about that in my next dev diary or you can hit me up at our Discord channel for more information.

In the video below you can see the basic roll animation which is quite straight forward.
But this is only a part of the story. We need to deal with obstacles,distances, replications at server/client etc. We want to have as much of a stress-free experience for the player as possible, so control over this kind of movement is one of the higher priority to have it done right. 


Thanks for attention and I am looking forward to sharing my progress in the next diary.