“Only” in quotes because I’ve run through the whole thing with breakpoints, and every node is firing like it should. But when I play it, I can only equip one item, then nothing else. I have two items made, one for each socket on the character mesh. If I pick up one, it works just fine but then the other has no discernible interaction. What might be the problem here?
From your screenshots, the likely culprit is the “Grabbed Something?” bool, plus the way the overlap loop picks its target. I can’t see the whole graph, so check these in order:
- “Grabbed Something?” is set to true after the Attach Actor To Component, but I don’t see anything that sets it back to false once the item is attached/equipped. If the pickup Branch tests that bool (or a Do Once is sitting somewhere in the chain), the second item will always take the False path. Decide what the bool means: “this slot is full” and “I’m holding any item” are different. With two sockets (Face and Right Hand) you want one flag per slot, or better, a variable per slot holding the actor reference (HandItem, FaceItem). Check IsValid on the slot you are about to fill instead of one shared bool.
- Get Overlapping Actors also returns the item you already attached, since it is still overlapping the character. The loop with Break stops at the first match, so it can keep finding the already-equipped item (tag Equippable or Treasure) and break before reaching the new one. Fix: skip actors that are already attached (Get Attach Parent Actor == self, or IsValid on the slot reference holding it), or only Break after you actually attach something.
- “Socket To Attach” is a variable set in the tag branches. If neither tag branch matches, it keeps the old value from the last time. Reset it (Set to None/empty) at the start of the event, and make sure the second item has the exact tag (Right Hand Weapon / Face Slot, tags are case-sensitive and a trailing space counts).
- Put a Print String on the False pins of the branches. The breakpoint will fire, but the exec path may take the False pin on the second item, which looks like “nothing happens”.
If you post the part of the graph left of the first branch (where the loops start), I can be more specific.


