Hello, everyone! Thanks for taking your time reading this.
I’ll add some context before explaining my problem.
I’m developing an online third person rougelike up to 4 players. Each map is autogenerated using the plugin Dungeon Architect and the flow of the game is quite simple. You spawn in one map and you need to reach the exit. Once every player reaches it, all players will move to the next level.
The first iteration of development were using all the default online functionalities from Unreal. I didn’t want to make anything too complex. When a Player host a match, the server will automatically move to [Level 1] and when players join their session, they will spawn in the same level with the correct generated layout (this is the tutorial made by the creator of the plugin). Everything works as expected for now. The problem comes when it has to change levels.
In order to change levels, there’s a blueprint in the exit called BP_LevelConnector which detects how many players have overlapped a box collision. If all players do it, the server will call the blueprint node "Execute Console Command with the following string: “servertravel” + “mapname” + “?listen” (servertravelmapname?listen).
It will take a little while to change the level but it does the job. In editor this works fine but when I package the game and test it with other people, this has inconsistencies. 30% of time it works well, but the other 70% is clients spawning without the UI and without able to move at all, even the camera. This never happens in editor and I’m not sure why this happens.
The second iteration goes like this: After searching everywhere about what’s happening, a lot of people recommend to tick the Seamless Travel option. I did that but the first thing I notice is that the command I used to change levels is no longer working on the editor but if I package the game, the command works and players aren’t getting stuck. There are some bugs like duplicate UI and possible the most important one: The maps are not getting generated. In order to fix these bugs I need to correctly replicate them in the editor but I can’t find how to do that. People says that I should play using the Standalone in the editor but when I play in two instances one, both instances start from the main menu and basically needs to host a session in one, and make the other instance join the session, and is in this step where I get stuck: I watched many tutorials showing how to host and join a session in editor but none works and having to change one boolean, package the game and try it with the team is getting tiresome, even if I optimize all maps being super small filled with very few supergrid meshes.
Extra notes to mention: I also tried using advanced sessions. It’s not working either.