How does this work:
Station receives a communication extorting current cargo point, if they answer yes the points are just gone and nothing of interest happens.
If station refuses to pay or is silent for 3 minutes, pirate shuttle spawns somewhere in space.
There's an internal GPS onboard so crew will always be able to follow the shuttle.
Crew of 3, moderately armed. (Balance pending)
Shuttle engines have 3 minute cooldown between jumps.
Special shuttle equipment will block cargo and emergency shuttles from leaving and slowly steal the points.
* Overlay per-type cost logging.
Overlays will now log how long each type took to process.
Changed up how overlays was done to account for the fact its a queue and not a processor. (it was using almost none of the processing subsystem framework)
Made the overlay loop faster by making it not cut the list until the end.
Added a simple generic benchmark stat tracking system.
I don't know how much overhead this adds to overlays. i may put it behind testing or something, but i do want to test this on the serbers to get some stats.
* Removes flush() as it was creating race conditions
* Use ref
* text2file
* Atoms added as an overlay will have their pending overlays compiled before being converted to an appearance
When I ran the Colosseum of Fools event a while ago, I used sounds I had locally to spice up the event and make it unique, but I ran into the issue of there being no easy way to play sounds in flexible ways while preventing people who don't want to hear them from being included.
Adds sound emitter objects, editable by admins through a handy UI, that allows them to play sounds in a variety of flexible ways. The following things can be manipulated by any admin by clicking on the sound emitter:
Label (maptext)
Sound File is chosen by navigating to the file like normal sound playing
Sound Volume is a percentage between 1 and 100
Mode dictates how the sound is played and can either be local (played at that location like a normal in-game sound) or direct (played directly to players like admin sounds)
Range dictates how far players need to be to hear the sound; this includes Radius (all players within a specified amount of tiles), Z-Level (all players on the same z-level), and Global (all players.)
Sound emitters can be examined by any ghosts (they're invisible to normal players) to see the info about them, but only admins can edit their properties and play sounds with them.
This lets admins make very flexible sound emitters that can fulfill a variety of different purposes, like music that only people within 7 tiles can hear or a distant screech of metal that an entire search party on the derelict hears.
In addition to the Play Sound button, alt-clicking the emitter activates it.