Doom Random Prompt
Doom Random Prompt
- random_prompt
- counter
- seed_used
Writer's block is a real workflow problem, and Doom Random Prompt is the pack's cure: it assembles a prompt from category word-lists shipped in the pack, with two wildcard syntaxes you can use to shape exactly how random "random" gets. Set a seed and it becomes reproducible - the same seed, the same counter, the same prompt, every time. That's the difference between a dice roll and a workflow you can actually debug.
How it works
The pack ships 13 category files in its lists/ folder - background, characters, clothing, color_palette, composition, decorative, gender, lighting, mood, motion, special, style, techniques. The node reads those, picks one line from each enabled category, and stitches them into a prompt. Each category has an enable_<name> toggle, so you can, say, lock out style and techniques when you only want scene descriptions.
Two wildcard syntaxes extend it beyond the fixed categories:
{a|b|c}- pick one of the alternatives inline.__filename__- pull a random line fromlists/filename.txtat that spot in the prompt.
So you can write a template prompt where half the words are fixed and half are rolls, which is the sweet spot: structured enough to be coherent, random enough to keep surprising you.
The inputs that matter
- counter - increments each run, and it's part of what makes a seed reproducible. Feed the
counteroutput back into this input and it climbs by one per run. - seed -
-1means a fresh random pick every run. Any non-negative value makes the result reproducible: same seed + same counter = same prompt. - enable_* - the category toggles. All default on.
- seed_used (output) - the seed that was actually used. Log this; it's what lets you recreate a prompt you liked three weeks later.
Outputs are random_prompt (the assembled string), counter (input + 1, for the loopback), and seed_used.
Setup and the catches
Standard pack install:
cd ComfyUI/custom_nodes
git clone https://github.com/PeterMikhai/Doom_Flux_NodePack
Restart ComfyUI, or search "DoomAI Nodes" in Manager. No dependencies.
Three things are worth knowing before you lean on it:
- The lists are yours to edit. They live in the pack's
lists/directory. The shipped categories are a start, not a contract - the real power is replacing the lines with your own vocabulary. Add your own.txtand the node picks it up as a new category on restart. - "Reproducible" requires discipline. Same seed and same counter. If the counter drifts (say you changed the loopback wiring), the "same" seed gives a different prompt. That's by design - it's what makes counter an intentional knob.
- It's a starting point, not a finished prompt. These categories produce describe-the-scene text, which suits Flux and Krea 2 fine. On strict SDXL-style tag models, you may want to pipe the result through a prompt builder or edit it down.
One honest note: the shipped vocabulary is English and generic - you're not going to get "the exact niche aesthetic from that one artist" out of the box. But as a slot machine for "give me something I didn't think of", it's exactly the right amount of machine, and the seed logic is done properly, which is rarer than it should be.
Inputs (15)
| Name | Type | Default | Description |
|---|---|---|---|
| counter | INT | 0 | Счётчик прогонов (увеличивается на 1) |
| seed | INT | -1-1–18446744073709550000 | -1 — случайный сид каждый раз; >=0 — воспроизводимый результат |
| enable_background | BOOLEAN | true | Использовать категорию «background» (lists/background.txt) |
| enable_characters | BOOLEAN | true | Использовать категорию «characters» (lists/characters.txt) |
| enable_clothing | BOOLEAN | true | Использовать категорию «clothing» (lists/clothing.txt) |
| enable_color_palette | BOOLEAN | true | Использовать категорию «color_palette» (lists/color_palette.txt) |
| enable_composition | BOOLEAN | true | Использовать категорию «composition» (lists/composition.txt) |
| enable_decorative | BOOLEAN | true | Использовать категорию «decorative» (lists/decorative.txt) |
| enable_gender | BOOLEAN | true | Использовать категорию «gender» (lists/gender.txt) |
| enable_lighting | BOOLEAN | true | Использовать категорию «lighting» (lists/lighting.txt) |
| enable_mood | BOOLEAN | true | Использовать категорию «mood» (lists/mood.txt) |
| enable_motion | BOOLEAN | true | Использовать категорию «motion» (lists/motion.txt) |
| enable_special | BOOLEAN | true | Использовать категорию «special» (lists/special.txt) |
| enable_style | BOOLEAN | true | Использовать категорию «style» (lists/style.txt) |
| enable_techniques | BOOLEAN | true | Использовать категорию «techniques» (lists/techniques.txt) |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| random_prompt | STRING | Собранный промпт |
| counter | INT | Счётчик (вход + 1) |
| seed_used | INT | Сид, реально использованный |