[ ] if steam is online, in skirmish/missions add button WrapperLoopback.SteamOpenOverlaySection("LobbyInvite") to invite friends via steam, or use WrapperLoopback.SteamInviteFriendToGame(steamID) . The overlaysection button should also be in the normal friend list.
[ ] when you get SteamFriendJoinedMe from wrapper, auto accept pending join party request (likely sent by that client) + when in skirmish/missions indicate that friend "joined" you and you can coop
[ ] when about to start mission/skirmish and some friend joined you, send SteamHostGameRequest and fill it according to script.
[ ] if you get SteamHostGameFailed, notify user
[ ] if you get SteamHostGameSuccess, generate/modify the script (use given HostPort) and start it
[ ] if you get SteamConnectSpring, fill script based on it and start spring. Use ClientPort for local UDP port.
logic is following:
1) host opens skirmish/missions and gets ready to play
2) either host invites person, or person selects "join game" on your on steam, or invite happens entirely in steam
3) host gets SteamFriendjoinedMe to realize he will not play alone
4) host clicks start game, if you have clients tracked who joined you, send SteamHostGameRequest with this clients IDs
5) host waits for wrapper to respond with success or failure, if success launches spring
6) clients get SteamConnectSpring and launch spring
Interface has been updated here https://github.com/ZeroK-RTS/Chobby/commit/447788023c9c5ff3fca80e964f9591a6c766a844
[ ] if steam is online, in skirmish/missions add button WrapperLoopback.SteamOpenOverlaySection("LobbyInvite") to invite friends via steam, or use WrapperLoopback.SteamInviteFriendToGame(steamID) . The overlaysection button should also be in the normal friend list.
[ ] when you get SteamFriendJoinedMe from wrapper, auto accept pending join party request (likely sent by that client) + when in skirmish/missions indicate that friend "joined" you and you can coop
[ ] when about to start mission/skirmish and some friend joined you, send SteamHostGameRequest and fill it according to script.
[ ] if you get SteamHostGameFailed, notify user
[ ] if you get SteamHostGameSuccess, generate/modify the script (use given HostPort) and start it
[ ] if you get SteamConnectSpring, fill script based on it and start spring. Use ClientPort for local UDP port.
logic is following: 1) host opens skirmish/missions and gets ready to play 2) either host invites person, or person selects "join game" on your on steam, or invite happens entirely in steam 3) host gets SteamFriendjoinedMe to realize he will not play alone 4) host clicks start game, if you have clients tracked who joined you, send SteamHostGameRequest with this clients IDs 5) host waits for wrapper to respond with success or failure, if success launches spring 6) clients get SteamConnectSpring and launch spring