TableFlux logo
TableFlux
Store, library, campaigns
Back to docs

TableFlux Plugin System Overview

Architecture boundaries, ownership patterns, and integration expectations for plugins.

Plugin AuthorsStableArchitecture

TableFlux Plugin System Overview

TableFlux features are organized as plugin-owned modules so gameplay systems can be added or revised without coupling unrelated features.

#Core Concepts

  • A plugin owns its scripts, scenes, and tests.
  • Shared helpers are only promoted when used by multiple plugins.
  • Network behavior should be explicit about authority and synchronization.
  • Documentation and tests should be updated before behavior changes are shipped.

#Plugin Structure

Use these repository conventions:

  • scripts/gdscript/Plugins/<PluginName>/<FeatureName>/
  • scenes/ui/plugins/<plugin-name>/<feature-name>/
  • test/scripts/gdscript/Plugins/<PluginName>/

#Behavioral Contract

When changing plugin behavior:

  1. Update relevant requirement documentation first.
  2. Add or update regression tests.
  3. Implement code changes.
  4. Run focused tests, then broader validation when needed.

#Integration Checklist

  • Register plugin entry points in shared registries only when needed.
  • Keep plugin boundaries clear; avoid leaking internal nodes into global systems.
  • Persist metadata needed for multiplayer authority and selection policies.
  • Confirm content is compatible with package and asset loading rules.