Commit Graph
2328 Commits
Author SHA1 Message Date
4c18407831 Flags/banners with custom names and descriptions now keep these when hung up/deployed (#23012)
See title. Players have been able to assign a custom description to the
loadout flag/banner selection since forever, but it never persisted over
to actual 'hung up' flag object and was essentially erased if ever used.

<img width="777" height="600" alt="image"
src="https://github.com/user-attachments/assets/6b80b6f0-a120-4ba2-a46d-a680b7e5fff5"
/>

---------

Co-authored-by: Jaraci <mirandatrasen@nt.net>
2026-08-10 00:36:56 +00:00
hazelratandGitHub 13a202ef7d Trinarism care package (#23008)
Adds new Trinarist coif variants, a resprite for the Trinarist robes and
stave, and new Trinarist tunics.

Credit for the bulk of the spritework goes to Wezzy, I cobbled the rest
haphazardly together.

<img width="329" height="986" alt="image"
src="https://github.com/user-attachments/assets/ce3b7d6c-3a76-443f-a8a6-50b25170766e"
/>

---

<img width="286" height="932" alt="image"
src="https://github.com/user-attachments/assets/d4b1bf4d-d9c4-4835-95f0-b67e0f5a92b3"
/>

---

<img width="478" height="131" alt="image"
src="https://github.com/user-attachments/assets/f9bd0954-c024-4944-aa2b-7a3cd6233bda"
/>

---

<img width="305" height="927" alt="image"
src="https://github.com/user-attachments/assets/9f2bc04d-70fd-4766-a119-7c9e9f6d715f"
/>

---

<img width="277" height="919" alt="image"
src="https://github.com/user-attachments/assets/7a065f3d-7514-48cf-a647-15c649133d86"
/>

---

<img width="109" height="110" alt="image"
src="https://github.com/user-attachments/assets/0a5cfb66-5090-471c-b8c3-d4be8c5caab6"
/>

<img width="116" height="115" alt="image"
src="https://github.com/user-attachments/assets/8c4452d9-0a25-45d3-a763-bbdfded1d93e"
/>

<img width="115" height="108" alt="image"
src="https://github.com/user-attachments/assets/c50f8636-cde0-4290-a498-5ec6fe0bd799"
/>
2026-08-09 18:30:58 +00:00
FenodyreeAvandGitHub c68fc16afc Frag out! Grenades counter barricades (#22997)
Allows grenades to fly over barricades from the blocking side.
Barricades previously blocked 100% of thrown items.

Now the chance for a barricade to block a grenade is one third its
chance to block a bullet.


https://github.com/user-attachments/assets/6726ed40-68f0-4f35-9352-d0bd23e28d5c
2026-08-06 12:20:53 +00:00
Casper3667andGitHub 2f5d7e8422 Upgrades the research console to TGUI and adds the material silo (#22987)
This updates the research console to be a TGUI and fixes several bugs
with it.
It now uses a material silo for materials, while the acid for the
circuit imprinter is still given directly to the machine.
Mech fabricators now also need to be linked to a research console.
It is also capable of connecting to multiple fabricators and distribute
tasks between them.

The sprite originates from TG station.

Unit tests were also made to ensure there is no fabricators missing
consoles and no console missing material silos.

<img width="1200" height="800" alt="image"
src="https://github.com/user-attachments/assets/b2076036-18e5-4518-9af1-3ac3698b3924"
/>
<img width="1200" height="800" alt="image"
src="https://github.com/user-attachments/assets/e954e1e4-cf2d-4472-8386-10d8993ac375"
/>
<img width="1200" height="800" alt="image"
src="https://github.com/user-attachments/assets/df690b93-c7ff-49a3-a1b3-002f6807981b"
/>
<img width="1200" height="800" alt="image"
src="https://github.com/user-attachments/assets/ff10ef88-e1d9-4b6f-9643-309d919a601f"
/>
2026-08-06 09:34:34 +00:00
Casper3667andGitHub 0f518d6563 Nuke activation changes (#22989)
The timer on the nuke is increased to be between 10 and 15 min, so that
the Horizon has enough time to react to it. Furthermore, it can only be
deployed in a non-rad shielded area that is on the Horizon and not in
vacuum. Once it is deployed, its area will also be announced.

All of this should prevent an easy attempt to nuke the Horizon, and give
them a chance to fight back.
2026-08-06 09:32:46 +00:00
FenodyreeAvandGitHub c1ed227788 Fixes double damage to structures (#23000)
Atom health added damage handling at the base obj/structure level.

Many structures had their own damage handling code in bullet_act.
Bullet act requires that you call it's parent.

Fixes all of the double damage instances I could find, trying to keep
the behavior as close to the old as possible.

Added armour to a few things that had snowflake damage reductions.
2026-08-06 09:32:43 +00:00
mineymonkeyandGitHub 1a30a33b7c Another circuit fix (#22977)
Reduces max phoron and steel storage potential of the IC Circuit
Printer. Particularly steel is reduced when the cloning disk is
installed and phoron is set to one bar instead of two.

Also put in some safety measures for importing being lost due to server
latency.

Oh and well the radio command receiver is built in now.
2026-08-04 10:54:29 +00:00
FenodyreeAvandGitHub 7b455cc924 Grenade from cover (#22996)
- bugfix: "Grenades can now be thrown over barricades from the
defender's side. No more accidentally grenading your team because you
were one tile from the sandbags."
  

https://github.com/user-attachments/assets/d8fbfb9e-1d94-40c6-ad25-d6f8baa8143e
2026-08-04 10:50:27 +00:00
FenodyreeAvandGitHub 24c772e86a Fixes window frames blocking bullets and thrown grenades (#22995)
- bugfix: "Fixed window frames blocking thrown grenades and bullets."
- bugfix: "Fixed grenades launched instead of being thrown getting stuck
on railings and tables."
2026-08-04 10:50:23 +00:00
BatrachophrenoandGitHub 1658eda825 Stasis Cages - Bugfixes & QoL (#22982)
changes:
- qol: "Mobs in animal traps can now be transferred directly to Stasis
Cages by click-dragging rather than requiring them to be in a net."
- bugfix: "Mobs can no longer use their ranged attacks while contained
inside objects (including animal traps)."
- bugfix: "Stasis cages now apply stasis only while powered and
correctly clear it when releasing simplemobs."
- bugfix: "Fixes stasis cage transfers race condition freeing trapped
animals randomly."
  - bugfix: "Corrects stasis cage safety-wire status display."
2026-08-02 01:41:17 +00:00
mineymonkeyandGitHub 9eb7413a75 RPED Update (#22750)
RPEDS now work on most machinery via attackby() handler.

Part matching checks circuit-board requirements and the machine's
component_types which fixes the science telepad RPED compatability.

Alt-clicking an autolathe with an RPED now recycles the materials in the
autolathe.

Normal lmb activity is preserved on the autolathe.

Signed-off-by: mineymonkey <brandontanner63@outlook.com>
2026-08-02 01:24:58 +00:00
BatrachophrenoandGitHub 7172d3dbe3 NTNet Extensibility (#22908)
Fixes https://github.com/Aurorastation/Aurora.3/issues/21944

Spiritual successor of
https://github.com/Aurorastation/Aurora.3/pull/22352
Cherrypicked changes from the C3 Crew Management branch, this PR
contains all NTNet extensibility features, including Field Relay
construction, off-site camera usage (contingent on standing up remote
hardware and being out of jamming), etc. This also fixes a handful of
outstanding telecomms and view/mobeye-related bugs adjacent to where I
was working.

changes:
- rscadd: "Adds NTNet extensibility, requires new machinery constructed
on away-site z-levels."
- rscadd: "Breaks NTNet Relay machinery into Quantum Relay ('core' obj
on Horizon) and Field Relay (deployable off-site constructions)."
- qol: "Embedded cameras (basically every video camera EXCEPT those
which are installed on walls) can now be viewed from NTNet-connected
z-level, not just connected ones."
- rscadd: "Adds several public camera monitor consoles to the Horizon
(near where public sensor grid feed consoles already exist)."
- rscadd: "Adds some spare camera console boards to Horizon technical
storage."
- qol: "Adds action button for 'cancel-camera-view' verb while viewing
cameras or looking up/down z-level."
- bugfix: "Fixes Jockey comms (frequency was missing from ANTAG_FREQS)."
- bugfix: "Fixes look-up/look-down actions intermittently failing
without first using cancel-camera-view."
2026-08-02 01:24:45 +00:00
BatrachophrenoandGitHub bbd74d4c0f Adds Erisian Flag and Banner (#22947)
Again uploaded on the behalf of The_Ill_Fated.

changes:
  - rscadd: "Adds Eris Flag and Banner to player loadout options."
  - imageadd: "New sprites for the Eris Flag and Banner."
2026-08-02 01:24:34 +00:00
FenodyreeAvandGitHub e79ad3a778 Door damage fixes (#22975)
I had accidentally made doors unbreakable, except by anti_material
weapons, like the PEAC and ship weapons. This fixes that.

Two PEAC shots will still destroy any normal door.

This is mostly a bugfix, the increase to door armour only compensates
for them being mortal again. PEAC basically ignore armor with their 35AP
and 100+ damage to structures.

Regular weapons weaker than a laser rifle still cannot completely
destroy a door.

It takes an STS ~90 rounds to destroy a blast door.


https://github.com/user-attachments/assets/840514c1-b3a5-4de7-bd81-8651781502dd

changes:
- bugfix: "Doors and blast doors can be destroyed again with enough
sustained damage."
  - bugfix: "Fixes doors 'breaking' repeatedly, when hit at 0 health."
- bugfix: "Fixes doors taking damage twice when hit by projectiles. This
also fixes projectiles ignoring a door's armour."
- balance: "Increased the armor values on blast doors and vault doors."
  - rscadd: "Added a brief particle effect when a door is destroyed."
2026-08-02 01:24:01 +00:00
hazelratandGitHub c080d4b5fe Machinist workshop remap (#22898)
Remaps the machinist workshop to fulfil a few criteria missing from
https://github.com/Aurorastation/Aurora.3/pull/22718. Particularly aims
to make the workshop more functional for IPC medical gameplay.

- The surgical theatre has been expanded so two machinists can more
practically work in the same space at the same time. In the existing
design, this portion of the workshop is far too claustrophobic. It also
has a desk.
- The exosuit chargers no longer obstruct access from the garage door.
- Resolved a lot of awkward uses of decals and platforms, which should
also make for more useable space.
- Cleaned up the wiring - both rooms are now wired to the civilian
subgrid. Previously, the main workshop area was hooked via a very
awkward line to the operations subgrid, while the theatre was wired to
civilian.
- Shifted a lot of the clutter into the robotics vendor, such as the
empty first-aid kits for medbots.
- Shifted materials crates + the crate shelf to a central position, to
make them easier to track.

Things of note for maintainers:

- It's never ideal to remap something very soon after the original
implementation, but having given this remap a full month, I think it's
had a fair chance. Having played machinist in it, the layout is very
tough to work in. It's a very cluttered environment, which becomes much
harder to look at once there's a disassembled mech cluttering the centre
with a dozen or so objects. This aims to be more intuitive to play in
and less overwhelming for players.
- The surgical theatre contains one additional IV drip, one extra O-
bag, and one organ cooler for borgings, and there are now two roller
beds accessible by the front desk. I'd rather have a more unique
solution for this problem long-term, but in the short-term it very much
sucks to have to ask to borrow a roller from medical just so you can
move a damaged industrial, given you can no longer pick that industrial
up unless you're playing a huge species.
- Otherwise, the workshop has the same resources as before and will be
able to make the same things.

(screenshot taken after testing, and prior to further changes)
<img width="1081" height="1080" alt="image"
src="https://github.com/user-attachments/assets/a8eef0e3-630b-463d-b3c3-22769001b513"
/>
<img width="480" height="448" alt="image"
src="https://github.com/user-attachments/assets/535dc851-7bab-48f7-a916-a5a1f12bf650"
/>
2026-07-30 14:48:50 +00:00
c#min7andGitHub d1f48dcd01 window repair adhesive spray (#22930)
adds window repair adhesive spray containing silicate. single use.
found in the engi-ved vending machines

for repairing cracked/damage windows without having to fully deconstuct
and reconstruct them.
can also strengthen windows
2026-07-29 16:33:52 +00:00
BatrachophrenoandGitHub 0a738fd73a Various Issues Tracker Bugfixes (#22954)
Fixes https://github.com/Aurorastation/Aurora.3/issues/22674
Fixes https://github.com/Aurorastation/Aurora.3/issues/22682
Fixes https://github.com/Aurorastation/Aurora.3/issues/22766
Fixes https://github.com/Aurorastation/Aurora.3/issues/22767

  - bugfix: "Fixes Mechatronic Fabricator's emissive overlay."
  - bugfix: "Fixes Hivenet Manifest hive color assignments."
  - bugfix: "Fixes Crew Manifest color defines."
- bugfix: "Inbuilt /silicon modular computers no longer broken by EMPs."
  - bugfix: "Fixes energy gun desc_extended inheritances."
2026-07-29 16:25:31 +00:00
BatrachophrenoandGitHub c92d909534 Wires Panel and Signaler Expansion (#22846)
Fleshes out wire panel skill behavior and signaler management.

Electrical Engineering 4 was very OP for revealing all wire labels of
all machines, and it was super fun while it lasted.

Wire panels now have associated skills with their use, and increased
skill ranks will increase the proportion of wires (chosen at random)
that are easily recognizable on sight for certain types of wiring
panels.
**Professional:** 75% revealed
**Trained:** 50% revealed
**Familiar:** 30% revealed
_(note: having both Electrical and Mechanical engineering at least
Trained gives you that baseline 30%, reflecting how your knowledge can
probably translate to decent guesswork.)_

The following wire panels are affected:
**Electrical Engineering:**
- APCs
- Cameras
- IFF Beacons
- Radios
- Smartfridges
- SMES Units

**Mechanical Engineering**
- Airlocks
- Disposal Units
- Fabricators
- Vending Machines

**Atmospherics Systems**
- Air Alarms

**Reactor Systems**
- Particle Accelerator Control Boxes (lol)

**Robotics**
- Hardsuits
- Suit Storage Units (sharing the love is all)
- Robots
- Tag Scanners

**Xenobiology**
- Stasis Cages

Also, I made it possible to blow out all the lights in an APC's area by
snipping the power regulator cable and then pulsing the lights wire.
Great for signalers.

Speaking of signalers, new app deployed to all Engineering, Research,
and Robotics personal modular computers:
<img width="816" height="722" alt="Screenshot 2026-07-14 144049"
src="https://github.com/user-attachments/assets/3d588712-ebfd-47ac-b699-7cdac2c04907"
/>

Self-explanatory. Please only use corporate-provided software for
behavior within your contract regulations.
2026-07-26 18:05:15 +00:00
antandGitHub 091d6d84c2 XO office remap (#22909)
a pretty comprehensive remap of the XO's office, splitting it into two
separate rooms
2026-07-26 18:03:40 +00:00
0092c15aa2 Operating Table and Antifuel Grenade Bugfixes (#22915)
changes:
- bugfix: "Operating table less likely to get non-real occupant bug when
installed on a shuttle."
- bugfix: "Antifuel grenades now reliably neutralize spilled welding
fuel and napalm gel."
- bugfix: "Generic cleaning products/tools no longer remove spilled
welding fuel or napalm gel- requires antifuel reagent."

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Co-authored-by: VMSolidus <evilexecutive@gmail.com>
2026-07-26 18:03:15 +00:00
BatrachophrenoandGitHub c3029f8c4c Flags Update (The_Ill_Fated, Hazelmouse) (#22876)
**The_Ill_Fated:** new flags/banners for heap of Solarian stuff
**Hazelmouse:** new flag/banner for Axiom

Stupid Solarian Canton officially gone, sickass stripe now. All worlds
affected (either updated or added):
Callisto
Ecclesiastical Axiom
Enceladus
Europa
Ganymede
Lhokgon
Luna
Lycoris
Lycoris (Provisional)
New Hai Phong
New Peoria
Northern Reconstruction Mandate
Novo Igman
Old Mars
Pluto
Provisional Mars
San Colette
Sankt Frederick
Silversun
Solarian Biesel
Early Solarian Biesel (Tau Cetian)
Solarian Mictlan
Solarian New Gibson
Solarian Xanu
Solarian Konyang
Southern Reconstruction Mandate
Sālamasian Republic
Unity Station
Venus
Visegrad

See icondiffbot for images.
2026-07-23 15:19:55 +00:00
Wowzewow (Wezzy)andGitHub 4eccb61c31 Bedsheet fixes (#22872)
- bugfix: "Fixes bedsheets turning invisible."
  - bugfix: "Fixes being upside down when being rested by a bedsheet."
2026-07-19 10:48:04 +00:00
Casper3667andGitHub a0c5ab0a09 Permit impact drills to work in IPC surgery and some minor tool fixes (#22840)
This permits the impact drills to work for surgeries where a screwdriver
would work. For the regular uses that would be opening the hatches on
prosthetic limbs and prosthetic organ repairs. This was done as
machinists, who primarily do those surgeries, usually print an impact
drill for themself anyway so it was an annoyance to have a screwdriver
just for that one thing in their entire workshop.

While at it, I also changed a few hardcoded tool checks elsewhere to not
be as hardcoded.
2026-07-17 20:50:07 +00:00
281725767a Witch Blood of Caria (Again) (#22865)
- Adds the Caria origin, by request of human lore. Carians are vulnrable
to light, but have low light vision.
- Adds the Caria accent.
- Adds Carian flags, available in the loadout.
- Adds the Carian tribunal necklace, available in the loadout.
- All description are by Schwann.
- All sprites are by me.

---------

Signed-off-by: Fyni <itsfyni@gmail.com>
Signed-off-by: Wowzewow (Wezzy) <42310821+alsoandanswer@users.noreply.github.com>
Co-authored-by: Wowzewow (Wezzy) <42310821+alsoandanswer@users.noreply.github.com>
2026-07-17 18:49:03 +00:00
Casper3667andGitHub fabbb38836 Makes it possible to upgrade cell chargers and craft them (#22842)
With this, cell chargers can be constructed and upgraded. They are about
double the power of a regular recharger with an equal tier of
capacitors, as that is roughly the difference they were at tier 1.
I take no responsibility for people forgetting to upgrade their power
supply to handle the extra drain. Go fetch a better cell in the APC for
that, as it worked fine in local testing when done so.

A regular recharger was added to the machinist's workshop, as they had
no way to recharge device batteries before.
2026-07-17 18:48:59 +00:00
FenodyreeAvandGitHub affab40530 Hardsuit bugfixes (#22848)
The closest thing to a balance change is the hardsuit boots being
deployable without the chestpiece again.

The SFX can be moved with the recent update to armour sounds if someone
wants, but the slowdown is a heavy enough penalty to discourage it.

- bugfix: "Fixed the Retract All Hardsuit Parts verb, by making hardsuit
boots retractable with the chestpiece deployed, at a heavy slowdown"
- bugfix: "Fixed the stealth system module not decloaking when the user
fires a gun or hits a mob."
- bugfix: "Fixed being able to instantly remove your hardsuit if it had
a storage module in it."
- bugfix: "Fixed mounted energy guns being stuck in taser mode. Also
extends support to other guns with multiple firemods."
  - bugfix: "Fixed most hardsuit modules not having an on-mob sprite."
- bugfix: "Fixed synthetic chargers not charging the hardsuit, if the
wearer was an IPC."
- bugfix: "Fixed the hardsuit UI not updating when toggling jetpack
stabalizers."
- bugfix: "Fixed the advanced hacking tool searching the wearer's entire
contents to see if it had been dropped every tick."
2026-07-17 11:32:03 +00:00
hazelratandGitHub 637b519140 Integrates Axiom & Salamasian lore to accents and origins (#22837)
Integrates the new fluff for Axiom and the Salamasians, as seen
[here](https://wiki.aurorastation.org/index.php/Axiom), into the server.
Adds a new culture for Axiom IPCs. Removes all mentions of 'Orepit' from
the codebase.

Also adds new accent tags for each origin. I'd really much rather have
the sprites depict environments rather than flags, but I'm at a creative
deficit right now - can always edit to be more substantial later.

<img width="236" height="125" alt="image"
src="https://github.com/user-attachments/assets/c4cee6fd-984b-4873-9303-7e3fd5a8ab8f"
/>

Human origin:

<img width="987" height="617" alt="image"
src="https://github.com/user-attachments/assets/2e5de35b-509e-4b2e-8214-70d3af2fc8e8"
/>

Synthetic origin:

<img width="996" height="536" alt="image"
src="https://github.com/user-attachments/assets/862ec8f4-3607-422c-97b0-5c205a0f1836"
/>

Also adds Salamasian flags to the loadout. Sprites courtesy of Ill
Fated!

<img width="404" height="204" alt="image"
src="https://github.com/user-attachments/assets/3109c269-76a5-4d42-b3d6-1ab5dd1d5e0f"
/>
2026-07-17 11:31:52 +00:00
962f62612e Adds a tactical rescue axe for security and antags. (#22839)
Adds a cool-looking subtype of the rescue axe for security and antags.
Spawns by default in security officer and head of security lockers. It
has also been added to some antag preps (mercs, burglars, raiders) and
to the uplink (tools section, 1 BC). Sprite by TheStryker.

<img width="366" height="276" alt="image"
src="https://github.com/user-attachments/assets/c034e454-60e0-4d0b-a5ff-fd1c22f4075f"
/>

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2026-07-17 11:06:52 +00:00
ASmallCuteCatandGitHub 982afded46 Adds a sign, and applicable sprite, to indicate that an area is shielded against the Radiation Storm event. (#22676)
Modders/Mappers resource for now. Does as the title says. The sprite's
in, the sign's coded, but I didn't actually place any of these around
the ship.
2026-07-14 20:07:48 +00:00
VMSolidusandGitHub e117ef3f87 Nuke Limb Processing (#22814)
<img width="1549" height="857" alt="image"
src="https://github.com/user-attachments/assets/3830233d-0635-4942-b2aa-024651e6cffa"
/>

Limbs make up roughly half of the "Per additional player" processing
overhead, while Organs make up most of the other half.
Not every organ is an easy candidate for "Event-only processing", but
external limbs are significantly easier to do so.

So this PR makes it so that External Limbs no longer require Processing
unless an event happens that would justify them requiring processing.
Which SIGNIFICANTLY reduces the overall additional cost to the
Processing subsystem per player that joins the server.

Oh and I also made the Appendix and Kidneys not require constant
processing. The Appendix will only process if it is hit by an
Appendicitis event, and the Kidneys will only process if they are either
damaged, or you get poisoned.
2026-07-12 20:45:24 +00:00
BatrachophrenoandGitHub 1c8c0c2221 Bugfix pile (#22823)
Fixes several runtimes from the past few weeks, some additional material
repath regressions, and the fact that if I shoot you with a stream of
ionized deuterium particles, it doesn't riddle you with cancer.

changes:
- bugfix: "Fixes emergency shields runtiming when hit by thrown
objects."
  - bugfix: "Fixes several stale global list runtimes."
- bugfix: "Fixes several health percentage checks that could use unset
initial health values."
  - bugfix: "Fixes additional materials regressions in INDRA code."
  - bugfix: "Fixes invalid fuel injector depletion math."
- bugfix: "Makes accelerated particles apply radiation damage to living
mobs they pass through."
2026-07-12 18:06:28 +00:00
VMSolidusandGitHub 5627e02e93 Kill Gas Tank Processing (#22810)
This PR nukes the single largest and most common source of unnecessary
Process() calls, the Air Tanks. Air tanks now dynamically add and remove
themselves from processing only when actually required (such as by being
actively used) or they contain a "reactive" gas mixture.

Gas tanks made up the overwhelming majority of all process calls, and
without them always being on, the Processing subsystem becomes extremely
cheap.

<img width="394" height="33" alt="image"
src="https://github.com/user-attachments/assets/a973b863-56ad-46f6-ac34-e3cd479dd76d"
/>

I have also tested gas tanks to make sure that they still work, being
chargable, dischargable, able to breathe from them, and that opening the
valve works. All 4 actions add the gas tank to processing. When the
actions are finished, the tank exits processing.

<img width="686" height="388" alt="image"
src="https://github.com/user-attachments/assets/e91c96d3-9031-4720-8e21-aa4d4afa84fc"
/>
2026-07-11 14:32:59 +00:00
BatrachophrenoandGitHub ec530578f6 Materials repath stuff (#22815)
Some regression cropped up somewhere that made fabrication systems
break- adds a bunch of helpers to deal with.
2026-07-10 23:37:13 +00:00
eebb8b971c Materials Repath (#22388)
Soft-ish port of https://github.com/NebulaSS13/Nebula/pull/540. Except
we call them singletons.

Repaths all materials as singletons instead of datums, and replaces
material defines from strings to paths so that we can just run
GET_SINGLETON instead of needing to use SSMaterials. This is Step One.

This PR has no player-facing changes.

changes:
  - refactor: "Repaths /material to /singleton/material."
- refactor: "Replaces all material string defines to path defines,
replacing SSmaterials procs w/ GET_SINGLETON instead."
- refactor: "Removes all material var edited objects from all maps,
adding new presets where necessary."
- refactor: "Updates recipes unit test to run all recipes against all
material singletons."

---------

Signed-off-by: Batrachophreno <Batrochophreno@gmail.com>
Co-authored-by: kano-dot <bhutanlikanoxy@gmail.com>
2026-07-10 18:45:58 +00:00
KanoandGitHub b9072c2ff2 QoL changes for loreconsoles (#22784)
## About PR

- Adds a looping sound for the lore consoles which can be heard in a 11
tile radius in 6 second intervals. The loop stops once a human mob has
interacted with the console

- Removes abstract macro from loreconsole base types, since these are
intended to be spawned

- Slightly decreased font size of the body text so it feels less like
you're in your 60s and this is the font size of your phone

- Fixed being able to interact with power reliant loreconsoles without
power

## Images



https://github.com/user-attachments/assets/69c94128-d84a-426b-bc8c-27d94c5974cb



### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:

| Path | Original Author | License |
| --- | --- | --- |
| sound/machines/data_ping.ogg | Timbre
(https://freesound.org/people/Timbre/sounds/444876/) | CC BY-NC 4.0 |
2026-07-08 19:40:29 +00:00
e63355d56c Brings the bar and kitchen closer together, turns service into less of a dead end (#22719)
A much-less "Honey, I Overhauled The Horizon" remap of Service which
brings the Bar and Kitchen closer together, while also opening up the
Service part of the ship so that it's less of a dead end hallway and
more of someplace where crew can hang out.

The bar remains its own room, but shutters and dividers between the bar
and the kitchen allow for easier cooperation between the two sides.

idk how to put it on the changelog but major props and credit to
Hazelrat for helping with hydroponics, decor, and details on this
rework, couldn't have done it alone

---------

Co-authored-by: Hazelrat <ric.whe.don@gmail.com>
2026-07-08 14:00:21 +00:00
VMSolidusandGitHub 75dfa30013 More Atom Cleanup (#22777)
Unused vars take up memory and worsen proc overhead. By far the worst
offenders to this are vars on /atom and /mob since they more or less
globally stack lots and lots and lots and lots of proc overhead. So I'm
cleaning up unused vars on these to save resources. I also noted several
vars that are excellent candidates for making components or elements.
When I'm not drowning in school work anymore, their time is numbered.

Mfw every space carp forever has a CCIA record, no wonder mobs are
laggy.
2026-07-07 14:13:51 +00:00
VMSolidusandGitHub d190233527 Various Incomplete Destroy Fixes (#22788)
I've had extended logging for Incomplete Destroys for about 2 weeks now,
so there's the promised PR that fixes each and every single poisoned
destroy that was recorded in the past 2 weeks by the sentry logs.
2026-07-07 14:13:46 +00:00
Wowzewow (Wezzy)andGitHub 25ed9d1fb7 ZZZhao's Custom Items (#22771)
https://forums.aurorastation.org/topic/22978-zz-zhaos-epauleted-greatcoat/

https://forums.aurorastation.org/topic/22977-zz-zhaos-self-portrait/

already been approved pls give green checkmark ty
2026-07-02 14:37:27 +00:00
c98625dcfe Investigations Facelift (#22713)
Some QOL changes and mapping tweaks to Investigations and Forensics.

The Crime Scene kits now spawn in the investigators office, another
interrogation room has been added, Evidence Storage is larger and more
organized, Forensics and Autopsy have been neatened and enlarged.

The janitor closet in Security has been removed to make room for the
changes.

There's now a new decorative structure, the Evidence Shelf, with
included sprite (credit goes to the original creator of the Retail Shelf
sprite, I just added the impression of cardboard boxes onto it)

---------

Signed-off-by: ASmallCuteCat <neofelisnebulosa128@gmail.com>
Co-authored-by: TGW <CasperMC@hotmail.dk>
Co-authored-by: Casper3667 <8396443+Casper3667@users.noreply.github.com>
2026-07-01 10:32:00 +00:00
Casper3667andGitHub d753470fe5 Adds operations/hangar tech voidsuits to EVA storage (#22727)
Hangar techs job description has expanded enough, that they have some
expectation to do EVA work. As such, they now get a voidsuit. As a part
of this, hangar techs also have EVA access now.
Credits to Wezzy for the sprites.

<img width="776" height="461" alt="image"
src="https://github.com/user-attachments/assets/208e89d1-13f1-4c94-9d8b-b88e4bce050a"
/>
<img width="450" height="133" alt="image"
src="https://github.com/user-attachments/assets/d7ecb558-e490-400e-a6d1-3cd5314c7873"
/>
<img width="376" height="110" alt="image"
src="https://github.com/user-attachments/assets/b98b409f-c799-4215-8a54-4c3776258c41"
/>
<img width="402" height="140" alt="image"
src="https://github.com/user-attachments/assets/4ea004b6-e278-4f87-8311-91ca4d18564c"
/>


### Asset Licenses
The following assets that **have not** been created by myself are
included in this PR:

| Path | Original Author | License |
| --- | --- | --- |
| icons/obj/clothing/voidsuit/station/operations.dmi | Wezzy | CC0 |
2026-07-01 10:31:54 +00:00
60d09f31b1 TCAF expansion/rework stuff (#22717)
- renames/redescs/etc existing stuff to fit new TCAF lore
- lots of 4 years defunct TCFL stuff has been deleted or
repathed/renamed
- the tcfl peacekeeper ship that was soft-removed has been deleted
- the uniforms has also been modified and have had the necessary amount
of blue added. essentially i kitbashed the old TCFL uniforms with the
new TCAF uniforms

i probably missed a lot of tcfl stuff still.

---------

Signed-off-by: c#min7 <sadkermit01@gmail.com>
Co-authored-by: Kano <89972582+kano-dot@users.noreply.github.com>
2026-06-22 13:53:32 +00:00
2f4a8d6f3d Fixes pain and announcement font size. (#22681)
title, h2 and manual font size brokey

---------

Co-authored-by: Matt Atlas <liermattia@gmail.com>
2026-06-19 17:23:07 +00:00
FenodyreeAvandGitHub a78a6796b5 Makes rechargers buildable, deconstructable and upgradable (#22657)
Adds circuit boards and parts for rechargers and wall rechargers.
Rechargers can be built, deconstructed and upgraded. Wall rechargers can
only be upgraded.
The required parts can be printed in R&D.

<img width="1086" height="613" alt="image"
src="https://github.com/user-attachments/assets/9deb7917-4c59-4149-b1db-85e53b0447d3"
/>
2026-06-13 20:53:46 +00:00
lewandGitHub 11a9a2d644 Multi-Languages: a complete Saycode rewrite (#22637)
Rewrites Saycode and Langchat to add support for multiple languages in
one message, including audible emotes.

<img width="1139" height="338" alt="image"
src="https://github.com/user-attachments/assets/25e26932-7a6e-4c54-ab74-56fffb92ecad"
/>

Here's some samples to explain how to mix languages.

<img width="422" height="26" alt="image"
src="https://github.com/user-attachments/assets/e1b176cc-8625-4dc9-83c8-a053d3f310e6"
/>

`Languages ,2 can be mixed ,3 like this.`

<img width="540" height="21" alt="image"
src="https://github.com/user-attachments/assets/19156c67-4670-4d7a-84d7-26e527de2676"
/>

`!explains, ,2Emotes work too. ,0The text will get auto-quoted.`

<img width="592" height="18" alt="image"
src="https://github.com/user-attachments/assets/cfc31c5c-2383-41c8-82be-b36836339321"
/>

`,3Most languages ,0can be ,2mixed ,1arbitrarily, ,3any number of
,0times.`

<img width="636" height="20" alt="image"
src="https://github.com/user-attachments/assets/388b4f9d-192a-4374-ac31-bbd4e4e5dfe4"
/>

`,2Emotes. ,eAnd he nods. ,3They don't have to come first anymore.`

There are some exceptions. The exceptions are currently anything with
any of the flags `SIGNLANG`, `HIVEMIND`, `PRESSUREPROOF`,
`KNOWONLYHEAR`. Exceptions work the same as current languages do: they
must be the first language in the message. If so, they prevent switching
into any other language mid-message; if they're not first, they just
wont trigger.

They're exceptions currently because there's not really a clean way that
I or the people I asked for help on this one to make them look nice.
`SIGNLANG` for example doesn't scramble text, it shows it's own `
gestures a lengthy message.` text for those that don't understand. Could
we just replace every instance of sign language with that if somebody
doesn't understand? Probably. It would look pretty awful though. e.g.
`Alina Eskelinen says, "Hello." Alina Eskelinen gestures a short
message.`

This definitely needs testmerging because it more or less rewrites the
entire pipeline surrounding `say`. The `say` code itself had to be
rewritten to support the multiple languages, as well as all the existing
plumbing for listeners receiving messages. In return though, it's
significantly more straightforward and hopefully by extension easier for
people to add to in the future.

Primarily, instead of having four different `hear_say`, `hear_radio`,
`hear_sleep`, etc., routes for messages to come through, every single
audible message is received by `hear_message`, which is responsible for
figuring out how clear the message is (is the radio damaged? is it a
whisper we're eavesdropping on?), who needs to receive it in their
chatbox, formatting it correctly for each listener, and finally if any
npc or object within range needs to react to it in some way, like a
parrot or a mech.

changelog:
- rscadd: "Adds code-switching: you can now speak in multiple languages
in the same message."
- rscadd: "Adds audible emotes to the language list. They can be
triggered with ,e."
  - rscdel: "Removes SSrunechat."
- refactor: "Rewrote langchat in order to support multiple languages and
partial comprehension."
- refactor: "Rewrote a vast majority of all saycode and the code
responsible for displaying saytext to clients."
- bugfix: "Sleeping mobs are no longer able to understand all
languages."
- bugfix: "Langchat now correctly shows the appropriate comprehension
for all viewers rather than all viewers sharing the comprehension of the
last viewer."
- bugfix: "Languages which are supposed to be invisible when not
understood no longer appear as scrambled overhead text."

Forgive me whoever has to review this. Biggest areas that have room for
error is stuff like a borer inside someone's head, and Dionae stuff. Old
langchat had odd exceptions for those and I was forced to rewrite it
entirely, but I think I got it all back to how it was working before.
2026-06-11 10:47:26 +00:00
FenodyreeAvandGitHub a29fff6630 Fixes boozeomat description (#22653)
changes:
  - bugfix: "Fixes the booze-o-mat's description."
2026-06-10 16:11:03 +00:00
2a4bd89042 Adds non-voidsuit Ceres Lance armor. (#22642)
Adds a Ceres Lance beret, armor, and new uniform in preparation for
future CL events.

Also modifies the Ceres Lance crate to contain these items and carry a
more diverse weapon mix for merc rounds and ease of spawning during
event rounds..

---------

Signed-off-by: TheStryker <thestryker289@gmail.com>
Co-authored-by: Kano <89972582+kano-dot@users.noreply.github.com>
2026-06-09 10:55:48 +00:00
BatrachophrenoandGitHub 1b05577bdf TGUI Hotfixes, Oh God Am I The TGUI Guy Now Edition (#22648)
changes:
- bugfix: "Restores the Modular Computer access cable header button for
connecting to IPCs and machinery."
- bugfix: "Fixes display issues in the Robotics interface's
<collapsible> elements."
- bugfix: "Fixes in-chat feedback text provided by the Cyborg Analyzer
(organ name and status now both inline)."
  - bugfix: "Crew Manifest PDA app now filters out off-ship personnel."
- bugfix: "Fixes Autolathe TGUI appending search- and category- filtered
recipes instead of recomputing the list with those filters."
- bugfix: "Fixes runtime when ghost opens dedicated camera console UI."
- code_imp: "Update some defs referencing 'supply' department to
'operations'."
- refactor: "Standardizes all interface search bars to use the native
'SearchBar' component."
- refactor: "AtmosAlarmControl interface now correctly auto-sorts alarms
by alert status."
2026-06-08 10:45:31 +00:00
Casper3667andGitHub 3cf0d1607e A bunch of smaller bugfixes (#22618)
Fixes:
- https://github.com/Aurorastation/Aurora.3/issues/22592
- https://github.com/Aurorastation/Aurora.3/issues/22369
- https://github.com/Aurorastation/Aurora.3/issues/22398
- https://github.com/Aurorastation/Aurora.3/issues/22358
- https://github.com/Aurorastation/Aurora.3/issues/22432
- https://github.com/Aurorastation/Aurora.3/issues/22591
- https://github.com/Aurorastation/Aurora.3/issues/22411
- And the sound when putting items into metal briefcases, crime scene
kits and pill bottles
- As well as the sprites for the two boonie hats for taj
2026-06-05 21:32:01 +00:00
BatrachophrenoandGitHub 0d92359da7 Bun, Inferno->React migration (#22529)
Re-creation of https://github.com/Aurorastation/Aurora.3/pull/21046 to
skip merge conflict hell. Brings us modern TGUI.

**ALTERNATE TITLE: TGUI HELLSCAPE PR
ABANDON ALL HOPE YE WHO ENTER HERE**

- [x] Migrate build tools (javascript -> typescript, bun for package
management).
- [x] Upgrade all TGUI dependencies and associated root files to
TG-congruent versions (axios, babel, dompurify, eslint, highlight,
marked, prettier, sass, source-map, stacktrace-parser, typescript).
- [x] InfernoJS -> React migrations
- [x] React cleanup and polish (migrate all remaining .js files to
appropriate .ts or .tsx filetype, all remaining hooks, linting, error
corrections, etc.)
- [ ] Test all remaining TGUI interfaces
2026-06-05 15:55:22 +02:00