Magical gene / fields and regions
Tidefoam Sash
A sinuous sash of deep tidewater teal sweeps diagonally across the barrel, its surface laced with a fine white net of foam cells and the occasional larger bubble.
What it can come out as
| Outcome | Carrying |
|---|---|
| Tidefoam Sash | Tfs/Tfs · Tfs/n |
| Wild type | n/n |
How each one is actually drawn - region by region, and the layers it is built from - is on the coding tab.
Crossing two of them
Finding one
About 1 in 2,500 wild horses is born showing this. That is the whole of the supply: catch one, or make one with the carrot below. Breeds set their own pools and a breed built around this gene will carry it far more often than the wild population does.
| Wild pair | Shows as | How often |
|---|---|---|
Tfs/Tfs | Tidefoam Sash | 0.002% — 1 in 50,000 |
Tfs/n | Tidefoam Sash | 0.038% — 1 in 2,632 |
n/n | Wild type | 99.96% |
Its gene carrot
The file
common/src/main/resources/horsegenetics/genes/tidefoam_sash.json — a
data-driven gene, not a Java class. It is listed in the
index.json beside it and registered by Genes' class
initialiser at startup.
| Key | horsegenetics.tidefoam_sash |
|---|---|
| Phase | magical — it adds signed colour in phase 3, after the pigment has resolved |
| Priority | 289 — where it sits in the one (priority, key) paint order |
| Alleles | Tfs · n |
| Varies per horse | 3 values drawn once off the expressing allele copy, so a foal that inherits the copy inherits the look |
| Built from | CRACKLE, PARTS, PATH, RAMP, SPOTS, TOWARD |
Why it is built this way
The water is one RAMP driven off a noise field rather than a paint layer with a darkening layer over it - a second layer could not have seen the first one's paint, and the marbling has to vary continuously rather than in steps. RAMP's 'noise' axis is what makes that one layer; before it existed the colour could only sweep once along an axis.
Each foam cell now carries its own whirl. The import shipped a single marbling field across the whole sash and said plainly that it ignored the cell walls drawn on top of it; the highlight layer here reads the SAME tessellation from each cell's centre out ('measure': 'centroid'), so the swirl belongs to the cell it sits in rather than wandering across three of them.
The foam net is CRACKLE because the reference is defined by the walls BETWEEN cells, not by distance to a cell centre. That distinction is the whole reason the mask exists.
The teal is fixed by concept rather than carried on a hue knob. Per-horse variety comes off the noise seed instead, which keeps the marking reading as water on every carrier.
What it paints
Each outcome, described the way the gene file describes it, and then the layers that draw it in the order they are painted. The prose is the part a reader checks a bake against; the list underneath is what the engine actually did.
Tidefoam Sash
A diagonal sash of marbled sea-teal crosses the ribcage, its surface broken by a fine white network of foam cells with occasional larger bubbles caught in it.
- the water —
PARTS×PATH, painted withRAMP - a whirl inside each foam cell —
PARTS×PATH×CRACKLE inverted, painted withTOWARD - the foam net —
PARTS×PATH×CRACKLE inverted, painted withTOWARD - and the larger bubbles —
PARTS×PATH×SPOTS, painted withTOWARD
Wild type
Nothing.
Paints nothing.