Easy Chapter Generator
EnglishEspañol

Assign the link

  1. 1
    Place the component under its Chapter hierarchy, preferably in the generated Objective XX container.
  2. 2
    Select the component. Under Objective Link, use the Ordered Objective popup; do not type or paste an ID.
  3. 3
    Choose the row by title and Identifier. Status must change to Linked to Chapter > Objective.
  4. 4
    Select Open Chapter & Objectives to reveal the same row in the central window. Copy Current ID appears only when an ID exists for another integration to read.

Move, duplicate, and delete

  • Move the component: its ID remains; Wrong Chapter appears when the new parent does not own that record.
  • Move the Ordered Objective in its Chapter: order changes but ID does not, so the link remains valid.
  • Duplicate a component: the copied ID creates Duplicate Binding until you reassign it or stop using it as an Objective.
  • Duplicate an Objective through the window: the copy receives a unique ID. Link a new component through the selector.
  • Delete the Ordered Objective: the component retains its old ID and becomes Missing; it is never silently reassigned.

Window operations register Undo. After an undo, reopen the component if its Inspector still displays a prior result, then select Refresh under Validation.

Repair without hiding the cause

Start from the affected row under Ordered Objectives. Its context menu can select or ping a linked component, open its Inspector, run Repair Link, or create a missing container. Choose the repair that preserves authoring intent; creating a container cannot fix an ID owned by another Chapter.

Do not repair in Play Mode

Authoring mutations are disabled while Unity is running. Exit Play Mode so Undo, serialization, and hierarchy ownership remain correct.

Custom Objective components

A project-owned subclass of Objective receives the same Objective Link surface through the supported fallback Editor. Put it in the container, choose the Ordered Objective, and call RequestObjectiveCompletion() only after its condition is satisfied.

Create a Custom Objective Component