vehicle ejection detail (Vehicle Ejection)



VEHICLE EJECTION

Usage:
    eject
    eject <seated passenger>

EJECT activates an aircraft's ejection system. With no argument, it
ejects you from your own station. With a target, it attempts to
eject that seated occupant instead -- this requires legitimate
authority over the vehicle (the same authority that lets you start
its engine), not merely being aboard it.

The target must actually be seated in a real vehicle seat that is
specifically configured with an ejection mechanism. A standing
passenger, someone in ordinary furniture, or someone outside the
vehicle cannot be ejected this way. Most seats have no ejection
mechanism at all -- it is never granted automatically just because a
vehicle can fly.

The ejection seat itself never detaches from the aircraft. Only the
occupant leaves: the seat's charges fire, launching them physically
upward and clear of the vehicle. A parachute then attempts to deploy
automatically as they fall -- there is no separate deployment
command. Whether it deploys in time, and how much it reduces the
landing impact, depends on how far they have actually fallen when
they reach the ground, using the same real falling/landing rules
every other fall in this world uses.

Ejecting inside a physically enclosed (indoor) space is presumed
catastrophic by default: the occupant is launched straight into the
structure above instead of into open air, causing fatal head/neck
trauma through the normal injury and death systems. Any genuinely
outdoor space is always safe. An indoor space is only safe if a
Builder has specifically authored it as having real sufficient
clearance (for example a proper aircraft hangar) -- an ordinary
enclosed Room is fatal unless marked otherwise, not the other way
around.

The aircraft itself, and any other occupants, are unaffected by
someone else's ejection and continue operating normally.

Staff/builders:
    A vehicle station only has an ejection mechanism if its authored
    VehicleStationDefinition explicitly lists the
    STATION_CAPABILITY_EJECTION_SEAT capability
    (world/vehicles/stations.py) -- the same opt-in extension point
    other station capabilities already use. Adding it to an existing
    production station silently grants every vehicle using that
    station ejection capability; author a distinct station_id for a
    model that is meant to have one.

    Ejection clearance follows the Room's own canonical `outside` fact
    plus one additional, optional boolean Attribute,
    `ejection_overhead_clear`:
        outside is True        = always safe; open sky is never a
                                  clearance hazard
        indoor, unset/False    = FATAL (the default for every indoor
                                  Room that has never been authored
                                  one way or the other)
        indoor, explicit True  = this specific indoor Room has real
                                  sufficient clearance and is safe

    An indoor Room is dangerous by default. Only an explicit
    `ejection_overhead_clear = True` opts a specific indoor Room out
    of that default -- never inferred from `type` or anything else.

    The real exact launch height, parachute deployment threshold and
    landing-damage mitigation are provisional values pending owner
    balance review (see world/vehicles/ejection.py and the parachute
    constants in world/gravity.py) -- they are independently
    adjustable and not yet locked numbers.

Related help:
    help vehicle movement
    help vehicle equipment