There were a few issues along the way, but I mainly used these tips (up until the point of using C++, I wasn't prepared to use the time that way).
https://wiki.unrealengine.com/Local_Multiplayer_Tips
The main problem I had were I just had to control how the default player pawns were spawning, and take control away from them by making them possess a new pawn as soon as I could.
Here is my code for how I spawn multiple players, and to get them all on one screen, I had to turn off 'splitscreen' in the project settings. It looks simple, but it took a lot of work to get it down to that.
And here's my players all in the same game, differentiated by colours on their character and the marker above their head.