Nodes/comfyui-character-prompt-builder/Character Prompt Builder - Scene & Generate
ComfyUI Node

Character Prompt Builder - Scene & Generate

The node that turns a pile of dropdowns into a real sentence

By euan-gwd·Created 8 months ago·Updated 28 days ago· 4
Character Prompt Builder - Scene & Generate
  • settings1
  • settings2
  • settings3
  • settings4
  • prompt
num_people1
artistic_styleprofessional photography
character_sheet_render_stylecomic
num_panels4
panel1_camera_viewfront view
panel1_camera_shotwide
panel2_camera_viewback view
panel2_camera_shotwide
panel3_camera_viewright side view
panel3_camera_shotwide
panel4_camera_viewfront view
panel4_camera_shotclose-up
camera_lens
camera_horizontal_angle
camera_vertical_angle
camera_shot
camera_view
preset_location
location
time_of_day
weather
season
light_type
light_quality
prompt_prefix
prompt_suffix
enforce_subjects_onlyfalse

Here's the thing that makes this whole pack worth installing: every other node just shuffles dictionaries around, and Character Prompt Builder - Scene & Generate is the one that finally turns them into words. It's the terminal node in both chains - person and spaceship - and its single output, prompt, is a ready-to-encode natural-language paragraph. Wire it to a CLIP Text Encode and you're done.

And the prose choice matters more than the pack's author probably intended. Modern checkpoints with LLM-based text encoders (Flux's T5, and the 2025-26 generation of models) respond to full descriptive sentences the way they respond to instructions, not token bags. The Portrait Master lineage this pack descends from was built for the tag era; its community quickly found that "plain english descriptions work better" on the new models. Scene & Generate was born already speaking that dialect. If you're on SDXL-lineage, the sentence output still works - it just doesn't buy you as much.

How it works

You feed it the settings dicts your Person/Fashion/Poses (or Spaceship) nodes produced, plus scene choices of its own. settings1 is required; settings2, settings3, and settings4 are optional and pair with num_people (1–4). Set num_people to 3, wire three full character chains into the three settings slots, and it generates each character's description separately, labels them "CHARACTER 1 / 2 / 3", and adds a shared scene tail. That multi-character support is quietly the best feature in the pack - most prompt builders do one subject, period.

For a single character it merges your settings, writes the person's prose, then appends the scene tail: location, time of day, season, and lighting ("The scene is lit by soft diffused golden hour light from the left").

The inputs you'll actually set

  • artistic_style - 28 render styles: "professional photography" (default), analog film, comic book illustration, 3D cartoon illustration, "hyperrealistic Unreal Engine 5 animated 3D render", cinematic film. Pick the vibe of the whole image here.
  • Camera - the pair that punches above its weight. camera_shot (extreme wide → close-up) plus camera_view (front, three-quarter, profile…), and camera_lens with real glass: "85mm f/1.4 (portrait prime, creamy bokeh)", "50mm f/1.2", "70-200mm f/2.8". Naming a physical lens is one of the highest-leverage phrases you can send to a modern encoder - this dropdown does it for free.
  • Location - preset_location (88 canned scenes, from "Midnight city streets with wet pavement and neon reflections" to "a silk-draped Mediterranean balcony at twilight") or the free-text location box if you have somewhere specific in mind.
  • Time/weather/season + light_type/light_quality - golden hour, rain, winter, chiaroscuro… compose the mood.
  • enforce_subjects_only - the anti-hallucination switch. Toggle it on and the node appends "ONLY SHOW THE DESCRIBED SUBJECTS, NO EXTRA PEOPLE OR CHARACTERS" to the end. If your model keeps adding bystanders to a portrait, this is the button.
  • prompt_prefix / prompt_suffix - free-text that wraps the generated output. Suffix is where you drop quality tags, artist names, or negative-ish instructions.

The character-sheet mode is the hidden gem: set artistic_style to "character sheet" and a whole set of panel inputs appears - num_panels (2/3/4) and per-panel camera view + shot (front, back, side, close-up…), plus a render style (comic / photorealistic / 3D cartoon / UE5). It composes a multi-view turnaround prompt, which is exactly the workflow you want for reference sheets. The spaceship fields (spaceship_environment, spaceship_lighting, spaceship_background, engine_glow_intensity) only matter when a ship chain is upstream.

Installing

ComfyUI Manager → search Character Prompt Builder → Install → restart, or:

cd ComfyUI/custom_nodes
git clone https://github.com/euan-gwd/comfyui-character-prompt-builder

Zero dependencies (standard library only) and no models to download - one of the least painful installs in the ecosystem, which in ComfyUI-land is a genuine feature. The dropdown data comes from character_prompt.json, fetched from GitHub on first use if the bundled copy is missing.

Troubleshooting

  • Output has "natural language" written in it - a quirk of the generator's cleanup pass; if your prefix/suffix or a checkpoint's own tokens reintroduce it, just edit it out in the Render Prompt node.
  • Multi-character scenes collapse into one person - all four settings slots must be filled per the num_people count, and each slot needs a complete chain (Person + Fashion + Poses). A slot with only a Person node will render as a half-described character.
  • Wrong model family = weak results - on old SDXL-lineage checkpoints the sentence output can feel diluted versus tag-heavy prompts. That's the model, not the node; if you're on SD1.5/SDXL, consider a suffix of comma-tags to supplement.
CategoryCharacterPromptBuilder

Inputs (31)

NameTypeDefaultDescription
num_peopleCOMBO14 options: 1, 2, 3, 4
settings1PM_SETTINGS
artistic_styleCOMBOprofessional photography28 options: -, analog film, black and white, comic book illustration, anime comic book illustration, ink drawn comic book illustration, +22
character_sheet_render_styleCOMBOcomic4 options: comic, photorealistic, 3D cartoon illustration, UE5 animated 3D render
num_panelsCOMBO43 options: 2, 3, 4
panel1_camera_viewCOMBOfront view23 options: -, front view, back view, right profile view, left profile view, right side view, +17
panel1_camera_shotCOMBOwide10 options: -, extreme wide, wide, full, medium, medium close up, +4
panel2_camera_viewCOMBOback view23 options: -, front view, back view, right profile view, left profile view, right side view, +17
panel2_camera_shotCOMBOwide10 options: -, extreme wide, wide, full, medium, medium close up, +4
panel3_camera_viewCOMBOright side view23 options: -, front view, back view, right profile view, left profile view, right side view, +17
panel3_camera_shotCOMBOwide10 options: -, extreme wide, wide, full, medium, medium close up, +4
panel4_camera_viewCOMBOfront view23 options: -, front view, back view, right profile view, left profile view, right side view, +17
panel4_camera_shotCOMBOclose-up10 options: -, extreme wide, wide, full, medium, medium close up, +4
camera_lensCOMBO16 options: -, 24mm f/1.4 (wide angle, fast prime), 35mm f/1.8 (classic street/portrait prime), 50mm f/1.2 (standard portrait, shallow depth of field), 85mm f/1.4 (portrait prime, creamy bokeh), 105mm f/2.8 (macro, portrait), +10
camera_horizontal_angleCOMBO9 options: -, 0° horizontal angle, 45° horizontal angle, 90° horizontal angle, 120° horizontal angle, 180° horizontal angle, +3
camera_vertical_angleCOMBO14 options: -, 0° vertical angle, 15° vertical angle, 30° vertical angle, 45° vertical angle, 60° vertical angle, +8
camera_shotCOMBO10 options: -, extreme wide, wide, full, medium, medium close up, +4
camera_viewCOMBO23 options: -, front view, back view, right profile view, left profile view, right side view, +17
preset_locationCOMBO88 options: -, in a High-end hotel lobbies with marble floors and warm, directional lighting, in a Midnight city streets with wet pavement and neon reflections, in a sun-drenched Mediterranean courtyard café, in a modern art museum atrium with skylights, on an exclusive Mediterranean yacht deck with champagne and statement jewelry, +82
locationSTRING
time_of_dayCOMBO12 options: -, Dawn, Morning, Midday, Afternoon, Golden Hour, +6
weatherCOMBO11 options: -, Sunny, Cloudy, Overcast, Rainy, Stormy, +5
seasonCOMBO5 options: -, Spring, Summer, Autumn, Winter
light_typeCOMBO24 options: -, Natural sunlight, Soft ambient light, Harsh sunlight, Overcast sky, Sunset glow, +18
light_qualityCOMBO10 options: -, soft diffused, hard dramatic, even balanced, high contrast, low key, +4
prompt_prefixSTRING
prompt_suffixSTRING
enforce_subjects_onlyBOOLEANfalse
settings2optPM_SETTINGS
settings3optPM_SETTINGS
settings4optPM_SETTINGS

Outputs (1)

NameTypeDescription
promptSTRING