Magical gene / colour modifiers
Rising Sun
Black ribbons ripple across the horse in a bank of parallel waves, each shadowed by a grey one a half-step behind it, with a single burning disc sitting on either flank. It is painted over almost everything else the horse carries.
What it can come out as
| Outcome | Carrying |
|---|---|
| Rising Sun | Rs/Rs · Rs/Rc · Rs/n |
| Coloured sun | Rc/Rc |
| Wild type | Rc/n · 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 3,571 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 |
|---|---|---|
Rs/Rs | Rising Sun | 0.001% — 1 in 100,000 |
Rs/Rc | Rising Sun | 0.004% — 1 in 25,000 |
Rs/n | Rising Sun | 0.019% — 1 in 5,263 |
Rc/Rc | Coloured sun | 0.004% — 1 in 25,000 |
n/n | Wild type | 99.972% |
Its gene carrot
The file
common/src/main/resources/horsegenetics/genes/rising_sun.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.rising_sun |
|---|---|
| Phase | magical — it adds signed colour in phase 3, after the pigment has resolved |
| Priority | 620 — where it sits in the one (priority, key) paint order |
| Alleles | Rs · Rc · n |
| Varies per horse | 6 values drawn once off the expressing allele copy, so a foal that inherits the copy inherits the look |
| Built from | PATH, TINT, TOWARD, WAVES |
Why it is built this way
The source was an SVG: four flat colours traced off a poster - black ribbons waving across white, each carrying a grey shadow offset down and left, and one flat red-orange disc laid over them. About 29 KB.
This is the one file in the set that wants WAVES, and the reason is that the ribbons REPEAT. Everything noise-derived in this vocabulary wanders and never comes back to the same place twice; a poster's waves are periodic on purpose, and spacing is what turns one WAVES band into a set of parallel ribbons rising and falling together.
space is units and every length in the layer is therefore in body units - from, to, amplitude and spacing all of them. That is deliberate and it is the standing trap here: amplitude is in whatever space says while wavelength never is, and six shipped genes once copied a saw-wave trick into space: part and displaced their band forty normalised spans off the horse, selecting nothing at all. If this gene ever comes out blank, that is the first thing to check.
Ribbon thickness is to minus from, so 1.2 body units - two and a half texels - against a spacing that bottoms out at 2.2, leaving a full unit of white between ribbons at the tightest roll. Raising waveAmp does not eat that gap, because the ribbons rise and fall together and stay parallel; only lowering ribbonSpacing does.
The grey shadow is the same wave shifted, not a blur: from and to are both up by 0.42 units and the phase is off by 0.35, which reproduces the poster's offset drop shadow. Nothing in this vocabulary offsets a mask, so a shadow has to be a second copy of the shape moved by hand - which is only possible here because WAVES is the one mask with a phase.
The disc is a PATH because it is ONE of them in ONE place, and plane: side gets 'either flank' for free - a shape drawn in the (x, y) plane is extruded along z. In that space the topline is 0.62 and not 1.0, so the disc sits at v 0.53 on the upper flank; at 0.7 it would be floating above the back and nothing would appear on the barrel. Twelve points on an ellipse rather than a circle because u and v normalise against different spans - 41 body units against 33.7 - so a circle in that space is an oval on the horse.
No white ground any more. It was an ALL layer at 86% opacity, so the gene repainted the entire horse before it drew anything - which made every rising sun horse the same horse underneath, and threw away the base coat the rest of the genome had just worked out. The ribbons and the disc are opaque enough to carry themselves on any coat.
Priority 620, up from 123, which puts it in the top third of the paint order and above every other marking except invert and tron. That is deliberate and it is the opposite of what the coverage rule of thumb would say - see wiki/making-a-gene.html#coverage. A rising sun is a poster printed ON the horse rather than a marking the horse has, and a poster that other markings draw over is not a poster. The rule of thumb is a rule of thumb.
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.
Rising Sun
Black ribbons roll in even waves across a white coat, each shadowed below in grey, with one flat red disc on either flank.
Layer order is ground, shadow, ribbon, disc. The shadow must go under the black or it draws a grey line across the ribbon it is supposed to be cast by, and the disc goes last because in the poster it sits over everything.
- the grey shadow, one ribbon offset off the black —
WAVES, painted withTOWARD - the black ribbons —
WAVES, painted withTINT - the disc, one on either flank —
PATH, painted withTOWARD
Coloured sun
The same ribbons and disc in two colours this line of horses carries.
The recessive coloured half of the usual pair, on two hues, because in the poster the disc is doing the opposite job to the ribbons rather than a quieter version of it. The ground stays near-white and the shadow stays grey: both are the value scaffolding the two hues are read against, and colouring either can roll a horse where the ribbons vanish.
- the grey shadow, one ribbon offset off the black —
WAVES, painted withTOWARD - the black ribbons —
WAVES, painted withTOWARD - the disc, one on either flank —
PATH, painted withTOWARD
Wild type
Unmarked.
Paints nothing.