Long time no see.
TLDR:
I’ve been working on and off to this project mainly because of IRL stuff and a much frustration being unable to sort out the hit detection problem but this time I think I got it.
Well a few days ago I started even another redesign of the logic and I think this time I got something that works (decently).
I was still working on a variation of the sphere trace with another additional line trace check to the previous position, all the above on Tick.
On that Nth attempt at troubleshooting it occurred to me that there was some inconsistency in the stored Out Hit.
My logic worked as follows:
make a sphere trace and store the Out Hit into a Variable then break the result and branch the Boolean Blocking Hit: on TRUE to the rebound logic and on FALSE to the second Line Trace, and, what do you know, this check wasn’t giving consistent results: sometimes wasn’t firing up (being executed) even if the Sphere Trace’s Out Hit was correctly stored into the variable.
So I tried, in addition to that, to store the Return Value of the Sphere Trace instead in a Boolean variable and, apparently, fingers crossed, knock on wood, that did it.
I get, until now and hopefully, consistent results with speeds up to 10000 U/s which is more than enough for the scope of my project in which the projectile is going to travel at 3000…4000 U/s TOP and if when balancing the game I need more there still some headroom available.
I want to thank you guys again for the suggestions and the advises, I didn’t get to try @Rev0verDrive’s because my logic wasn’t as close and I was too lazy to change path. Additionally I, stubbornly, felt like I wanted to come up with a solution by me instead of the built-in nodes.
And that’s it for now, I’ll add more if everything goes to sh*t again.
Now onto the next weirdness, inconsistency or bug. -.-"