I have been attempting to get lobby beacons working in my project for the past couple of months now with the small amount of documentation on them.I am using the steam subsystem and get my lobby host to setup the beacon as such in the OnCreateSessionComplete function
LobbyBeaconHost = GetWorld()->SpawnActor<ALobbyBeaconHost>(ALobbyBeaconHost::StaticClass());
if (LobbyBeaconHost == nullptr)
{
UE_LOG(LogBeacon, Warning, TEXT("Attempt to spawn the LobbyBeaconHost Failed! This will cause your online session to not work."));
return;
}
/*
TestBeaconHost = GetWorld()->SpawnActor<ATestBeaconHost>(ATestBeaconHost::StaticClass());
if (TestBeaconHost == nullptr)
{
UE_LOG(LogBeacon, Warning, TEXT("Attempt to spawn the LobbyBeaconHost Failed! This will cause your online session to not work."));
return;
}*/
bool bBeaconInit = false;
if (BeaconHostListener)
{
BeaconHostListener->RegisterHost(LobbyBeaconHost);
LobbyBeaconHost->Init(SessionName);
UE_LOG(LogBeacon, Verbose, TEXT("---------------------------------------"));
UE_LOG(LogBeacon, Verbose, TEXT("Registered Lobby with Session %s"), *SessionName.ToString());
UE_LOG(LogBeacon, Verbose, TEXT("---------------------------------------"));
}
Afterwoids I use steams overlay to join the hosted sessions and call the following code
if (InviteResult.IsValid())
{
LobbyBeaconClient = GetWorld()->SpawnActor<ALobbyBeaconClient>(ALobbyBeaconClient::StaticClass());
LobbyBeaconClient->OnLoginComplete().BindUObject(this, &UGameInstance::OnLoginComplete);
LobbyBeaconClient->ConnectToLobby(InviteResult);
}
The result is that a steamsocket connection is made and the host recognizes that its complete and starts dumping connection details as expected with idle time being under 1 seconds. The client however spams the console with Channel 0 ack timeout) until the 90 seconds threshold is met and the connection is terminated and then the same thing happens to the hosts side.
I attempted to get more information via both Discord and the forums here however I have not gotten any real response as to the known pathway for either party beacons or lobby beacons.
Is there some sort of understood pathway not published that I am not following for this?