[Networking] How to test a multi-level game on a single PC?

So here’s my basic setup:

Server:

Main Menu -> Play Game (Host) -> Wait for player to join -> Both have selected characters and other options -> Client presses “Ready” button -> Server presses “Begin Game” -> Loads game level and player variables -> End of that level = new level (same thing)

Client:

Main Menu -> Server List -> Server join -> Select character -> Ready button -> Wait for begin game -> Load level -> ect.

===============

If I try to load the game from my main menu my client sees the hosted game on the server list but can’t load it. I get an error (self generated upon failing to join) and nothing more.
When I try to load the game from the main menu with both “hosting” my client and server load into two completely different levels. (I use Open Level with “listen” (no “”) as the option)

If I try to do this in a standalone game (packaging and then opening two instances) neither can find the other in the server list.

If I try to load the game from a specific level a bunch of things are broken because variables aren’t set as they should be from the Character Select menu (typical settings like player handicaps, username, selected player character, costumes, ect.)

In all of these cases I’ve tried both LAN and Steam and neither work.

**The real problem is that I don’t know how to test my game proper. In an ideal situation I’d like to be able to load up two packaged instances of my game from the main menu, set it to LAN, pass a controller to a roommate, and the both of us play my game from menu to end. How can I do this? I’m more than willing to share my game code if it helps anyone help me.
**
Additionally, atm the way that I pass variables between levels is that the Server writes everything to an array (ie CurrentHealth array, Username array, Score array) and then at the beginning of the level the server asks each client (PostLogin) to send their username to the Server which is then compared to the list of usernames and, thus, the Server now knows which data belongs to that client (well. Player Controller). If there’s a better way I’d love to hear about it D:

Number of clients 2 in your play menu

I’ve done multiplayer testing before with my prototype. Even had it working through Steam and whatnot. But now that I’m properly setting up the frontend with menus and character selection I’m no longer able to simply use the play in editor (with 2-4 clients) as, for whatever reason, I can’t get the game to start from the menu as described above.

My client and server connect. Print strings are sent back and forth. But aside from the menu (not even the character select screen) they aren’t doing what I’d like them to at all.

I want to go Main Menu -> Character Select (just a UI widget) -> Host Game for my Server.
I want to go Main Menu -> Server List -> Join Game -> Character Select for my Client

And both of them enter the level together from there. Instead, what happens is if I hit Start Game on my Server the server loads into the level and my client’s UI is wiped (no character select, start game, ect.).
Edit: Wiped AND the Client gets stuck in the main menu.
If I start the game on the client first and immediately do the same on the server they wind up in different levels.

Don’t get me wrong, I KNOW that I could just “pre-set” my variables that I’d normally set ingame for ease of testing but uh. It would be VERY nice if I could test the whole game either by myself with a controller pretending to be two people or with a local play-tester. Having to cut into my code/BP and set variables to things and remove my conflicting code so that the game can start from a level isn’t the worst thing in the world, but as I’ll need to also be testing proper (with friends over internet) that means I’ll need to have a solution for both cases. Again, not a problem. Just thought that maybe I was missing something. I mean, what’s the point of LAN being an option if you can’t use it.

Ok when you package your project the multiplayer stops working. Have you tried to use two computers one for the server and one for the client?
This can be everything. Have you checked if the authority nodes are placed and connected correctly?