Hi @chounry welcome
I’ll answer each of your questions inline below.
- Is there any server callback function called when it start?
No, there’s no need to trigger a server callback when a tournament starts because each user can fetch the tournaments that they’ve joined and will receive a
"start_time" timestamp which will indicate when the next start of the tournament will happen. This makes it easy to set up a local push notification on the device for the user (on mobile) and in-game you can schedule a background task to alert the player if they’re currently active in the game.
I don’t think there’s another use case which would require knowledge of the start of the tournament. What do you think?
- Will clients knows when the tournament start?
I think I’ve covered this in my answer above.
- Is the tournament is some sort of multiplayer match thing? If so, where do i actually handle the match/game logic?
Tournaments are separate from multiplayer matches though you can utilize them together if you want for your type of game.
A tournament is a scheduled leaderboard with an invite requirement for users. This means that they may have to pay some kind of fee to join the tournament and you can limit the numbers of players that can participate and even limit the number of attempts the player can make in the tournament results they submit.
A multiplayer match can be created and managed through game client logic in the relayed multiplayer feature in the server or can be controlled with server-side logic with the authoritative multiplayer engine in Nakama.
Can you describe the type of game you’re working on in more detail because it might help with how I can suggest you structure your game design against the server features?
Hope this helps.
Here are the use-case:
- we want to have different type of game that start a specific date time on daily or something
- player can register before the game start
- when the game start, only the players that registered can join the match