GridPlacement 6.0.0

Development documentation for the 6.0 C# Core architecture

🚀
Development Version v6.0.0
This is the development version. Features may change before final release.

Welcome to the GridPlacement 6.0.0 development documentation.

🎯 Requirements & Compatibility

Minimum Godot Version: 4.4
Recommended Godot Version: 4.5
Plugin Version: 6.0.0-dev
💡 Note: 6.0.0 is under development and may contain breaking changes

What 6.0 is

6.0 is a full port + architecture redesign centered on a clean separation between:

  • Core (C# / engine-agnostic): services, workflow logic, and state that can be unit-tested without Godot.
  • Godot layer (C# Godot integration): nodes, visuals, scene instantiation, input translation, and runtime concerns.

There is no GPU acceleration in 6.0.

Key architecture concepts (6.0)

ConceptWhat it means
Composition / scope rootUse GPUserScopeRoot as a thin Godot-side composition root. Your game can wrap this with its own scope/lifetime rules (future unification point: GameUserSessions).
Services + adaptersGodot nodes/adapters call into Core services and workflow ports instead of owning backend rules directly.
Workflow orchestratorsWorkflows/orchestrators coordinate multi-step behavior using services + state, while keeping engine glue localized to adapters.
Grid vs Targeting splitGrid metadata + conversions are owned by GridService2D. Selection/navigation rules live in TargetingService2D.
Ownership modelPer-owner / per-scope behavior is explicit via Owner/OwnerContext (no hidden singletons).
EventData vs snapshotsRuntime events should emit small EventData payload objects; snapshots are reserved for diagnostics/tests.
Validation responsibilityValidation is primarily a Godot node/runtime responsibility. Core services focus on business logic + reporting.

Full architecture guide

Start here

  • Guides: /v6-0/guides/
  • Core API: [/v6-0/api/core/](/v6-0/api/core/
  • Godot API: [/v6-0/api/godot/](/v6-0/api/godot/

Migration

Development status

This documentation set is for 6.0 development. For the stable legacy release line, see: