How can I set up my Project & Assets to fully Support Multiplayer/Co-Op?

So I am currently reworking a lot of my project to fix some issues as well as trying to optimize and improve it further.

However, my biggest problem right now is trying to make sure I set up my project to support Multiplayer/Co-Op.

Two Addons I have in my game project already support Multiplayer ( Weapon Component & Blueprint Main Menu) but anything else I add into the project doesn’t so I wanna make sure I am going about it the right way so that I don’t have to fix it all again later on down the road.

So far all I can think of is looking at Network Replication Stuff and Any Multiplayer Tutorials, not sure which would be good for this sort of thing. I was also looking at UE4 Documentation as well but not sure which would be a good starting point or if I should just look at all of it.

Can someone with more experience on this sort of thing advise me as to the best approach or some recommended youtube videos for this? Thank you kindly in advance.

I woyld start in the Content Examples project - I think that is where they have a level which shows you the difference between replication, RPCs, and Notifies.
You need to understand those, and also a huge caveat: The Character pawn classes have a secret network smoothing feature in their C++ code that no other pawns or actors have, and without it, movement in network looks jerky.
Also this replication happens by using their Control Input nodes rather than moving them directly.
When you do anything else over network, you have to send the Server and Multicast RPCs and decide which variables to replicate, not replicate, or repnotify.

Exi, aka Cedric Neukirschen wrote an excellent Ue4 networking compendium to explain what is actually happening when you do network stuff in unreal.

Alright thank you for the guidance, I will look into all of that as soon as I have time later this evening.