[deprecated] Script Picker (JSON dropdown)
The deprecated JSON script dropdown, and what it feeds
- prompts_json
- path
- speakers
JoyEcho_ScriptPicker is the deprecated alias for the H3 JSON script picker - a dropdown that lists every *.json in input/joyecho_prompts/ and hands the chosen file's contents to the generator. It exists as a compatibility alias so graphs saved against pack version 2.0 load without red nodes; the live class is RiftScriptPicker.
Why a dropdown at all? The stock text-encode node only accepts pasted JSON or a typed path, which is painful in the canvas. This node makes a saved script a one-click choice: add a .json to that folder, refresh (or press R) to repopulate the dropdown, pick it, run. Editing the file re-triggers execution automatically because the node tracks the file's mtime - no need to reselect.
What it does
The single input is script (a dropdown of JSON files). Outputs:
prompts_json- the file's contents as inline{"prompts":[...]}JSON, wired straight into the generator'spromptsinput.path- the chosen file's path, for the rest of the graph to know what it's rendering.speakers- the per-character speaker order, derived from the script by scanning each shot for who "is talking". That's a real convenience: per-character audio memory needs to know who speaks in each shot, and the picker derives it instead of making you retype a speaker list per script.
Under the hood it also stashes the speaker order and any voice anchors the script carries (a voice_refs key mapping characters to voice clip paths), so the downstream generator can cast a character's voice from a file instead of rolling it from text.
Installing it
Part of the ComfyUI-H3-Multishot pack:
cd ComfyUI/custom_nodes
git clone https://github.com/jlucasmcrell/ComfyUI-H3-Multishot
Or search H3 Multishot in ComfyUI Manager. Requires ComfyUI v0.30.0+.
Gotchas
Two things. First, JoyEcho_ScriptPicker was never a real published name - like its sibling prompt source, it leaked out of a 2.0 naming bug and survives only as the compatibility alias, so build new work with RiftScriptPicker. Second, the empty-dropdown failure mode: if the folder shows no files, the JSON lives in input/joyecho_prompts/ - a folder the pack reads directly, so this one doesn't depend on inspire-pack the way the prompt source dropdown does. Check the folder exists and contains .json, then refresh.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| script | COMBO | 1 options: (no .json in input/joyecho_prompts) |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| prompts_json | STRING | — |
| path | STRING | — |
| speakers | STRING | — |