What's the best/simplest way to set up multi-part weapons and how do i set up its desired systems?

i’ve been trying to create guns for my project, but every time its either seemed to become too complex or it straight up hasn’t worked, and i’m unsure what the best way is.

i started way back when i FIRST got Unreal Engine with basic Static meshes, but i knew even less than i do now, so that didnt last long, not to mention my imports and exports were wrong because i didnt know how to set them, so i gave up on that and went on to try to design characters, which i’m still doing.
However when i was doing the character in question, i learned that Skeletal Meshes can contain Geometry, so i tried that instead, which is where i am now.
the thing is, i have no idea what i’m doing, and am still new to Unreal as a whole.
I think it might matter how i want to set the whole combat system up, so i’ll run the basics;
the Barrel defines where the bullet will go, no crosshairs or weapon blooms, you point the barrel and the bullet goes there, the weapon works as its own mechanical piece independently of the player or environment
my original idea and my current goal sounds simple enough:
the weapon has a float integer that counts ammunition, along with a Bool for whether or not a round is loaded, if true it adds an extra +1 point to the Ammo Float, which cannot be influenced unless the boolean is set back to false, in which case the gun will not have any extra addition to the float integer
this makes it so an empty gun can still hold a live round in its chamber, which can be shot at any time, if there is no loaded round, the gun will not fire.
the weapon has a socket (or scene component, im also unsure which one to use, but i want the ejected shells to be physical objects, not particles) for the shell ejection, which should probably spawn like an actor of a spent shell mesh, with an initial velocity value to make it actually fly out of the ejection port.
the weapon also has a socket to animate the magazine in/out of the magwell, after it leaves it should become an actor, or an independent item in the world with physics

it sounds simple, but i’m not sure the best ways to execute the desired systems or make it easily re-usable for additional firearms i add on later, these things are everywhere in almost every video game so i would assume they’re simple, yet it’s not even the systems i want to add on that makes this something i cant figure out. Help would be greatly appreciated

ALSO, for the meshes themselves; i model them myself in Blender, and i have recently rigged my gun so i could get it as a Skeletal Mesh Asset, however i can also remove the rig if needed, it all depends on what the best actions are, and all the meshes belong entirely to me, so i can change whatever is needed. I just need to know WHAT to do.