[Bug] Flesh impact effects spawned when hit blocked by shield

Cheo

Active member
Hello, this is an issue I thought I had posted about before but couldn't find anywhere. So either way here it is : when blocking sword strikes with a shield in the demo scene, blade on flesh impact effects can be spawned even though the strike is considered to be blocked as no health point is taken from the health bar. Here is a video from last year illustrating this :


I just checked again in 3.0.18 and the issue is still here. This is an actual issue when working on melee fighting, we don't want that kind of false feedback. Hope this can be taken a look at, thanks in advance.
 
I just checked in 3.0.19 which release notes say "Prevent body surface effect from playing if the shield blocks an attack.", but unfortunately we can still see a blood vfx being spawned on the shield when it blocks a sword strike. It is worth mentioning that the sound effect however seems to be one of sword on metal. Please get this fixed.
 
After some more experimenting, I realzed that the shield was missing a surface identifier. If you give it a Metal surface, it will then block sword strikes with a metallic vfx and sfx. Please fix that in the prefab to avoid other devs the confusion.

I'll make another thread about it later in the week, but the Shield Collider shouldn't be the only option to block attacks, we should have a Shield Action that can block attacks depending on the angle between the target and the damage source. I've started making a custom one which is promising but the effect spawning might be a tricky part, as the surface manager is relying on RaycastHits. Any advice on that front expect making custom spawn functions ?
 
Thanks, I'll update it. The ShieldCollider is required and is not modular in that regard. It will take some refactoring in order to support some other type of collision. The Surface Manager does rely on RaycastHits and removing that would be a relatively big change. The current system will need to use a collider.
 
Allow me to come back yet again to this. I made this video last night, but after taking a look at the prefab I can tell you why we're still getting blood effects - it's because you attached the surface identifier to the root shield object, not to its First and Third person objects which contain the actual colliders.


UCC has more urgent needs than adding surface effects without raycasthits of course, and maybe I can try implementing that myself, but I'd like to see that feature implemented in the future.
 
Top