API Upgrades

Upgrading To Version 2.3.0

Blueprints

  • Renamed OnCleanupSession event to OnCleanupForDisconnectComplete in KronosOnlineSession.

  • Renamed GetInitialReplicationProps function to HasInitialReplicationFinished in KronosPartyClient.

C++

Same as blueprint changes above.

Upgrading To Version 2.0.0

Blueprints

  • KronosIdentity node no longer exists. Please use GetKronosUserManager instead.

  • KronosFriends node no longer exists. Please use GetKronosUserManager instead.

  • KronosMatchmaking node no longer exists. Please use GetKronosMatchmakingManager instead.

  • KronosParty node no longer exists. Please use GetKronosPartyManager instead.

  • As a result of replacing these nodes, you will need to re-assign events that were bound to these objects. For example if you had an event bound to KronosParty -> OnConnectedToParty, you'll need to change it to GetKronosPartyManager -> OnConnectedToParty.

  • GetKronosOnlineSession function no longer exists in KronosStatics. A global accessor has been added to the class itself instead. The new node has the same name as before.

  • LoginUser async node no longer exists. Login is now handled as part of user authentication. You can start user authentication manually via the AuthenticateUser function in KronosUserManager.

  • LogoutUser async node no longer exists. Logout can be requested via the LogoutUser function in KronosUserManager.

C++

Subsystems have been replaced by online managers:

// Previous API:
GameInstance->GetSubsystem<UKronosIdentitySubsystem>();
GameInstance->GetSubsystem<UKronosFriendsSubsystem>();
GameInstance->GetSubsystem<UKronosMatchmakingSubsystem>();
GameInstance->GetSubsystem<UKronosPartySubsystem>();

// New API:
UKronosUserManager::Get(this); // identity + friends
UKronosMatchmakingManager::Get(this);
UKronosPartyManager::Get(this);

Removed GetKronosOnlineSession from KronosStatics:

// Previous API:
UKronosStatics::GetKronosOnlineSession();

// New API:
UKronosOnlineSession::Get(this);

Delegates are now only accessible through dedicated accessor functions. Please note that some delegate names have been slightly rephrased for better naming consistency. Here are some of the changes (not a comprehensive list):

// Previous API:
MatchmakingSubsystem->OnStartMatchmakingComplete.AddDynamic(...);
MatchmakingSubsystem->OnMatchmakingComplete.AddDynamic(...);
PartySubsystem->OnPlayerJoinedParty.AddDynamic(...);
PartySubsystem->OnPlayerLeftParty.AddDynamic(...);
KronosNameplateComponent->OnKronosNameplateCreated().AddDynamic(...);

// New API:
MatchmakingManager->OnMatchmakingStarted().AddDynamic(...); // renamed slightly
MatchmakingManager->OnMatchmakingComplete().AddDynamic(...);
PartyManager->OnPlayerJoinedParty().AddDynamic(...);
PartyManager->OnPlayerLeftParty().AddDynamic(...);
KronosNameplateComponent->OnNameplateCreated().AddDynamic(...); // renamed slightly

Changed include path of KronosNameplateComponent:

// Previous API:
#include "Lobby/KronosNameplateComponent.h"

// New API:
#include "Components/KronosNameplateComponent.h"

Renamed GetPlayerNickname function in old KronosIdentitySubsystem:

// Previous API
IdentitySubsystem->GetPlayerNickname();

// New API:
UserManager->GetUserNickname();

Last updated