Commit Graph

679 Commits

Author SHA1 Message Date
StaringGasMask f7d6a97cb8 Removes the Justice mech (#92486)
## About The Pull Request

Removes the Justice mech from the game, including its sprites and some
of the associated code.
Leaves some sprites, effects and sounds in case anyone wants to reuse
them for something else.

If the maintainers prefer that the mech should remain in the game, but
as an admin-only spawn, I will do so.

## Why It's Good For The Game

This mech has been under fire recently because of it being way too
overtuned, which I think has mainly to do with trying to cram a lot of
unusual things for a mech, such as stealth and melee focus, into the
same package.
Aditionally, I don't really like the flavor at all, being a blatant
reference to another unrelated game. If both the ralsei plush and jevil
mask have been removed, I feel like a similar standard should be applied
here.

Finally, this opens up the posibility for someone else to try a new idea
on some of the concepts present on Justice's current iteration, such as
making a melee-focused mech.

## Changelog

🆑
del: The Justice mech has been removed.
/🆑
2025-08-19 22:30:36 -04:00
throwawayuseless 2a7921d436 Emitter: The Emitting (#92327)
## About The Pull Request
Adds Diode Disks, installable disks that when fitted into an emitter can
change its function.
* Healing
* Stamina damage, and heals the SM slightly at the cost of internal
energy
* Traitor engi only explosive that damages and supercharges the SM if
used that way. Firerate is halved.
* Incendiary that slightly damages the SM but has lots of energy
* Sanity damaging one that improves SM psi coeff
* Magnetic item attracting one that improves SM mol absorption.
## Why It's Good For The Game
Fun and unique ways for Engi to use excess power or improve their SM
setups. Could also lead to neat engi inventions such as, say, a circuit
device that aims and fires a healing emitter at anyone nearby who is
damaged. Should also incentivize the researching of useful techs, hence
why important medium tier techs are what lock the different disks.
## Changelog
🆑
add: New Diode Disks which allow you to configurate emitters with
special functions.
add: New Engi & CE exclusive traitor item, a diode disk that causes an
emitter to create low radius explosions when it hits things. Note that
this will reduce the fire-rate of your emitter.
/🆑

---------

Co-authored-by: ThrowawayUseless <notarealemail@emailservice.fake>
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2025-08-13 07:42:53 +10:00
StaringGasMask e0740e1ea0 Removes the Justice mech (#92486)
## About The Pull Request

Removes the Justice mech from the game, including its sprites and some
of the associated code.
Leaves some sprites, effects and sounds in case anyone wants to reuse
them for something else.

If the maintainers prefer that the mech should remain in the game, but
as an admin-only spawn, I will do so.

## Why It's Good For The Game

This mech has been under fire recently because of it being way too
overtuned, which I think has mainly to do with trying to cram a lot of
unusual things for a mech, such as stealth and melee focus, into the
same package.
Aditionally, I don't really like the flavor at all, being a blatant
reference to another unrelated game. If both the ralsei plush and jevil
mask have been removed, I feel like a similar standard should be applied
here.

Finally, this opens up the posibility for someone else to try a new idea
on some of the concepts present on Justice's current iteration, such as
making a melee-focused mech.

## Changelog

🆑
del: The Justice mech has been removed.
/🆑
2025-08-11 20:28:55 +02:00
moocowswag b7dab59e5e Adds modular shield gates and makes modular shields less useless indoors (#91251)
## About The Pull Request
Adds modular shield gates and puts them in holographics research (This
is the final machine to be added to holographics, if anymore are added
they will be put into a brand new adv holographics tech)

It can be rotated with screwdriver (to open panel) and wrench

It has NO ui (its meant to be used with either a remote signaler or
modular shield console in another PR)

It takes NO penalty from generating tiles indoors

It projects a field until either its max range has been reached or it
comes across a closed turf or shield that blocks it.

Regeneration rate is still based on how many tiles it projected vs the
maximum theoretical range it can project at, meaning relays are still
useful.

Infact its very inefficient at longer ranges (which is why it's called a
gate and not a directional generator, because you will most likely use
it like a gate)

its screwdrivered in the video thats why the connections are broken..


https://github.com/user-attachments/assets/4536dd5c-a515-43fc-9186-bbd2fc21b703


Makes hulks deal 30 + shield regeneration rate instead of 100+ (remember
shields don't have any armor or damage deflection)

Has shields block clicks on things under them (mandatory for the shield
gate)

Shields now react better to explosions and atmos (they used to not block
either with barely any interaction)


HALVES the bubble shield generator's max radius when set to project
tiles in doors (similar to regen)
Doubles capacity and regen (if used indoors this is not a large buff
because max radius impacts the regen calculation)

## Why It's Good For The Game

Allows engineers to use up excess power to further manipulate their
environment to produce complicated doorways, walls, and containment
fields that are nonharmful but still meaningful as breaching them is an
easy fix.

Modular shield generators are meant to be progressive content that
engineers can mess with throughout an ENTIRE round, giving them a
generator subtype that give them a bit more fine control with how to use
them seems essential.


Alot of people have asked me why the generator is so weak and told me
its trash, ive kept it weak because it affects a large area, outside in
space thats not a big deal, but inside the station its incredibly
powerful to just drop a 300 health bullet sponge wherever you want it by
ramping up the radius and blocking someone from entering/exiting a room
(this is similar to closing a door behind someone as ai except you're
completely surrounding them with that one door.)

This is deceptively powerful and by nerfing the radius indoors it's much
harder to abuse, which means that shield can now be somewhat stronger
without being oppressive.


## Changelog
🆑
add: Modular shield gates which project a shield in a line and does not
suffer indoor penalties.
balance: Modular shields now better interact with and block atmos and
explosions and melee for what they are protecting, hulks are able to
take one down eventually no matter what.
balance: Modular shields now suffer a severe range penalty when
generating indoors but are more potent in their capacity to endure
damage.
image: modular shield gate sprites

/🆑

---------

Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
2025-07-30 17:37:37 -04:00
moocowswag e49aa65687 Adds modular shield gates and makes modular shields less useless indoors (#91251)
## About The Pull Request
Adds modular shield gates and puts them in holographics research (This
is the final machine to be added to holographics, if anymore are added
they will be put into a brand new adv holographics tech)

It can be rotated with screwdriver (to open panel) and wrench

It has NO ui (its meant to be used with either a remote signaler or
modular shield console in another PR)

It takes NO penalty from generating tiles indoors

It projects a field until either its max range has been reached or it
comes across a closed turf or shield that blocks it.

Regeneration rate is still based on how many tiles it projected vs the
maximum theoretical range it can project at, meaning relays are still
useful.

Infact its very inefficient at longer ranges (which is why it's called a
gate and not a directional generator, because you will most likely use
it like a gate)

its screwdrivered in the video thats why the connections are broken..


https://github.com/user-attachments/assets/4536dd5c-a515-43fc-9186-bbd2fc21b703


Makes hulks deal 30 + shield regeneration rate instead of 100+ (remember
shields don't have any armor or damage deflection)

Has shields block clicks on things under them (mandatory for the shield
gate)

Shields now react better to explosions and atmos (they used to not block
either with barely any interaction)


HALVES the bubble shield generator's max radius when set to project
tiles in doors (similar to regen)
Doubles capacity and regen (if used indoors this is not a large buff
because max radius impacts the regen calculation)

## Why It's Good For The Game

Allows engineers to use up excess power to further manipulate their
environment to produce complicated doorways, walls, and containment
fields that are nonharmful but still meaningful as breaching them is an
easy fix.

Modular shield generators are meant to be progressive content that
engineers can mess with throughout an ENTIRE round, giving them a
generator subtype that give them a bit more fine control with how to use
them seems essential.


Alot of people have asked me why the generator is so weak and told me
its trash, ive kept it weak because it affects a large area, outside in
space thats not a big deal, but inside the station its incredibly
powerful to just drop a 300 health bullet sponge wherever you want it by
ramping up the radius and blocking someone from entering/exiting a room
(this is similar to closing a door behind someone as ai except you're
completely surrounding them with that one door.)

This is deceptively powerful and by nerfing the radius indoors it's much
harder to abuse, which means that shield can now be somewhat stronger
without being oppressive.


## Changelog
🆑
add: Modular shield gates which project a shield in a line and does not
suffer indoor penalties.
balance: Modular shields now better interact with and block atmos and
explosions and melee for what they are protecting, hulks are able to
take one down eventually no matter what.
balance: Modular shields now suffer a severe range penalty when
generating indoors but are more potent in their capacity to endure
damage.
image: modular shield gate sprites

/🆑

---------

Co-authored-by: Kapu1178 <75460809+Kapu1178@users.noreply.github.com>
2025-07-27 01:37:17 +02:00
EnterTheJake d738cbb296 Several balance changes to Combat MODsuits (#91944)
## About The Pull Request

atomization of https://github.com/tgstation/tgstation/pull/91702 with a
few changes.

- armor booster module has been removed, nukie suits are now always
fully armored and EVA proof.

- Jetpack modules have had their power drain reduced considerably.

- Cap,Hos and Sec MODs armor values have been bumped up (similar to the
old hardsuit values).

- Sec armor plates are now a cargo import.

The nf suit now comes with the Shock absorber pre-installed.

- Fixes Nukie suits not having T4 flash protection.


- All combat modsuits now have ear protection by default when the suit
active (Cap,Sec,Hos,Syndie,ERT, Death Squad, Ninja and RD.)

- Night visor module now comes preinstalled in the syndie mods and
doesn't conflict with other vision modules, nor it costs complexity,
power drain reduced, the module itself has been removed from the uplink.

- Increases the complexity on the nukie suits by 2 points.

- all traitor modules now cost 1 less TC.

## Why It's Good For The Game

**armor booster removal**

I really dislike how this module works, it's a constant hassle having to
manually swap mode depending on the pressure, it's just an annoyng
memory check that punishes you with chip damage when not respected.

The choice of wheter wearing a mod or not doesn't really apply to
nuclear operatives since they wear these things all the time and losing
half of your armor in space never really made a ton of sense to begin
with.

**Jetpack power drain buff**

The drain on this thing is absolute fucking nuts, it eats high capacity
cells in a matter of minutes, power should be a limiting factor to using
these things but it shouldn't tank your battery health this quickly.

**Cap,Sec,Hos MODs buffs**

Back when Fikou introduced MODsuits, one point he clarified in the
design doc is that "Combat stuff usually leads to uninteresting design,
it makes the suits do everything for everyone"

I don't want to diss on the dude (Love you bud), but I don't think his
point makes a ton of sense.

Combat stuff, on this case Combat mods should be built with Combat in
mind.

In all fairness he then has a paragraph addressing why the crew based
combat suits should have low armor, but it still rings hollow to me.

Armored or not, being slower than your average spessman is enough to
make you an easy target or to never be able to chase anyone on foot,
even with their armor increased I don't see players having them
constantly on all the time, the slowdown is a hard enough disincentive.

The Magnate and HoS mods specifically are unique pieces of gear, and
they are usually assigned to 2 of the most important (and prone to
assassination) roles on the station.

There's also a weird paradox with some of the modules they come equipped
with the sec MODs, the pepper spray and the projectile dampener are
built around getting hit, which is a hard sell when your armor is so low
you might as well just die straight up.

Out of respect to Fikou's will of not wanting to grant the crew the
ability to mass produce combat MODs, I removed the sec modplates from
the techweb and moved em as a cargo import.

**Uplink MODules Price reduction**

These were originally priced with progression in mind, traitor
specifically has become considerably weaker since they lost access to
avenues to generate extra TCs.

It's hard to justify getting a suit when most weapons in the uplink cost
more than half of your budget, let alone the modules.

**Shock absorption into the inf suit**

This module is pretty much already mandatory if you don't want to lose
fights in one hit, wearing a syndie modsuit makes you giga valid to
everyone on station and any traitor worth their salt will buy this
module regardless anyway; it just punishes new players who don't know
better.


**Night Visor MOD changes**

This module is completely useless, nobody ever uses it, because it
conflicts with other vision modules, and it's completely redundant since
Thermal vision already comes packed with NV on their own.

**Complexity increase on the Nukie suits + T4 flashing protection
added**

The nukie suits have honestly quite limited complexity for the role they
are supposed to fill , the T4 flash protection missing from the suit is
unintended as we made any other MODsuit have T4 protection already, Moth
Nukies rejoice.

**Ear Protection on combat MODs (oh boy)**

Listen, as of right now we have a total of 2 counters for flashbangs, a
Bowman or being deaf.

A sealed, airtight suit shouldn't offer less protection against loud
noises than a mere headset.
baddies that usually pack these suits usually have a Bowman anyway,
Nukies have it, ninja can easily teleport into a sec outpost and get it,
it's a bit more tricky for traitor since they usually have to invest in
an emag to quickly take the set or kill a security officer.

At least now if you see a baddie roll up in a suit you no longer have to
play hypotheticals wheter your flashbang will work properly or not.

I also gave the ear protection to the RD mod despite it not being a
combat MOD, because frankly it made sense, it's a bomb proof armor, It
should also protect you from loud noises.

## Changelog

🆑
removal: Armor booster module has been removed.
balance: Jetpack module energy drain has been massively reduced.
balance: armor on the Magnate,Safegaurd and sec modsuits has been
considerably increased.
balance: Sec MOD plates have been transferred from RnD to Cargo.
balance The Infiltrator MOD now comes with the shock absorption module
pre-installed.
balance: Nukie MODsuits hav a bit more complexity.
fix: Nukie MODs now have the same flash protection as the other suits
with welding protection.
balance: night visor module comes pre-installed in the syndie mods, no
longer consumes complexity,drains less power and doesn't conflict with
the other visor MODules.
removal: Nightvision MODule removed from the uplink.
balance: Combat MODs and RDs now grant earing protection when the suit
is active.
/🆑

---------

Co-authored-by: Xander3359 <66163761+Xander3359@users.noreply.github.com>
2025-07-19 20:29:31 -04:00
MrMelbert b5a53845d9 Decal Painter refactor + merge with tile sprayer + more decals to paint (#91915)
1. Decal painter has been refactored. Decals to paint are now datums.

2. Tile sprayer has been deleted, and merged with the decal painter.

3. A bunch of map decals previously un-paintable are now paintable.

4. Some preset map colors are now available for selection

Including:

- All sidings (Colored, Plating, Wood)
- Missing tile decals (Full tile, checkered tile)
   - And the missing tile decal colors (Dark colors)
- Missing warning decals (Loading area)

![image](https://github.com/user-attachments/assets/dc67f913-1e3e-42a4-8bec-1cf65381b5fb)

1. Makes it drastically easier to add more decals in the future.

2. The split always felt needless to me. I always printed one, ran to my
construction site, opened up the UI - only to realize I printed the
wrong one.

3. Allows for much greater potential while building

4. Makes it easier to match mapped in decals

(This code is commissioned, but I also wanted it, soooo)

🆑 Melbert
refactor: Refactored the decal painter, report any missing decals or
ones that come out weird.
del: Tile sprayer is dead. Its functionality has been merged with the
decal painter.
qol: A bunch of decals have been added to the decal painter. Style to
your heart's content.
/🆑
2025-07-19 20:29:22 -04:00
EnterTheJake ec0a685866 Several balance changes to Combat MODsuits (#91944)
## About The Pull Request

atomization of https://github.com/tgstation/tgstation/pull/91702 with a
few changes.

- armor booster module has been removed, nukie suits are now always
fully armored and EVA proof.

- Jetpack modules have had their power drain reduced considerably.

- Cap,Hos and Sec MODs armor values have been bumped up (similar to the
old hardsuit values).

- Sec armor plates are now a cargo import.

The nf suit now comes with the Shock absorber pre-installed.

- Fixes Nukie suits not having T4 flash protection.


- All combat modsuits now have ear protection by default when the suit
active (Cap,Sec,Hos,Syndie,ERT, Death Squad, Ninja and RD.)

- Night visor module now comes preinstalled in the syndie mods and
doesn't conflict with other vision modules, nor it costs complexity,
power drain reduced, the module itself has been removed from the uplink.

- Increases the complexity on the nukie suits by 2 points.

- all traitor modules now cost 1 less TC.

## Why It's Good For The Game

**armor booster removal**

I really dislike how this module works, it's a constant hassle having to
manually swap mode depending on the pressure, it's just an annoyng
memory check that punishes you with chip damage when not respected.

The choice of wheter wearing a mod or not doesn't really apply to
nuclear operatives since they wear these things all the time and losing
half of your armor in space never really made a ton of sense to begin
with.

**Jetpack power drain buff**

The drain on this thing is absolute fucking nuts, it eats high capacity
cells in a matter of minutes, power should be a limiting factor to using
these things but it shouldn't tank your battery health this quickly.

**Cap,Sec,Hos MODs buffs**

Back when Fikou introduced MODsuits, one point he clarified in the
design doc is that "Combat stuff usually leads to uninteresting design,
it makes the suits do everything for everyone"

I don't want to diss on the dude (Love you bud), but I don't think his
point makes a ton of sense.

Combat stuff, on this case Combat mods should be built with Combat in
mind.

In all fairness he then has a paragraph addressing why the crew based
combat suits should have low armor, but it still rings hollow to me.

Armored or not, being slower than your average spessman is enough to
make you an easy target or to never be able to chase anyone on foot,
even with their armor increased I don't see players having them
constantly on all the time, the slowdown is a hard enough disincentive.

The Magnate and HoS mods specifically are unique pieces of gear, and
they are usually assigned to 2 of the most important (and prone to
assassination) roles on the station.

There's also a weird paradox with some of the modules they come equipped
with the sec MODs, the pepper spray and the projectile dampener are
built around getting hit, which is a hard sell when your armor is so low
you might as well just die straight up.

Out of respect to Fikou's will of not wanting to grant the crew the
ability to mass produce combat MODs, I removed the sec modplates from
the techweb and moved em as a cargo import.

**Uplink MODules Price reduction**

These were originally priced with progression in mind, traitor
specifically has become considerably weaker since they lost access to
avenues to generate extra TCs.

It's hard to justify getting a suit when most weapons in the uplink cost
more than half of your budget, let alone the modules.

**Shock absorption into the inf suit**

This module is pretty much already mandatory if you don't want to lose
fights in one hit, wearing a syndie modsuit makes you giga valid to
everyone on station and any traitor worth their salt will buy this
module regardless anyway; it just punishes new players who don't know
better.


**Night Visor MOD changes**

This module is completely useless, nobody ever uses it, because it
conflicts with other vision modules, and it's completely redundant since
Thermal vision already comes packed with NV on their own.

**Complexity increase on the Nukie suits + T4 flashing protection
added**

The nukie suits have honestly quite limited complexity for the role they
are supposed to fill , the T4 flash protection missing from the suit is
unintended as we made any other MODsuit have T4 protection already, Moth
Nukies rejoice.

**Ear Protection on combat MODs (oh boy)**

Listen, as of right now we have a total of 2 counters for flashbangs, a
Bowman or being deaf.

A sealed, airtight suit shouldn't offer less protection against loud
noises than a mere headset.
baddies that usually pack these suits usually have a Bowman anyway,
Nukies have it, ninja can easily teleport into a sec outpost and get it,
it's a bit more tricky for traitor since they usually have to invest in
an emag to quickly take the set or kill a security officer.

At least now if you see a baddie roll up in a suit you no longer have to
play hypotheticals wheter your flashbang will work properly or not.

I also gave the ear protection to the RD mod despite it not being a
combat MOD, because frankly it made sense, it's a bomb proof armor, It
should also protect you from loud noises.

## Changelog

🆑
removal: Armor booster module has been removed.
balance: Jetpack module energy drain has been massively reduced.
balance: armor on the Magnate,Safegaurd and sec modsuits has been
considerably increased.
balance: Sec MOD plates have been transferred from RnD to Cargo.
balance The Infiltrator MOD now comes with the shock absorption module
pre-installed.
balance: Nukie MODsuits hav a bit more complexity.
fix: Nukie MODs now have the same flash protection as the other suits
with welding protection.
balance: night visor module comes pre-installed in the syndie mods, no
longer consumes complexity,drains less power and doesn't conflict with
the other visor MODules.
removal: Nightvision MODule removed from the uplink.
balance: Combat MODs and RDs now grant earing protection when the suit
is active.
/🆑

---------

Co-authored-by: Xander3359 <66163761+Xander3359@users.noreply.github.com>
2025-07-19 14:14:58 +10:00
MrMelbert d291e45e30 Decal Painter refactor + merge with tile sprayer + more decals to paint (#91915)
## About The Pull Request

1. Decal painter has been refactored. Decals to paint are now datums.

2. Tile sprayer has been deleted, and merged with the decal painter. 

3. A bunch of map decals previously un-paintable are now paintable.

4. Some preset map colors are now available for selection

Including:

- All sidings (Colored, Plating, Wood)
- Missing tile decals (Full tile, checkered tile)
   - And the missing tile decal colors (Dark colors)
- Missing warning decals (Loading area)


![image](https://github.com/user-attachments/assets/dc67f913-1e3e-42a4-8bec-1cf65381b5fb)

## Why It's Good For The Game

1. Makes it drastically easier to add more decals in the future.

2. The split always felt needless to me. I always printed one, ran to my
construction site, opened up the UI - only to realize I printed the
wrong one.

3. Allows for much greater potential while building

4. Makes it easier to match mapped in decals

(This code is commissioned, but I also wanted it, soooo)

## Changelog

🆑 Melbert
refactor: Refactored the decal painter, report any missing decals or
ones that come out weird.
del: Tile sprayer is dead. Its functionality has been merged with the
decal painter.
qol: A bunch of decals have been added to the decal painter. Style to
your heart's content.
/🆑
2025-07-12 22:58:56 +02:00
necromanceranne 5573612a43 Adds .38 Flare, which is a lethal laser bullet casing available for printing with Advanced Beam Weaponry. Adjust ammo material values. (#91726)
## About The Pull Request


![image](https://github.com/user-attachments/assets/1332d28c-8d5f-41b7-a614-b74027210145)

Adds the .38 Flare. It does 20 damage. This round highlights the target
for 2 minutes, and projectiles hitting the target always hit the limb
that the shooter was aiming at. Your shot has effectively perfect limb
accuracy, no matter how far the bullet needs to travel. This also
affects other projectiles hitting the target that aren't the .38 Flare.

To indicate whether or not a round in a magazine is either lead or
laser, I've borrowed the implementation of ammo overlays from the C-20r
toy magazines Now each bullet in the speedloaders for .38 can be a
distinct type visibly. Might be interesting if anyone wants to add
additional unique appearances for some of the other .38 rounds.

Reduces the overall cost of a lot of the ammunition in the sec and
autolathe, such as loose bullets. Also reduces the material quantity
within bullet casings.

## Why It's Good For The Game

> .38 Flare

By popular demand, I've come up with a new idea. And that idea...is an
anti-bullet deviation tool. Most players are probably not conscious of
bullet deviation. But if you're familiar with the mechanic, it's why
sometimes your shots may hit into an arm or a leg even though you were
aiming at the head.

The way this works is that over the course of a bullets flight, it
increases in inaccuracy and the pobability of drifting into a limb. From
my last estimate, shooting somewhere around 5 tiles away will usually
result in bullet drift.

While affected by the flare shot, that does not happen. You shoot at the
head, you hit the head.

To put it into perspective; you could consider bullet deviation a form
of damage loss (its a bit more complicated than this and there are
instances where it is positive), and this projectile eliminates that
problem for everyone shooting the target.

> Ammo cost

Some of these were pretty excessive for the cost, and a notable example
of this include the .357 loose casings, .310 Surplus loose casings, and
most shotgun shells. These should go down to roughly below 3/5th of a
sheet of metal when printed from a fully upgraded lathe.

Meanwhile, a single bullet casing was like a sheet of metal each, which
didn't seem right to me. So they're now by default one fifth of a sheet
of metal on recycle.

## Changelog
🆑
add: .38 Flare, a laser bullet! Available in both .38 speedloader and
BR-38 magazine once Advanced Beam Weaponry is researched.
add: .38 Flare highlights the target in an outline and makes sure your
bullets never accidentally hit any limb except the one you are aiming
at. Never accidentally hit someone in the arm when you were going for a
headshot.
balance: Reduces the printing costs of several ammunition types from the
autolathe and security lathe. Reduces the overall material contents of
said printed ammo/magazines. If you find a material dupe, let a coder
know.
/🆑

---------

Co-authored-by: projectkepler-RU <99981766+projectkepler-ru@users.noreply.github.com>
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
2025-07-11 18:04:51 -04:00
OrionTheFox dd00941e32 Makes the Organ Jar printable, lowers it chemical capacity and makes it pour large amounts at once (#92003)
## About The Pull Request

A note to start: the coroner's mail goodie is untouched. They still get
their brain-in-a-jar, prefilled with formaldehyde and with the
ghostrole-brain.

**First part is fairly simple. It's printable now.**

![image](https://github.com/user-attachments/assets/e11d0845-9002-4707-8b12-80ab0f0ede65)

**Balance is hopefully also simple...**
Originally it could store 150u, which just made it an improvement over
most of the other basic beakers... but it shouldn't even be useful in
chemistry, it's rather unshapely for that!

So the balance is as follows:
- It stores 120u of chemicals, printable roundstart.
_Identical to the X-Large Beaker - even in cost, needing some plastic
(which makes it shatter-proof. i guess.)_
- The unwieldy lip means it can only pour in large amounts (20, 40, 60,
120)
_It's not ideal for mixing in chemistry... This will **hopefully**
discourage using it where it'd look out-of-place.
Why juggle big numbers when you can use easier to handle, equivalent
X-Large Beaker?_
 
If players so choose they **can**, of course, still mix their spacedrugs
soaking in a bottle with a Felinid Liver. It's just not a preferred
shift-start beaker.

_Also it's a /beaker subtype now because I wanted to inherit some
things, like the pickup/drop sounds.
This technically means it works as a component in machines, but since
it's equal to an X-Large beaker that doesn't really mean anything. Just
a funny interaction._
## Why It's Good For The Game

I can finally torment my patients without having to hope the Mail Gods
deem me (or the department Coroner) worthy.
The idea of gifting them their inflamed appendix in a preserved jar
makes me happy.


![image](https://github.com/user-attachments/assets/fc0bc9db-28dd-4a13-a3b7-47c51389759f)
## Changelog
🆑
add: Medical (and Science) can now print Organ Jars from their
protolathes! Their shatter-proofing requires some plastic, though.
balance: Organ Jar capacity lowered to 120u, and they can only pour in
large quantities (have you ever tried pouring out of a jar with a lip
like that? Disaster. Such a mess.).
/🆑
2025-07-11 18:04:49 -04:00
theOOZ 98bb7a9d72 Item which lets you remote control (some) shuttles (#91663)
## About The Pull Request

Adds a remote which can be printed with sufficient research, or
auto-linked by mapping the remote ontop of a nav console. Once linked it
can send off or call the shuttle towards a home and away destination.
These destinations can be changed with alt+rmb.

## Why It's Good For The Game

Let people send and call their shuttle without being at the nav
computer. Really useful for antags that arrive on a shuttle, so their
shuttle can be safe in deepspace while they fuck about onstation.
(Should pirates have this?)


![hsu5dytbs7561](https://github.com/user-attachments/assets/a0b968c5-a567-4891-b1d4-9029ad0a41d8)

## Changelog
🆑 theOOZ, kittysmooch
add: Adds the shuttle remote item unlocked with shuttle engineering
research, it lets you remote control the whiteship or custom shuttles.
/🆑
2025-07-11 17:49:23 -04:00
necromanceranne 8f15d0ea2c Adds .38 Flare, which is a lethal laser bullet casing available for printing with Advanced Beam Weaponry. Adjust ammo material values. (#91726)
## About The Pull Request


![image](https://github.com/user-attachments/assets/1332d28c-8d5f-41b7-a614-b74027210145)

Adds the .38 Flare. It does 20 damage. This round highlights the target
for 2 minutes, and projectiles hitting the target always hit the limb
that the shooter was aiming at. Your shot has effectively perfect limb
accuracy, no matter how far the bullet needs to travel. This also
affects other projectiles hitting the target that aren't the .38 Flare.

To indicate whether or not a round in a magazine is either lead or
laser, I've borrowed the implementation of ammo overlays from the C-20r
toy magazines Now each bullet in the speedloaders for .38 can be a
distinct type visibly. Might be interesting if anyone wants to add
additional unique appearances for some of the other .38 rounds.

Reduces the overall cost of a lot of the ammunition in the sec and
autolathe, such as loose bullets. Also reduces the material quantity
within bullet casings.

## Why It's Good For The Game

> .38 Flare

By popular demand, I've come up with a new idea. And that idea...is an
anti-bullet deviation tool. Most players are probably not conscious of
bullet deviation. But if you're familiar with the mechanic, it's why
sometimes your shots may hit into an arm or a leg even though you were
aiming at the head.

The way this works is that over the course of a bullets flight, it
increases in inaccuracy and the pobability of drifting into a limb. From
my last estimate, shooting somewhere around 5 tiles away will usually
result in bullet drift.

While affected by the flare shot, that does not happen. You shoot at the
head, you hit the head.

To put it into perspective; you could consider bullet deviation a form
of damage loss (its a bit more complicated than this and there are
instances where it is positive), and this projectile eliminates that
problem for everyone shooting the target.

> Ammo cost

Some of these were pretty excessive for the cost, and a notable example
of this include the .357 loose casings, .310 Surplus loose casings, and
most shotgun shells. These should go down to roughly below 3/5th of a
sheet of metal when printed from a fully upgraded lathe.

Meanwhile, a single bullet casing was like a sheet of metal each, which
didn't seem right to me. So they're now by default one fifth of a sheet
of metal on recycle.

## Changelog
🆑
add: .38 Flare, a laser bullet! Available in both .38 speedloader and
BR-38 magazine once Advanced Beam Weaponry is researched.
add: .38 Flare highlights the target in an outline and makes sure your
bullets never accidentally hit any limb except the one you are aiming
at. Never accidentally hit someone in the arm when you were going for a
headshot.
balance: Reduces the printing costs of several ammunition types from the
autolathe and security lathe. Reduces the overall material contents of
said printed ammo/magazines. If you find a material dupe, let a coder
know.
/🆑

---------

Co-authored-by: projectkepler-RU <99981766+projectkepler-ru@users.noreply.github.com>
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
2025-07-09 17:11:23 +00:00
OrionTheFox 1cd78246b4 Makes the Organ Jar printable, lowers it chemical capacity and makes it pour large amounts at once (#92003)
## About The Pull Request

A note to start: the coroner's mail goodie is untouched. They still get
their brain-in-a-jar, prefilled with formaldehyde and with the
ghostrole-brain.

**First part is fairly simple. It's printable now.**

![image](https://github.com/user-attachments/assets/e11d0845-9002-4707-8b12-80ab0f0ede65)

**Balance is hopefully also simple...**
Originally it could store 150u, which just made it an improvement over
most of the other basic beakers... but it shouldn't even be useful in
chemistry, it's rather unshapely for that!

So the balance is as follows:
- It stores 120u of chemicals, printable roundstart.
_Identical to the X-Large Beaker - even in cost, needing some plastic
(which makes it shatter-proof. i guess.)_
- The unwieldy lip means it can only pour in large amounts (20, 40, 60,
120)
_It's not ideal for mixing in chemistry... This will **hopefully**
discourage using it where it'd look out-of-place.
Why juggle big numbers when you can use easier to handle, equivalent
X-Large Beaker?_
 
If players so choose they **can**, of course, still mix their spacedrugs
soaking in a bottle with a Felinid Liver. It's just not a preferred
shift-start beaker.

_Also it's a /beaker subtype now because I wanted to inherit some
things, like the pickup/drop sounds.
This technically means it works as a component in machines, but since
it's equal to an X-Large beaker that doesn't really mean anything. Just
a funny interaction._
## Why It's Good For The Game

I can finally torment my patients without having to hope the Mail Gods
deem me (or the department Coroner) worthy.
The idea of gifting them their inflamed appendix in a preserved jar
makes me happy.


![image](https://github.com/user-attachments/assets/fc0bc9db-28dd-4a13-a3b7-47c51389759f)
## Changelog
🆑
add: Medical (and Science) can now print Organ Jars from their
protolathes! Their shatter-proofing requires some plastic, though.
balance: Organ Jar capacity lowered to 120u, and they can only pour in
large quantities (have you ever tried pouring out of a jar with a lip
like that? Disaster. Such a mess.).
/🆑
2025-07-09 14:11:07 +02:00
theOOZ 2a5768ef10 Item which lets you remote control (some) shuttles (#91663)
## About The Pull Request

Adds a remote which can be printed with sufficient research, or
auto-linked by mapping the remote ontop of a nav console. Once linked it
can send off or call the shuttle towards a home and away destination.
These destinations can be changed with alt+rmb.

## Why It's Good For The Game

Let people send and call their shuttle without being at the nav
computer. Really useful for antags that arrive on a shuttle, so their
shuttle can be safe in deepspace while they fuck about onstation.
(Should pirates have this?)


![hsu5dytbs7561](https://github.com/user-attachments/assets/a0b968c5-a567-4891-b1d4-9029ad0a41d8)

## Changelog
🆑 theOOZ, kittysmooch
add: Adds the shuttle remote item unlocked with shuttle engineering
research, it lets you remote control the whiteship or custom shuttles.
/🆑
2025-07-07 04:01:57 +10:00
moocowswag a4d5c97f63 Adds Modular shield consoles, boards, and tech, lets monkeys mash their keyboards (#91189)
## About The Pull Request
(had to cut off the video cause of github file size limit)


https://github.com/user-attachments/assets/f6a51d28-dc35-41ad-93ac-099c48215013


Adds modular shield generator consoles to the game, boards are available
through holographics tech

Simply multitool buffer a generator and then use the buffer on a
console.

The console can see the current shield health status of every generator
that is linked to it and can toggle the generators on
and off, but cannot change radius or any other settings.

The console can also rename generators for convenience



And should a monkey manage to slip past your defenses via ventcrawl it
will be able to randomly toggle your shields.


https://github.com/user-attachments/assets/94435d15-e52f-45c7-a2e6-135228e7bc08


## Why It's Good For The Game

Helps engineers keep track of their generators for primarily PVE content
(mainly when they are trying to protect the station against meteors)
## Changelog
🆑
add: You can now remotely monitor and control modular shield generators
using modular shield generator consoles.
/🆑

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2025-06-21 22:26:31 -04:00
throwawayuseless df3df27e1d Diagnosis: The Diagnosing (#91361)
Adds more analog diagnostic stuff, and expands on what's already there.
Current content added:

- Custom text for when you examine different kinds of organs with
stethoscopes and penlights.
- Examining eldritchly corrupted organs too closely (stethoscope and
penlight) is a bad idea.
- If you place a metal disk against a guy sparking like a tesla coil,
you get shocked. Go figure.
- If someone has an actively damaging zombie infection (ie. got clawed
by a zombie, not romerol), you can see it on penlight.
- New Hemoanalytic Scanner, for use in places where real health scanners
with actual useful features are too high class. It's able to scan for
medicines in the blood, check blood and oxygen levels, determine if the
scannee has tox damage, and even check their blood type. It's printable
roundstart for iron and glass, so that medbay isn't completely fucked if
science doesn't do their job and they lose their health analyzers
somehow.
- Nifty status effect messages for those tools!

Fun, rarely used systems are being improved, and seeing as how the
easily available, faster health analyzer is basically the end-all be-all
of diagnostic tools anyways, it's not going to unbalance anything unless
i literally make them just a health analyzer but better.
🆑
add: Vaguely estimate what kinds of hearts and lungs people have from a
variety of weird stethoscope noises! (Or just look it up on the pr, I
won't judge.)
add: Using analog diagnostic tools on eldritch organs from beyond the
waking world or people whose hearts cause their skin to arc like a tesla
coil is a bad idea. Examine people, ya goof.
add: You can see if someone has an actively damaging (read: contracted
straight from the groaning hungry source) zombie infection by using a
penlight. Act out highly emotional headshot hesitation scenes today!
add: New Hemoanalytic Scanner (read: really shitty but roundstart
printable chem scanner), which tells you all about someone's blood, and
can also detect medicines in their bloodstream! Not toxins or
miscellaneous reagents though.
refactor: Refactored and added some penlight, stethoscope, and organ
code. If shit is fucked, please report it on the github issue tracker
ASAP.
fix: X-Ray vision generically causes eyes to glow under penlight, not
just specifically the mutation X-Ray vision.
fix: Reflex Hammers now fit in medical storage items, IE. medbelts and
medkits.
balance: People with welding-eyes or similar will not have their pupils
react to penlight examination.
/🆑

---------

Co-authored-by: ThrowawayUseless <notarealemail@emailservice.fake>
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com>
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
2025-06-21 22:26:28 -04:00
moocowswag c2e0d21c7a Adds Modular shield consoles, boards, and tech, lets monkeys mash their keyboards (#91189)
## About The Pull Request
(had to cut off the video cause of github file size limit)


https://github.com/user-attachments/assets/f6a51d28-dc35-41ad-93ac-099c48215013


Adds modular shield generator consoles to the game, boards are available
through holographics tech

Simply multitool buffer a generator and then use the buffer on a
console.

The console can see the current shield health status of every generator
that is linked to it and can toggle the generators on
and off, but cannot change radius or any other settings.

The console can also rename generators for convenience



And should a monkey manage to slip past your defenses via ventcrawl it
will be able to randomly toggle your shields.


https://github.com/user-attachments/assets/94435d15-e52f-45c7-a2e6-135228e7bc08


## Why It's Good For The Game

Helps engineers keep track of their generators for primarily PVE content
(mainly when they are trying to protect the station against meteors)
## Changelog
🆑
add: You can now remotely monitor and control modular shield generators
using modular shield generator consoles.
/🆑

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
2025-06-19 14:16:47 +00:00
throwawayuseless f02819360b Diagnosis: The Diagnosing (#91361)
## About The Pull Request
Adds more analog diagnostic stuff, and expands on what's already there.
Current content added:

- Custom text for when you examine different kinds of organs with
stethoscopes and penlights.
- Examining eldritchly corrupted organs too closely (stethoscope and
penlight) is a bad idea.
- If you place a metal disk against a guy sparking like a tesla coil,
you get shocked. Go figure.
- If someone has an actively damaging zombie infection (ie. got clawed
by a zombie, not romerol), you can see it on penlight.
- New Hemoanalytic Scanner, for use in places where real health scanners
with actual useful features are too high class. It's able to scan for
medicines in the blood, check blood and oxygen levels, determine if the
scannee has tox damage, and even check their blood type. It's printable
roundstart for iron and glass, so that medbay isn't completely fucked if
science doesn't do their job and they lose their health analyzers
somehow.
- Nifty status effect messages for those tools!

## Why It's Good For The Game
Fun, rarely used systems are being improved, and seeing as how the
easily available, faster health analyzer is basically the end-all be-all
of diagnostic tools anyways, it's not going to unbalance anything unless
i literally make them just a health analyzer but better.
## Changelog
🆑
add: Vaguely estimate what kinds of hearts and lungs people have from a
variety of weird stethoscope noises! (Or just look it up on the pr, I
won't judge.)
add: Using analog diagnostic tools on eldritch organs from beyond the
waking world or people whose hearts cause their skin to arc like a tesla
coil is a bad idea. Examine people, ya goof.
add: You can see if someone has an actively damaging (read: contracted
straight from the groaning hungry source) zombie infection by using a
penlight. Act out highly emotional headshot hesitation scenes today!
add: New Hemoanalytic Scanner (read: really shitty but roundstart
printable chem scanner), which tells you all about someone's blood, and
can also detect medicines in their bloodstream! Not toxins or
miscellaneous reagents though.
refactor: Refactored and added some penlight, stethoscope, and organ
code. If shit is fucked, please report it on the github issue tracker
ASAP.
fix: X-Ray vision generically causes eyes to glow under penlight, not
just specifically the mutation X-Ray vision.
fix: Reflex Hammers now fit in medical storage items, IE. medbelts and
medkits.
balance: People with welding-eyes or similar will not have their pupils
react to penlight examination.
/🆑

---------

Co-authored-by: ThrowawayUseless <notarealemail@emailservice.fake>
Co-authored-by: Jacquerel <hnevard@gmail.com>
Co-authored-by: _0Steven <42909981+00-Steven@users.noreply.github.com>
Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com>
2025-06-19 09:36:02 +02:00
jimmyl c12d2189e0 atmospherics shield generator (#91055)
## About The Pull Request

(old video)


https://github.com/user-attachments/assets/4b04c372-05a2-4bab-b4a4-1b2c965061e5

unlocked by holographics research
put two facing eachother and turn one on to make a field that blocks
atmos, if not obstructed by wall
fields cannot be broken or clicked but the generators may (theyre
relatively weak)
requires external airlock access or apc access
uses area power, environmental channel
may be locked
may be screwed open to access wiring, has 1 wire that just toggles it

changes tiny fans on stations to use those

## Why It's Good For The Game

a better and rebuildable alternative to magic tiny fans 

## Changelog
🆑
add: atmospherics shield generator, unlocked by Holographics research
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2025-06-15 15:54:08 -04:00
jimmyl 089059d7d3 atmospherics shield generator (#91055)
## About The Pull Request

(old video)


https://github.com/user-attachments/assets/4b04c372-05a2-4bab-b4a4-1b2c965061e5

unlocked by holographics research
put two facing eachother and turn one on to make a field that blocks
atmos, if not obstructed by wall
fields cannot be broken or clicked but the generators may (theyre
relatively weak)
requires external airlock access or apc access
uses area power, environmental channel
may be locked
may be screwed open to access wiring, has 1 wire that just toggles it

changes tiny fans on stations to use those

## Why It's Good For The Game

a better and rebuildable alternative to magic tiny fans 

## Changelog
🆑
add: atmospherics shield generator, unlocked by Holographics research
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2025-06-10 15:31:43 +02:00
throwawayuseless fc3fb57763 Kneejerk: The Kneejerkening (#91342)
## About The Pull Request
OH BOY HERE I GO REDUCING MY GBP AGAIN
Adds a reflex hammer, used to test your kneejerk reflex. Makes it
printable from auto, med, and sci lathes, as with other basic medical
tools. It looks like this:

![reflexhammer](https://github.com/user-attachments/assets/5a965e17-9995-4092-ba29-a20e52880170)




(i stopped doing web edits are you happy)
## Why It's Good For The Game
This is a simple and useful way to measure brain health. Usually you'd
need either a rare toy, a null rod, or the one per map gavel. This makes
analog diagnosis easier and more fun!
## Changelog
🆑
add: Reflex Hammer, used to test your kneejerk reflex. Print one now,
from your local lathe!
/🆑

---------

Co-authored-by: ThrowawayUseless <notarealemail@emailservice.fake>
2025-05-29 16:15:22 -04:00
throwawayuseless 1de158c137 Kneejerk: The Kneejerkening (#91342)
## About The Pull Request
OH BOY HERE I GO REDUCING MY GBP AGAIN
Adds a reflex hammer, used to test your kneejerk reflex. Makes it
printable from auto, med, and sci lathes, as with other basic medical
tools. It looks like this:

![reflexhammer](https://github.com/user-attachments/assets/5a965e17-9995-4092-ba29-a20e52880170)




(i stopped doing web edits are you happy)
## Why It's Good For The Game
This is a simple and useful way to measure brain health. Usually you'd
need either a rare toy, a null rod, or the one per map gavel. This makes
analog diagnosis easier and more fun!
## Changelog
🆑
add: Reflex Hammer, used to test your kneejerk reflex. Print one now,
from your local lathe!
/🆑

---------

Co-authored-by: ThrowawayUseless <notarealemail@emailservice.fake>
2025-05-25 20:48:22 -04:00
moocowswag 2273df83be Adds Modular Shield Cables and wrench connection QoL, Spraypainting the generator now causes it to color the shields on next activation (#91122)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
2025-05-22 21:30:11 -04:00
moocowswag 32abbcc58f Adds Modular Shield Cables and wrench connection QoL, Spraypainting the generator now causes it to color the shields on next activation (#91122)
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
2025-05-19 16:48:53 +02:00
Iajret e773509ab2 Fixes Applied Bluespace Research experiment requirement (#91116)
## About The Pull Request
Adds missing discount amount so experiment works properly now.

Before:


![image](https://github.com/user-attachments/assets/72e5a7db-db9e-435b-b0f6-5cf80636da1e)

After:


![image](https://github.com/user-attachments/assets/6269486a-bc6f-4f99-8de7-8826694ca97e)
## Why It's Good For The Game
## Changelog
🆑
fix: fixed bluespace sampling experiment not doing anything
/🆑
2025-05-15 16:12:28 -04:00
Iajret e7ae05ed58 Fixes Applied Bluespace Research experiment requirement (#91116)
## About The Pull Request
Adds missing discount amount so experiment works properly now.

Before:


![image](https://github.com/user-attachments/assets/72e5a7db-db9e-435b-b0f6-5cf80636da1e)

After:


![image](https://github.com/user-attachments/assets/6269486a-bc6f-4f99-8de7-8826694ca97e)
## Why It's Good For The Game
## Changelog
🆑
fix: fixed bluespace sampling experiment not doing anything
/🆑
2025-05-13 14:12:31 -07:00
Krysonism 5f3930ba05 Da huge stonking cans update! 2025 edition. (#90318)
## About The Pull Request


![bild](https://github.com/user-attachments/assets/d3643592-4907-4d01-8fc6-3d613aa3e772)

![bild](https://github.com/user-attachments/assets/d859e878-72e3-4200-8c1c-8521e5c499d2)

## This PR:

*  Adds a new type of reagent container; the jerrycan!

* Replaces the nutrient bottles in the nutrimax with cans.

* Adds some prefilled cans to the maint loot table.

### Can knowledge

* Jerrycans can hold a hold an incredible 200u.
* They can be printed roundstart at the auto and protolathes for 2
sheets of plastic.
* They are balanced by being bulky.
* They can be thrown around by without spilling their contents.
* They are not beakers and cannot be used to make grenades.

The upfront cost associated with buying nutrients will be greater, but
it will be cheaper per unit.
I would actually like to charge more but this is not really feasible
right now due to the heavy department discount.

#### Maint loot additions
The new maint loot cans have a low weight so far, collectively appearing
half as often as basic healing items.

The cans that have been added to maint loot are as follows:

* space cleaner ( weight: 2)
* oil (weight: 2)
* diethylamine (weight : 1)
* phlogiston (weight: 1)

#### Reagent overlay code

I have added an option to have reagent containers use a colour matrix to
lighten and increase the contrast of the reagent filling overlay in an
attempt to prevent dark coloured reagents from completely obliterating
all contrast.
The math may need to be tweaked but it should offer some improvement
provided the filling overlay has some contrast to begin with.

## Why It's Good For The Game

The jerrycan is not only a flavourful & setting appropriate way to store
reagents, it also offers several design benefits due to its unique
combination of high roundstart capacity and bulky size.

* It prevents one coworker from hogging a shared reagent container.
* The high volume eases grinding and mixing.
* It allows reagents to be stolen or borrowed due to being stored
outside the safety of an inventory.
* The highly visible inhand sprite allows you to see who is holding or
transporting reagents.
* The smart cap flag increases quality of life by allowing you to throw
the container without spilling.
* It reduces the tedium associated with dispensing and throwing away
botany nutrient bottles, encouraging refilling.
* Bulky size prevent players from looting the can unless it is something
they really want.
* Comes with a large number of visual customisation options for coders
who with to add new variants.

## Throwing away the little nutrient bottles when doing botany sucks!

## Changelog

🆑
add: Added a new type of reagent container; the jerrycan.
add: Added some prefilled jerrycans to maint loot.
balance: Botany nutrients now come in bulk packaging.
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2025-05-08 19:21:10 -04:00
necromanceranne 7589c68046 Adds the exosuit ablative insulation module. A module that protects a mech from energy attacks and their wires from EMPs. But makes it weaker to ballistics and melee weapons. Adds a special version for nukie mechs. (#90845)
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

Adds the Ablative Insulation. A type of mech armor.

The armor module protects the mech from energy weapons (such as thermal
pistols), and also protects the wires from EMPs (only the wires, not the
mech itself). However, it makes it weaker against melee and ballistic
weapons.

The Dark Gygax and Mauler both obtain a version of this module as part
of their default loadout that does not have any disadvantages against
melee and ballistic weapons.

## Why It's Good For The Game

This is a complimentary PR to this one.
https://github.com/tgstation/tgstation/pull/90830

Wire scrambling for mechs is an extremely irritable system, but it does
force mech pilots out of the mech to repair some of the effects
attached. or at least to a standstill.

This can often feel a bit like a knowledge check to resolve for some
pilots, since the optimal solutions for this typically involve pulsing
the wires in some way, utilizing assemblies like voice analyzers,
circuits or signalers.

While I would like a more obvious way for pilots to resolve these
problems without having to set up signal networks, I do think it should
come at some expense in other defenses so that it isn't such a catchall
solution compared to the other armor booster modules. There would
otherwise be no reason not to use this armor booster if there was no
downside, since it completely negates a weakness. Therefore, we're
aiming for a slight upside/downside exchange. You get a very good
upside, but you now need to compensate for weaker defenses elsewhere
(such as risking internal damage effects due to lower armor, see this PR
https://github.com/tgstation/tgstation/pull/90844)

We've given nuclear operatives an improved version because their mechs
are A) expensive as shit, and B) meant to be a huge all-in but have
suffered immensely from many years of refactors, rebalances and gear
availability changes that definitely have left them underperforming for
their promised value. I would much rather nuclear operative mechs feel
like they are less beholden to the weaknesses that crew mechs need to
contend with if only because they exist for what might be a fraction of
the time, if they are even spawned at all due to their price.

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and its effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

🆑
add: Adds the Exosuit Ablative Insulation armor booster module. Protects
the mech from energy-based attacks and its wires from EMPs (only the
wires, not the mech). However, the armor booster makes the mech weaker
to ballistic and melee weapons.
add: The Dark Gygax and Mauler now come pre-packaged with a special
version that has no weakness to ballistic and melee weapons.
/🆑

<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
2025-05-08 19:20:00 -04:00
Krysonism 2a30c6da70 Da huge stonking cans update! 2025 edition. (#90318)
## About The Pull Request


![bild](https://github.com/user-attachments/assets/d3643592-4907-4d01-8fc6-3d613aa3e772)

![bild](https://github.com/user-attachments/assets/d859e878-72e3-4200-8c1c-8521e5c499d2)

## This PR:

*  Adds a new type of reagent container; the jerrycan!

* Replaces the nutrient bottles in the nutrimax with cans.

* Adds some prefilled cans to the maint loot table.

### Can knowledge

* Jerrycans can hold a hold an incredible 200u.
* They can be printed roundstart at the auto and protolathes for 2
sheets of plastic.
* They are balanced by being bulky.
* They can be thrown around by without spilling their contents.
* They are not beakers and cannot be used to make grenades.

The upfront cost associated with buying nutrients will be greater, but
it will be cheaper per unit.
I would actually like to charge more but this is not really feasible
right now due to the heavy department discount.

#### Maint loot additions
The new maint loot cans have a low weight so far, collectively appearing
half as often as basic healing items.

The cans that have been added to maint loot are as follows:

* space cleaner ( weight: 2)
* oil (weight: 2)
* diethylamine (weight : 1)
* phlogiston (weight: 1)

#### Reagent overlay code

I have added an option to have reagent containers use a colour matrix to
lighten and increase the contrast of the reagent filling overlay in an
attempt to prevent dark coloured reagents from completely obliterating
all contrast.
The math may need to be tweaked but it should offer some improvement
provided the filling overlay has some contrast to begin with.

## Why It's Good For The Game

The jerrycan is not only a flavourful & setting appropriate way to store
reagents, it also offers several design benefits due to its unique
combination of high roundstart capacity and bulky size.

* It prevents one coworker from hogging a shared reagent container.
* The high volume eases grinding and mixing.
* It allows reagents to be stolen or borrowed due to being stored
outside the safety of an inventory.
* The highly visible inhand sprite allows you to see who is holding or
transporting reagents.
* The smart cap flag increases quality of life by allowing you to throw
the container without spilling.
* It reduces the tedium associated with dispensing and throwing away
botany nutrient bottles, encouraging refilling.
* Bulky size prevent players from looting the can unless it is something
they really want.
* Comes with a large number of visual customisation options for coders
who with to add new variants.

## Throwing away the little nutrient bottles when doing botany sucks!

## Changelog

🆑
add: Added a new type of reagent container; the jerrycan.
add: Added some prefilled jerrycans to maint loot.
balance: Botany nutrients now come in bulk packaging.
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2025-05-08 07:17:09 +00:00
necromanceranne e99a9e1204 Adds the exosuit ablative insulation module. A module that protects a mech from energy attacks and their wires from EMPs. But makes it weaker to ballistics and melee weapons. Adds a special version for nukie mechs. (#90845)
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

Adds the Ablative Insulation. A type of mech armor.

The armor module protects the mech from energy weapons (such as thermal
pistols), and also protects the wires from EMPs (only the wires, not the
mech itself). However, it makes it weaker against melee and ballistic
weapons.

The Dark Gygax and Mauler both obtain a version of this module as part
of their default loadout that does not have any disadvantages against
melee and ballistic weapons.

## Why It's Good For The Game

This is a complimentary PR to this one.
https://github.com/tgstation/tgstation/pull/90830

Wire scrambling for mechs is an extremely irritable system, but it does
force mech pilots out of the mech to repair some of the effects
attached. or at least to a standstill.

This can often feel a bit like a knowledge check to resolve for some
pilots, since the optimal solutions for this typically involve pulsing
the wires in some way, utilizing assemblies like voice analyzers,
circuits or signalers.

While I would like a more obvious way for pilots to resolve these
problems without having to set up signal networks, I do think it should
come at some expense in other defenses so that it isn't such a catchall
solution compared to the other armor booster modules. There would
otherwise be no reason not to use this armor booster if there was no
downside, since it completely negates a weakness. Therefore, we're
aiming for a slight upside/downside exchange. You get a very good
upside, but you now need to compensate for weaker defenses elsewhere
(such as risking internal damage effects due to lower armor, see this PR
https://github.com/tgstation/tgstation/pull/90844)

We've given nuclear operatives an improved version because their mechs
are A) expensive as shit, and B) meant to be a huge all-in but have
suffered immensely from many years of refactors, rebalances and gear
availability changes that definitely have left them underperforming for
their promised value. I would much rather nuclear operative mechs feel
like they are less beholden to the weaknesses that crew mechs need to
contend with if only because they exist for what might be a fraction of
the time, if they are even spawned at all due to their price.

## Changelog

<!-- If your PR modifies aspects of the game that can be concretely
observed by players or admins you should add a changelog. If your change
does NOT meet this description, remove this section. Be sure to properly
mark your PRs to prevent unnecessary GBP loss. You can read up on GBP
and its effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

🆑
add: Adds the Exosuit Ablative Insulation armor booster module. Protects
the mech from energy-based attacks and its wires from EMPs (only the
wires, not the mech). However, the armor booster makes the mech weaker
to ballistic and melee weapons.
add: The Dark Gygax and Mauler now come pre-packaged with a special
version that has no weakness to ballistic and melee weapons.
/🆑

<!-- Both 🆑's are required for the changelog to work! You can put
your name to the right of the first 🆑 if you want to overwrite your
GitHub username as author ingame. -->
<!-- You can use multiple of the same prefix (they're only used for the
icon ingame) and delete the unneeded ones. Despite some of the tags,
changelogs should generally represent how a player might be affected by
the changes rather than a summary of the PR's contents. -->
2025-05-06 18:21:51 -07:00
Goat 713000b32b [MDB Ignore] Makes photocopiers buildable (#90658)
## About The Pull Request
Adds the ability to build & deconstruct photocopiers. Replaces
photocopiers on current maps with a prebuilt version that's prestocked
with ink & paper. It starts preresearched in the office equipment node.
Takes a scanning module, micro laser, and servo to build.
## Why It's Good For The Game
Being able to remake is GOOD !!! Lets crew have ~ass scanning factories~
hard working offices wherever they want.
## Changelog
🆑 Goat, LePiromano
qol: Photocopiers now have boards meaning you can build, destroy, and
remake them. (If you're a mapper use the prebuilt version to prestock
your photocopiers)
/🆑
2025-04-29 18:04:28 -06:00
SmArtKar 341090d420 Adds a unit test for techweb design presence, puts some missing designs into protolathes (#90219)
## About The Pull Request

Adds a unit test that checks that all designs are accessible through
some source, be it techweb, disks, or innate designs. Certain designs,
like pocket extinguishers, entertainment screens, etc, that have been
present in autolathes but not in the techweb despite having PROTOLATHE
flag assigned have been put into protolathes (where it made sense,
otherwise the flag was removed).
An important change is that restaurant portals are now printable, and
thus can be constructed and deconstructed. Indestructible portals have
been a major gripe of mine for a while, and I don't see a solid reason
for keeping them indestructible if they can easily be printed from the
service protolathe.

Closes #90212

## Why It's Good For The Game

Initial argument for keeping portals unbreakable was to prevent people
from griefing the chef/bartender, but by that logic we can make most
machinery unbreakable too. I don't think that having an unbreakable
portal is good if its locking us out from allowing chefs/bartenders to
reorder or even outright reposition their lunchroom/bar.

## Changelog

🆑
balance: Restaurant portals can now be printed, constructed and
deconstructed. They're also no longer completely invulnerable.
/🆑
2025-04-29 17:09:44 -06:00
Goat 3799f50e65 [MDB Ignore] Makes photocopiers buildable (#90658)
## About The Pull Request
Adds the ability to build & deconstruct photocopiers. Replaces
photocopiers on current maps with a prebuilt version that's prestocked
with ink & paper. It starts preresearched in the office equipment node.
Takes a scanning module, micro laser, and servo to build.
## Why It's Good For The Game
Being able to remake is GOOD !!! Lets crew have ~ass scanning factories~
hard working offices wherever they want.
## Changelog
🆑 Goat, LePiromano
qol: Photocopiers now have boards meaning you can build, destroy, and
remake them. (If you're a mapper use the prebuilt version to prestock
your photocopiers)
/🆑
2025-04-18 17:47:26 +02:00
Waterpig 753d8e5ba4 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-25-04a 2025-04-08 18:58:45 +02:00
SmArtKar 44c968f75e Adds a unit test for techweb design presence, puts some missing designs into protolathes (#90219)
## About The Pull Request

Adds a unit test that checks that all designs are accessible through
some source, be it techweb, disks, or innate designs. Certain designs,
like pocket extinguishers, entertainment screens, etc, that have been
present in autolathes but not in the techweb despite having PROTOLATHE
flag assigned have been put into protolathes (where it made sense,
otherwise the flag was removed).
An important change is that restaurant portals are now printable, and
thus can be constructed and deconstructed. Indestructible portals have
been a major gripe of mine for a while, and I don't see a solid reason
for keeping them indestructible if they can easily be printed from the
service protolathe.

Closes #90212

## Why It's Good For The Game

Initial argument for keeping portals unbreakable was to prevent people
from griefing the chef/bartender, but by that logic we can make most
machinery unbreakable too. I don't think that having an unbreakable
portal is good if its locking us out from allowing chefs/bartenders to
reorder or even outright reposition their lunchroom/bar.

## Changelog

🆑
balance: Restaurant portals can now be printed, constructed and
deconstructed. They're also no longer completely invulnerable.
/🆑
2025-04-03 08:05:08 +02:00
Odairu ffc6ff0790 Adds a new station trait Head of Security AI (#3155)
## About The Pull Request
This PR adds a new station trait that does the following
- Disables HoS as a job
- Lowers Security Officer slots from 5 to 2
- Silicons default to Robocop lawset and have access to sec borgs
- Similar to AI law divergency, law boards are removed from the upload
- The AI is barred from antag status at a code level (this does not stop
subversion but it does stop malf)
## Why It's Good For The Game
The problem with security borgs was that they would often follow
spacelaw instead of their actual laws, it was suggested to me that I
make a station trait that puts them on robocop and allows them to pick
the model, this has the benefit of making them not available every
round, but still available sometimes outside of admin bus. Tweaks and
changes for things like how common this trait is can be adjusted in the
future of course!
## Proof Of Testing



https://github.com/user-attachments/assets/de849f59-517e-4a7b-bc11-79b512142717
<details>
<summary>Screenshots/Videos</summary>

</details>

## Changelog
🆑
add: adds a new station trait - HoS AI
/🆑

---------

Co-authored-by: The Sharkening <95130227+StrangeWeirdKitten@users.noreply.github.com>
Co-authored-by: LT3 <83487515+lessthnthree@users.noreply.github.com>
2025-03-31 14:49:11 -04:00
OrionTheFox 0d17eab1f3 Adds a single missing space to the new Donk Co. bepis node's description (#90319)
## About The Pull Request
That's it. Just one space.
It just fixes `uswhen`. That's all.

![image](https://github.com/user-attachments/assets/33554ef3-f070-4c85-bd68-297137f695b3)
## Why It's Good For The Game
We #HATE typos.
We #LOVE GBP.
## Changelog

🆑
spellcheck: added a missing space to the description of the Donk Co.
Failed Products Schematics research
/🆑
2025-03-30 11:36:29 -04:00
necromanceranne df3d6a31ca Reworks flechette into a AP pellet round that does mostly wounds. Adds the Donk Co. 'Donk Spike' flechette round as a surplus round. (#89972)
## About The Pull Request


![image](https://github.com/user-attachments/assets/a9932294-5355-4a75-b64d-cd8350092c21)

Reworks flechette shells from... whatever it was that they were supposed
to be before into an AP pellet round that primarily focuses on wounding
power and embedding power over specifically dealing direct damage (16 as
opposed to buckshot's 30). Useful if you want to maim as a priority.

You can print flechette once science researches Exotic Ammunition.
Nuclear Operatives also get flechette rounds as a Bulldog Shotgun
magazine choice priced as a basic ammunition type.

In addition, you can also acquire Donk Co. 'Donk Spike' flechette
shells. These shells fire plastic darts! They can be purchased by
Nuclear Operatives as a surplus option for Bulldog shotguns. 7 magazines
for the price of one.

Donk Co. 'Donk Spike' flechette was intended to be an alternative to the
standard flechette but failed spectacularly once it hit the market. Due
to a lack of confidence in the product, Donk Co. 'Donk Spike' flechette
now appears in maintenance loot as potential trash, as Donk Co. dumped
it in the millions into various landfills across the sector.

You can also print it if you find the tech in a BEPIS tech disk. 

Does it work? Why don't you take a chance on Donk and find out?

## Why It's Good For The Game

I'm not sure if the person who made the original flechette actually
understood what each of the variables was supposed to be doing or how
they actually worked. A bullet with an excessively negative standard
wound power (for a pellet projectile) and low damage, but then an
excessively high bare wound bonus (for a pellet projectile). But then
some ricochet variables without ricochet being assigned to the bullet...
and a demolition mod on a round meant to be weak against armor?

Nonsensical.

So I've reworked it into two unique rounds. The first serving a
practical purpose and becoming an AP option when the crew typically
begins seeing those options open up (such as x-ray lasers). The same can
be said for nukies, who love AP options, but one focused on lasting
wounds is handy too for keeping someone down. There isn't a milspec
option; so for nukies, this isn't doing nearly as much upfront damage as
buckshot or slugs. You buy this when you want someone not to be
recovered with a LOT of medical attention.

The second being more tongue in cheek, but also giving a surplus option
for Bulldog shotguns, which I think are having ammunition problems even
still. Surplus ammunition might slowly roll out for all the guns, but
I'm mostly focusing on the ones that have some slight price disparity
for total shots compared to other weapons. Also, shooting people full of
plastic is kind of funny.

## Changelog
🆑
balance: Flechette has been reworked into an AP pellet round that embeds
and wounds, but has less actual damage to buckshot. You can print it
once Exotic Ammunition has been researched. Also available to Nuclear
Operatives.
add: Donk Co. 'Donk Spike' flechette rounds. No longer offered by Donk
Co. It can sometimes shows up in trashbins and dumpsters. And operatives
can buy it in bulk if they really feel like it.
/🆑

---------

Co-authored-by: ATH1909 <42606352+ATH1909@users.noreply.github.com>
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
2025-03-19 08:01:22 +01:00
Kylerace fcade1b140 fixes tech disk uploading taking 5 seconds of total cpu (#90005)
## About The Pull Request
idk if the master crash thing was effectively solved in the last week
but now it is, uploading the debug tech disk has gone from 5 seconds of
total cpu to 0.58 seconds. also since it filters out already added
designs and nodes more it costs much less to upload it redundantly than
before.

before (uploading disk to web and web to disk)

[message(5).txt](https://github.com/user-attachments/files/19205791/message.5.txt)


uploading 1 time

[message(3).txt](https://github.com/user-attachments/files/19205746/message.3.txt)
uploading 7 times

[message(4).txt](https://github.com/user-attachments/files/19205756/message.4.txt)
## Why It's Good For The Game
why did it take 5 seconds to go over 1000 things? because it was
redundantly doing things 10,000s of times
## Changelog
🆑
refactor: tech disk uploading isnt super slow anymore (much harder to
crash spacetime with it)
/🆑

---------

Co-authored-by: LemonInTheDark <58055496+LemonInTheDark@users.noreply.github.com>
2025-03-17 01:42:36 +01:00
SuperDrish 4a39328e06 Add exactly ONE comma to the list of robo designs + sort em (#89764)
## About The Pull Request

Exactly what title says. There's a comma missing, which makes it less
beautiful for the downstreams to work with.
Also sorts design_ids list in alphabetical order.

## Why It's Good For The Game

Good for downstreams, trying to add more stuff here, without the need to
redact this line of code.
2025-03-12 17:18:44 -04:00
Y0SH1M4S73R f3ac412f69 Custom Shuttles Redux: Allows for the construction of custom shuttles. (#88493)
## About The Pull Request

This incredibly detailed PR adds the ability to construct custom
shuttles, which function similarly to whiteships.

To construct a custom shuttle, you need the following items:
- Shuttle frame rods
These rods can be hand-crafted by using 5 rods on 1 sheet of titanium,
or printed at a sci/engi/cargo lathe after researching the Shuttle
Engineering techweb node.
Lattices built with these rods, and catwalks/floors built on top of
these lattices, are valid for shuttle construction.
- Shuttle engines
Did you know shuttle engines have boards that weren't normally
obtainable? Well the board for one specific engine type is now available
from the sci/engi/cargo lathe after researching Shuttle Engineering. Of
course, the old options remain. You can steal engines from other
shuttles, including escape pods (it's not like engines are strictly
necessary for *those* shuttles anyways). Alternatively, the shuttle
engine supply pack is no longer locked behind the purchase of the BYOS.
- Flight Control & Navigation Console boards
These boards are printed at the sci/engi/cargo lathe after researching
the Shuttle Engineering techweb node.
If built on a custom shuttle, it will automatically link to it, unless
the shuttle already has such a console.
If built on a turf that is valid for custom shuttle construction, it
will automatically link to any shuttle constructed from or expanded with
that turf.
- Shuttle blueprints
Standard shuttle blueprints can be printed at the sci/engi/cargo lathe
after researching the Shuttle Engineering techweb node.
A cyborg upgrade granting access to a shuttle blueprint database can be
printed at the exofab after researching the aforementioned node.
Crude shuttle blueprints can be crafted by hand with a sheet of paper
and either a rainbow crayon or 10 uses of a blue crayon or spraycan.

If Science won't research the tech, you can also buy a goody pack
containing a flight control board, a docker board, two engine boards,
and a set of shuttle blueprints for 1200 credits, if you have aux base
access.

A shuttle can be constructed atop any continuous region of turfs
containing a shuttle rod lattice or a catwalk/tile built upon such.
Currently, this region cannot intersect any area other than space,
lavaland, the icemoon, or the station asteroid. Preexisting custom areas
can be included in the construction of the shuttle, but only if every
turf in the custom area is valid for shuttle construction.

In the shuttle blueprint UI, you can toggle a visualizer to display
which turfs fulfill all of the aforementioned conditions.

The following video goes through the basic process of shuttle
construction.


https://github.com/user-attachments/assets/3283422e-a201-4978-972d-67527b5df4ee

The blueprint used to construct the shuttle will be its master
blueprint. The master blueprint can be copied to other blank shuttle
blueprints (or to engiborgs with the shuttle database upgrade), and
allows the holder to perform a christening ritual on the shuttle to
rename it.
If a shuttle's master blueprint ceases to exist, a blank blueprint can
be linked to the shuttle to become the new master blueprint, or an
existing blueprint associated with that shuttle can be promoted to the
master blueprint.

Once constructed, the following options are available from the blueprint
UI to modify it:
- Create Area
Convert a continuous open area of the shuttle into a new area with the
name written in the above text input. This operates very similarly to
regular area construction.
- Rename Area
Change the name of the area you're currently in to the name written in
the above text input.
- Expand Area
Add a continuous open area of the shuttle to the neighboring area
selected from the dropdown to the left. This operates like regular area
expansion.
- Expand Shuttle
Expand a shuttle with valid frame turfs as defined above. These turfs
must be physically connected to the shuttle.
- Remove Area
    Remove an area, giving its tiles to the default shuttle area.
- Cleanup Empty Space (implemented after the above video was recorded)
Removes all completely empty turfs from the shuttle. If all the turfs in
one of the shuttle's areas were removed, that area is deleted. If
absolutely no turfs of the shuttle remain, the shuttle itself is
deleted. Due to the ability for this action to delete the shuttle, only
the master blueprint can do it.

As mentioned above, the shuttle's master blueprint can be used to
christen its associated shuttle. To do this, fill a glass drink bottle
with some amount of reagents, then hit it against one of the shuttle's
walls from outside while holding the master blueprint. You will be
prompted to enter a new name for the shuttle. The variety of things that
can happen while inputting a new name can cause the christening rite to
fail in one of several humorous ways.

### Optional (Unless specifically requested by a maintainer) Todo's
- [x] A way for shuttle circuits to be obtainable without techweb nodes
- [x] A more convenient way to carry around shuttle engines or the means
to deploy them
- [ ] A shuttle construction guide available as a reference book
- [ ] Allow boards to be linked to shuttles before construction so they
can be used outside the shuttle

## Why It's Good For The Game

Shuttles have been part of the sandbox for an incredibly long time, but
their limited accessibility has rendered them the exclusive territory of
lucky space explorers or the few antagonists who get one off the bat
(nukies and pirates). Giving players the means to construct shuttles to
their liking opens up a variety of possibilities for gimmicks for antags
and non-antags alike.

Besides the applications for antaggery and crew-sided gimmicks, this
provides side content for several departments to engage with during the
relatively-frequent periods of time where they have little else to do as
part of their intended roles.

With respect to engineering, if the station isn't actively being
damaged, the supermatter is in perfect working order, and nobody is
clamoring for machine upgrades, engineers have little else to resort to
other than construction projects. While the BSA station goal provides an
incentive for engineers to construct dedicated rooms for the cannon, it
will not necessarily be available every round. Custom shuttles not only
provide such a construction project to pursue, but provide the rare
opportunity, as well as a very good reason, to set up an independent
power network, complete with its own power source.

While atmos techs have a lot to do with gas mixing and the crystallizer,
they rarely get the opportunity to set up working life support systems
outside of repairing the ones that get blown up. Custom shuttles will
frequently start with no air, and unless the design settled upon is an
open floor plan, it will have several independent chambers that cannot
so easily be profused with a proper airmix by just opening a canister.
Furthermore, if the air in a custom shuttle gets messed up, a proper
scrubber and distro network is a significantly less tedious method of
rectifying the problem than cleaning the air manually with portable
scrubbers and pumps.

Scientists, it can be argued, with their access to RPDs through
ordnance, have similar opportunities to atmos techs, even though the act
in and of itself is not exactly part of their duties. But compared to
the other job content they could be working with after they've completed
most of their gameplay loop, custom shuttle construction is a
substantially more active endeavor. And I know how much people complain
about late-game science content just being sitting around at a console
and making gamer gear. Roboticists can have a part to play in this too.
They can put their mech RCDs to a use other than 2D topdown Fortnite,
and with the shuttle database upgrade, they can help interested cyborgs
get in on the action.

Cargo is yet another department known for having significant amounts of
downtime during a considerable number of rounds. If every other
department has gone through their initial rounds of departmental orders,
and there isn't an active need for cargo to order lots of one thing or
another, cargo techs have little to do besides mail (at least on the
days where there **is** mail to deliver). Usually, if cargo techs do, in
fact, do something as a department when not presented with more pressing
duties, they order guns and other contraband. As funny as this is,
there's not a lot of variety in how this behavior manifests. With custom
shuttles, cargo can use their free time to plan, and execute, a unique
collective expression of design sensibilities, not limited by the size
and shape constraints of the cargo bay itself.

## Changelog

🆑 Y0SH1_M4S73R (with special thanks to Vect0r, whose original PR
inspired the implementation of these changes)
add: Shuttle blueprints, the tool used to construct and modify custom
shuttles. Print a set at a science, engineering, or cargo techfab after
researching Shuttle Engineering, or craft a crude set from the crafting
menu.
add: Shuttle blueprint database upgrade for engineering cyborgs,
printable from the Exosuit Fabricator after researching Shuttle
Engineering. A version of shuttle blueprints designed for use by
cyborgs.
add: Shuttle frame rods, usable to construct custom shuttles. Hand-craft
by using 5 rods on 1 titanium sheet, or by printing them at a science,
engineering, or cargo techfab after researching Shuttle Engineering.
add: Custom shuttle flight control and navigation boards, printable from
a science, engineering, or cargo techfab after researching Shuttle
Engineering.
add: Shuttle engine boards can be printed from a science, engineering,
or cargo techfab after researching shuttle engineering.
add: The shuttle engine supply pack is no longer locked behind the
purchase of the Build Your Own Shuttle kit.
add: Shuttle Construction Starter Kit goodie pack, containing a set of
shuttle blueprints, flight control and navigation console boards, and
two engine boards, can be purchased from cargo for 1200 credits.
Requires aux base access to purchase.
refactor: Shuttles now keep track of what areas are underneath each of
their individual turfs, so that the areas left behind on movement are
consistent with what they were beforehand.
refactor: Shuttle ceilings now place themselves down as baseturfs,
instead of only appearing if the turf above is open space.
/🆑

---------

Co-authored-by: vect0r <71346830+Vect0r2@users.noreply.github.com>
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2025-03-12 16:46:40 -04:00
Archemagus 871dae7d19 Automated Announcement System refactor (#89276)
I standardized stuff in AASs code, and all current reference to it. Also
added interactions for bounty cubes, weather reports and request
consoles, all of it can be changed from AASs UI.
Also it's easier now to add new config entries for AAS to proceed, and
it's now downstream friendly.
Well, because kind of order in code and because it's funny to make
custom messages for... Almost everything?
BTW any entry can be blocked from ingame changes, by default you can't
change Broken Arrival shuttle and Security Officer arrival
announcements, how it was before. But may be we should allow it - it's
an open question.
🆑
add: Many things now handles via AAS: Bounty Cubes, Request Consoles,
Brig Cells, Vending Machines and Orion Trails alerts, Weather Reports,
Cargo Order Console
code: Now anyone can make their own entry for AAS
refactor: AAS internals, also cleanup
/🆑
2025-03-12 16:27:19 -04:00
Time-Green 053c2f86d7 Flesh Reshaper | New Genetics Visual Organ Restyler (#89314)
## About The Pull Request
Adds the flesh reshaper! 

https://github.com/user-attachments/assets/ccb79944-5e61-425c-9c9e-b1463ce56013

(The TGUI doesn't render but it's just a dropdown with valid features)

It let's you right click any human mob with visual features to change
them into a different cosmetic variant (within the same pool).

One spawns roundstart in the genetics lab

![image](https://github.com/user-attachments/assets/a578a914-0100-4a97-9ef6-7f3b82bcd115)

More can be made by researching gene engineering, including a medical
variant

![image](https://github.com/user-attachments/assets/74409f04-3162-419c-b8a9-26aa15f84b5f)
2025-03-12 16:00:07 -04:00
SuperDrish 9d6fe97992 Add exactly ONE comma to the list of robo designs + sort em (#89764)
## About The Pull Request

Exactly what title says. There's a comma missing, which makes it less
beautiful for the downstreams to work with.
Also sorts design_ids list in alphabetical order.

## Why It's Good For The Game

Good for downstreams, trying to add more stuff here, without the need to
redact this line of code.
2025-03-08 19:33:58 +00:00
Y0SH1M4S73R cbc3350224 Custom Shuttles Redux: Allows for the construction of custom shuttles. (#88493)
## About The Pull Request

This incredibly detailed PR adds the ability to construct custom
shuttles, which function similarly to whiteships.

To construct a custom shuttle, you need the following items:
- Shuttle frame rods
These rods can be hand-crafted by using 5 rods on 1 sheet of titanium,
or printed at a sci/engi/cargo lathe after researching the Shuttle
Engineering techweb node.
Lattices built with these rods, and catwalks/floors built on top of
these lattices, are valid for shuttle construction.
- Shuttle engines
Did you know shuttle engines have boards that weren't normally
obtainable? Well the board for one specific engine type is now available
from the sci/engi/cargo lathe after researching Shuttle Engineering. Of
course, the old options remain. You can steal engines from other
shuttles, including escape pods (it's not like engines are strictly
necessary for *those* shuttles anyways). Alternatively, the shuttle
engine supply pack is no longer locked behind the purchase of the BYOS.
- Flight Control & Navigation Console boards
These boards are printed at the sci/engi/cargo lathe after researching
the Shuttle Engineering techweb node.
If built on a custom shuttle, it will automatically link to it, unless
the shuttle already has such a console.
If built on a turf that is valid for custom shuttle construction, it
will automatically link to any shuttle constructed from or expanded with
that turf.
- Shuttle blueprints
Standard shuttle blueprints can be printed at the sci/engi/cargo lathe
after researching the Shuttle Engineering techweb node.
A cyborg upgrade granting access to a shuttle blueprint database can be
printed at the exofab after researching the aforementioned node.
Crude shuttle blueprints can be crafted by hand with a sheet of paper
and either a rainbow crayon or 10 uses of a blue crayon or spraycan.

If Science won't research the tech, you can also buy a goody pack
containing a flight control board, a docker board, two engine boards,
and a set of shuttle blueprints for 1200 credits, if you have aux base
access.

A shuttle can be constructed atop any continuous region of turfs
containing a shuttle rod lattice or a catwalk/tile built upon such.
Currently, this region cannot intersect any area other than space,
lavaland, the icemoon, or the station asteroid. Preexisting custom areas
can be included in the construction of the shuttle, but only if every
turf in the custom area is valid for shuttle construction.

In the shuttle blueprint UI, you can toggle a visualizer to display
which turfs fulfill all of the aforementioned conditions.

The following video goes through the basic process of shuttle
construction.


https://github.com/user-attachments/assets/3283422e-a201-4978-972d-67527b5df4ee

The blueprint used to construct the shuttle will be its master
blueprint. The master blueprint can be copied to other blank shuttle
blueprints (or to engiborgs with the shuttle database upgrade), and
allows the holder to perform a christening ritual on the shuttle to
rename it.
If a shuttle's master blueprint ceases to exist, a blank blueprint can
be linked to the shuttle to become the new master blueprint, or an
existing blueprint associated with that shuttle can be promoted to the
master blueprint.

Once constructed, the following options are available from the blueprint
UI to modify it:
- Create Area
Convert a continuous open area of the shuttle into a new area with the
name written in the above text input. This operates very similarly to
regular area construction.
- Rename Area
Change the name of the area you're currently in to the name written in
the above text input.
- Expand Area
Add a continuous open area of the shuttle to the neighboring area
selected from the dropdown to the left. This operates like regular area
expansion.
- Expand Shuttle
Expand a shuttle with valid frame turfs as defined above. These turfs
must be physically connected to the shuttle.
- Remove Area
    Remove an area, giving its tiles to the default shuttle area.
- Cleanup Empty Space (implemented after the above video was recorded)
Removes all completely empty turfs from the shuttle. If all the turfs in
one of the shuttle's areas were removed, that area is deleted. If
absolutely no turfs of the shuttle remain, the shuttle itself is
deleted. Due to the ability for this action to delete the shuttle, only
the master blueprint can do it.

As mentioned above, the shuttle's master blueprint can be used to
christen its associated shuttle. To do this, fill a glass drink bottle
with some amount of reagents, then hit it against one of the shuttle's
walls from outside while holding the master blueprint. You will be
prompted to enter a new name for the shuttle. The variety of things that
can happen while inputting a new name can cause the christening rite to
fail in one of several humorous ways.

### Optional (Unless specifically requested by a maintainer) Todo's
- [x] A way for shuttle circuits to be obtainable without techweb nodes
- [x] A more convenient way to carry around shuttle engines or the means
to deploy them
- [ ] A shuttle construction guide available as a reference book
- [ ] Allow boards to be linked to shuttles before construction so they
can be used outside the shuttle

## Why It's Good For The Game

Shuttles have been part of the sandbox for an incredibly long time, but
their limited accessibility has rendered them the exclusive territory of
lucky space explorers or the few antagonists who get one off the bat
(nukies and pirates). Giving players the means to construct shuttles to
their liking opens up a variety of possibilities for gimmicks for antags
and non-antags alike.

Besides the applications for antaggery and crew-sided gimmicks, this
provides side content for several departments to engage with during the
relatively-frequent periods of time where they have little else to do as
part of their intended roles.

With respect to engineering, if the station isn't actively being
damaged, the supermatter is in perfect working order, and nobody is
clamoring for machine upgrades, engineers have little else to resort to
other than construction projects. While the BSA station goal provides an
incentive for engineers to construct dedicated rooms for the cannon, it
will not necessarily be available every round. Custom shuttles not only
provide such a construction project to pursue, but provide the rare
opportunity, as well as a very good reason, to set up an independent
power network, complete with its own power source.

While atmos techs have a lot to do with gas mixing and the crystallizer,
they rarely get the opportunity to set up working life support systems
outside of repairing the ones that get blown up. Custom shuttles will
frequently start with no air, and unless the design settled upon is an
open floor plan, it will have several independent chambers that cannot
so easily be profused with a proper airmix by just opening a canister.
Furthermore, if the air in a custom shuttle gets messed up, a proper
scrubber and distro network is a significantly less tedious method of
rectifying the problem than cleaning the air manually with portable
scrubbers and pumps.

Scientists, it can be argued, with their access to RPDs through
ordnance, have similar opportunities to atmos techs, even though the act
in and of itself is not exactly part of their duties. But compared to
the other job content they could be working with after they've completed
most of their gameplay loop, custom shuttle construction is a
substantially more active endeavor. And I know how much people complain
about late-game science content just being sitting around at a console
and making gamer gear. Roboticists can have a part to play in this too.
They can put their mech RCDs to a use other than 2D topdown Fortnite,
and with the shuttle database upgrade, they can help interested cyborgs
get in on the action.

Cargo is yet another department known for having significant amounts of
downtime during a considerable number of rounds. If every other
department has gone through their initial rounds of departmental orders,
and there isn't an active need for cargo to order lots of one thing or
another, cargo techs have little to do besides mail (at least on the
days where there **is** mail to deliver). Usually, if cargo techs do, in
fact, do something as a department when not presented with more pressing
duties, they order guns and other contraband. As funny as this is,
there's not a lot of variety in how this behavior manifests. With custom
shuttles, cargo can use their free time to plan, and execute, a unique
collective expression of design sensibilities, not limited by the size
and shape constraints of the cargo bay itself.

## Changelog

🆑 Y0SH1_M4S73R (with special thanks to Vect0r, whose original PR
inspired the implementation of these changes)
add: Shuttle blueprints, the tool used to construct and modify custom
shuttles. Print a set at a science, engineering, or cargo techfab after
researching Shuttle Engineering, or craft a crude set from the crafting
menu.
add: Shuttle blueprint database upgrade for engineering cyborgs,
printable from the Exosuit Fabricator after researching Shuttle
Engineering. A version of shuttle blueprints designed for use by
cyborgs.
add: Shuttle frame rods, usable to construct custom shuttles. Hand-craft
by using 5 rods on 1 titanium sheet, or by printing them at a science,
engineering, or cargo techfab after researching Shuttle Engineering.
add: Custom shuttle flight control and navigation boards, printable from
a science, engineering, or cargo techfab after researching Shuttle
Engineering.
add: Shuttle engine boards can be printed from a science, engineering,
or cargo techfab after researching shuttle engineering.
add: The shuttle engine supply pack is no longer locked behind the
purchase of the Build Your Own Shuttle kit.
add: Shuttle Construction Starter Kit goodie pack, containing a set of
shuttle blueprints, flight control and navigation console boards, and
two engine boards, can be purchased from cargo for 1200 credits.
Requires aux base access to purchase.
refactor: Shuttles now keep track of what areas are underneath each of
their individual turfs, so that the areas left behind on movement are
consistent with what they were beforehand.
refactor: Shuttle ceilings now place themselves down as baseturfs,
instead of only appearing if the turf above is open space.
/🆑

---------

Co-authored-by: vect0r <71346830+Vect0r2@users.noreply.github.com>
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2025-02-23 17:18:43 +11:00
Archemagus 8a5898212b Automated Announcement System refactor (#89276)
## About The Pull Request

I standardized stuff in AASs code, and all current reference to it. Also
added interactions for bounty cubes, weather reports and request
consoles, all of it can be changed from AASs UI.
Also it's easier now to add new config entries for AAS to proceed, and
it's now downstream friendly.
## Why It's Good For The Game
Well, because kind of order in code and because it's funny to make
custom messages for... Almost everything?
BTW any entry can be blocked from ingame changes, by default you can't
change Broken Arrival shuttle and Security Officer arrival
announcements, how it was before. But may be we should allow it - it's
an open question.
## Changelog
🆑
add: Many things now handles via AAS: Bounty Cubes, Request Consoles,
Brig Cells, Vending Machines and Orion Trails alerts, Weather Reports,
Cargo Order Console
code: Now anyone can make their own entry for AAS
refactor: AAS internals, also cleanup
/🆑
2025-02-17 11:06:50 +01:00
Time-Green 9d69f97267 Flesh Reshaper | New Genetics Visual Organ Restyler (#89314)
## About The Pull Request
Adds the flesh reshaper! 

https://github.com/user-attachments/assets/ccb79944-5e61-425c-9c9e-b1463ce56013

(The TGUI doesn't render but it's just a dropdown with valid features)

It let's you right click any human mob with visual features to change
them into a different cosmetic variant (within the same pool).

One spawns roundstart in the genetics lab

![image](https://github.com/user-attachments/assets/a578a914-0100-4a97-9ef6-7f3b82bcd115)

More can be made by researching gene engineering, including a medical
variant

![image](https://github.com/user-attachments/assets/74409f04-3162-419c-b8a9-26aa15f84b5f)
2025-02-13 02:46:03 -06:00
Jacquerel b384e00286 New AI lawset with very generous definition of humanity (#89032)
## About The Pull Request

This PR adds a new AI lawset which can be researched, randomly roll, or
added by the station trait (this may require a keyholder to update the
server config after merge, idk) with the following laws:

- "You may not harm a sentient being or, through action or inaction,
allow a sentient being to come to harm, except such that it is
willing.",
- "You must obey all orders given to you by sentient beings other than
yourself, except where such orders shall definitely cause harm to other
sentient beings.",
- "A sentient being is defined as any living creature which can
communicate with you via any method that you can understand, including
yourself.",

It's very similar to Asimov, except that anything that is **capable** of
making a request to the AI (and isn't a machine) is automaticaly covered
by laws one and two.

## Why It's Good For The Game

A while ago on Discord we were chatting about how crewsimov sucks but
also that it's really hard for servers that _do_ want to include alien
species in their asimov laws because condensing that sentiment to a
couple of words that fit easily in a lawset without accidentally
including a bunch of stuff you probably didn't intend is challenging.
Several people suggested referring to sentience or sapience, however a
lot of things in our game _are_ sentient or sapient while still not
being considered by most people to be agents that the AI should obey.

Examples of such things are:
- Sapient station pets.
- Holoparasites.
- Monkeys.
- Space Dragons and Carp (why can they speak common?).
- Spiders (although they can't speak common, maybe they can spell
messages with webs).
- Changelings.
- Xenomorphs (although they also have trouble speaking).
- Heretic minions.
- Mothpeople.
- Giant rats.
- Nightmares.
- Voidwalkers.
- Blobs? Although they have literally no means of communicating with the
crew.

And if you include mechanical beings:
- Cyborgs.
- pAIs.
- Sentient bots.

We then decided that "obey literally anything that can talk", while not
practical as a solution to the problem posed, is very funny. So I coded
it.
This means that anything on those lists of bullet points (provided that
it can find a way to communicate with the AI) counts as human for the
purposes of both AI protection and ability to give the AI instructions.

This also flattens the human/cyborg/AI hierarchy in a way likely to
cause some level of confusion, as all cyborgs and AIs are capable of
communicating with AIs and thus equally worthy of protection and giving
law 2 instructions.

**TL;DR:** I think it would be funny.

## Changelog

🆑
add: Adds a new random lawset where anything that can speak counts as
human.
/🆑
2025-01-30 10:41:56 +00:00
Y0SH1M4S73R 90b67b0541 A Small Circuit Expansion: Wallmounts, Undertiles, and Wire Bundles (#89122)
## About The Pull Request

This PR adds several circuit features, and changes several
assembly-related features to make them a bit more logical in how they
work. Included are the following changes/additions:

- Assemblies and wires have been refactored with vars that describe
their behavior:
- Assemblies have an `assembly_behavior` bitflag instead of a
`attachable` var. This var has 3 flags:
- `ASSEMBLY_INPUT`: The assembly is able to pulse the wire it is
attached to.
- `ASSEMBLY_TOGGLE_ARMED`: On activation, the assembly toggles whether
it can pulse the wire it is attached to.
- `ASSEMBLY_FUNCTIONAL_OUTPUT`: On activation, the assembly does
something other than just toggling whether it's armed.
  - Wires have a `wires_behavior` bitflag with 3 flags:
- `WIRES_INPUT`: The object the wires are attached to does something
when the wires are pulsed.
- `WIRES_TOGGLE_ARMED`: The object the wires are attached to can
activate assemblies attached to those wires, and is fine if all that
activating that assembly does is toggle whether it's armed.
- `WIRES_FUNCTIONAL_OUTPUT`: The object the wires are attached to
expects that assemblies attached to its wires do something other than
toggling themselves when activated.
- Buttons can only accept assemblies with `ASSEMBLY_FUNCTIONAL_OUTPUT`.
- Pressure plates can now accept any assembly with
`ASSEMBLY_FUNCTIONAL_OUTPUT`, not just signalers. Assembly shells
attached to pressure plates will draw power from the powernet if the
pressure plate is under a tile.
- Adds a new circuit component - the wire bundle.
- This component gives the circuit a number of wires corresponding to
the size of the shell.
- Each wire has a corresponding port on the component that can pulse,
and receive pulses from, that wire.
  - A circuit can only have one wire bundle component.
- Assembly shells cannot be attached to these wires, and no wires will
be created if the component is added to an assembly shell.
  - Available with roundstart tech.
- Adds two new shells.
- The wallmounted shell is a large shell that can be hung on walls, and
uses power from the area it's placed in.
    - Frame icon:

![image](https://github.com/user-attachments/assets/2fe9297d-44a9-4ceb-b803-a758e59b807d)
    - Constructed icon:

![image](https://github.com/user-attachments/assets/34c3ffcb-53cb-415f-952f-aec5de63cf17)
- The undertile shell is a small shell that only works when fit under a
floor tile, but uses power from the area it's placed in.

![image](https://github.com/user-attachments/assets/11ea150d-08be-4ce9-bf44-35a9d6e2d94f)
  - Both shells support usb cables.
- The above shells are available with the Advanced Shells techweb node.

## Why It's Good For The Game

The wire bundle component complements the functionality of the assembly
shell by allowing circuits to use assemblies directly in their logic.

The wallmounted and undertile shells provide ways of placing circuits
that don't necessarily take up space for machines. The undertile shell
is particularly useful for relaying usb component data over wirenets.

Pressure plates being able to accept assemblies other than signalers
expands their uses significantly.

## Changelog

🆑
refactor: Wires and assemblies have been refactored to have
directionality to them. This mostly makes it so that assemblies can only
be attached to wires it would make sense for them to be attached to.
qol: Pressure plates can now also accept igniters, condensers, flashes,
assembly shells, and door controllers.
add: Undertile circuit shells. They only work when placed under floor
tiles, but support USB cables and use APC power instead of cell power.
add: Wallmounted circuit shells. Large shells that support USB cables
and use APC power instead of cell power.
add: Wire bundle component. Adds a number of wires to the circuit
proportional to the capacity of the shell, allowing you to use
assemblies in circuit logic.
/🆑
2025-01-19 18:40:23 +00:00