Modular Motorbike Builder

Hey all! I’m currently making a modular motorbike building concept thing
Think sorta along the lines of “My Summer Car” or similar to that, but with motorbikes

Currently, I’m using AttachToActor to join all the actors together, but when I attach a second actor to a certain actor, if there was an actor already attached, it drops off. Is there a limit that you can only have one actor attached at a time?
This has ground the development of my concept to a halt, as I can’t progress on the core of the concept until I find out how to fix this
Is there either
A) A way to use AttachToActor with multiple components?
B) A better way to be doing it? In the ideal world, I’d be able to install AND remove parts as I please, but I don’t think I can do that using AttachToActor

Below is an image of my (rather basic) blueprint

And here’s an image of the motor assembled (Note, the cylinder requires both a cylinder head and an exhaust header. This is where my issue lies)

You can attach (install / remove) more than 1 actor to another actor.
It’s working fine with Attach To Actor.

I’m using this in my project as third person inventory. Multiple items attached to each socket / scene component on the 3rd person model of the player, working fine.

Attach to Actor is capable of this.

You can try to add a boolean check for the cast success before attaching it.
Maybe it’s trying to attach to an invalid actor and get’s screwed up because of this?

So I did this:
Is this what you meant as a bool check? (Sorta new to using variables still)

And if it is what you meant, then it didn’t work, the actor still pops of once I add a the additional part

Here’s a video of what I’m talking about, in case I’ve explained it badly aha

Also, am I using the AttachToActor properly? I can’t seem to find too much information on it. Everyone just automatically says use the Physics Handle

I have a feeling I know what’s going on, but I don’t know how to fix it. When I AttachToActor, say the Cylinder Head onto the cylinder, the Cylinder becomes parented to the Cylinder Head
So when I try to attach the Exhaust to the Cylinder, it detaches so that the Cylinder can then be parented to the Exhaust, because something can’t be parented to two things at once (Making an assumption there)
Therefore, I believe I am using AttachToActor wrong.

With that word vomit, can anyone think of a way for me to use Attach To Actor properly so I don’t have this issue?

Okay, for anyone that comes across a similar issue;

It’s fixed by getting a reference to self plugged into the Parent Actor
And then the cast plugged into the Target
That seemed to fix the issue
You must use it like this every part you wish to connect as well

Hi, PLEASE HELP! Im trying to do something similar but a lot more simplistic, right now I have an EngineBlock set as a blueprint actor using the nodes in your image and it wont snap at all, I cant see whats going on when you cast to the part during the attach actor node, can you break this down to me?

Currently I have an Engine Block, I added a Socket in the Mesh Editor and Called it AirFilter, positioned it and used the AirFilter Mesh as its ‘Sprite?’ in the Mesh Editor so I can align it properly, I then Set up an AirFilter Blueprint, added a socket at the bottom and Called it Mount.

I Dragged Both Sockets onto the ROOT in the Mesh Editor and Saved, Both Have Simple Collision and Physics Enabled.

When I drag them together, nothing happens.

I Have NO IDEA what Im doing at this point and its Driving me mad, Ive been trying to set this up for 2 days now and feel like im getting nowhere and its really killing my enthusiasm.

This was supposed to be a tiny sidequest and its turning out to be taking up ALL of my TIME just trying to get it to work.

Can you break it down step by step for me?:
-How Im supposed to set up the sockets (Do I name the ones on the engine? or the Ones on the filter? Do i have to direct the engine to the filters socket AND the filter to the engines socket? or do i have to set up additional commands in the filter blue print to happen when I cast to it?)
-what each component should have in the blueprints to make them work (do i need to put extra stuff in the event script? which object reads the overlap? engine, filter, both? which is the target and which is the parent?)
-any kind of extra steps, collision, do i need to add a component cube to the viewport and set that as a collision volume? How do I Do this? etc

I NEED SO MUCH HELP WITH THIS, I Did ask it as a question on the Answer Hub but no one has gotten back to me yet