Starting Matchmaking
Matchmaking

#include "KronosMatchmakingManager.h"
#include "KronosPartyManager.h"
#include "KronosMatchmakingPolicy.h"// Get the matchmaking manager.
UKronosMatchmakingManager* MatchmakingManager = UKronosMatchmakingManager::Get(this);
// Request a new matchmaking policy. This operation is async!
// If matchmaking is in-progress, it will be canceled first.
MatchmakingManager->CreateMatchmakingPolicy(FOnCreateMatchmakingPolicyComplete::CreateLambda([this](UKronosMatchmakingPolicy* MatchmakingPolicy)
{
// Parameters to be used when matchmaking results in creating a session.
FKronosHostParams HostParams;
HostParams.StartingLevel = TEXT("MyMap");
HostParams.Playlist = TEXT("TeamDeathmatch");
HostParams.MaxNumPlayers = 4;
HostParams.bShouldAdvertise = true;
HostParams.bIsLanMatch = false;
HostParams.bUsesPresence = true;
// Parameters to be used for matchmaking.
FKronosMatchmakingParams MatchmakingParams;
MatchmakingParams.HostParams = HostParams;
MatchmakingParams.Playlist = TEXT("TeamDeathmatch");
MatchmakingParams.MaxSearchAttempts = 3;
MatchmakingParams.MaxSearchResults = 20;
MatchmakingParams.MinSlotsRequired = UKronosPartyManager::Get(this)->GetPartySize();
MatchmakingParams.bIsLanQuery = false;
MatchmakingParams.bSearchPresence = true;
// Flags for matchmaking (e.g. use EKronosMatchmakingFlags::NoHost if you don't want matchmaking to result in hosting).
uint8 MatchmakingFlags = static_cast<uint8>(EKronosMatchmakingFlags::None);
// Start matchmaking.
// Notice that we are using NAME_GameSession!
MatchmakingPolicy->StartMatchmaking(NAME_GameSession, MatchmakingParams, MatchmakingFlags, EKronosMatchmakingMode::Default);
}));The Host Params
The Min Slots Required Param
The Playlist Params
Elo Skill Rating Params
Extra Query Settings
Last updated