DP Versatile Prompt Subjects Generator
350 ready-made subjects to start a prompt from
- category
- prompt
Staring at an empty prompt box is its own kind of block, and this node exists to skip past it. It's a built-in library of roughly 350 ready-made subject lines - "Portrait - young woman with flowing hair," "Portrait - elderly man with wise eyes," "Portrait - athlete in action," "Portrait - doctor with stethoscope" - pick one, or let the node pick, and you've got a starting subject to build the rest of your scene, lighting, and style around instead of writing one from scratch every time.
It's part of the pack's text/prompt tools, and it plays the same role as DesertPixelAi's DP Art Style Generator - a browsable, curated list you draw from instead of a random-word generator - just aimed at subjects rather than art styles.
How it works
prompt_name is the dropdown holding the full library (plus a None entry). prompt_index_control decides how the selection moves between runs, with four modes: fixed stays put on whatever you chose; randomize picks a fresh one each run; increment/decrement step through the list in order, one entry per queue - which is the useful trick for batching, since it lets you march through dozens of subjects across a run instead of rolling for one at a time. index is the numeric position in the list, and it's what increment/decrement actually move (you can also set it directly).
max_from_category (0–10, default 0) is the one that needs a little reading between the lines, since neither the README nor the schema spells out its exact mechanics. Going by the parameter's name and the fact that the sample entries cluster heavily by type (eight of the twelve visible samples are all "Portrait -" variants), it reads as a cap on how many picks in a row are allowed to come from the same category - useful if you're batching with randomize or increment and don't want a run of a dozen portraits back to back. Default 0 reads as no cap.
Two outputs come out: category (STRING) - which bucket the pick landed in, handy for labeling output filenames or routing different subject types down different branches of a workflow - and prompt (STRING), the actual subject text.
The inputs and outputs that matter
Set prompt_name if you want a specific subject, or leave prompt_index_control on randomize/increment and ignore it entirely. max_from_category is worth touching only if you're batch-generating and noticing the picks clustering too hard on one type. Wire prompt into a CLIP Text Encode, or concatenate it with your own style and lighting language first - that's usually where a generated subject line earns its keep. category is optional to use at all; it's there for organizing output, not required for generation.
How to install it
ComfyUI Manager: search Desert Pixel, install, restart. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/DesertPixelAi/ComfyUI-Desert-Pixel-Nodes
Restart ComfyUI. No downloads, text generation only. Under the DP category.
Common issues & troubleshooting
I got nothing, or an empty prompt. prompt_name includes a None entry, and if prompt_index_control is on fixed while prompt_name is still sitting on None, that's what you'll get. Pick an actual entry, or switch the control to randomize/increment.
Scrolling 350 entries to find one is painful. Don't - set prompt_index_control to increment and queue a batch instead. That pages through the list in order without you touching the dropdown, the same trick that makes DP Art Style Generator's much bigger list workable.
I found a great randomized subject and lost it. There's no seed here, only fixed/randomize/increment/decrement. If randomize lands on something worth keeping, switch to fixed and copy the text out immediately - there's no way to reconstruct a specific past random draw.
Combined prompt is getting ignored or truncated. Stacking a generated subject line on top of your own scene description, lighting, and quality tags adds up fast, and CLIP-based text encoders (SD 1.5, SDXL, and most of that generation) only attend properly to roughly the first 75-77 tokens before things start getting dropped or diluted. If your results stop reflecting the back half of a long combined prompt, that's usually the token budget, not a bad subject pick - trim rather than keep stacking on more.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| prompt_name | COMBO | 350 options: None, Portrait - young woman with flowing hair, Portrait - elderly man with wise eyes, Portrait - child playing in sunlight, Portrait - artist in creative studio, Portrait - dancer in graceful motion, +344 | |
| prompt_index_control | COMBO | 4 options: fixed, randomize, increment, decrement | |
| index | INT | 00–9999 | — |
| max_from_category | INT | 00–10 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| category | STRING | — |
| prompt | STRING | — |