TableFlux logo
TableFlux
Store, library, campaigns
Back to docs

Adding a Minigame Plugin

Step-by-step workflow for introducing new minigames with networking and regression coverage.

Minigame AuthorsStableMinigames

Adding a Minigame Plugin

This guide describes the expected workflow for introducing a new minigame to TableFlux.

#1. Create Plugin-Owned Folders

Add code, scenes, and tests under plugin paths:

  • scripts/gdscript/Plugins/Minigames/<MiniGameName>/
  • scenes/ui/plugins/minigames/<mini-game-name>/
  • test/scripts/gdscript/Plugins/Minigames/<MiniGameName>/

#2. Define Networking Responsibilities

Document and implement:

  • Host authority boundaries.
  • Player input replication strategy.
  • Late-join synchronization behavior.
  • Score and match-state synchronization.

Use the existing minigame networking patterns rather than introducing ad hoc sync channels.

#3. Register Discovery Metadata

Ensure the minigame appears in discovery and launch surfaces by adding the required metadata and registration hooks.

#4. Add Regression Coverage

At minimum, include tests for:

  • Start and end lifecycle events.
  • Authority handoff or reconnection behavior.
  • Late join consistency.
  • Result/score replication.

#5. Validate Locally

Run focused GDUnit coverage for the new minigame plugin, then execute the batched runner for broader confidence.

#6. Update Docs

Add or update markdown in this folder so website docs stay aligned with runtime behavior.