Story & Style Selector
Pick the story and the look, get the index
- story_index
- style_index
Some workflows want you to pick from named presets - "Motorcycle vs. Insect," "A Knights Tale," "Cyberpunk" - and then hand the number of your choice to the rest of the graph, because the downstream nodes are wired to indices, not labels. Story & Style Selector is that UI: two dropdowns, story and style, and two integer outputs (story_index, style_index) that tell the graph which option you picked.
It's the simplest node in this pack's String Batch family, and honestly it reads like a demo or a workflow-template piece - the author's YouTube workflows use it to drive quick story/styling tests without rebuilding a graph. The story choices ship as "Motorcycle vs. Insect," "A Knights Tale," and "Cyberpunk"; style ships as "Realistic," "Anime," and "Stop Motion." Those are examples, not a complete taxonomy - there's no way to add your own entries from the UI.
How it works
A dropdown with N choices is just an index under the hood. This node does nothing but expose that: select a story, the node returns its position as story_index; select a style, you get style_index. Both are 1-based integers matching the dropdown order (story 1 = "Motorcycle vs. Insect", story 2 = "A Knights Tale", etc.).
The whole value is that those integers plug directly into index-driven nodes. In this pack, the obvious downstream is String Selector - give it a string_batch of one prompt per story, and feed story_index into the select input. Pick "A Knights Tale" in the dropdown and the matching prompt flows without you typing a number anywhere.
Inputs and outputs
story(enum) - one of the three story presets.style(enum) - one of the three style presets.- Outputs:
story_index(INT),style_index(INT).
Where it fits
Quick iteration and storyboarding: you're testing which combination of narrative and look you want, and you don't want to hunt through the graph to change it. One dropdown changes the whole pipeline's behavior. It also works as a tidy two-axis parameter block in a template workflow you share - newcomers get friendly named choices instead of raw integers.
Installing
Part of Mickmumpitz-Nodes - ComfyUI Manager → "Mickmumpitz" → install → restart, or:
cd ComfyUI/custom_nodes
git clone https://github.com/mickmumpitz/ComfyUI-Mickmumpitz-Nodes
Light deps (numpy, Pillow, opencv-python), no downloads.
Gotchas
The preset lists are fixed - if you need your own stories or styles, this node won't stretch; you'd want a String Batch + String Selector combo instead, which is fully editable. Also remember it outputs indices, not strings: don't wire story_index into a text encoder expecting the story text. That's a "wire it into the right consumer" trap that shows up the first time you use it, and it's the only way a node this simple can bite you.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| story | COMBO | Motorcycle vs. Insect | 3 options: Motorcycle vs. Insect, A Knights Tale, Cyberpunk |
| style | COMBO | Realistic | 3 options: Realistic, Anime, Stop Motion |
Outputs (2)
| Name | Type | Description |
|---|---|---|
| story_index | INT | — |
| style_index | INT | — |