GridPlacement 6.0 is the C# rewrite with clean architecture: Core (pure C# interfaces and data, no engine deps), ECS (components and systems in a separate csproj), and Godot (adapter layer).

Architecture: Three assemblies — MoonBark.GridPlacement.Core.csproj (interfaces, data, validation), MoonBark.GridPlacement.ECS.csproj (Friflo ECS components/systems), MoonBark.GridPlacement.Godot.csproj (Godot adapter, signal buses, UI).

Getting Started

  • [Getting Started]({{% ref "getting-started" %}}) — Install, configure, and place your first building

Core Guides

Guide What it covers
[Architecture Overview]({{% ref "architecture-overview" %}}) Core/Godot/ECS boundary, assembly layout
[Composition + Injection]({{% ref "composition-and-injection" %}}) PlacementBootstrap owns services, manipulation wiring
[Catalog Construction]({{% ref "catalog-construction" %}}) How placeable catalogs are built and wired
[Settings Architecture]({{% ref "settings" %}}) Focused settings resources, placement modes
[Placement Rules]({{% ref "placement-rules" %}}) Runtime validation via Godot Resource rules
[Terrain Change Policy]({{% ref "terrain-change-policy" %}}) Optional tile custom data + occupancy rules for terrain brush
[Input & Cursor]({{% ref "input-cursor" %}}) GridCursor2D, drag-to-place, keyboard input, linear placement

Migration

If you're coming from 5.0 (GDScript), see the v5.0 Guides for reference. The 6.0 architecture is fundamentally different — focus on understanding Core/ECS separation first.

API Reference


Last Updated: 2026-06-01