The payloads encode design intent structurally. A combat encounter carries creature roles (brute, controller, lurker, etc.), terrain features typed as cover, obstacle, hazard, or interactable, an XP budget, and tactical notes per creature type. A social encounter carries NPC profiles with ideals, bonds, flaws, objection lists, and patience windows. A puzzle carries clue sets where each clue names the conclusion it supports and how it’s discovered. These aren’t free-form strings — the schema constrains what the model can return and guarantees the UI has typed fields to render.