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
- v6.0 API Reference — Generated C# API documentation
Last Updated: 2026-06-01