Learning multiplayer help.

I think it is time to start learning about multiplayer so i have a few questions. Thanks for all answers.
I have little to no experience in multiplayer so some of these question may be basic stuff.

  1. If i setup a co-op game, There would be two players are they both clients or is one the server and the other person the client?
  2. What does ROLE_Authority do? What is it actually looking for? When would i need to use ROLE_Authority when im looking for the server or the client?
  3. Why do i need to replicate stuff? Why cant i just code the stuff for the character without using Replication?

Do remember i have little to no experience in this stuff so answer for these little question will mean a lot.
Also any links to any good pages or tutorials will also help thanks.

There will need to be a server, Either a dedicated one or a listen server(where one of the players acts as the server)

You use that to tell if a client or server is running the code.

The client/Server will NOT see changes that are not replicated or use a RPC to send the info.

Epic have a tutorial about using sessions in blueprint, They also have one on replication.
Google is your friend, Just google what you need to know (Like how to replicate properties).

I suggest you get yourself famalier with how the engine works before working on multiplayer/replication stuff as you will have a better idea of how to approach some things without adding the complication of replication.

There is the “ShooterGame” example, I beleive it is on the community or learn tab of the launcher.
There is also a “Survival Game” example series that you can download (I beleive it is ~6GiB to download it tho)

HTH

Here is a highly recommended networking guide that will answer a lot of your questions http://cedric-neukirchen.net/2017/02/14/multiplayer-network-compendium/

I don’t know how I forgot to mention that.

It is WELL worth a read.