VNCCS Character Selector QWEN
The natural-language version of the asset lookup
- face_details
- face_path
- sheet_path
- positive_prompt
- seed
- negative_prompt
- character_sheet
- costume_prompt
VNCCS 3.0 runs "almost pure Qwen Image Edit 2511 with loras," per the author's own description of the rebuild, plus Anima for portrait generation. Both of those read natural-language prompts far better than the tag-and-token style Illustrious-era workflows use - and this node exists because that shift changes what a "costume override" field should even look like. CharacterAssetSelectorQWEN is the same lookup as the plain Character Selector, rebuilt with multiline text fields for a pipeline that wants sentences, not tags.
What it does differently from the non-QWEN version
Same job: pick a character and a costume, get back the prompt text, seed, paths and character sheet you need downstream. The difference is entirely in the override fields. Where the original Character Selector's face/head/top/bottom/shoes are plain single-line strings suited to swapping a Danbooru-style tag or two, this version's equivalents are multiline, built for writing an actual descriptive sentence - the difference between typing glasses and writing "round wire-frame glasses, slightly tinted." That's a direct match to how Anima's natural-language prompting and Qwen-Image-Edit's instruction-style editing actually respond: they reward specific, written-out description more than compressed tag lists do.
This node also has one output the plain version doesn't: costume_prompt, a separate string specifically describing the outfit, kept apart from the general positive_prompt. That separation matters for an edit-model pipeline where you might want to hand the outfit description to a clothing-specific step independent of the rest of the character prompt.
Inputs and outputs that matter
characterandcostume(enum, from your library) - identical lookup keys to the non-QWEN version.- Optional
face,head,top,bottom,shoes(STRING, multiline) - write full descriptions here rather than short tags. Same head/face-for-accessories convention from the README applies: accessories like glasses or a hat belong there specifically so they don't get dropped during later stages like emotion generation. - Optional
extra_negative_prompt(STRING, multiline) andnew_costume_name(STRING). - Outputs:
face_details,face_path,sheet_path,positive_prompt,seed,negative_prompt,character_sheet(IMAGE), and the QWEN-specificcostume_prompt.
Installing it
Ships with the base pack. ComfyUI Manager: search "VNCCS - Visual Novel Character Creation Suite", install latest, restart. Manual: cd ComfyUI/custom_nodes && git clone https://github.com/AHEKOT/ComfyUI_VNCCS.git, restart.
Common issues & troubleshooting
Not sure whether to use this node or the plain Character Selector. Match it to your generation pipeline, not personal taste - if you're on VNCCS 3.0's Qwen/Anima path, this is the one built for it; if you're still running an Illustrious-based pipeline with tag-style prompting, the plain CharacterAssetSelector fits that better.
Sentence-style overrides get partially ignored, or the model latches onto one word instead of the full description. Natural-language prompting on Anima specifically is unforgiving of internal contradictions - it tries to render everything you write literally, including combinations that don't make physical sense, rather than gracefully dropping the impossible part the way an SDXL-style model tends to. Keep multiline descriptions internally consistent rather than stacking conflicting details.
costume_prompt and positive_prompt seem redundant. They serve different consumers downstream - if your workflow only reads positive_prompt, you can ignore costume_prompt entirely; it exists for pipelines that specifically need the outfit description isolated from the rest of the character prompt.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| character | COMBO | None | 1 options: None |
| costume | COMBO | Naked | 1 options: Naked |
| faceopt | STRING | — | |
| headopt | STRING | — | |
| topopt | STRING | — | |
| bottomopt | STRING | — | |
| shoesopt | STRING | — | |
| extra_negative_promptopt | STRING | — | |
| new_costume_nameopt | STRING | — |
Outputs (8)
| Name | Type | Description |
|---|---|---|
| face_details | STRING | — |
| face_path | STRING | — |
| sheet_path | STRING | — |
| positive_prompt | STRING | — |
| seed | INT | — |
| negative_prompt | STRING | — |
| character_sheet | IMAGE | — |
| costume_prompt | STRING | — |