In search of resources to learn how to create a weapon pick-up system

Hello everyone,

I’m turning to this community because I’m currently looking for quality resources or references to learn how to implement a system that allows a character to pick up and hold a weapon in the hand in Unreal Engine 5. I’ve explored various tutorials on YouTube, but have noticed that each creator has their own method, which has left me somewhat confused as to the best approach to take.

In particular, I’ve been trying to decipher this process by analyzing the LyraStarterGame, particularly in “ShooterCore Content”, in the hope of understanding how this mechanism is set up. I thought “B_WeaponSpawner” might shed some light on this, but unfortunately I haven’t managed to grasp the implementation behind it.

I’m sure I’m missing something and there must be resources, tutorials or sample projects that clearly explain how to achieve this type of interaction system. If anyone here has any recommendations or could share their experience on how to approach and solve this challenge, I’d be extremely grateful.

I’m open to any kind of resource, be it official documentation, video tutorials, code examples, or even direct explanations if you have the time to provide them. My goal is to understand best practices and implement a solid, functional solution in my project.

Thank you very much

General approach is to have an interaction platform setup. Usually custom collision channel and or profile. The actor you want to pickup will implement a blueprint interface and have a collision component to trace against.

If the trace hits an interactive actor and it implements the interface you spawn the skeletal mesh variant of the weapon and attach it to your hand (Attach actor to component).

The actor you interacted with, a static mesh low data actor, is then destroyed from the world.

For multiplayer this has to happen on the server. So Client attempts to interact, it hits a valid target (item). RPC the server to do its own trace. Server does interaction trace, validates the target, then spawns and attaches the skeletal mesh actor, destroys the static mesh actor.

Here’s a tutorial I did for multiplayer doors. It walks through setting up the interaction platform and overtime tweaking it for more advanced usage. Once you’ve gone through this you’ll be in a better place to start working on picking up items, which will require an inventory structure.