Integrating Kronos Matchmaking with EIK
Kronos Matchmaking (opens in a new tab) is one of the best and complete client-sided matchmaking solutions available at the moment on the Unreal Engine Marketplace. It provides a lot of features and flexibility to create a matchmaking system that fits your game's needs.
We know this took a while, but we finally have a guide on how to integrate Kronos Matchmaking with EIK. This guide will show you how to set up the matchmaking system and how to integrate it with EIK.
Kronos Matchmaking requires Beacons to be working which are not supported by most EOS plugins including Epic's Plugin but EIK now supports it for version 4.2.0 and above.
Setting Up Kronos Matchmaking
For the following code, I am using Autologin with EIK and the method is DevTool
. You can use any method you want, but make sure to change the code accordingly.
For the setup, you need to follow the steps below:
Make a new empty map that will be used for Authentication. I have named this map LoginMap
.
Now, in the KronosOnlineSession
blueprint, add the following code:
(Thanks to Horizon Games for the above code)
After authentication is complete, the OnEnterGame event is called by Kronos which opens the actual main menu. That's pretty much it.
In case you are using the autologin feature of EIK, you can just check if the player is logged in and then call the AuthenticateUser
event.
Disable Automatic Authentication in the Kronos Matchmaking settings as EIK will handle the authentication.
Presence Issues
By default, Kronos Matchmaking creates all the sessions with the bUsePresence
flag set to true
. But in EOS, the presence can only be used for one session at a time. So, if you are using EIK, you need to disable the presence in the widgets where you are creating the sessions.
Like for us, it was in the WBP_KronosExampleMenu
widget. So, we disabled the presence in the CreateSession
function.
ADVANCED USERS : Do not increase the LogLobbyBeacon verbosity to VeryVerbose as it will crash the engine. We have already pushed a fix to this on Unreal Engine's GitHub (opens in a new tab)
Conclusion
This is how you can integrate Kronos Matchmaking with EIK. If you have any questions or need help with the integration, feel free to ask in the EIK Discord Server (opens in a new tab).