VNCCS Service Emotions Generator
Batch-rendering every emotion in the config, for QA not for players
- character
- output_dir
- count
Don't confuse this with VNCCS Emotions Generator - that's the Step 3 node regular users run to add a chosen emotion set to a specific character, wired to Emotion Studio's selection UI and a big configuration blob covering upscaling, background removal and face-detail settings. This one lives in its own VNCCS/service category, takes a single flat denoise value instead of a whole config, and does something narrower and more mechanical: generate one reference image for every emotion defined in the pack's emotions-config/emotions.json, full stop. No selection UI, no per-costume looping - it's the pack's own internal QA and coverage tool, and it's exactly the kind of thing worth reaching for if you're testing a new character or style against the entire emotion catalog rather than the handful you'd normally pick for a game.
The inputs that matter
Just three, all required:
character- a single reference image, not a character-name lookup like Sprite Generator's dropdown. You're feeding this node a picture directly.character_prompt- a multiline description of the character, presumably folded into the prompt alongside each emotion's own description as generation runs through the full list.denoise(default 0.55, range 0–1) - the same face-detailer-strength tradeoff that governs every emotion-generation step in VNCCS: higher gives a stronger, more obvious expression at the risk of the face drifting from the character; lower keeps the character recognizable but can undersell weaker emotions. This is a real, reported failure mode elsewhere in the pack - a user on VNCCS's release thread described smeared, streaky results on the equivalent face-detailer pass and confirmed dropping denoise helped. Same knob, same tradeoff, worth watching here too, especially since this node has no per-emotion override to compensate - onedenoisevalue applies across the whole catalog run.
Two outputs: output_dir (a string - where the generated reference set landed on disk) and count (an integer - how many emotions actually got rendered). It's flagged as an output node, since writing that batch of files to disk is the point.
Where it fits
This isn't Step 3. Use it when you're evaluating a new character design, a new style LoRA, or a checkpoint swap and want to see how every emotion in the catalog renders before committing to a full production run through the regular Emotions Generator - a fast way to spot which expressions a particular character or style handles badly before you've invested in generating full costume sets for each one.
How to install it
Bundled with the main pack:
- ComfyUI Manager - search
VNCCS - Visual Novel Character Creation Suite, install, restart. - Manual -
cd ComfyUI/custom_nodes && git clone https://github.com/AHEKOT/ComfyUI_VNCCS.git, thencd ComfyUI_VNCCS_Utils && pip install -r requirements.txt, restart, and let Comfy Manager grab any missing dependencies.
Common issues
Faces come out smeared or with streaky artifacts across the batch. Lower denoise - this is the same complaint reported against VNCCS's regular emotion-generation face-detailer pass, and the same fix applies. Since this node has no per-emotion tuning, a value that works for most of the catalog might still overshoot on a handful of stronger expressions; treat count and output_dir as your cue to go review the actual output folder rather than assuming a clean run.
Running a full-catalog batch is slow. That's expected - it's rendering one image per emotion in the config, which is a real generation per entry, not a cheap preview. Use it deliberately for evaluation passes, not as your everyday emotion-generation node; that's what Step 3's Emotions Generator, with its selective emotion picker, is for.
output_dir doesn't match where you expected files to land. VNCCS's workflows were originally built and tested on Windows, and path-separator handling has tripped up users running the pack on Linux before. If the reported directory looks wrong, check that first rather than assuming the generation itself failed.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| character | IMAGE | — | |
| character_prompt | STRING | — | |
| denoise | FLOAT | 0.550–1 | — |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| output_dir | STRING | — |
| count | INT | — |