Download

Real Time Collisions: Attacks, Hazards, and others.

Hi, I’m a bit new to game development and unreal engine and I’m having trouble with real time collisions, like those in a hack and slash or action game. I’m mostly investigating/prototyping how to do certain things right now. I can deal either with code or blueprints as needed or preferred.

I’ve been investigating about how using the tools provided within the engine itself can I design and construct attacks or hazards like a punch, a sword slash, an area effect, and others. I’ve managed to get a cannon that throws exploding cannonballs running up, but I’ve hit a serious roadblock.

Imagine you have something like a sword slash, a flame thrower, a falling meteor… These things have a certain local origin when played and some of them even require a certain “animation” of collision volumes.

I’ve seen how other people do this on several tutorials but there are a few caveats on each method:

1 - Using an animated 3D model and then attaching a collision volume to a weapon, or originating line traces from it, which binds the possibilities of what you can do to what you can animate in 3D.

2 - Using matinee to animate trigger volumes, like a crushing ceiling. The problem is that matinee actors are bound to the level and I haven’t been able to replicate them either, like when you instance a class or blueprint.

3 - Animating the collision volumes through code. If it’s a mathematical formula, like a moving platform or a projectile, it works fine. However, if you need a more “complex” animation, like that of a Shoryuken in Street Fighter, the only way I’ve seen it done is reading vector values written on a TXT, which is a pain to develop with since it’s not intuitive at all and requires a lot of trial and error. Certainly not a very efficient method.

Since I won’t have a 3D animated character in all cases and especially I don’t want to depend on that when designing attacks, hazards, and similar stuff, I’d like to figure out an alternative to method 1. I’d like to know which alternative methods exist that would let me “animate” these collision volumes from an origin root location and instancing/playing them as needed, like if I could make them as actors or actor components. I’ve thought about something similar to what fighting games do: Visual Example. This would be similar to method 3, but being able to visually edit the position of the volumes each frame instead of guessing or copying values on a TXT. However, I don’t know if it’s feasible yet.

So, my questions are:

1 - Is it possible to do something like what I just described (method 3 but visually) within unreal or using a free external tool without making a whole new toolset for it from scratch (a specialized editor module)?
2 - Which other ways are there to set up this kind of collision volume animations so that I can design different types of them?

Thank you very much in advance.

You can always put Box/Capsule/Sphere collision on anything that moves…You can make a Blueprint actor out of anything and add and add and add until you get all of what you want that actor to accomplish…Solus is a great example of that…

as for Hacky and a Slashy hit my WIP link below I go through a series of tuts that’ll explain most of that Collision stuff…

For magic like Meteors and Fireballs (both of which I have working in game) I use either a Projectile with Sphere Collision at it’s root and a Pretty particle effect in the middle or like when the meteor hits I trace down to from where I spawn the Meteor to the ground and cast a Sphere Overlap Actors wherever it hits the First World Static/Dynamic…ForEach Actor in that Overlap I cast to them to take damage…

Thank you very much for the information, I’ve watched your videos when I was investigating at first and I just re-watched them just in case. Due to my lack of “having an animated 3D model where I can attach collision volumes to” and the roadblock I’m facing concerning the creation of a prototype “basic sword slash” style attack with that limitation, I’ve got some follow-up questions if you don’t mind:

1 - I never heard of this “Solus”. What is it? Google tells me too many possibilities.
2 - Is it possible to animate in 3D with an external program an “invisible” attack using dummy points/boxes that will not be rendered so that I can use certain points as “sockets” to attach collision volumes in Unreal?
3 - Alternatively, is there a way to define, for BP Actors/BP Actor Components in Unreal an animation either frame by frame or through keyframes using the tools already provided within the engine? I’m particularly looking for a simpler, more “developing time-efficient” solution than “define each collision volume for each frame as components for an Actor that will be the attack, then count “frames/time” and activate/deactivate as needed, in order to reproduce the corresponding pack of collision volumes each frame”.

Thank you very much in advance again.