Nodes/Doom_Flux_NodePack/Doom Constructor
ComfyUI Node

Doom Constructor

Build Russian prompts from nine word categories

By PeterMikhai·Created about a year ago·Updated 6 days ago· 1
Doom Constructor
    • prompt_parts
    category_Детализация_и_Качествоне выбрано
    category_Материалы_и_Текстурыне выбрано
    category_Освещение_и_Время_сутокне выбрано
    category_Ракурс_и_Композицияне выбрано
    category_Стили_и_Жанрыне выбрано
    category_Художники_и_Студиине выбрано
    category_Цветане выбрано
    category_Эмоции_и_Настроениене выбрано
    category_Эпохи_и_Культурыне выбрано

    First, the naming: the class behind this node is DoomConstructor, and it shows up in your search bar as Doom Constructor. KontextConstructor_RU is the legacy alias - a leftover from the pack's old naming scheme, kept so old workflows keep loading. You're reading this page because you searched for the alias, but the node you'll actually place is Doom Constructor. Good to know before you go hunting.

    What it does: builds a prompt from nine Russian-language word categories - Детализация и Качество (detail and quality), Материалы и Текстуры (materials and textures), Освещение и Время суток (lighting and time of day), Ракурс и Композиция (angles and composition), Стили и Жанры (styles and genres), Художники и Студии (artists and studios), Цвета (colors), Эмоции и Настроение (emotions and mood), and Эпохи и Культуры (eras and cultures). You pick one word from each category you care about, and the node joins them into a single comma-separated prompt. Categories left at "не выбрано" (not selected) are skipped entirely.

    How it works

    Each of the nine inputs is a dropdown labeled category_<Название>, and each defaults to "не выбрано". Pick a word from the ones you want, leave the rest alone, and the output is the assembled string - through prompt_parts - ready to feed a sampler, a prompt builder, or a translate node if your model wants English.

    This is a Russian-speaking user's answer to "I know what I want, I just need the right words." The vocabulary is pre-selected per category, which means it's a generator with training wheels: it produces coherent, structured prompts without you having to recall the exact phrasing for "low-key warm evening light with a painterly finish."

    The inputs that matter

    • category_* (the nine dropdowns) - each holds that category's word list. Empty = skipped, which is the behavior you want for a template you reuse.
    • prompt_parts (output) - the assembled, comma-separated prompt.

    Setup

    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 - pure word-list assembly.

    Where people get burned

    • The alias confusion. Search "Kontext" and you might expect a "Kontext Constructor" node; what you get is Doom Constructor with the same class. Old workflows referencing KontextConstructor_RU still load - that's the point of the alias - but new graphs should use the current name.
    • The output is Russian words. The categories and words are in Russian. If your target model's encoder was trained on English, you'll want Doom Translate (or a manual pass) on the result. This node assumes you're building prompts in Russian, full stop.
    • One word per category. It's a constructor, not a composer - each category contributes one selection. For richer prompts, feed multiple Constructor outputs (or a wordbook) into a builder that joins them.
    • It's vocabulary, not syntax. The output is a word list, not a sentence. Modern LLM-encoded models tolerate that fine, but don't expect English-grade prose structure out of the box.

    Same pack, same author, same honest scope as the rest of the Doom family: a small node that does one assembly job well, aimed squarely at its Russian-speaking audience. If that's you, it's a fast way from "what should I even write" to "here's a usable prompt."

    CategoryDoom/Prompt

    Inputs (9)

    NameTypeDefaultDescription
    category_Детализация_и_КачествоCOMBOне выбраноКатегория «Детализация и Качество» (не выбрано — пропускается)
    category_Материалы_и_ТекстурыCOMBOне выбраноКатегория «Материалы и Текстуры» (не выбрано — пропускается)
    category_Освещение_и_Время_сутокCOMBOне выбраноКатегория «Освещение и Время суток» (не выбрано — пропускается)
    category_Ракурс_и_КомпозицияCOMBOне выбраноКатегория «Ракурс и Композиция» (не выбрано — пропускается)
    category_Стили_и_ЖанрыCOMBOне выбраноКатегория «Стили и Жанры» (не выбрано — пропускается)
    category_Художники_и_СтудииCOMBOне выбраноКатегория «Художники и Студии» (не выбрано — пропускается)
    category_ЦветаCOMBOне выбраноКатегория «Цвета» (не выбрано — пропускается)
    category_Эмоции_и_НастроениеCOMBOне выбраноКатегория «Эмоции и Настроение» (не выбрано — пропускается)
    category_Эпохи_и_КультурыCOMBOне выбраноКатегория «Эпохи и Культуры» (не выбрано — пропускается)

    Outputs (1)

    NameTypeDescription
    prompt_partsSTRINGСобранный промпт (через запятую)