<img width="700" height="848" alt="image"
src="https://github.com/user-attachments/assets/e0db50af-35db-43c7-b78e-6c1ea5ac569c"
/>
you take a tiny little two year LOA and this happens
this PR hits some large lag culprits:
- UpdateOverlays() getting spammed by human/update_icon. This was 0.85%
of server CPU time during the event. Doesn't sound like a whole lot but
it's insane. 99% of it was caused by sloppy duplicate calls of
update_icon in set_dir (as well as update icon itself!). Refactored to
stop that
- Makes Follow menu update manually, which cuts down on the 2.8 million
REF() calls it made during the event. This was ~1% of CPU time including
ui_data as well.
- Gets rid of a bunch of random runtimes and some lighting-related
harddels.
- NanoUIs now clean themselves up when their owner qdels rather than
forcing the owner to do REF(src) and close all matching UIs. saves us
~0.1% server cpu time! wowza!
Perconol's previous recipe was 1 Mortaphenyl, 1 Water, and 1 Sugar,
which would make it a watered-down mortaphenyl despite its very
different mechanics and classifications. Though they are both
painkillers, Perconol is classified as non-addictive (like a real-life
equivalent to acetaminophen), whereas Mortaphenyl is an addictive opioid
(comparable to tramadol). It would make more sense for 2 medications
with different effects to not be separated by simply water and sugar. In
terms of logistics, a reaction mechanism for turning mortaphenyl into
perconol with hydrazine could be that the hydrazine might steal a
functional group or two from mortaphenyl (such as the **phenyl**
winkwink) and then evaporate (into a fume hood that's definitely in the
pharmacy and chemistry... right? ;-;). Anyways, without the functional
group(s), perconol would be an entirely different chemical from
mortaphenyl. The reason this isn't really probable with water and sugar
is because our blood has free-floating water and sugar (glucose), so
mortaphenyl would be "becoming" perconol in the bloodstream,
technically. Same goes for the stomach.
The next step in the Psi Reworks is here, this time adding all of the
remaining sources and applications of Psi-sensitivity and Psi-protection
that were on my To-Do list. Aside from a variety of tweaks and bugfixes
to powers, the most player-facing addition is the new Psi-sensitivity
related traits, which are High Psi-sensitivity, and Low Psi-sensitivity.
These traits modify the character's psi-sensitivity, which messes with
their interactions with psionics in a variety of ways.
All of these new sources and interactions with psionics are handled
entirely through components, which operate on the previously added
COMSIG_PSI signals.
Check the changelog file for more specific details on what all was
fixed. I've fixed quite a lot of bugs and issues with the various psi
powers.
I have actually tested this PR and verified that it works as advertised.
<img width="1902" height="1015" alt="image"
src="https://github.com/user-attachments/assets/e922593c-0595-4b63-bee4-36080d9cb8b4"
/>
This has zero reason to exist in our code base. We have no procs or
variables tied to this. I removed it to make future modifications
cleaner.
---------
Signed-off-by: Cody Brittain <1779662+Generalcamo@users.noreply.github.com>
Adds turf fires (ported from Baystation, which ported them from
Shiptest), which are now used instead of ZAS fires for fuel decals and
flamethrowers. They also supplement ZAS fires in especially bad atmos
fires.
This makes flamethrowers and related objects more suitable for AOE
denial, rather than cooking the room (including yourself). They still do
the latter, but less so than a gaseous fire.
To make flamethrowers actually useful against them, simple mobs now take
brute damage when on fire.
### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:
| Path | Original Author | License |
| --- | --- | --- |
| sound/weapons/flamethrower/flamethrower1.ogg |
[rye-rice](https://github.com/rye-rice) (Shiptest) | CC-BY-SA 3.0 |
| sound/weapons/flamethrower/flamethrower2.ogg |
[rye-rice](https://github.com/rye-rice) (Shiptest) | CC-BY-SA 3.0 |
| sound/weapons/flamethrower/flamethrower3.ogg |
[rye-rice](https://github.com/rye-rice) (Shiptest) | CC-BY-SA 3.0 |
| sound/weapons/flamethrower/flamethrower_empty.ogg |
[rye-rice](https://github.com/rye-rice) (Shiptest) | CC-BY-SA 3.0 |
| icons/effects/particles/smoke.dmi |
[rye-rice](https://github.com/shiptest-ss13/Shiptest/commits?author=rye-rice)
(Shiptest) | CC-BY-SA 3.0 |
| icons/effects/turf_fire.dmi | CM Dev (cmss13) | CC-BY-SA 3.0 |
Adds two tajaran teas to the game, Messa's Tear and ras'nif. These can
be found in the loadout and the bar, as well as random warehouse spawns.
Adds solar salve, a legal herbal substance from Adhomai, found in the
loadout and warehouse spawns.
Also performs some tweaks to the Konyang teas in order to make brewing
teas with them easier.
---------
Signed-off-by: Greenjoe12345 <33647525+Greenjoe12345@users.noreply.github.com>
For a robust crafting system, I need a new materials framework.
For a new materials framework, I need to clean up reagents.
To clean up reagents, I need to pare down foods from reagent holders.
To pare down foods from reagent holders, I need to port edibility
components.
To port edibility components, I need to port processing components.
To port processing components, I need to port tool behaviors.
This is all back-end code, no new features or functionality from this.
-Adds cucumbers as produce
-Adds a few new food dishes (mostly cucumber based and 1 Adhomian dish)
-Returns the randomly generated ingredients spawning in the fridge at
the start of shifts such as condiments, syrups, etc. to spawn in like
they did before the scarcity arc.
-Adds handheld icons to kitchen trays
-Fixed sugar-tree fruit not showing up properly
Fixes https://github.com/Aurorastation/Aurora.3/issues/20990
Fixes https://github.com/Aurorastation/Aurora.3/issues/21730
Fixes https://github.com/Aurorastation/Aurora.3/issues/21735
changes:
- bugfix: "Mechatronic fabricator no longer needs to be manually synced
on round start to populate all available parts."
- bugfix: "Freebooters can now pilot their own subshuttle."
- bugfix: "Greimorian eggs toxin can no longer infest synthetic limbs."
- qol: "Vintage rifle mechanical feedback text has been clarified for
ease of use (before it wouldn't tell you how to rack it properly)."
- rscdel: "Removes pause/unpause functionality from earbuds due to
general bugginess in favor of play/stop."
V2 of [previous music playing
PR](https://github.com/Aurorastation/Aurora.3/pull/21466). TLDR no
longer uses the connect_range component for implementation because it
turned out a bit too inflexible for overlapping music players.
Removes a NanoUI template for the [TGUI
update](https://github.com/Aurorastation/Aurora.3/pull/21046).
New changelog:
- refactor: "Ported Jukebox's NanoUI interface to TGUI."
- refactor: "Ported Jukebox audio playing functionality to a component."
- refactor: "Sound keys refactored from singletons to datums, along with
larger breakout of sound.dm to allow for easier SFX updates in future."
- code_imp: "Expanded track datums to include track lengths."
- code_imp: "Reorganized music file folders for more intuitive access."
- rscadd: "Earphone status feedback text now includes track length."
- rscadd: "Added autoplay functionality to earphones."
- bugfix: "Fixed earphones' 'Previous Song' verb not sending you to the
end of the playlist when used while the first track is selected."
- bugfix: "Fixed gain adjustment for 'Konyang-1' (-23 dB -> standard
-9.8 dB)."
- bugfix: "Fixed y-offset of audioconsole-running overlay animation to
line up with the actual screen."
---------
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
changes:
- rscadd: "Spilled radium now generates (weakly) radioactive puddles of
green goo, just like Uranium."
- balance: "Extends Greimorian eggsac incubation time by 50%."
- balance: "Introduces a probability element to greimorian egg toxin
metabolism; after being injected with the reagent, each metabolism tick
only has a % chance to create the eggsac 'organ', meaning quick
helmizole injection (or dumb luck) can prevent incubation entirely."
- balance: "Introduces clamp on spiderling generation counter to prevent
RNG from causing outsized impact from single eggsac rupture."
- balance: "If the randomly chosen body part a Greimorian eggsac would
infest is the head, the victim will get an extra reroll of target body
part to avoid the associated instant death risk."
- balance: "Consuming radioactive waste is now MUCH unhealthier. Don't
eat radioactive waste."
- qol: "Updates some antagonist tips (removed old/deprecated ones, added
new one.)"
- bugfix: "Removed greimorian eggsacs now dissolve into goo as
intended."
https://www.youtube.com/watch?v=9mPvZ96pHJI
A pull request commissioned by the Synthetic Lore Team to
comprehensively rework synthetics (read: IPCs) and how they work in
Aurora. The objective is to make IPCs as unique as possible from humans,
upgrading the robotic feel and atmosphere, while also preserving a good
sense of balance in-game.
Key features:
- A comprehensive expansion of synthetic organs, all of which now
fulfill a purpose: hydraulics, cooling units, power systems, actuators,
diagnostics units.
- Customizable organs with benefits and drawbacks, such as with cooling
units and power systems.
- Unique ways to repair the organs and more involved steps.
- Unique damage mechanics - every organ has wiring and electronics which
affect its functioning, and they are defended by plating which provides
natural armour.
- Improved and immersive diagnostics.
- Unique features, benefits, and drawbacks for every IPC frame.
- A rework of the positronic brain, which can be either destroyed or
shut down, alongside effects caused by low integrity.
- A rework of how EMPs affect IPC organs.
- Non-binary damage states for each organ.
To-do:
- [x] Finish the unique features for each frame.
- [x] Look into if mechanical synthskin is possible.
- [x] Power system.
- [x] Posibrain mechanics.
- [ ] Passive cooling expansion.
- [x] EMP mechanics.
- [x] Repair mechanics.
- [x] Mob weight mechanics.
- [ ] Gurney for heavy mobs.
- [x] New augments.
- [ ] IPC tag scanning and flashing.
---------
Signed-off-by: Werner <1331699+Arrow768@users.noreply.github.com>
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: Geeves <22774890+Geevies@users.noreply.github.com>
Co-authored-by: Werner <1331699+Arrow768@users.noreply.github.com>
This PR updates Janitorial Carts to use radial menus for inventory
management (just like Engineering and Parcel carts). It also expands
mechanics hints and includes some general cleanup.
Removes a NanoUI template for the [TGUI
update](https://github.com/Aurorastation/Aurora.3/pull/21046).
changes:
- balance: "Dirty bomb cleanable 'greenglow' decal left behind is now
actually radioactive to make it more persistently hazardous."
- balance: "'Radioactive waste' rare Warehouse spawn submap now uses
low-radioactivity variants for some of its contents and also been given
a radioactive gear crate."
- balance: "Adds increased taste_mult values to radioactive waste,
napalm, and nitroglycerin; it should be noticeable if your drink is
spiked with any of them."
- balance: "Both uranium and radioactive waste reagents will create
radioactive pools on the floor if spilled (uranium weak, radioactive
waste medium/strong)."
- balance: "Bombs are now allowed to be planted on any mob type except
for carbons."
- balance: "Increases the numbers of assemblies (signalers, igniters,
etc.) stocked in vending machines."
- rscadd: "Adds a radioactive waste chemical canister to the Uplink (5
tc)."
- code_imp: "Adds additional variants of greenglow/radioactive decal and
radioactive_waste/hazardous obj that are more or less radioactive for
mapping and ST use."
- code_imp: "Cleans up bomb timer setting code and admin logging."
- qol: "Adds more examine hints to reagent dispensers."
- qol: "Adds more examine hints to bombs."
The 'radioactive waste chemical canister' item cost was set to 5 tc to
match the other 'hazardous chemical' antag item, the Chlorine Tank.
<img width="1701" height="292" alt="image"
src="https://github.com/user-attachments/assets/db1dbc50-1a6a-4549-b9e5-b838ec62f849"
/>
**This is but one of several PRs as part of Project Anabasis, and is a
necessary building-block for a Traits System and a Skills System**
This PR was essentially prompted by recent lore changes to Skrell that
weren't yet existing in the game, so I'm kicking off this as a PR to
start a series of more meaningful psionic reworks. With a focus on
Components and Signals as a way of dramatically increasing the systems
interactivity of psionics. With this PR, mobs have an effective
"Psi-Sensitivity" that can be checked by psionic effects, and influence
a wide variety of interactions.
Psi-Sensitivity is calculated based on a Signal interaction, whereby
multiple responding sources have a chance to respond to the signal and
influence the end result of the calculation. For now there still remains
a cutout specifically for owners of a Psi-Complexus(Which is just Skrell
and Antag Psions), who have a bonus to the psi-sensitivity check equal
to their PSI-RATING. That being 1 for Skrell, and 2 for antag psions.
But eventually in the future this should be replaced with a standalone
component separate from the concept of "Sending"
The other common sources of sensitivity currently are the Psionic
Receiver implant, MindShield, and Mind Blanker implants. With Psionic
Receivers giving a bonus to psi-sensitivity, and the latter two giving a
penalty to psi-sensitivity. Both MindShields and Mind Blankers are now
unified in how they interact with psionics, both using the same system
of Signals without a hardcoded check for the mindshield.
As an important distinction to make, Psi-Sensitivity is NOT the same
thing as being Psionic. Actually Psionic characters like Skrell have a
big bonus to their sensitivity. It's more a measurement of how receptive
a character is to Receiving (separate from Sending) psionic influences.
You can actually be capable of using psionic abilities, but have a
sensitivity of 0, effectively meaning such a character can "Send but not
Receive" psi influences.
- [x] I have tested this PR and have verified that it works, you're
welcome.
Fixes https://github.com/Aurorastation/Aurora.3/issues/21509
**Summary:**
Cleans up a lot of old Greimorian egg implantation code- rewrote the
actual worker injection behavior to use the organ/internal/parasite code
we have, instead of creating effects with their loc set to the organ
itself.
This largely means that not only is Greimorian implantation able to be
treated pharmaceutically (as you'd expect, with them being parasitic and
medicine including antiparasitics), but it also means that 'greimorian
eggs' also get the same treatment as nerve flukes, etc. That is to say,
antags can now purchase Greimorian Clade Kits from the uplink and inject
people or monkeys with them to cause Unhappy Tidings.
This code is also fairly easy to modify, if one wanted to create more
implantable parasites that burst out of people, unrelated to
Greimorians.
**Changes:**
- refactor: "Refactors the egg injection of Greimorian Workers to use
parasite code; it can now be treated with anti-parasitic medicines in
addition to amputation of the affected limb. Works on all playable
species, and monkeys."
- rscadd: "New reagent 'Greimorian Eggs' creates an egg cluster parasite
in a random organ when metabolized in the bloodstream. It also has very
mild soporific effects."
- balance: "Greimorian Workers and playable Greimorian Servants/Queen
now inject Greimorian Eggs instead of Soporific."
- rscadd: "Greimorian Clade Kit now available in Uplink under Bioweapons
section (Greimorians now able to be introduced to ship by egg cluster or
injectable reagent)."
- balance: "All parasite kit bioweapons have had their vial reagent
count increased from 2 -> 5."
- balance: "Helmizole no longer treats K'ois Mycosis, Black K'ois
Mycosis, Zombification, or Tumors (Benign or Malignant)."
- code_imp: "Updates a lot of code documentation to dmdocs."

-Adds cream cheese to the game because I'm tired of committing the
atrocity of making foods out of blocks of cheese and cream.
-Adds 5 new food dishes to the game including a few commissioned dishes
from Sankt Frederick (The new dishes: Belinas, Bierocks, Cream cheese
bagels, Cream cheese toast, and smoked salmon bagels)
-Adds 2 new beers to the game, a Xanan one and one from Sankt Frederick
-Adds the new beers as well as multiple existing beer bottles to the
Booze-O-Mat because currently there is no place to get any bottles of
beer on the station which is more than a little weird.
Fixes https://github.com/Aurorastation/Aurora.3/issues/18504
Fixes https://github.com/Aurorastation/Aurora.3/issues/21064
Fixes https://github.com/Aurorastation/Aurora.3/issues/21267
Fixes https://github.com/Aurorastation/Aurora.3/issues/21455
Fixes https://github.com/Aurorastation/Aurora.3/issues/21535
Miscellaneous bugfixes, code cleanup, etc. Smaller batches this time.
changes:
- spellcheck: "Renames 'gibber' to 'autobutcher'."
- code_imp: "Cleans up a lot of old autobutcher code."
- code_imp: "Simplifies and unifies a lot of circuit board naming code."
- code_imp: "Updates various code comments to DMDocs format."
- balance: "Slightly increased damage of beating someone with a ladder."
- bugfix: "Fixes foreign speech displaying the translated versions in
langchat for non-fluent listeners."
- bugfix: "Fixes whispered speech langchat; whispers are now correctly
italicized."
- bugfix: "Fixes shouted speech langchat; shouts are now correctly
biggified."
- bugfix: "Adds missing Omni Gas Mixer, Gas Meter options from RFD-P."
- bugfix: "Adds missing circuit boards for bioballistic delivery system,
lysis-isolation centrifuge, and autobutcher to allow for construction
and deconstruction."
- bugfix: "Fixes empty algae chips bag having description set for its
name."
- bugfix: "Adds fallback_specific_heat values to several reagents that
were missing them."
- bugfix: "Fixes antimateriel projectiles being erroneously
damage-capped when hitting walls."
- bugfix: "Fixes laser beam effects not using the base colors of their
beam VFX."
- qol: "Added helpful feedback hint to move closer when someone speaks
aloud within 4 tiles while you're in vacuum (as features go, this one
felt more like a bug to experience)."
- qol: "Updated various examine hints."
---------
Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
It hasnt been jargon for years, and the code still had a few references
I noticed. Most of these are just icon names, which arent at all visible
on the player side, but one description for specifically the cargo order
of a item still mentioned it. Funnily enough, the actual item itself had
a correct description.
Sleepers can now, albeit slowly, remove alcohol from the bloodstream via
Blood Dialysis, same as with reagents in the bloodstream. The action is
slow, decreasing BAC by about 0.05 per minute (0.1 per 2 minutes). Do
note this will consume a *lot* of blood and likely fill up the dialysis
beaker in the process.
The sleeper also now features a live BAC counter to monitor the alcohol
dialysis in real time.
<img width="444" height="492" alt="image"
src="https://github.com/user-attachments/assets/4359e217-92d6-4d8f-b632-31498c1a8dc2"
/>
To counteract this and make sure ethylredoxrazine (the anti-alcohol
drug) doesn't get completely made irrelevant due to this, it has been
buffed to work about twice as fast as the sleeper without requiring any
blood sacrifice. Exact numbers depend on metabolism but generally
speaking it decreases BAC by 0.1 every 1.2 minutes or so.
Of note: ethylredoxrazine in testing had rather shitty metabolism before
and might as well have done nothing at all - probably because it was
metabolizing at 30% the rate of other medicine. This PR aims to make it
actually useful, but the numbers might have made it too strong.
Feedback's appreciated.
Here's a comparison table for the TL;DR between the two things now:
<table>
<tr>
<td>
<td> Sleeper
<td> Ethylredoxrazine
<tr>
<td> BAC decrease rate
<td> ~0.05 / minute
<td> ~0.08 / minute
<tr>
<td> Drains blood
<td> Yes
<td> No
<tr>
<td> Neutralizes alcohol effects while in bloodstream
<td> No
<td> Yes
</table>
**Overview:**
The first huge fuckoff mapping PR for giving the Horizon enough extra
space to be able to comfortably map on it for the duration before NBT2
and not be super cramped (extends aft by 6 turfs).
Includes a SECOND vault to heist at the back of the ship and a lot of
maint area people can repurpose. Notably, this also removes the Xenobio
Hazardous Containment room and the Medical Emergency Storage room
(contents of the latter have been moved). Otherwise, y'all got more
ship.
**Map Images (OUTDATED NOW):**
<img width="2453" height="868" alt="Screenshot 2025-10-16 141649"
src="https://github.com/user-attachments/assets/be9a540d-af92-46b4-b59f-e298204a678a"
/>
<img width="2450" height="940" alt="Screenshot 2025-10-16 141702"
src="https://github.com/user-attachments/assets/b96f3f3e-dd4b-4457-9c5c-1f09f8bb7a00"
/>
<img width="2452" height="895" alt="Screenshot 2025-10-16 141714"
src="https://github.com/user-attachments/assets/9a16e55d-8386-46d9-a3d3-d4e5a0ff6ec0"
/>
**Misc Features:**
<img width="1069" height="685" alt="Screenshot 2025-10-16 141727"
src="https://github.com/user-attachments/assets/89c14f85-f476-4f91-bd02-7c36f36a4418"
/>
<img width="983" height="825" alt="Screenshot 2025-10-16 141736"
src="https://github.com/user-attachments/assets/6b20da20-982c-4ec1-b252-3507f1211e94"
/>
<img width="1382" height="951" alt="Screenshot 2025-10-16 141743"
src="https://github.com/user-attachments/assets/fdfd683d-33a4-47e3-9df8-dec1f9286598"
/>
<img width="2405" height="863" alt="Screenshot 2025-10-16 141803"
src="https://github.com/user-attachments/assets/c539c4bd-4a8f-4326-a30b-5a1d09eca26b"
/>
**changes:**
- qol: "Hugely expands the Horizon's maints and adjusts/expands much of
the aft of the ship."
- rscadd: "Adds a new Vault to Horizon (Deck 3 aft, behind the Gym)."
- rscdel: "Removes Xenobiology Hazardous Specimens compartment."
- rscdel: "Removes Medical Emergency Storage compartment."
- spellcheck: "Replaces a few mentions of 'room' with 'compartment.'"
- spellcheck: "Renames the Bridge Break Room to Bridge Wardroom."
- spellcheck: "Renames the Kitchen to the Galley."
- spellcheck: "Renames the Dining Hall to the Mess Hall."
- spellcheck: "Renames each Washroom to the Head."
This PR implements a variety pack of new interactions for Medical Stasis
(stasis beds, stasis bags, and cryogenics), which should broadly extend
their utility. Not all of it is necessarily a good thing to have around,
such as for instance stasis slowing down the rate at which the liver
removes toxins. A few more organs have by extension been time
differentiated to allow for this change to take place.
As a general rule of thumb, most organ effects that are handled "per
second" are proportionally slowed down by the stasis rating of a given
source of medical stasis. This can be a good or a bad thing depending on
the context.
**Good effects of Stasis:**
- Slowing down appendicitis.
- Reducing the damage organs take per second from most per-second
sources.
- Making kidneys and livers deal less dangerous effects to their owner
when severely damaged.
- (Not in this PR, but was done in a previous PR): Brains lose BA
slower.
**Bad effects of Stasis:**
- Organs also heal slower from all per-second sources, this includes
chems. So while they take less damage, they're also taking less healing.
- The liver's rate at which it filters the blood is reduced. You get to
stay black-out drunk for 10x longer if placed in stasis.
- (Not in this PR, but was done in a previous PR): Brains heal their BA
slower.
---------
Signed-off-by: VMSolidus <evilexecutive@gmail.com>
Adds two new recipes, one cocktail and one snack item, with a particular
focus on the frontier.
<img width="305" height="389" alt="new food"
src="https://github.com/user-attachments/assets/633b7efc-5cf4-487c-8a22-cd6e14eecf32"
/>
Voidman's Stew - Fishballs in sauce from Sun Reach
Carian Strogonoff - Mushroom strogonoff! (I wanted ot make this slightly
glow but could not get it to work)
Witch-spirit - The trendiest new cocktail, using Reach wine as a base
Algae Chips - Fried and crispy algae from Sun Reach. Available in
Getmore! vendors until somewhere more suitible can be created.
All sprites by myself.
---------
Signed-off-by: Fyni <itsfyni@gmail.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
This PR just makes it so that the psionic messages from Wulumunusha no
longer only check if the user is a skrell, and instead check if the user
is psionically sensitive. Skrell will automatically pass this check, so
it mainly just comes up for non-canonical interactions with antag
psionics. This is also relevant for if at any point in the future
psionics are reworked.
EDIT: This is complete and no longer a work in progress. I've tried to
make sure that everything is tested and working properly but if there
are issues please let me know.
This away site is intended to be a high risk, high reward, encounter.
I'm also attempting to increase its replayability by incorporating a
number of sections and submaps that will be newly generated each time.
Things added or changed:
- Additional traps and environmental hazards.
- Lava is now more deadly. It used to only set you on fire, now it will
burn you appropriately.
- Minor sprite fixes for uncommon elements for easier mapping; throwers,
step triggers.
- Map and associated files, submap json, landmarks, areas, ect.
---------
Signed-off-by: Evandorf <ej_denton@msn.com>
Co-authored-by: Kano <89972582+kano-dot@users.noreply.github.com>
Fixes https://github.com/Aurorastation/Aurora.3/issues/18951
Fixes https://github.com/Aurorastation/Aurora.3/issues/19447
Fixes https://github.com/Aurorastation/Aurora.3/issues/20283
Fixes https://github.com/Aurorastation/Aurora.3/issues/21395
Overhauls a wide variety of INDRA behaviors and related gas/material
properties.
changes:
- balance: "Fusion reaction modifications. Higher radiation and
temperature output, comparable power output."
- balance: "Increased rad resistance modifier of Borosilicate Windows
from 1 -> 4 and (closed) Blast Doors from 1 -> 6."
- balance: "INDRA Field Strength minima/maxima changed from 1-100 ->
20-120. Power costs increased significantly."
- balance: "INDRA instability increase per tick now limited, similar to
Supermatter (prevents sudden instability spike from instantly nuking
it)."
- balance: "APC cell charge rate increased 10x."
- balance: "Rebalanced contents of INDRA hard storage compartment."
- balance: "SMES coils capacities halved, throughputs doubled."
- balance: "SMES unit maximum coil capacity increased from 6 -> 8."
- balance: "TEG maximum power output increased from 500000 -> 2500000."
- balance: "Power wasted from exceeding TEG maximum power output
decreased from 50% to 33%."
- balance: "Portable generators of all types have had their power
generation capacity doubled."
- rscadd: "New 'Fusion Codex' app added for all crew with ACCESS_ENGINE
that details all available nuclear fusion chains."
- rscadd: "Boron added as a singleton/reagent. Poisonous to vaurca,
still usable in nuclear fusion as fuel assembly rods."
- rscadd: "INDRA Field Strength now scales plasma temperature entropy,
power output from temperature multiplier, and instability increase per
tick."
- refactor: "'Boron' gas renamed to 'Helium-3'. Boron is not a gas. Deal
with it."
- refactor: "'Steam' gas renamed to 'Water Vapor'."
- code_imp: "Descriptions added to gas singletons for future use."
- qol: "Minor remap of INDRA control room for usability."
- qol: "Standardized gas canister naming conventions."
- qol: "INDRA and APC TGUI interfaces now use use kW, MW abbreviations
for high wattages."
- bugfix: "INDRA Kinetic Harvester no longer rapidly deselects materials
for harvest when too many are being generated at once."
- bugfix: "INDRA EM Field effect no longer considers the camera within
its reactor chamber a destabilizing influence."
- bugfix: "INDRA reactor core now produces radiation as intended."
- bugfix: "Deuterium and Tritium canisters no longer contain 50%
standard hydrogen (inheritance issue)."
---------
Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Geeves <22774890+Geevies@users.noreply.github.com>
## About PR
This PR adds four new Unathi related drinks and reflavours most of the
existing ones to be less of weird wordplays and jokes.
Requested by the Unathi team.
The new drinks and bottle sprite can be seen below. Please enjoy:
> <img width="547" height="102" alt="image"
src="https://github.com/user-attachments/assets/c2122a83-eccd-4b46-b57a-089e6d81704c"
/>
Tested (hopefully) all changes. Works on my machine. 👍
### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:
| Path | Original Author | License |
| --- | --- | --- |
| icons/obj/drinks.dmi | Captain Gecko (AuroraStation) | CC0 |
| icons/obj/reagent_containers/food/drinks/bottle..dmi | Captain Gecko
(AuroraStation) | CC0 |
# Summary
This PR adds trash to the persistence system.
- Trash becomes persistent the moment it is dropped unless it is dropped
in a maint or the disposal room.
- It looses persistence when it lands in a maint/disposal room or gets
picked up again.
- Persistent trash can be found up to three days.
Those are the base rules, some trash types have additional rules.
List of trash to be implemented:
- [x] Basic trash (snacks and such)
- Cigarette buts
- spitwad
- Burned matches
- [x] Broken bottles
- [x] Torn inflatable (-doors)
> Littering is a i120 violation and can be punished with 3-7 minutes of
prison time or with a 40-150 credit fine.
> Stop littering and keep the ship clean.
## Follow-up tasks
- [x] Update GitHub Wiki: Add section on how to add persistent trash
types.
- [x] Update GitHub Wiki: Make persistence_get_content nullable/empty.
- The Dexalin Plus and Peridaxon autoinjectors in the medical cargo
category are now vials that come with 15 units.
- Added Arithrazine and Thetamycin to the medical cargo category.
- O- blood bags in the medical cargo category now come in a pair of two,
rather than just one.
- Changed the Dermaline crate to a Kelotane crate instead.
- The three body bag boxes crate now actually comes with three body bag
boxes.
---------
Signed-off-by: Matt Atlas <mattiathebest2000@hotmail.it>
Co-authored-by: Matt Atlas <liermattia@gmail.com>
Co-authored-by: SleepyGemmy <99297919+SleepyGemmy@users.noreply.github.com>
Red nightshade is an overly centralizing traitor/merc item because of
its practically zero downsides when compares to its massive benefits,
such as complete pain immunity and a whopping 1.25x damage multiplier on
all melee damage (for comparison, on an energy sword that's 42 damage
total, with 25 AP, meaning that its hits will penetrate EVERY armour in
the game). This makes melee not only insanely strong but basically
riskless in most situations, especially when combined with the esword's
parry mechanic.
Red nightshade's pain immunity has been removed in favour of a
painkiller effect of 75, more than mortaphenyl. The melee damage
multiplier has been reduced to a more sensical 1.1x.
---------
Co-authored-by: Matt Atlas <liermattia@gmail.com>
-Added many new food dishes and ingredients (many of them pizzas).
-Added some of the new ingredients to the Cargo order form.
- Added 2 new drinks and a drink bottle for one of them.
-Nerfed a few dishes that require cooking seafood or frying so that you
can no longer make them with the microwave
-Created new vending machine that sells microwave/instant foods to make
up for it and give Microwaves some variety.
-Added shrimp to the required ingredients for North 60 squid.
-Renamed empty Shakshouka pan to be something more generic so it can be
used for other dishes.
-Adjusted the contents of Dyn Pozole so it doesn't take five years to
finish eating.
-Defined a color for S'th berry juice.
-Created new pages and files for microwave foods.
If/when suggesting fixes please be mindful that my knowledge of code is
very limited and many of the more complicated funcitons have been copy
pasted form elsewherein the code and edited to fit, so coommit
suggestions are appreciated.
---------
Signed-off-by: tomixcomics <11053204+tomixcomics@users.noreply.github.com>
Co-authored-by: FlamingLily <80451102+FlamingLily@users.noreply.github.com>
Co-authored-by: hazelrat <83198434+hazelrat@users.noreply.github.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
Co-authored-by: Matt Atlas <mattiathebest2000@hotmail.it>
Currently, only Preferences Verbs use subcategories. As a result, all
other Verb tabs are only organized alphabetically, meaning that a single
mechanic (ie. languages) has its governing Verbs scattered rather than
grouped together.
Verb organization by Tab handles broad organization - IC, OOC, Objects,
etc.- highly effectively but requires the user to click-navigate to
other Tabs to access any other verbs.
Verb organization within a Tab can be handled by A.) subcategories and
B.) Verb name prefixes (such as Earphones - *****). The first option is
the clearest and cleanest, but consumes additional vertical space. The
second option conserves vertical space at the cost of visual clarity.
This PR attempts to reorganize Verbs by their Tabs, Subcategories, and
prefixes with the following priorities in mind:
- Minimal disruption; any radical change must be justified (don't move
shit around just for the sake of moving shit around.)
- Verbs which share common functions (such as Languages) should be
grouped together.
- Maintainability. Contributors should not need to memorize an
excessively convoluted Subcategories list; Subcategories must be
intuitive and simple.
- Subcategories should be used judiciously when grouping Verbs to
conserve vertical space. Example: Instead of creating a Subcategory for
Emotes, just rename Audible Emote and Visual Emote to Emote (Audible)
and Emote (Visual).
- Subcategories should highlight uncommon or unusual verbs when
reasonable. Example: There are several animal husbandry-related Verbs,
and because most characters will not have access to those verbs
regularly, we can be less conservative with space (because they'll be
gone most of the time) for the sake of emphasizing their availability.
This PR covers the IC, OOC, and Object Tabs.
Subcategories:
OOC.Chat (Chat functions)
- AOOC
- LOOC
- Devsay (moved from Special Verbs)
- Dsay (moved from Special Verbs)
- OOC
OOC.Debug (Fix shit)
- Fit viewport
- Fix chat
- Refresh TGUI
OOC.Round (Round information)
- Check Gamemode Probability
- Check Round Info
- Custom Event Info
- Vote
IC.Antag (Antag verbs w/o their own tab)
- Invite to the Loyalists
- Invite to the Revolutionaries
- Set Ambition
IC.Critters (More critter stuff than you'd expect there to be)
- Befriend Carp (Previous name 'Become Friends')
- Befriend Cat (Previous name 'Become Friends')
- Befriend Dog
- Befriend Ives
- Name Alien Species
- Name Animal
IC.Language (Language-related stuff)
- Check Default Language
- Check Known Languages
- Set Default Language
IC.Maneuver (Movement, positioning, etc.)
- Adjust walk speed
- Do Pushup
- Face Direction
- Look Down
- Look Up
- Move Downwards
- Move Upwards
- Rest
Object.Equipped (Equipped object stuff, mostly for drip)
- Adjust Badge
- Adjust Bag Straps (Backpacks)
- Adjust Goggles
- Adjust Mask
- Adjust Welding Goggles
- Adjust Welding Mask
- Change Glasses Layer
- Change Pants Layer
- Change Wrist Radio Layer
- Change Wristwear Layer
- Check Time
- Flip Badge
- Flip Belt
- Flip Eyepatch
- Flip Hat
- Flip ID card (ID card)
- Flip Radio (Clip-on radio)
- Flip Wristwear
- Fold Collar
- Lock Antenna(e)
- Point At Watch
- Raise Shroud
- Roll Up Cape Mantle
- Roll Up/Down Jumpsuit
- Roll Up/Down Sleeves
- Switch Belt Layer
- Switch ID Layer
- Switch Lanyard Layer
- Switch Shoe Layer
- Toggle Aviators (Like a dozen variants)
- Toggle Ceremonial Garment Lights
- Toggle Coat Buttons
- Toggle Coat Zipper
- Toggle Hair Coverage (For hats helmets etc)
- Toggle Hair Coverage (FOR BABY CARP!!!!!)
- Toggle Helmet Camera
- Toggle Hood
- Toggle Lyodsuit Mask
- Toggle Poncho Tail Coverage
- Toggle Shirt Buttons
- Toggle Suit Sensors
- Toggle Visor (Pilot helmet)
- Toggle Waistcoat Buttons
- Transform Holoclothing
- Voidsuit - Eject Suit Cooler
- Voidsuit - Eject Tank
- Voidsuit - Toggle Helmet
Object.Held (If you're HOLDING it, its probably relevant to you rn)
- Activate Held Object (Silicons; moved from IC)
- Alter Beacon's Signal (Radio beacon)
- Change Bite Size (Utensils)
- Change Pen Colour
- Choose Colour (Paint sprayer)
- Choose Decal (Paint sprayer)
- Choose Direction (Paint sprayer)
- Choose Preset Colour (Paint sprayer)
- Describe Prototype
- Draw Boot Knife
- Empty Bee Net
- Empty Spray Bottle
- Holster
- Name Gun
- Name Prototype
- Plant Flag (Flags)
- Print Plant Report
- Remove Chopsticks
- Remove Top
- Set Detector High-Bound (Light meter)
- Set Detector Low-Bound (Light meter)
- Set Hailer Message (Hailer)
- Set Timer (Timer igniter)
- Set Valve Pressure (Pneumatic cannon)
- Show Held Item
- Spin Cylinder (Revolvers)
- Switch Verbosity (Health analyzer)
- Toggle Chainsaw Power (Chainsaw)
- Toggle Flashlight Brightness (Flashlights)
- Toggle Gun Safety
- Toggle Hazard Vest
- Toggle Pinpointer Mode (Pinpointer)
- Toggle Mister (Backpack water tank. Goes into/out of hands)
- Twist Cap
- Use Scope
- Wield Pick/Drill
- Wield Two-Handed Weapon (Two-handed weapons)
Object.Cards (I fucking hate cards!!!)
- Deck - Deal
- Deck - Draw
- Deck - Pick
- Hand - Pick
- Turn Hand Into Deck
Object.Earphones (Enough here to separate out)
- Eject Music Cartridge
- Change Volume
- Next Song
- Pause/Unpause
- Play/Stop
- Previous Song
Object.Jetpack (This is probably really important to see quickly)
- Toggle Jetpack
- Toggle Jetpack Stabilization
Object.Tape Recorder (Enough here to separate out)
- Start Recording
- Stop Recording
- Clear Memory
- Playback Memory
- Print Transcript
- Eject Portable Storage
**IC tab example:**
<img width="1061" height="277" alt="Screenshot 2025-08-09 101813"
src="https://github.com/user-attachments/assets/a2afe92d-34fd-4160-bf68-b459a4195e26"
/>
**Objects tab example:**
<img width="1100" height="472" alt="Screenshot 2025-08-09 101807"
src="https://github.com/user-attachments/assets/a36e4c76-594e-4569-93ba-ffcda57e8760"
/>
[Original suggestion
here.](https://forums.aurorastation.org/topic/22454-tidy-up-lockers/)
- Replaces departmental/job-specific wardrobe lockers with new 'Drobe'
vending machines, each containing pertinent clothing, all with new
icons: ClothesMate, EngiDrobe, AtmosDrobe, HyDrobe, SecDrobe, BarDrobe,
ChefDrobe, ChapelDrobe, SciDrobe, MediDrobe, ChemDrobe, CargoDrobe,
RoboDrobe
- Makes vending machine ads populate at the top of the purchasing UI and
randomly cycle.
- Few vending-machine related map touch-ups (mostly vending machines
missing the floor 'hatched' pattern underneath).
- Misc code readability improvements.
In round cwE-dDLE a "dilapidated hivebot beacon" was summoned by gold
slime cores. It was invisible and continuously summoned hivebots. Since
the other types of hivebot beacons are already blacklisted, this
prevents this type of hivebot beacon from being summoned by the gold
slime cores as well. I assume it got overlooked because it's in another
file - there's no reason for a single use item to spawn an infinitely
free hivebot summoner. Another PR can fix the invisibility issue, if its
cause is discovered and it's not a gold core specific interaction
causing it.
For ease of reference, the weakened hivebot beacon is here:
https://github.com/Aurorastation/Aurora.3/blob/6d7c058ee7b44ba73099f46116cbd819fb86cba2/maps/away/away_site/hivebot_hub/hivebot_hub.dm#L119
Progress on DMDocs. PRing progress so far so there's not one mega PR
later with 1500 affected files.
I want my goddamn highlight text on what all these goddamn procs goddamn
do goddamnit. >:(
No actual code change anywhere in this PR, only comments.
---------
Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
- Readds microwaves, and most of their old recipes where applicable.
- Resprites the small oven. It was small and ugly and I hated it.
Now, you may be asking, Wezzy - some of these recipes are an affront to
god. Microwaves can't do that.
And to that I say, It's mostly there to be a decent stand-in for small
rinky-dink maps and ships where you can't particularly fit the whole
kitchen suite in a convenient place. It's nice to have a bit of an
asspull in places like these, so.
Also, donk pockets actually become hot and cool down properly again,
now. It only took 15 years. (jesus christ)
Ported from Bay which ported from us.

Adds support for reagent/mental singletons to return different feedback
messages for different species.
Koko Reed Juice no longer delivers the 'high' feedback goodmessages to
non-Unathi.
---------
Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Extends and reworks how various extended information text (desc_info,
desc_build, desc_upgrades) are handled to make object interactions and
mechanics A.) much more clearly documented in-game and B.) much easier
to support from the back-end.
Almost certainly a candidate for test merge.
Assembly/Disassembly instructions are noticeably sporadic, largely due
to our current lack of a unified framework. That's a future thing I'd
like to attack so that it can be handled programmatically, but for now I
only targeted the biggest culprits as I came across them.
---------
Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Adds 3 Crescent Expanse regions due to how large a region it is:
- Crescent Expanse (West): Nralakk and Solarian heavy region.
- Crescent Expanse (East): Coalition and Solarian heavy region.
- Crescent Expanse (Uncharted): Deep Crescent expanse, independents and
certain surveyors only.
Also adds a Lemurian Sea (Uncharted) sector if we ever go there.
Adds a `ccia_link` variable for sectors. Only usage is to block outbound
faxes to Central Command. For uncharted sectors. EBS remains an option
due to necessary CCIA functions (eg. scuttling), per Bear's wishes.
Adds `low_supply` variants of most vending machines and dispensers. For
later use, none mapped in.
Removes the `TEMPLATE_FLAG_SPAWN_GUARANTEED` flag from the sensors
array, because it meant it wasn't affected by `sectors_blacklist`. The
sensors array isn't so important it needs to be in every sector anyway.
Removes Burzsia from the `ALL_DANGEROUS_SECTORS` list, as the crisis has
passed and humanitarian relief efforts completed.
Adds the `ALL_EVENT_ONLY_SECTORS` for limited usage during event
arcs/similar where canon odysseys or certain thirdparties may infringe
upon an arc's narrative. Allows selective enabling/disabling of canon
odysseys or third parties for said arcs. Not intended for liberal
application.
### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:
| Path | Original Author | License |
| --- | --- | --- |
sound/music/lobby/crescent_expanse/crescent_expanse_1.ogg | "Lüüü -
Weedance" by Lüüü, Obtained from
https://myprivateunderground.bandcamp.com/track/lu-u-u-weedance | CC
BY-NC-SA 3.0.
sound/music/lobby/crescent_expanse/crescent_expanse_2.ogg | "Little
Bradley - Sunset Drive" by Little Bradley, Obtained from
https://myprivateunderground.bandcamp.com/track/little-bradley-sunset-drive
| CC BY-NC 3.0
sound/music/lobby/dangerous_space/dangerous_space_1.ogg | "You Can't
Kill The Boogeyman" by Karl Casey. Obtained from
https://karlcasey.bandcamp.com/track/you-can-t-kill-the-boogeyman | CC
BY 3.0
sound/music/lobby/dangerous_space_2.ogg | "Prison Planet" by Karl Casey,
Obtained from https://karlcasey.bandcamp.com/track/prison-planet | CC BY
3.0
sound/music/lobby/lights_edge/lights_edge_1.ogg | "Is Anyone Left?" by
Karl Casey. Obtained from
https://karlcasey.bandcamp.com/track/is-anyone-left | CC BY 3.0
sound/music/lobby/lights_edge/lights_edge_2.ogg | "Running From The
Wendigo" by Karl Casey. Obtained from
https://karlcasey.bandcamp.com/track/running-from-the-wendigo | CC BY
3.0
Title, the way it works when smoking it constantly enters and exist the
bloodstream so you get chat spam every tick it feels like, saying "you
feel like garbage/head aches", which basically defeats the point of
actively smoking it.