Hi Everyone,
So I am trying to create a Lobby/Party system for my game. However, it is not working currently. Can anyone tell me if my logic makes sense?
-
When I start a game (in 2 players), I wait till the world is created and start a
party
session using PartySessionName. This then allows me to create a ‘PartyBeaconHost’ - on each machine - and InitPartyHost and register this beacon with a listener. -
After that, a player just hit the ‘find a game’ game button and call FindSessions, which finds the best session. For now, I just do the first one found. **THIS IS WHERE IT FAILS FOR ME ON STEAM. **I cannot find the session for some reason, and it always returns 0 sessions found. It should at least be 1 for my local session, this works on LAN for some reason.
-
After finding the session, create a Reservation beacon, or PartyBeaconClient, and call RequestReservation on the best session found above to connect to the other player’s Host Beacon.
-
After finding however many players are needed, do my own stuff (like vote on map and voice chat) and create a ‘Game Session’ which then chooses a listen server and travels all players to a map that was voted on.
I am aware Steam sockets are required so I added this to the GameEngine section in GameEngine.ini file in Config folder:
+NetDriverDefinitions=(DefName=“BeaconNetDriver”,DriverClassName=“/Script/OnlineSubsystemSteam.SteamNetDriver”,DriverClassNameFallback=“OnlineSubsystemUtils.IpNetDriver”)
Anything wrong with my logic, or is there something I am missing with setting up Steam Sockets?