ComfyUI Node

APNext Plots

Seed a scene with a genre plot from category banks

By dagthomas·Created 3 years ago·Updated 13 days ago· 283
APNext Plots
    • prompt
    • random
    prompt
    separator,
    string
    seed0
    attributesfalse
    fantasyNone
    musicalNone
    romanceNone
    generalNone
    warNone
    scifiNone
    horrorNone
    arthouseNone
    cyberpunkNone
    actionNone

    PlotsPromptNode (APNext Plots) appends a narrative scenario to your prompt, sorted by genre. It's an offline builder - no API, no key - from this pack's Auto Prompter family, and the idea is to inject a situation rather than just objects and adjectives: "a group of rebels attempts to overthrow a totalitarian government," "escaping from a haunted house," "dealing with the pressure of being in a popular band." Set it to Random and every queue rolls a new plot, which is a fast way to break out of generating the same three compositions over and over.

    How it works

    The node stores plot-scenario lists by genre and stitches your pick onto the base prompt with the separator (default ,). Every genre dropdown offers None, Random, Multiple Random, or a specific choice:

    • scifi (~170 scenarios), fantasy, horror, cyberpunk, action, war, romance, musical, arthouse, and a catch-all general bank.

    seed makes the rolls reproducible; attributes pulls in extra descriptors. Two outputs - prompt (base plus the chosen plot) and random (a randomized selection) - into your text encode.

    The realistic take

    This node is a concepting tool more than a precision one. A plot scenario is a long, abstract sentence ("dealing with the consequences of using dark magic"), and image models don't render abstract plot - they render what's visible. So a scenario like "battling a supernatural entity" helps because it implies a scene the model can draw (a figure, a threat, dramatic lighting); one like "coming to terms with a betrayal" gives the model almost nothing concrete to work with.

    On modern LLM-encoded models this actually works better than it used to, because they parse the sentence as an instruction and infer a visual from it. But it's still a brainstorming aid: use it to find a direction, then look at what it generated and tighten the prompt by hand. Don't expect a one-line plot to nail a specific composition.

    Installing it

    ComfyUI Manager: search comfyui_dagthomas, install, restart. Or:

    cd ComfyUI/custom_nodes
    git clone https://github.com/dagthomas/comfyui_dagthomas
    cd comfyui_dagthomas
    pip install -r requirements.txt
    

    This node uses none of the pack's LLM dependencies - pure string assembly - so it runs even if the API nodes can't reach a provider.

    Common issues

    The plot didn't show up in the image. Abstract scenarios ("confronting personal demons") have no visual anchor. Pick scenarios that imply something concrete and visible, or combine the plot with a subject/setting description that grounds it.

    Multiple Random gave a mess. Rolling several genres at once can staple a war scenario onto a romance onto a musical. Pick one genre bank at a time for a coherent scene.

    Nothing was added. All dropdowns at None append nothing - set at least one to a value or to Random.

    Categorycomfyui_dagthomas

    Inputs (15)

    NameTypeDefaultDescription
    promptSTRING
    separatorSTRING,
    stringoptSTRING
    seedoptINT00–18446744073709550000
    attributesoptBOOLEANfalse
    fantasyoptCOMBONone53 options: None, Random, Multiple Random, Battling against evil forces or dark wizards, Dealing with the aftermath of a spell gone wrong, Dealing with the consequences of using dark magic, +47
    musicaloptCOMBONone53 options: None, Random, Multiple Random, Competing in a musical competition, Dealing with the challenges of being a solo artist, Dealing with the challenges of touring, +47
    romanceoptCOMBONone52 options: None, Random, Multiple Random, Breaking down personal barriers to love, Building a relationship despite personal insecurities, Building a relationship while balancing career and other commitments, +46
    generaloptCOMBONone96 options: None, Random, Multiple Random, Attempting to break a world record, Attending a destination wedding, Attending a high school reunion, +90
    waroptCOMBONone53 options: None, Random, Multiple Random, Carrying out a dangerous mission, Conducting a commando and special forces mission, Conducting a covert operation, +47
    scifioptCOMBONone169 options: None, Random, Multiple Random, A group of astronauts must navigate a deadly asteroid field to save humanity, A group of astronauts tries to save Earth from an alien attack using a mysterious device, A group of explorers ventures to a new world to find a cure for a deadly virus, +163
    horroroptCOMBONone52 options: None, Random, Multiple Random, Battling a cursed object, Battling a dark cult, Battling a powerful evil entity, +46
    arthouseoptCOMBONone53 options: None, Random, Multiple Random, Battling with a chronic illness, Being caught in a love triangle, Being haunted by a ghost, +47
    cyberpunkoptCOMBONone53 options: None, Random, Multiple Random, Battling against cyborgs and robots, Dealing with the aftermath of a cyber-disaster, Dealing with the consequences of artificial intelligence, +47
    actionoptCOMBONone52 options: None, Random, Multiple Random, Breaking into a secure location, Dealing with a corrupt government or law enforcement, Defending against a cyber attack or hacking attempt, +46

    Outputs (2)

    NameTypeDescription
    promptSTRING
    randomSTRING