DriveWash
What the drive throws away. `ShipHelm` spawns this on a temporary child at the Aurelian's stern and lets it read the published flight state.
DriveWash
What the drive throws away. ShipHelm spawns this on a temporary child at the
Aurelian's stern and lets it read the published flight state.
It is the visible half of the game's one resource decision: at a cruise setting the wash is a thin amber thread, and the moment the drive opens wide it becomes a white-blue torch three times as long, with a burst at the instant boost starts. You can see the tank emptying.
Because the ship outruns its own exhaust, the emitter needs no trail machinery — particles are dropped at the stern with a small outward speed and the ship simply leaves them behind, which is what a wash is.
Four states — idle, cruise, boost, retro — each with its own colour
ramp, lifetime, particle size and spread. Under retro burn the drive has turned
around, so the wash goes out the bow. The sequences are only rewritten when
the state changes, so the per-frame cost is two number writes and a vector.
Fields
cruiseRate boostRate retroRate — particles per second per state, before
the throttle scales them. washSpeed — how hard the wash is pushed off the
stern.
Note on the emitter
The component adds @builtin::components.ParticleEmitter by its full
identity. Two components answer to the bare name ParticleEmitter
(@builtin::systems.particles.ParticleEmitter is the other), so component.add
refuses the short form as ambiguous, and the checker validates the init table
against whichever of the two it picked — reporting lifetime, speed, size,
transparency, color, shape and emitterSize as unknown and claiming they
"will be skipped", when every one of them is real and works. Naming the one you
mean makes both problems go away. Engine issues #5048 and #7588.
Scoped to this part · feeds back into the world's score.