Hi there,
I'd like to share some information as the Minigame system implementation progresses. This in the form of flow-charts shared on Lucid Chart. When designing any complicated system for the gamemode, please be sure to create flow-charts for them to make sure other people can understand them. All of these will eventually be published as documentation on the gamemode.
High-level Minigame Design
https://www.lucidchart.com/documents/vie...c97f735c92
For each online player, the state will be compared to [tt]Minigame[/tt] in the [tt]Player::process[/tt] method. If the player is indeed playing a minigame, the [tt]MinigameManager::processPlayer[/tt] method will be called for the given player. This method, global to all Minigames, will process the shared sub-systems such as the timer (used for both on-screen timers as for handing timeouts). Furthermore, based on the kind of Minigame the player is currently playing, the respective [tt]*MinigameManager::processPlayer[/tt] method will be invoked.
[this is a living post, and will be amended whenever new information arises]
I'd like to share some information as the Minigame system implementation progresses. This in the form of flow-charts shared on Lucid Chart. When designing any complicated system for the gamemode, please be sure to create flow-charts for them to make sure other people can understand them. All of these will eventually be published as documentation on the gamemode.
High-level Minigame Design
https://www.lucidchart.com/documents/vie...c97f735c92
For each online player, the state will be compared to [tt]Minigame[/tt] in the [tt]Player::process[/tt] method. If the player is indeed playing a minigame, the [tt]MinigameManager::processPlayer[/tt] method will be called for the given player. This method, global to all Minigames, will process the shared sub-systems such as the timer (used for both on-screen timers as for handing timeouts). Furthermore, based on the kind of Minigame the player is currently playing, the respective [tt]*MinigameManager::processPlayer[/tt] method will be invoked.
[this is a living post, and will be amended whenever new information arises]