Nodes/comfyui-original-character-generator/OC Generator / Generate Character Simple
ComfyUI Node

OC Generator / Generate Character Simple

The all-in-one OC generator

By nade-eaf4fc·Created 5 months ago·Updated 4 months ago· 1
OC Generator / Generate Character Simple
    • prompt
    • formatted_prompt
    • name
    • hair_style
    • hair_color
    • eye_color
    • accessory
    • bust_size
    • prompt_list
    • formatted_prompt_list
    • name_list
    • hair_style_list
    • hair_color_list
    • eye_color_list
    • accessory_list
    • bust_size_list
    • metadata_json
    • metadata_list
    seed0
    output_modesingle
    list_count1
    base_prompt
    include_base_prompttrue
    presetUser settings
    fixed_hair_style(not fixed)
    fixed_hair_color(not fixed)
    fixed_eye_color(not fixed)
    fixed_accessory(not fixed)
    fixed_bust_size(not fixed)
    weight_flat0.18
    weight_small0.28
    weight_medium0.26
    weight_large0.18
    weight_xlarge0.10
    accessory_probability0.58
    production_modetrue

    The rest of this pack splits the job into two nodes - a Settings node that builds a configuration object, and a generator that consumes it. OC Generator / Generate Character Simple collapses that into one node. It carries every settings widget onboard, plus an output_mode switch that lets it behave as either the single generator or the list generator depending on what you need this run.

    That's the honest pitch: it's not more powerful, it's less ceremony. If you're prototyping, or you just want a character in one click without wiring up a settings object you may not even re-use, this is the node to reach for. The moment you want the same character profile across a dozen different seeds or workflows, the split version wins, because settings becomes a shared, reusable object instead of values baked into one node.

    The inputs that matter

    It's the whole Settings node's widget set plus generation controls, so:

    • seed - drives all randomness, as everywhere in this pack.
    • output_mode - single (default) or list. This decides whether you get scalar outputs or the *_list variants populated.
    • list_count - only meaningful when output_mode is list; batch size from 1 to 256.
    • Everything from the Settings node: base_prompt, include_base_prompt, preset, the five fixed_* trait dropdowns (137 hair styles, 33 hair colors, 73 accessories, and so on), the five bust weight_* floats, accessory_probability, and production_mode.

    The behavior notes all carry over. Leave a trait (not fixed) to roll it; pin one to lock it. Zero bust weights fall back to the Balanced distribution. production_mode hides developmentOnly entries. And determinism holds: same seed, same settings widgets, same character.

    The outputs

    It outputs everything the other two generators output, at once - 18 sockets total. In single mode, the scalar sockets (prompt, formatted_prompt, name, the trait picks, metadata_json) are populated; the *_list sockets stay empty. In list mode it's the reverse, with the list sockets filled by the same seed + index scheme the dedicated list node uses.

    That's a lot of sockets, and honestly you'll use two of them: prompt (or prompt_list) into your CLIP Text Encode, and maybe name into a filename builder. The rest are there for metadata routing and can stay unconnected without complaint.

    Install and gotchas

    Identical to the rest of the pack - no dependencies, no models:

    cd ComfyUI/custom_nodes
    git clone https://github.com/nade-eaf4fc/comfyui-original-character-generator.git
    

    or install comfyui-original-character-generator via ComfyUI Manager, then restart and look under the OC Generator category.

    The one real trap here is conceptual: since everything is baked into the node, you can't share a character profile across workflows without re-entering it. The README also carries a general warning that recent updates may break existing workflows - and with 18 outputs, a version bump is more likely to shuffle a socket or two. If a saved workflow with this node starts throwing type mismatches after an update, that's almost certainly it. Otherwise, enjoy the one-node character factory. It's the quickest path from "I want a character" to "I have a prompt," which is the whole point of the pack.

    CategoryOC Generator

    Inputs (18)

    NameTypeDefaultDescription
    seedINT00–18446744073709550000
    output_modeCOMBOsingle2 options: single, list
    list_countINT11–256
    base_promptSTRING
    include_base_promptBOOLEANtrue
    presetCOMBOUser settings5 options: User settings, Balanced, Petite, Curvy, Statement
    fixed_hair_styleCOMBO(not fixed)137 options: (not fixed), long straight hair, long wavy hair, long curly hair, long flowing hair, long hair with blunt bangs, +131
    fixed_hair_colorCOMBO(not fixed)33 options: (not fixed), black hair, dark brown hair, brown hair, light brown hair, blonde hair, +27
    fixed_eye_colorCOMBO(not fixed)33 options: (not fixed), blue eyes, deep blue eyes, light blue eyes, icy blue eyes, green eyes, +27
    fixed_accessoryCOMBO(not fixed)73 options: (not fixed), small hair ribbon, hair clip, hair pin, flower hairpin, simple headband, +67
    fixed_bust_sizeCOMBO(not fixed)6 options: (not fixed), flat, small, medium, large, xlarge
    weight_flatFLOAT0.180–1
    weight_smallFLOAT0.280–1
    weight_mediumFLOAT0.260–1
    weight_largeFLOAT0.180–1
    weight_xlargeFLOAT0.100–1
    accessory_probabilityFLOAT0.580–1
    production_modeBOOLEANtrue

    Outputs (18)

    NameTypeDescription
    promptSTRING
    formatted_promptSTRING
    nameSTRING
    hair_styleSTRING
    hair_colorSTRING
    eye_colorSTRING
    accessorySTRING
    bust_sizeSTRING
    prompt_listSTRING
    formatted_prompt_listSTRING
    name_listSTRING
    hair_style_listSTRING
    hair_color_listSTRING
    eye_color_listSTRING
    accessory_listSTRING
    bust_size_listSTRING
    metadata_jsonSTRING
    metadata_listSTRING