Image Prompts

imagePromptConfiguration

Custom prompt templates for AI image generation per content category. Author-provided strings layered on top of Voyage's default image prompts for NPC portraits, location art, region art, per-area art, and item art.

In the editor

"Custom prompt templates for NPC, location, and region art"

Editor location
Files → AI → Image Prompts
Editor type
Edit in Studio + View JSON
Size limits
  • Each imagePromptConfiguration field5,000
  • imagePromptConfiguration (all fields combined)15,000

Schema

json
{
  "imagePromptConfiguration": {
    "npcs": "string",
    "locations": "string",
    "areas": "string",
    "regions": "string",
    "items": "string"
  }
}

Example

json
{
  "imagePromptConfiguration": {
    "npcs": "Style: painted oil portrait, soft warm light, period clothing, head-and-shoulders composition, neutral background.",
    "locations": "Style: matte painting, dramatic atmospheric lighting, weathered surfaces, no people in frame.",
    "regions": "Style: aerial concept art, broad landscape, painterly, time of day appropriate to region biome.",
    "areas": "Style: consistent with the parent location, tighter framing on the specific sub-area.",
    "items": "Style: single object centred on a plain backdrop, even lighting, no hands or characters in frame."
  }
}

Populating a field injects your text into every image request for that category, useful for enforcing a consistent style across the world (e.g. "watercolor, soft edges, painterly" applied to every NPC portrait).

Fields

npcs

npcs: prepended/appended to every NPC portrait generation request. Useful for locking down portrait style and framing without writing the same instruction in every NPC's basicInfo.

locations

locations: applied to every location art request. Use for environment-consistency directives (camera angle, mood, art style).

regions

regions: applied to every region art request. Region art is typically broader landscape framing; this slot enforces that.

areas

areas: applied to image generation for a location's areas. Leave empty to use Voyage's default area prompt. Labelled "Areas" in the editor.

Note: All five fields are optional. The engine substitutes Voyage's default prompt when a field is empty or absent; keep them concise enough to not crowd out the actual content prompt.

items

items: applied to every item artwork request. Use for a consistent look across item art -- framing, background treatment, and whether pieces are rendered as objects or in-scene.

Differentiated prompts via labelled sections

A single npcs (or locations or regions) string can contain multiple labelled sections, and the image model sorts on the NPC's type/category when generating. Use this pattern when you want different style guidance for distinct character classes (humanoid vs. creature, civilian vs. military, undead vs. living) without authoring per-NPC prompts.

json
{
  "imagePromptConfiguration": {
    "npcs": "Humanoid:\n[Style directives for human-form characters: anime portrait, cell-shaded line art, period-appropriate clothing tags, eye and hair colour anchors, full-body composition.]\n\nCreature / Non-humanoid:\n[Style directives for monsters, beasts, summons, constructs: scale and feature tags (horns, wings, tails, claws), no clothing tags, natural-stance posing, full-body silhouette must be visible.]\n\nUndead / Skeletal:\n[Style directives for undead characters: skeletal features, hollow or glowing eye treatment, decay-state tags by stage, posture and clothing reflecting the character's pre-death role.]"
  }
}

How the sort works

How the sort works: the AI reads the NPC's type, basicInfo, and visualDescription together with the full IPC string and matches the section whose label best fits the character it is generating. A section labelled Humanoid: applies when the character reads as human-form; Creature: applies when the character reads as a beast or non-humanoid; etc. Sections that don't match are ignored for that generation.

Labelling rules

Labelling rules that improve sorting accuracy:

  • Bold, capitalised labels with a trailing colon — Humanoid:, Creature:, Undead:. The model uses the label as the sort key; lowercase or punctuation-soft labels read as prose.
  • One blank line between sections. Helps the model treat them as distinct branches.
  • Mutually exclusive categories. Overlapping labels (Humanoid + Civilian + Military all valid at once) produce inconsistent output. Pick one axis (form, role, faction, status) per IPC field.
  • Cover the full space. If your NPC roster includes a category not represented by any section, the model falls back to whichever section is closest or to the engine default. A Default: or Other: catch-all section is worth including.

Applying to locations and regions

The same pattern works for locations (interior vs. exterior, urban vs. wilderness, settled vs. ruined) and regions (climate biome, faction-controlled vs. wilderness, day vs. night).

Note: For a more structured pattern that splits each category prompt into a fixed style scaffold plus per-instance variable slots (and combines naturally with the labelled-sections approach above), see Scaffold and variable-slot image prompts in the Advanced AI Techniques appendix.