Added a new wave defense gamemode, Revenants, wherein the station crew have to defend themselves from an endless wave of humanoid bluespace creatures.
Ported the icon from Baystation, it's their blueforged, but I tweaked the mob's alpha values a tad. Baystation12/Baystation12#21669
* Refactors airlock wire messages
Makes it more straightforward to see that all the lights are off (i.e.
no power). Also differentiates between showing bolt status when the
indicators are on vs. off, as one is just a simple visual check while
the other would supposedly require a more close-up inspection.
It also makes it much easier to modify the conditions and text however
needed instead of using a bunch of ternaries for everything.
Additionally index_to_type uses the proper constants instead of
hardcoded numbers.
* Lights up the airlock indicator lights
Also does minor refactor of the wires file.
* Adds mechanics to toggle if AIs can bolt doors using AI control wire
* Moves most AI "welcome text" to a separate pop-up window and adds it as a verb
Also adds list of channels to the Radio-Settings verb.
* Moves Initialize, Destroy to beginning, merges the two Initializes
* Adds explicit override for admins and malfs, this allows them to (un)bolt stealthily should they choose to do so
Also adds name and area of the airlock to the UI and refactors it some.
* More better.
Leaving the lobby screen list empty now adds all icon states to the lobby screen list. Also, only one dmi plays at a time.
This means that adding a new title screen is now as simple as just adding it to the dmi. Or making a new dmi for a new category.
Added a new sound when you click things in the menu - more futuristic.
rscadd: "The cookie snack now contains cookies, like the mint and gum packs. They've also been added to the rations box selection."
rscadd: "Gum packs, mint packs and the cookie snack from the vending machines visibly open when clicked on."
rscadd: "Gum packs, mint packs and the cookie snack can be crumpled up when empty. If you really wanted to, you still can crumple it with things inside, so long as you're in harm intent."
rscadd: "Odd boxes, such as candle boxes, donut boxes, crayon boxes and egg boxes can be folded and unfolded from cardboard sheets."
rscadd: "Donut boxes, egg cartons and cigarette packets visibly open when clicked on. Alt-click to close."
rscadd: "Mints actually have a proper taste description now."
Oh boi, this one is a tiny in terms of lines, yet a huge impact. It absolutely solves problem with powernet bug of cables not updating through Z levels properly. Spend lots of time and especially intellectual effort to debug this thing and finally comparing Bay's code and debugging ours showed that lines 359 and 364 should be power_list(T, src, 12) because that stands for marked and we have unmarked cables.
Fixes Z level update of cables, now it updates them properly. So the substations work. Fixes#5165 , Fixes#5883 , Fixes#5655
Fixes mapping of cables
Increases charge of runtime SMES
Adds Z powernet to runtime levels for debug and tests
Adds Z level supply pipes and vents for debugging and tests
SMES now show how much of input they receive
SMES and APC estimates how much time it will take to deplete it.
Runtime map now uses its SMES, and it is wired to TEG's
Added Stack and Queue data structures for use
changes:
Fixes a regression in GetAbove/GetBelow() that caused passing an atom that wasn't directly on the map to return a false negative.
Fixes runtime's broken Z1 MZ by moving it to Z2.
Fixes some outdated Z-level defines on Runtime.
Moves z_levels global to SSatlas for easier debugging.
Atlas will now list the size of the world in its MC entry.
Map diffs are fucked up because of the index shift, nothing on the maps themselves was actually changed beyond adding a blank Z at the bottom.
Fixes#4692.
changes:
Maps are no longer compiled in, instead loaded directly from the DMMs at runtime.
Z level defines have been moved from the config to map datums.
Unit tests now use typecaches.
DMMS now actually works.
DMMS has been updated slightly.
DMMS is now capable of loading simple lists of non-text types.
DMMS is now faster when loading many types without mapped in attributes and when loading area instances.
Asteroid generation is now defined on the map datum instead of being hard-coded in SSasteroid.
Holodeck presets are now defined on the map datum.
Atmos machinery now uses Initialize().
Ports Runtime Station from /tg/, a debugging map meant to speed up boot time during development.
Also adds RTGs, a low-output (< 10 kW) upgradable buildable infinite power source, and allows placement of cables on catwalks.