Lost Lily/Grid ToolkitDocs 1.0
Table of Contents

Understand your board

You now have a 64-cell board, one placed structure, and a view that displays the result. Here is what each part does.

The tutorial objects in plain language

  • The First Board Board asset is the board description. At runtime it becomes a GridBoardDefinition.
  • The First Board Crate structure asset defines a reusable one-cell structure. First Board Crate Visual points to its prefab.
  • The First Board Structure Library connects the structure asset to the board setup and the structure renderer.
  • The First Board Setup asset collects the board definition, structure library, and authored starting options.
  • GridBoardAuthoring creates and owns the live GridBoardState.
  • GridActionRunner checks and applies requested changes.
  • GridBoardEventBatch tells observers what changed after this successful placement commit.
  • GridBoardView watches the state and tells the renderer which visuals need refreshing.
  • GridWorld3DBoardRenderer keeps the cell and structure objects in the scene and updates them when needed.

The wizard assigned the cell builder. In the placement step, you replaced its generated structure builder with GridStructureLibraryNodeBuilder, which reads the crate's authored visual. Builders and the intent renderer belong to presentation; they do not store gameplay state.

flowchart TB
    accTitle: The beginner tutorial from board description to visible result
    accDescr: A board definition creates live state, preview reads it without committing, apply advances its revision and publishes one event batch, and the view updates the renderer.
    A["Definition: 64 cells"] --> B["Owned state: revision 0"]
    B --> C["Preview: no change"]
    C --> D["Apply: revision 1"]
    D --> E["One event batch"]
    E --> F["View refreshes renderer"]

Three rules to keep

  1. Give each live board one clear owner.
  2. Preview first when you need to explain failure without changing state.
  3. Keep gameplay state in the board, not in view or renderer objects.

What you should see

The four parts now agree about the result:

  • The board asset still describes 64 cells; runtime placement did not edit the asset.
  • The live board is at revision 1 and contains first-board.crate-1.
  • The placement produced one committed event batch.
  • The Scene view displays the placed structure while GridBoardAuthoring remains the board's lifetime owner.