4 Floats from List
Unpack a float list into four values
- float_list
- float_1
- float_2
- float_3
- float_4
4 Floats from List is the "unpack" half of a pair. Where 4 Floats (FourFloats) bundles four numbers into a single list wire, this node takes a float list and splits four values back out as individual FLOATs you can wire to four different places. If you've been routing a tidy bundle of numbers across your graph as one wire, this is where you break it back apart at the destination.
It's part of ComfyUI_Mira, mirabarukaso's set of small workflow-glue utilities, in the Numeral family. The pack/unpack pattern shows up a lot in the author's own regional-conditioning and character-select workflows, where you want a handful of related weights to travel together and then land in their separate slots at the end.
How it works
Feed it a FLOAT_LIST and it reads four consecutive entries out of that list, exposing them as float_1 through float_4. The Start_At_Index input decides where in the list it starts reading - set it to 0 to grab the first four, or bump it to window into a longer list further along. That's the whole trick: it's a slice-of-four with a movable starting point.
The inputs and outputs that matter
- float_list - the FLOAT_LIST to unpack, typically from 4 Floats or another node that emits a float list.
- Start_At_Index - where to start reading (default 0, step 1). Use it to pull four values from anywhere in a longer list.
- float_1, float_2, float_3, float_4 (outputs) - four individual FLOATs, each wired wherever you need it.
Pair it with 4 Floats for a clean bundle-here, unbundle-there flow across your graph.
Installing it
ComfyUI Manager: search ComfyUI_Mira, install, restart. Or clone:
cd ComfyUI/custom_nodes && git clone https://github.com/mirabarukaso/ComfyUI_Mira.git
then restart. If it errors on load, run pip install -r requirements.txt in the ComfyUI_Mira folder. It's under Mira/Numeral.
Common issues
- Mind the list length. It reads four values starting at your index. If the list is shorter than
Start_At_Index + 4, you're asking for entries that don't exist - keep the index within range for the list you're feeding it. - Index is a window, not a filter.
Start_At_Indexonly moves the starting point; it always pulls four in a row. There's no "pick these specific four" here. - Order carries through. The values come out in list order. If they land in the wrong slots, check the order they were packed in at the 4 Floats end.
- It expects a float list specifically. Wiring a single FLOAT or a different list type in won't do what you want - feed it a FLOAT_LIST.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| float_list | FLOAT_LIST | — | |
| Start_At_Index | INT | 0 | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| float_1 | FLOAT | — |
| float_2 | FLOAT | — |
| float_3 | FLOAT | — |
| float_4 | FLOAT | — |