Commit Graph

6322 Commits

Author SHA1 Message Date
YesterdaysPromise
97ec5ed1a0 Adds Interdyne Modsuits (#76236)
## About The Pull Request
Adds separate, Interdyne-brand Modsuits for Intrudyne pirates.
Incredibly fast and more techy, including among other things an organ
thrower module (which is, based on flavour text, Interdyne tech). To
balance this, they discharge dramatically fast, encouraging fast get-in
get-out approach.

Sprite itself is mostly a combination of medical and syndicate suits,
with labcoat bits for extra stylishness and evil feel. The colour
pallete was enterily borrowed from Interdyne Pharmaceutics container
sprite and Interdyne-produced E-surgery tools.

![flayed](https://github.com/tgstation/tgstation/assets/122572637/8a09a138-b57b-4c51-9e78-2264ee895977)

![image](https://github.com/tgstation/tgstation/assets/122572637/fcc4dc4f-cc92-4643-b7dd-40856d9f9604)

![image](https://github.com/tgstation/tgstation/assets/122572637/f5282cb8-199f-4835-b852-8507bf9f189d)

Lorewise, I borrowed a random idea from cyberpunk lore video I once
watched and is now blurred for me now, upon seeing retrieval suits.
Originally made by conjuction of Cybersun and Intrudyne, combining
mechanics with supersoldier treatment for speed, allegadely for rapid
response and retrieval off corpses. [By the way, it would be funny if
someone coded an event where after cap's death on Revs or Cult, a bunch
of guys in these suits would show up with sole goal of recovering the
body and escaping with it (plus maybe some side syndicate objective)]
Aaanyway, obviously, the rapid speed plays into a lot of
Intrudyne-related tactics for the shady side of things as well. Much
like a scalpel, their attacks are supposed to be fast, clean and
precise.

## Why It's Good For The Game

Consistency thing, mostly. It doesn't make much sense that a medical
corp would use their competitors tools when they could develop a
counter. Also ties with organ thrower module, why would they have made
it, if they didn't have modsuits for it?

## Changelog

🆑
add: Added Interdyne ModSuits for Interdyne pirates.
/🆑

---------

Co-authored-by: Fikou <23585223+Fikou@users.noreply.github.com>
2023-07-08 10:26:10 -07:00
DATAxPUNGED
3cbbefa742 Mini Fridges now have a grimy subtype, can go over tables, and start off anchored. (#76517)
## About The Pull Request

/obj/structure/closet/mini_fridge is now a clean nice one, which only
spawns beverages and does not have that cockroach reference in the
description, and starts off anchored. now
/obj/structure/closet/mini_fridge/grimy works like the old mini-fridge,
with syndicake, moldy bread, and now the chance of an ACTUAL cockroach.
I've replaced them on maps according to each one's needs, So, as an
example, Northstar gets a regular one (it var edited it before) while
tram maints get the grimy subtype.
mini-fridges now can properly go over tables, so you don't have to
deconstruct said table to put it on top again.
## Why It's Good For The Game

I've found the need for a nice subtype while doing a ruin, and so has a
few other mappers apparently, as northstar had a var edited variant. The
fact that it couldn't go over tables and started off unanchored was
annoying on tram and icebox, where it is present on the kitchen and you
could easily push it to the ground and suffer.
## Changelog
🆑
qol: It has been issued brand new mini-fridges for our active stations,
Featuring more booze and less moldy pizza!
/🆑
2023-07-08 09:49:44 -07:00
DATAxPUNGED
8f4e4d1702 Removes excess ID boxes from the HoP's office and adds silver IDs to their locker. (#76448)
## About The Pull Request

Every ID, silver ID, and PDA box has been removed from the maps. You can
now only find ID boxes on the HoP's locker and PDAs must be bought from
the tech vendor. Said locker also had two instances of ID boxes, so i've
swapped one of them for the silver ID box
## Why It's Good For The Game

tram had, in total, 5 ID boxes. That's *35 IDs in total.* No one is ever
gonna lose that much, and having 7 is more than enough. If a situation
happens where you somehow need more, you can still buy it on the tech
vendor AND on cargo. I realized how many boxes the HoP had on the other
PR
## Changelog
🆑
del: Removed excess ID boxes on HoP's office
/🆑
2023-07-08 09:36:16 -07:00
YehnBeep
e2b9e3d221 Adds tables near produce consoles (#76480)
## About The Pull Request

Adds tables near produce consoles

## Why It's Good For The Game

This is for mitigating the contamination mechanic introduced in
https://github.com/tgstation/tgstation/pull/76018 . Ideally the consoles
would auto target the table too but... one bridge at a time.

## Changelog

🆑
qol: Produce consoles now have tables near them.
/🆑
2023-07-08 09:00:06 -07:00
Toastgoats
5ed6407462 Ethereal Pirates (Re-pr) (#76554)
Other pr had some weird check failure, making a new pr to see if it
fixes it.

## About The Pull Request
After he ended up finishing his pirate pr before I could, SethLafuente
graciously offered to let me roll my in-progress pirate pr into his
overall pirate expansion project.

This pr essentially adds a new faction of pirates, along with a new
subspecies of Ethereals a-la silverscales.

- The Lustrous:

A unique subspecies of Ethereal, with years of exposure to bluespace
dust mutating them into crystalline abominations sporting a new pointy
head, pressure resistance, and a permanent bluespace prophet brain
trauma. They're still as fragile as ever, but far more capable of
getting in and out of sticky situations.

- Geode Pirates:

A hollowed out asteroid manned by three Lustrous, equipped with
switchblades, traitor PKAs, jump boots, two teleporting turrets, and an
upgradable bluespace launchpad.

However, they lack proper armor and ship defenses, forcing them to adopt
a coordinated hit-and-run playstyle.


![asteroid](https://github.com/tgstation/tgstation/assets/63932673/1ab420fd-4bf3-4a54-94be-fde73cf66edf)

![shuttle](https://github.com/tgstation/tgstation/assets/63932673/00574b29-54be-4efb-b6d6-0085c3bc5cfb)

![piratas](https://github.com/tgstation/tgstation/assets/63932673/d1586a30-a1e5-42e0-b16b-9793db1340ad)
## Why It's Good For The Game

When I started working on this project, I wanted to implement this
faction to cover for the loss of psykers and as a means of creating a
"rock-paper-scissors" system to how standard pirate playstyles would
work; with default pirates being offensive, Silverscales defensive, and
Lustrous mobile.

With Seth's pr, things are a little different now, but I still believe a
glass cannon mobility-focused pirate faction would be a welcome addition
to the pirate roster.
## Changelog
🆑
add: Adds the Lustrous, ethereal pirates in a big bluespace geode!
sound: Unique scream sound for the Lustrous species.
image: Unique head icon for the Lustrous species.
/🆑

---------

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
Co-authored-by: Jacquerel <hnevard@gmail.com>
2023-07-07 23:48:47 +00:00
LemonInTheDark
cfc4e960bc Properly unreg's turf changed when space openspace is deleted (#76501)
## About The Pull Request

Openspace tracks the turf below for starlight purposes The trouble is if
a turf is replaced by another, all its signal registers still persist

I forgot about this, so we'd get runtimes when a
/turf/open/space/openspace was replaced, and the turf below it changed

## Why It's Good For The Game

Less random runtimes
2023-07-08 00:02:18 +01:00
Jolly
6513326ca8 [TramStation] Fixes Barber shop doors having the commissarydoor ID tag (#76542)
## About The Pull Request
Title.

## Why It's Good For The Game
Door var which is primarily used in the.. commissary.
Now the doors won't be locked and fucked up if someone decides to close
the commissary.
~~Actually tram doesn't use this var, I think, but my point still
stands.~~

## Changelog

🆑 Jolly
fix: [TramStation] - Removed a (possibly) unused var on the barber shop
doors. Hopefully those taking refuge in the commissary wasn't causing
too many issues.
/🆑
2023-07-06 19:29:34 -07:00
Jolly
b6d48e12d7 Converts sec armories to using the (not) random mapping spawners (#76392)
## About The Pull Request
Title.

## Why It's Good For The Game
Armories aren't really a dense area mapping wise, just a few guns there,
armor there, and some fluff security stuff (like HUDs or whatever).

This PR just converts most of the heavy stuff (armor, helmets, guns)
into spawning helpers with the aim to make mapping armories just a tad
bit quicker and easier.

The only thing this does kinda nuke is the neatly stacked stuff, which
the mapping helpers kinda suck at doing, but its not totally woeful.

## Changelog

🆑 Jolly, timothymtorres
code: Jolly: Armories across all maps have been tweaked slightly. Report
to a Nanotrasen security advisor for any missing guns, armor, helmets or
anything else that was there previously (that means, post an issue on
Github if theres an issue!!)
code: timothymtorres: Random item spawners now support better control of
their X/Y pixel offset.
/🆑

---------

Co-authored-by: Tim <timothymtorres@gmail.com>
2023-07-06 19:11:01 -07:00
san7890
755fa4db6d Loads Away Missions for Unit Testing (#76245)
## About The Pull Request

Hey there,

A pretty bad bug (#76226) got through, but it was fixed pretty quickly
in #76241 (cf92862daf). I realized that if
we were testing all the away missions, that this could theoretically get
caught and not happen again. Regardless, unit testing gateway missions
has been on my to-do list for a while now, and I finally got it nailed
down.

Basically, we just have a really small "station" map with the bare bones
(_teeny_ bit of fluff, maploading is going to take 30 seconds tops
anyways let me have my kicks) with a JSON map datum flag that causes it
to load all away missions in the codebase (which are all in one folder).
Just in case some admins were planning on invoking the proc on
`SSmapping`, I also decided to gate a `tgui_alert()` behind it because
you never can be too sure of what people think is funny these days (it
really does lock up your game for a second or so at a time).

I also alphabetized the maps.txt config because that was annoying me.
## Why It's Good For The Game

Things that break on production could(?) be caught in unit testing? I
don't know if the linked issue I mentioned above would have been caught
in retrospect, but it's likely to catch more than a few upcoming bugs
(like the UO45 atmospherics thing at the very top) and ensure that these
gateway missions, which tend to be the most neglected part of mapping,
stay bug-free.

This is also helpful in case someone makes a new away mission and wants
to see if stuff's broken. Helps out maptainers a bit because very, very
technically broken mapping will throw up runtimes. Neato.
## Changelog
Nothing that players should be concerned about.

Let me know if there's a better way to approach this, but I really think
that having a super-duper light map with the bare basics to load up
gateway missions and then all nine-ish gateway missions can sequentially
load during init. I can't think of a better way to do it aside from some
really ugly `#ifdef` shit. Also also, it has the added benefit of being
a map that will always load your away mission without touching a single
shred of config (and it's not likely to break if you follow sane
practices such as making your own areas)
2023-07-05 19:40:24 -07:00
LemonInTheDark
4d1e34322f Macros multi-z code, removes the false premise of manual offsets (#76248)
## About The Pull Request

[Removes the pretense of relative multiz
levels](0293fdc2bd)

Our multiz system does not support having a z level that is only
connected one way, or which goes down backwards or anything like that.

That's a fiction of the trait system, the actual backend has never
really supported this.

This pr removes the assumptions we were making backend around this, and
uses that to save cpu time.

I am also converting multiz_levels from an assoc list to a pure one,
which saves significantly on access times and cleans up the code
somewhat.

Also I'm making the get_below/get_above procs into macros, for the sake
of cpu time.

[Converts the starlight disease to use BYOND's directional defines
instead of our
own](7d698f02d9)

To some extent spurred on by
https://github.com/DaedalusDock/daedalusdock/pull/298, tho it was known
before

## Why It's Good For The Game

Faster multiz code, faster init, etc etc etc
2023-07-05 18:31:27 -06:00
DATAxPUNGED
92e1180554 Adds leather satchels and wallets to the HoP office all across the maps. (#76444)
## About The Pull Request

This adds either a leather satchel (when there is space for it) or a
simple wallet to every HoP's office.
## Why It's Good For The Game

HoP is the bureaucracy role that carries a bunch of tiny things. It
should be helpful to have a wallet easily available
As for the leather satchel, HoP (and most of service, if i'm honest)
Does not have a special departmental satchel/backpack, so they spawn in
with a boring gray one. Having the option to quickly switch to a more
stylish version is nice, instead of going to dorms to steal one from
there. Note that the leather satchel is not on all maps, as some have an
office too small to fit one, but i think small map variety like this is
fine.
## Changelog
🆑
qol: Leather satchels and wallets have been issued to the offices of
Head of Personnel all across the sector. Studies suggest a fashion
increase of 34%
/🆑
2023-07-05 17:10:16 -07:00
NotDhu
804f16d068 Birdshot CMO PDA/ID painter fix (#76545)
The CMO office on birdshot houses a security ID/PDA painter for some
reason. This PR replaces it with a medical ID/PDA painter.
2023-07-05 13:32:26 -05:00
Jolly
9d3a5c093c Removes a random nondescript item from near Meta Xenobiology (#76485)
## About The Pull Request
Title.

## Why It's Good For The Game
Random ass /obj/item floating in space. Don't know how it got there,
don't know when.

## Changelog

🆑 Jolly
fix: [MetaStation] There is no longer a random nondescript "item"
outside Xenobiology. No, it was NOT a Xenomorph.
/🆑
2023-07-04 17:10:28 +01:00
MrMelbert
393626959c Deltastation Morgue Prettiness Passover (#76432)
## About The Pull Request

I noticed the morgue of Delta was very not pretty from the coroner
reworking so I just came through and prettied it up.

Did the same to brigsec. 

If this falls under the freeze let me know and I'll re-open it later
maptainers.

## Why It's Good For The Game

Pretty morgues. 

## Changelog

🆑 Melbert
qol: Prettied up the morgue of Deltastation
/🆑
2023-07-03 18:37:11 -07:00
MMMiracles
ee6a3a0c25 Tramstation: Removes module attachment that'd occasionally cause a science cave-in on lower floor (#76424)
## About The Pull Request

Removes the attachment module for 'atmoscilower_2' and replaces it with
a static dug-out room.

## Why It's Good For The Game

I didn't properly space out the current modules for how much closer the
module spawns on this variant and it'd clip into Science pretty badly.
nobody made an issue report on this afaik and it hurts my soul
2023-07-03 18:52:27 -05:00
Vekter
8da0c4ab83 Fixes a typo on the Interdyne shuttle (#76472)
## About The Pull Request
Fixes #76463

## Why It's Good For The Game
Critical that everything is spelled correctly or I might pop a blood
vessel

## Changelog
🆑 Vekter
spellcheck: Fixed a typo on the Interdyne shuttle.
/🆑
2023-07-02 13:29:56 -07:00
Jacquerel
eac3c9d91c Emergency Relief Capsule (#76457)
## About The Pull Request

Getting back into coding by making some soul PRs.
Adds a new kind of bluespace capsule which replaces the default one when
the "budget pods" station trait runs, and is available from the vendor
for a (marginal) discount.


![image](https://github.com/tgstation/tgstation/assets/7483112/3fdf30e4-56c3-4181-9f8f-d11b6ec7a5e5)

![image](https://github.com/tgstation/tgstation/assets/7483112/a47581aa-ee2b-47c4-bd91-5a71391c2dd9)

The Nanotrasen Emergency Relief Capsule provides a port in the storm for
people with an urgent need, and very little else.

## Why It's Good For The Game

This one is mostly just kind of funny I'll be honest.
I guess it uuuuuuuh provides a kind of pod with no GPS signal if you
really want to go off the grid? But anything I write here is secondary
to the point of "someone suggested it on the forums and I liked it".

## Changelog

🆑
add: Budget cuts can sometimes effect the station's supply of Emergency
Bluespace Shelters.
/🆑
2023-07-02 20:25:48 +02:00
san7890
f5a5e6ecd7 Completely Redoes Underground Outpost 45 Atmospherics (#76244)
Merging this is required for #76245

## About The Pull Request

Hey there,

Every time this away mission got loaded, we got some really wacky
runtimes like the following:

```txt
[2023-06-22 04:38:37.613] RUNTIME: runtime error: list index out of bounds
 - proc name: set pipenet (/obj/machinery/atmospherics/components/set_pipenet)
 -   source file: components_base.dm,167
 -   usr: null
 -   src: UO45 Mining omni air scrubber ... (/obj/machinery/atmospherics/components/unary/vent_scrubber/on)
 -   src.loc: the floor (136,101,12) (/turf/open/floor/iron)
 -   call stack:
 - UO45 Mining omni air scrubber ... (/obj/machinery/atmospherics/components/unary/vent_scrubber/on): set pipenet(/datum/pipeline (/datum/pipeline), the red scrubbers pipe (/obj/machinery/atmospherics/pipe/smart/manifold4w/scrubbers/hidden))
 - /datum/pipeline (/datum/pipeline): build pipeline blocking(UO45 Gateway omni air scrubber... (/obj/machinery/atmospherics/components/unary/vent_scrubber/on))
 - Atmospherics (/datum/controller/subsystem/air): setup pipenets()
 - Atmospherics (/datum/controller/subsystem/air): Initialize()
 - Master (/datum/controller/master): init subsystem(Atmospherics (/datum/controller/subsystem/air))
 - Master (/datum/controller/master): Initialize(10, 0, 1)
 - 
[2023-06-22 04:38:37.637] RUNTIME: runtime error: addMachineryMember: Nonexistent (empty list) or null machinery gasmix added to pipeline datum from �UO45 Mining omni air scrubber T2AiT which is of type /obj/machinery/atmospherics/components/unary/vent_scrubber/on. Nearby: (136, 101, 12) (code/modules/atmospherics/machinery/datum_pipeline.dm:134)
 - proc name:  stack trace (/proc/_stack_trace)
 -   source file: stack_trace.dm,4
 -   usr: (src)
 -   src: null
 -   call stack:
 -  stack trace("addMachineryMember: Nonexisten...", "code/modules/atmospherics/mach...", 134)
 - /datum/pipeline (/datum/pipeline): add machinery member(UO45 Mining omni air scrubber ... (/obj/machinery/atmospherics/components/unary/vent_scrubber/on))
 - /datum/pipeline (/datum/pipeline): build pipeline blocking(UO45 Gateway omni air scrubber... (/obj/machinery/atmospherics/components/unary/vent_scrubber/on))
 - Atmospherics (/datum/controller/subsystem/air): setup pipenets()
 - Atmospherics (/datum/controller/subsystem/air): Initialize()
 - Master (/datum/controller/master): init subsystem(Atmospherics (/datum/controller/subsystem/air))
 - Master (/datum/controller/master): Initialize(10, 0, 1)
```

I'm going to chalk it up to how absolutely goreifying the old UO45
atmospherics was, so I just redid it to modern standards. Should be a
lot cleaner now, may have missed a few things so let me know.
## Why It's Good For The Game

Looks way cleaner, actual modern mapping standards for a map that hasn't
been touched in a _long_ while, less runtimes!!!
## Changelog
man does anyone even like this away mission? it's not player changing
enough i fear

lmk if i missed something, but it stopped generating runtimes so i'm
calling it epic swag
2023-07-02 09:09:27 -07:00
LemonInTheDark
63c365909e Removes per z level station relays, allows tcomms to reach across interconnected zs (#76360)
## About The Pull Request

The second layer of tram does not need its own relay, it is like 10 feet
max above the first.
Feels wrong in game, mappers tend to just sneak these off in corners, it
sucks.
Shouldn't need to do it.

Instead, tcomms z levels will be filled based off the z stack, rather
then just the layer itself.

Adds a list/helper to make this more efficient/more easily duplicable

## Why It's Good For The Game

Matches what people expect better, removes redundant map bits, better
vibes.

## Changelog
🆑
balance: Tcomms now works across connected (vertically) zlevels. No more
hunting in maint for the relay.
/🆑
2023-06-27 22:14:32 -06:00
ChungusGamer666
9940fb62e6 Destroys /obj/vehicle/sealed/mecha/working with a W80 nuclear warhead (#76296)
## About The Pull Request

Title.

Also, fixes https://github.com/tgstation/tgstation/issues/75568 at the
request of @TheVekter

## Why It's Good For The Game

This subtype only exists to append ore box behavior and is clearly a
relic of pre-2020 mechcode.
Keeping it around will only make it harder in the future to add new
mechs with ore box support.

## Changelog

🆑
fix: Clarke ore box now has a less confusing dump contents button.
/🆑

---------

Co-authored-by: san7890 <the@san7890.com>
2023-06-27 21:10:23 -06:00
Ghom
6b007f758b Replaces ammo_casing/caseless and bullet/reusable with elements. (#76335)
The reusable and caseless types only purposes are the behaviors of
deleting the casing when fired and spawning a new object when the
projectile ultimately reaches its maximum range or hits a target, both
of which are easily "elementizable". Also, I don't like those barely
filled sub-folders in the projectile module, and the fact we've
divergent reusable and single use arrow types.
2023-06-28 01:14:59 +00:00
lessthanthree
71011f1917 Incident counter and digital clock placement [NO GBP] (#76289)
## About The Pull Request

The incident counters and digital clocks merged at roughly the same
time, causing some overlap. Moves a few around and adds where missing.

## Changelog

🆑 LT3
fix: MetaStation's bridge incident counter and clock no longer overlap
fix: Deltastation's missing incident counter has been found. Does that
count as an incident?
qol: Tramstation bridge and medbay now have a clock where the tram hit
counter used to be
/🆑
2023-06-26 22:19:55 -06:00
LovliestPlant
985674d26f Birdshot Fixes and QoL (#75997)
## About The Pull Request
This PR features a fixes and quality of life improvements for Birdshot,
two of which are mentioned in #75590
Changes are summarized below:
- Replaces medical guard locker in perma with normal sec locker

- Fixes entrances to some departments from maints not requiring
department access
  - Paired doors in Bridge Maints
  - Brig breakroom
  - Paired doors leading into Engine Room
  - Lower sci above circuit lab
  - Paired doors thru AI sat

- Fixes Turbine scubber not having an outlet

- Adds layer adapters to Atmos tank output lines

- adds navigation landmarks throughout the station
- moves a few landmarks into the hallway to ease up on "no access"
errors
- replaces a few auto-named landmarks with named equivalents for ease of
use

## Why It's Good For The Game
- Correcting access oversights ensures consistency across the map, and
tamps down on random assistants wandering into places they shouldn't be.
- Atmos tweaks ensure basic roundstart functionality of the incinerator,
and provide some QoL for atmos techs trying to run lines from gas tanks
- Comprehensive navigation landmarks are an important accessibility
feature for players new to, or unfamiliar with, certain areas of the
station

## Proof of Testing
<details>
<summary>Screenshots/Videos</summary>

Brig Breakroom

![bsf2](https://github.com/tgstation/tgstation/assets/107971606/f624b887-e4e0-4441-ac0c-207d7e66eb3e)

Command Storage Hallway

![bsf3](https://github.com/tgstation/tgstation/assets/107971606/7b5a8d4b-b509-438a-968a-8a35d2e41277)

Engine Room Access

![bsf4](https://github.com/tgstation/tgstation/assets/107971606/57eea6a7-d1f5-4003-a777-4351da5363f4)

AI Sat Foyer

![bsf5](https://github.com/tgstation/tgstation/assets/107971606/aa504acd-ef43-4bcb-9d31-e42546d1617b)

Sci Access

![bsf6](https://github.com/tgstation/tgstation/assets/107971606/a6e6a8b3-9156-4bdc-9eb5-6770564e1356)

Perma Guard Locker

![bsf7](https://github.com/tgstation/tgstation/assets/107971606/2ad622a3-b048-4f54-9c60-81ee4d1c7f2c)

Incinerator Waste Outlet

![bsf8](https://github.com/tgstation/tgstation/assets/107971606/0dd62dcf-ecb8-48ff-b9d7-ea27977b76cf)

Atmos Layer Manifolds (Grilles deleted in-game for viewing)

![bsf13](https://github.com/tgstation/tgstation/assets/107971606/41625bb7-9745-43f4-a8cc-e6ae2006abf1)

Navigation Landmarks

![bsf9](https://github.com/tgstation/tgstation/assets/107971606/6488f99d-7be6-4569-ad98-81a7a2f41ce4)

![bsf10](https://github.com/tgstation/tgstation/assets/107971606/d690dd62-17ff-47e6-9f34-05bb03a41195)

![bsf11](https://github.com/tgstation/tgstation/assets/107971606/d2080248-6201-476f-9a3f-8126cdd64a14)

![bsf12](https://github.com/tgstation/tgstation/assets/107971606/ca516170-38a6-42c8-b7bb-b2c9aa09297e)

![bsf14](https://github.com/tgstation/tgstation/assets/107971606/4c56f6d5-767a-4b62-99d5-fd5bcad6f23b)



</details>

## Changelog
🆑
qol: [Birdshot] Adds layer adapters to gas tank output hookups in
atmospherics
qol: [Birdshot] Adds additional navigation verb landmarks
fix: [Birdshot] Fixes entrances to some departments from maints not
requiring department access
fix: [Birdshot] Converts the guard locker in perma to a normal security
officer's locker
fix: [Birdshot] Adds an exterior outlet vent for the incinerator
/🆑
2023-06-26 16:26:32 -07:00
TheVekter
b59d3a5867 Adds missing medical laptop to morgue on Northstar (#76315) 2023-06-26 03:24:00 -05:00
John Willard
5c0c095079 Makes decals only caught on mapload & removes turf_loc_check (#76130)
Theres one player-facing change in this PR and it's that I removed human
gibs from being valid in space turfs, making it more consistent with the
other gib decals.

I've cleaned up many instances of decals spawning in bad turfs on
mapload in https://github.com/tgstation/tgstation/pull/75189, but making
it error anytime in-game a decal is put over an invalid turf is bad as
it punishes contributors for not optimizing their decals properly.
This changes it so it only errors if it's on mapload, unit testing or
not.

I've also removed ``turf_loc_check`` and replaced instances of it with
overwriting ``NeverShouldHaveComeHere``, which gives us greater control
of where decals can be placed.
This let me remove 2 subtypes that were made to have decals in specific
places (which then got placed elsewhere, ruining it all).

Mappers are still able to set decals to be placed anywhere, they just
need to add it as a valid turf for that decal.
2023-06-24 20:16:38 +00:00
carlarctg
98837dcd0a Adds digital clocks (#75751) 2023-06-23 19:30:21 -07:00
lessthanthree
b3d040fb2f Enhanced delam/tram counter (#75699)
## About The Pull Request

Gives a makeover to the delam and tram hit counters and adds some new
functionality.


![image](https://github.com/tgstation/tgstation/assets/83487515/cbbeb0df-d205-47ed-be6e-e49cea8c4f12)


![image](https://github.com/tgstation/tgstation/assets/83487515/e042d5e8-cb8b-4feb-b3f0-02365cd8fdbf)


![image](https://github.com/tgstation/tgstation/assets/83487515/c2831f7f-639d-40a8-a74f-d4894a4f67c6)


https://github.com/tgstation/tgstation/assets/83487515/871fb0fd-8b92-45c5-877b-c122a034608c

- The signs now remember your last 'best' score and show the crew if
they're trending in the right or wrong direction since the last
incident.
- Safety Moth PSA panel. In the future this will dynamically change
based on the current events, or function as a status display.
- Tram hit counters no longer waste processing every tram hit.
Previously each sign independently managed tracking, which meant that
deconstructing or constructing a sign would reset it to 0 and it would
become out of sync with the other signs.
- Can be repaired, EMP'd

## Why It's Good For The Game

Provide a little motivation to reach for that high score. The PSA
changing to for example, find a locker during a delam event.

## Changelog

🆑 LT3
image: Delam and tram flipsigns have been replaced with information
displays
fix: Tram hit count is centrally managed instead of independently on
each sign, so they won't get out of sync
/🆑
2023-06-23 19:29:34 +01:00
YehnBeep
7d8af79027 Consistency fixes for one way exits on doors (#76175)
## About The Pull Request

Adds one way accesses on science hallway doors on Delta, Icebox, and
Birdshot to make them consistent with other maps.

Also fixed a science maintenance that was set to service maintenance,
which didn't make any difference in testing but it kind of bugged me
seeing it in the mapper.

## Why It's Good For The Game

Avoids people getting trapped in science hallways, and I think
consistency in behavior across all maps for something like this is a
good thing.

## Changelog

🆑
fix: Science department hallways now have unrestricted one-way exits on
Delta, Birdshot, and Icebox, to make these maps consistent with the
others.
/🆑
2023-06-22 00:17:10 -06:00
LemonInTheDark
5c032cc098 Adds border smoothing! (Look ma I'm upstreaming) (#76134)
## About The Pull Request

Ok so we currently have 1 (count em) border object that wants to smooth
with other border objects. That's the tram window.

It currently does this manually, via map edits, but that's kinda crappy
so lets be better.

This pr adds a new smoothing mode to handle border objects. 
Unlike other smoothing modes, it returns a bitfield of directions the
border object connects in.

I do this by memorizing a calculation of which dirs "connect" at init,
and reading out of a global list with border object direction, direction
between objects, and if it's a border object, the other object's dir.

I'm doing this primarily because it's become useful for wallening (a
spriter saw the tram thing and is doing the same thing to pod windows,
and I want to support that)

I do think it's potentially useful in other applications too tho, and I
like dehardcoding tram windows.

Also fun bonus (or maybe downside), it's nearly 0 cost because I pulled
the bitmask smoothing define into 2 subdefines, and am swapping the
handler one out to do what I want.
Oh also I got rid of a for loop in smoothing code, redundant and costs
time in list iteration

[Moves tram windows over to the new border object
smoothing](114873679c)

Also replaces some typepath chicanery with a setDir override, for
redundancy in future
Oh and there's a update paths script too, to be nice

## Why It's Good For The Game

More visual possibility in future, fixes a hack we have currently, and
makes some spriters happy.

## Changelog
🆑
fix: Dehardcodes some stuff with tram windows, they'll be easier to map
with now
refactor: Border objects can now smooth with each other. I'm sure
something cool will come of this
/🆑
2023-06-22 00:05:44 -06:00
Cheshify
4f83d2971c North Star: Virologists Disposals Route To Space + Spawner Removal (#76138) 2023-06-21 18:24:29 -07:00
necromanceranne
64eae49042 Replaces the Reaper Scythe with the Vorpal Scythe (also the Morbid trait) (#75948)
adds the Vorpal Scythe, a special chaplain null rod variant, replacing
the Reaper Scythe, a not so special null rod variant.

When you choose the vorpal scythe, it comes as a shard that you implant
into your arm, similar to a cursed katana.

Once implanted, you can draw it at any time like an arm implant.
However, sheathing it again presents some problems. (Also, implanting
the organ gives you ``TRAIT_MORBID``, which I'll explain in a bit)

The Vorpal Scythe has 10 force, one of the weakest null rod variants for
force that isn't a joke null rod. However, it has exceptional armor pen
and also has 2 tiles of reach. So quite unique.

It also has a special beheading ability when you right-click someone.
This borrows some code from amputation shears, functioning pretty
similarly, except with a few additional ways to speed up the action and
restrictions. (It takes 15 seconds baseline to behead someone standing
and conscious, and speeds up or slows down based on factors such as
incapacitation and whether or not our scythe is already empowered)

When you successfully behead someone with a mind, the vorpal scythe
gains 20 force and can be safely stowed and drawn for 2 minutes.
Performing more death knells like this will reset the timer.

If it has not performed its 'death knell', or you haven't hit a living
mob, then it will cause severe damage to you if you ever try and stow it
(or its forced back into your arm). Just hitting a mob with the scythe
will sate it for 4 minutes. Unless it is a non-player monkey. Horrible
things. Just hitting mobs does not reset the timer on empowerment.

What this means is that the chaplain may be more hesitant to simply draw
their weapon on people. It also means that potentially, the chaplain
will not always have magic immunity, since they may end up stowing the
weapon away and be reluctant to draw it on a whim without either taking
damage for sheathing it without hitting something, or dealing with
having one less hand up until they can.

While empowerment only happens when you behead mobs with a mind,
beheading monkeyhumans and other mindless humans subtypes causes their
heads to become haunted! It's mostly harmless and largely just SpOoKy.
We don't want heads with actual players in them to go floating off to
space. (Does not work on monkey heads for sanity reasons)

When you have the Morbid trait, you think creepy stuff is cool and hate
saving peoples lives. You get a mood boost from graverobbing, autopsies,
dissections, amputations (including beheadings with the scythe and
amputations with the shears) and revival surgery. However, you get a
mood penalty when you tend wounds on the living, as well as a hefty
penalty when you perform CPR or defibrillate someone. I was thinking
Victor Frankenstein when I was choosing which actions had an associated
moodlet, so anything that I might have missed would be appreciated.

You also count as potentially cool with regards to haunted objects.
Ghosts think you're neat. (Revenants probably will still kill you if
they had the chance)
2023-06-21 04:37:18 +00:00
Jolly
8184167948 [MDB IGNORE] Subtypes out kirbyplants, also changes them to said subtypes (#76050) 2023-06-20 17:14:51 -07:00
John Willard
8229972398 Tablet apps are now deleted when necessary & removes console preset. (#75863)
## About The Pull Request

Apps now properly delete themselves when removed, so they don't exist in
nullspace anymore.
Chat client now actually updates the uid, because its New() didn't call
parent.
Deletes the 'console' subtype of modular computer
Updates how downloading and transferring files are handled
Fixes being able to infinitely upload apps to a disk

## Why It's Good For The Game

Fixes some more bugs I found with apps and prevents spamming apps in a
disk.

## Changelog

🆑
fix: Maintenance data disks now properly transfer from PC to disk
fix: Disks can no longer be flooded with the same app repeatedly.
/🆑
2023-06-19 22:59:09 -07:00
Addust
7a5431ec26 replaces the weirdly placed engine in the greytide ship with a heater (#76141) 2023-06-19 18:31:17 -07:00
Rhials
3cb50e87ab Adds some nodiagonal walls to the Infiltrator docking port (#76139) 2023-06-19 18:29:57 -07:00
Hoolny
a33849fe3e Interdyne pirates fixes (No GBP) (#76044) 2023-06-19 16:29:53 -07:00
MrMelbert
acdcfb97db Fix north star random failure (#76099)
## About The Pull Request

Loot spawn located in wall, spawns ash, causes runtime?


https://github.com/tgstation/tgstation/actions/runs/5293816730/jobs/9582438906?pr=76098

## Changelog

🆑 Melbert
fix: Fixed a maint loot spawner located inside a wall in North Star
Chemistry Lab Maintenance
/🆑
2023-06-18 16:12:01 +08:00
YehnBeep
b66cacee93 Fixes missing atmosdrobe on birdshot (#76093)
## About The Pull Request

Fixes/adds missing atmosdrobe. To fit the theme of the map, its
placement is slightly obnoxious.

## Why It's Good For The Game

Lets atmos techs be slightly more fashionable hermits. Or at least get a
new clothes when, neglecting PPE, their burn escapes containment.

## Changelog

🆑
fix: Birdshot now has an (oddly placed) atmosdrobe.
/🆑
2023-06-17 18:24:29 +02:00
Rhials
abc0820466 Gives Fugitive Hunters credible IDs, access restricts the hunter shuttles, minor hunter shuttle improvements (#75913)
## About The Pull Request

This standardizes fugitive hunter IDs, making all hunter packs use the
same subtype and giving them to hunters who would spawn with no ID at
all.

The badass flaming ID color that the OG Bounty Hunter team got are now
the standard for fugitive hunter IDs. Additionally, these IDs now come
with a radical skull trim.

(Spacepol Officers don't get the badass flaming skull ID, and instead
get a more modest Police Officer ID).

**These IDs come with access, too. Airlocks, bolt buttons, shuttle
controls, and shutters on all of the hunter shuttles now require a
hunter's ID to operate.**

While I was in the area doing mapping stuff to get the accesses in
place, I made a few other very minor changes to the shuttles. These
include:

- The Bounty Hunter shuttle now has an oxygen dispenser. Two walls have
been moved to make space.
- The Russian Hunter shuttle now gets enough oxygen tanks to share with
everyone.
- The Psyker Hunter spawners now have proper spawner menu text. This was
due to duplicate-but-not-really subtypes existing, and me mistakenly
putting the wrong ones there in a previous PR.
- The cut ai wire helpers from the Russian/Psyker shuttles have been
extended to the Bounty/Spacepol shuttles.
- Every hunter shuttle now has a shuttle pinpointer on it somewhere, and
is no longer exclusive to a single Bounty Hunter's loadout.
## Why It's Good For The Game

Some of the hunter IDs would spawn without trims or coloration, and some
hunters wouldn't spawn with IDs at all. Now, everyone gets a credible,
cool-looking ID that lets everyone know what you're here to do at a
glance.

One of these is a crazed larper with an unregistered firearm, the other
is a certified bounty hunter.

As for the hunter access, it's pretty nonsensical that anyone can just
walk into the hunter ship and set up shop. At least the pirates get
turrets! Not to mention, it's hard to balance or give hunters new
equipment in good conscience when their entire domain is public-access
and anything they can't carry is considered forfeit to the crew. Now it
can be used as a base of operations, storage area, etc. more securely.

Locking down the shuttle with accesses isn't going to stop a determined
gamer with a toolset, but it'll at least make it more interesting and an
actual risk. If the fugitives want to try and loot/hijack the shuttle,
it will require the effort of taking down one of their hunters first.

While hunters stand out for the differences/imbalances between each
group, I don't see the shuttle pinpointer as something that contributes
positively to the OG bounty hunter's uniqueness. There's no reason why
the other hunters shouldn't also be able to track their ship.
2023-06-15 22:27:19 -05:00
John Willard
b5975bd915 Unit tests now catch decals in walls/space (#75189)
## About The Pull Request

Unit tests will now fail if there's a decal in a wall or open space
turf. Open space turf could be limiting to mappers but I don't think it
makes sense for decals (like dirt, glass shards, etc) to be floating
around in space in the exact same spot.

If there's a decal you want to put in space, decals have a
``turf_loc_check`` var that will bypass this.

**Important note: This is not changing existing behavior. Decals already
delete themselves when they spawn in these incorrect locations, we're
just avoiding them from spawning in the first place.**

### Changes I made

- Ash flora are now lava immune, rivers spawn after flora does, so I
decided that it would be easiest (and more flavorful) to have them be
lava-immune rather than to not have them spawn at all.
- Decals can now be spawned in non-turf locations. This is currently
done by mail, which can give you bones as part of the mail. Currently it
will just delete itself instead.
- Trading Card button is now on the same tile as their display, which
now uses an offset. Before it would spawn it on the tile next to it,
which could be a wall in some instances.
- Mirrors now have floating movement type. They ARE floating since
they're attached to the wall, and it prevents them from burning up due
to lava in the Pride ruin.
- I also added a broken mirror subtype because I thought the icon_state
check was terrible.
- Bubblegum called ``DestroySurroundings`` several times on the same
thing, I hopefully fixed some of that. Their charge ability also
registered ``COMSIG_MOB_STATCHANGE`` despite ``/datum/action`` doing it
by default, so I fixed that too.

## Why It's Good For The Game

Decals in walls is already a bad idea, but currently all it does is
delete it on Initialize. It would be better if we ensured they wouldn't
spawn in the first place.

## Changelog

🆑
fix: Lava will no longer burn 6 of the mirrors in pride ruin
fix: Lava will no longer burn plants that spawn in them.
/🆑
2023-06-15 16:39:22 -07:00
DaydreamIQ
f40ac0b3fd Rotates a morgue tray at CC Pod bay (#76026)
## About The Pull Request
See title
## Why It's Good For The Game

![image](https://github.com/tgstation/tgstation/assets/62606051/4972c8d5-0581-4f4a-b03f-516846079491)
Yeah I don't think that's supposed to go through the window like that
chief
## Changelog
🆑
qol: The CC pod bay now has proper morgue facilities that don't clip
through a glass window
/🆑
2023-06-14 12:02:34 +02:00
Nick
1648bcc47e Plasma flower MOD core from the lavaland patch of eden ruin (#75959)
This PR gives a small update to the patch of eden lavaland ruin, and
adds a new item that can be used as an upgrade to the plasma mod core.
The idea around this item is that it's a flower that has absorbed all
the plasma and bad-vibes in the small area around the ruin, leaving an
area full of plants, and a flower full of energy. This flower can be
taken from the oasis and turned into a functional MOD core using some
wires. As a MOD core, it is the same as the plasma mod core, but has a
higher energy capacity, being equivalent to a super power cell. It also
gives you a cool pollen effect, and spawns butterflies around you while
your suit is active. These butterflies disappear when they get too far
away, or if the suit deactivates. They also don't leave corpses, so they
shouldn't cause too much clutter.
2023-06-14 03:29:00 +00:00
Zephyr
22c682af52 Removes old palm tree and coconut overlay effects (#75966)
## About The Pull Request

Title.
## Why It's Good For The Game

Fixes https://github.com/tgstation/tgstation/issues/73827
## Changelog
🆑
fix: Trees and Coconuts are no longer immune to singularities.
/🆑
2023-06-14 02:06:50 +02:00
carshalash
5d85be72b8 Map adjustment to northstars Xeno Pen and treatment center. (#75958) 2023-06-12 19:03:32 -07:00
Pumpkinoe
749470e402 Northstar Decal Fixing (#75938) 2023-06-12 19:01:20 -07:00
DATAxPUNGED
b73c9daa73 Fixes Beach bum Badsketball, adds a missing gulag reclaimer console to Birdshot's gulag. (#75839) 2023-06-12 18:53:40 -07:00
Hoolny
299fa32f05 Piracy Inc. Space Extension Interdyne and Ghetto Edition: Adds two new pirate gangs Ex-interdyne Pharmacists and The Grey Tide (#75802) 2023-06-12 18:52:30 -07:00
NotDhu
47c7f7854e Tramstation brig access fixes (#75921)
## About The Pull Request

This fixes a few weird access perms on maintenance doors leading into
Tramstation's brig.

The delivery chute windoors here were not access locked at all, meaning
anyone could just walk into the security office through maintenance.
This PR replaces these two windoors with a single reinforced windoor
that is locked to security access; in line with other departmental
delivery locations around the map.

<details>


![image](https://github.com/tgstation/tgstation/assets/62350255/1d1c7d8d-aec2-4c19-b3b7-bdd8fbe57781)

</details>

This door in the brig medbay used a maintenance access helper, meaning
anyone with maintenance access could walk into the brig through it. This
PR swaps that out with a general security access helper instead:
<details>


![image](https://github.com/tgstation/tgstation/assets/62350255/bf77857f-b2aa-49c9-a378-ef8791594032)

</details>

## Why It's Good For The Game

The brig probably shouldn't be publicly accessible through maintenance.

## Changelog

🆑
fix: Maintenance doors/delivery chutes leading into Tramstation's brig
have had their access requirements fixed and now actually require
security access to open.
/🆑
2023-06-12 09:26:21 -07:00
ShizCalev
7923d83dd4 Potted plant fixes (#75929)
Fixes #75918

Alternative to #75926

🆑 ShizCalev
fix: The RD's plant will no longer say that it's not very healthy after
being restored with seeds.
fix: Potted plants no longer randomly swap icons after being thrown.
fix: Plants that started the round dead are no longer all the same kind
once revived.
fix: Admins can now varedit plants to be alive / dead! 
/🆑
2023-06-10 12:54:50 -06:00
Rhials
133d5b4a85 Converts Spaceman mobs from simple to basic (#75944)
## About The Pull Request

This changes the Spaceman simplemobs into basic mobs.

They really didn't do anything besides stand around and retaliate, so no
new AI datums had to be added.
## Why It's Good For The Game

Scratch it from da list.
## Changelog
🆑
code: Spaceman simple mobs have been converted to basic mobs.
/🆑

---------

Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2023-06-10 18:44:29 +00:00