Collisions detected once

I am having an issue with Actor → Actor Collisions only being detected once. I had this working properly in my project, but then I ended up turning a Blueprint Project into a C++ Project by attempting to create a custom Blueprint Node in Failure. I could not turn back to a Blueprint Project so created a new Blueprint Project and then Migrated all the content from the old C++ converted project. Everything is now working fine with one exception - My Projectiles (Dynamically Spawned Actors) will Collide with my test Enemy Blueprint Once and then will Not collide after that. I have tried double checking project settings between the two projects as well as double checking actor collision settings and static mesh collision settings between the two projects and all seem the same. Just to reiterate clearly - Collisions are detected properly still in C++ Project but only detecting once in the new Project. There is actually no C++ code being used in the C++ project which is why I wanted to convert it back to blueprint only.

Static Meshes are setup with Simple Collisions and have Collision Primitives set on each. All are set as BlockAll in both projects. Collision is enabled as well as overlaps. Physics is disabled on all actors for both projects. Projectiles are set to be the only actors being destroyed when collision Hit detected. Sweep is also enabled for all in both projects. I have a laser weapon which uses traces for hit detection and that is still working properly and always returning a hit instead of only once. I have debugging setup that spawns text displaying damage count as well as print strings that prin when a hit is detected on both projectile and enemy - The spawned text as well as print strings only show for the first hit and then no others after the first detected collision. As well, all projectiles will be destroyed on first hit and then all subsequent projectiles will not be destroyed and will pass through enemy mesh/actor.

Does anyone have any ideass as to what would be causing this? I have not created any code or blueprints that disable collision a anytime.

Thanks for any help. I am at a complete loss here.

If need screenshots let me know what you would like me to screenshot.

Blindminds

Why not just work inside the C++ project. When you start a blueprint project and “add” C++ code like a “blueprint node” you don’t “Convert” it into a C++ project. It is still based in blueprint with C++ added. Might as well use it if it works. A C++ project just starts your base classes off in C++. So the character will be a C++ class not a blueprint version of it. Still the same functionality and all just what is the starting code the engine provides you. Even if you created a C++ project you can still use ONLY blueprints and just make BP classes out of everything. Same with a blueprint project, you can just do everything in C++ even if you start with a BP template.

Because in turning it into a C++ project it then requires Visual Studio to be installed and setup. Keeping it as a blueprint project I dont have to have Visual Studio installed or setup. Im not going to use C++ in this project and want to keep everything blueprint which is why I created a new project and migrated everything because once it had a C++ element added it cannot be undone…from what I have found in research trying to anyhow…

Yes I get that but you said you already have a functioning C++ project. So you must have VS working yes?

The C++ project is missing more than a months of work. And that is not the point here. The piint herw, is to stay away from using a C++ Project and to further my knowledge and mastwry of thw engine by solving rhe problem at hand. I’m sorry but your answers are not helpimg. Do you have any thoughts on why collision would be detected only once?

  1. You never mentioned the C++ project was behind 1 month
  2. Without knowing why you are refusing to use the C++ project it made perfect sense to try and figure out the issue with not wanting to use a functioning project instead of troubleshooting one that isn’t working.
  3. I’m trying to help, others are more than welcome to jump in but no one has yet. It’s not like my “unhelpful” answer/questions are preventing others from helping you.
  4. Obviously if everything you say is true and nothing is changed between the projects your collision should work the same so my first thought was to use the project that isn’t broken.
  5. Those screen shots are useless for figuring out a problem with collision FYI. There is not one blueprint node or collision setting in them
  6. Post screen shots of collision settings, your spawning blueprint, your projectile etc and maybe someone will be able to help you

Hey, my apologies mate, did not mean to come across aggressive there and any help is/was appreciated. I posted those screenshots just to show what was happening. I didn’t know what screenshots to post except well, all of the code lol, so figured I’d see if anyone first had an idea of where the problem would be and post the code needed.

And, this morning I figured it out and of course it was something simple and pretty stupid on my part I guess. The one thing I did not check for consistency was the component stack. I noticed in the new project at some point I had changed the root component of the parent projectile blueprint from the static mesh component to a scene component and made the static mesh component (Which has the simple collision on it) a child to the root scene component. When I put the static mesh component back to being the root and removed the scene competent it worked.

I don’t understand how that affected it the way that it did, but none the less that was completely the issue.

And Nebula, my sincere apologies if I came across as being a jerk. Help is definitely appreciated and I look forward to getting to the point I know enough to give back the community an help others as I have received so much knowledge and assistance through tutorials, the AnswerHUB etc. It’s absolutely fantastic that you and so many others are willing to take the extra time to help those in need.

I had changed the root component of the parent projectile blueprint from the static mesh component to a scene component and made the static mesh component (Which has the simple collision on it) a child to the root scene component.

When I put the static mesh component back to being the root and removed the scene competent it worked.

It makes sense if your scene component had a different collision setting than your static mesh. I think I read somewhere that collision properties can be inherited down the hierarchy. But I think you’re also able to modify that manually. Regardless I’m glad you got it working. No hard feelings

My bad, ignore what I said. I don’t know why what you did works haha I was thinking of when people actually have various meshes and/or collision capsules within one actor that the hierarchy can matter. Scene components don’t have collision true.

Hmmm, you have confused me now. When I add a Scene Component the only option under Collision is “Can Affect Navigation” as a Boolean option. There are no other collision settings for a Scene Component. If I go into Viewport for the Scene Component there is no method of creating a simple collision primitive?