Complete Workshop Production Pipeline
Follow one private NPC from brief and campaign context through generation, persistence, relationships and export.
This walkthrough takes one private NPC from a deliberate RPG Workshop brief through the public NPC generator to a verified Captain Ilyra Venn result. It connects the whole production path while leaving each specialised procedure to its focused lesson.

Captain Ilyra Venn is the representative result for the connected Glasswake production path.
Plan one result before submitting
1. Choose NPC and write the Glasswake brief
Open RPG Workshop, select NPC and describe one useful expedition captain. The retained brief asks for Captain Ilyra Venn, a disciplined harbour pilot who protects Veyra's Crossing and works with the Meridian Cartographers. It excludes hidden twists and private campaign history.

Review the type, campaign and art choice together before writing and submitting the brief.

The same submission decision remains visible in the narrow layout.
2. Select the private campaign and explicit context
Select The Glasswake Expedition. Add Veyra's Crossing and the Meridian Cartographers as explicit entity context. The retained campaign had no documents, so its paper context, noticed aliases and pinned-document lists were empty. Context shapes the prompt. It does not prove campaign recording.
3. Submit once and retain the existing job
Submit once and follow one generation job through Pending, In Progress and Complete. Keep the returned job identity and wait for the terminal result. A local polling timeout does not prove the request failed, so check the Workshop result list and exact detail route before considering another submission.
Verify result, artwork and campaign state separately
4. Open the terminal NPC result
Open Captain Ilyra Venn. Check the identity, role, appearance, body language, connections and public-safe premise. The retained result is the terminal entity, not an in-progress job card.

Confirm the exact result identity and Private owner state on the detail page.

The mobile review uses the same retained entity rather than a separate generation.
5. Verify the image as a separate request
The entity completed before its image review. The original native request completed but failed content review because of written and chart-like marks. One retained owned replacement was uploaded, associated with the NPC and refresh-read back as Private. Keep the generation job, image request, final image and association as separate identities.
6. Verify automatic campaign recording after refresh
The selected-campaign result appeared in campaign Memory automatically, without a second recording action. Refresh the campaign destination and verify the entity and generation link. Prompt context alone is not this proof.

Campaign Memory read-back is separate from the context selected before generation.
Make one edit, one relationship and one export
7. Edit one field and verify persistence
Enter edit mode, change the public-safe bodyLanguage field, choose
Save and refresh the detail route. The saved and refreshed values must
match. A later draft-only change was cancelled and the saved value remained
after refresh. See the focused edit lesson for the draft and
immediate-persistence boundaries.

A refresh read-back proves the Save, while Cancel leaves the earlier saved value intact.
8. Link the NPC to the owned Settlement
Create one source-to-target relationship from Captain Ilyra Venn to Veyra's Crossing with type PROTECTS. Refresh and confirm the same direction, relationship type and target. The result is one relationship, not a second copy of either entity.

Verify source, target, type and direction after refresh.
9. Retain and inspect the supported JSON export
Use the mounted JSON export once. Check the file name, MIME type, byte count and checksum, then open it and verify Captain Ilyra Venn is the exported entity. An export control appearing is not proof that a valid file was retained.

The mounted control starts the workflow. The retained receipt proves file delivery, checksum review and opened-file review separately.
10. Finish with the entity and image Private
Refresh the owner route and confirm the NPC and its final image are both Private. The retained sharing verification restored the NPC after a brief public check and then confirmed logged-out denial. This walkthrough does not leave a permanent public state. The current retained NPC includes a later 1 Gold Appearance reroll recorded by the corrected evidence ledger; do not repeat that action to follow this walkthrough.
Checkpoint
Check your result
- One retained job reaches Complete and resolves to Captain Ilyra Venn at the exact NPC route.
- The final image association, campaign Memory record and saved field each survive their own refresh read-back.
- The PROTECTS relationship points from Captain Ilyra Venn to Veyra's Crossing, and the retained JSON opens with the correct entity name.
- The canonical NPC and image finish Private, and the later immediate 1 Gold Appearance reroll is treated as a separate retained operation rather than a step to repeat.
If something looks wrong
Troubleshooting
- Symptom
- The page stops polling before a result appears.
- Likely cause
- A client timeout is not the terminal backend state.
- Next safe action
- Check the existing Workshop result list and detail route before any second submission.
- Symptom
- The NPC is complete but its image is absent or unsuitable.
- Likely cause
- Entity generation and artwork are separate requests with separate review outcomes.
- Next safe action
- Keep the entity, inspect the image request and association, and use only the permitted retained replacement path.
- Symptom
- Campaign context was selected but the result is not in the expected destination.
- Likely cause
- Prompt context and campaign recording are distinct operations.
- Next safe action
- Refresh Memory, Workspace or the relevant campaign destination and verify the recording separately.
Focused technique lessons
Each focused lesson contains the full procedure for its operation. This walkthrough links the decision points without repeating those steps.