How to check if the match has started before joining the session?

Hello,

I’m in the process of making a multiplayer game based on a listen server architecture, and I wanted to add a quick play functionality, that basically allows you to search for sessions, and then automatiaclly join the session with the greatest number of players, the least ping and where the match hasn’t started yet.

Here comes the problem tho, without joining the session, how do I check if the match has started yet, possibly in blueprints?
Thank you so much in advance!

I am not too much into multiplayer stuff rn so i dont know much. the only thing that comes to mind is to try to connect to every server, if the match is ongoing U can use the prelogin event to deny the connection and then go on ahead to check for the next one.

the next thing is somehow passing a variable with each session, the session will not be discoverable if the variable is false.

the third thing is using c++. you most probably will find much more flexibility with the onlinesubsystem if you are using c++. onlinesubsystem is pretty undeveloped in terms of blueprints.

For those who are wondering the same thing, I fond a solution to this via blueprint, and the solution is called AdvancedSession; it’s a free plugin for UE4 that exposes all these features to Blueprints via some super easy to use functions.
What I made then was to add a tag to the session when the game starts, so then I can check the tag from the outside of the session without joining.

THIS IS THE LINK:

https://forums.unrealengine.com/community/community-content-tools-and-tutorials/41043-advanced-sessions-plugin

Please sample. I didn’t understand how to do it.

I found node. Use “Update Session” with pin “Allow Join in Progress”.

346761-untitled.png

1 Like