Commit Graph

61513 Commits

Author SHA1 Message Date
GuillaumePrata
94dece8e5a Moves backpacks into their own DMI and "standardize" some names (#70220)
I wanted to touch a backpack sprite and got mad with everything being on the same dmi file sooo...
Creates a dmi for backpacks because we had everything shoved on the same back.dmi or storage.dmi which is a headache to work with.

I tried to standardize the name between backpacks, satchels and duffels and some minor clarity while I was there, stuff like:
securitypack -> backpack-security
satchel-sec -> satchel-security
brokenpack -> bag_of_holding-inert

Also made a new obj icon file for the ethereal backpack, it had it's own file for the mob worn icon so now both icons have their own dmi.
Probably should rename it to "species" if we ever add more species/lore related backpacks but that is a future issue.

I didn't touch the inhand dmis or "standardize" their name, they are well split enough and just to avoid making a zillion changes on the same PR.
I might look into it if this PR is merged.
2022-10-01 09:43:45 -07:00
Aki Ito
077000e1ed Improves supplypack code to support repeats (#70210)
* changes how supplypacks are populated

was working on an not updated branch so might have some funny changes sprinkled in

* its 2022 time to update!!
2022-10-01 12:22:05 -04:00
Shadyyy66
d8b7ac5161 Cargo boxcutter (#70170)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-10-01 07:06:56 +00:00
PKPenguin321
150b52d97c Railings take twice the time/rods to make (#70218)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-10-01 06:49:20 +00:00
Yaroslav Nurkov
2e390d69e8 Account: add more docs. more clarity of arguments. fix payday proc if free (#70206) 2022-09-30 23:08:25 -07:00
tralezab
f3376499e3 Wall clocks are no longer described as powered by bluespace (#70198) 2022-09-30 23:06:48 -07:00
Wallem
b865823f4a [NO GBP] Anchoring microwaves on top of tables will align them to the table automatically (#70217) 2022-09-30 23:04:04 -07:00
GuillaumePrata
6174550281 [NO GBP] Fix an accidental revert on noblium's reagent effect on plasmamen (#70208)
Fixes an accidental revert on noblium's effect on plasmamen
2022-09-30 16:13:21 -05:00
VexingRaven
5cd548d579 Fixes multi-Z ruins (Ice Moon Mining Site) not spawning (#70097)
* Fixes multi-z ruins not spawning
2022-09-30 16:22:40 +02:00
san7890
43c7959ca9 Nuclear Operatives Can Now Correctly Get Servant Golems (#70142)
Nuclear Operatives Can Now Correctly Get Servant Golems
2022-09-30 15:21:08 +02:00
tralezab
4e041ce765 The Link to the Changeling Hivemind has been Reestablished (#70193)
Readds the changeling hivemind, but in a simplified form.

    There is no linglinking. It was rarely used and imma be real with you, stupid.
    Hivemind isn't an unlocked ability, it is just a default.
    Bz still mutes lings
    Fallen changelings now get an agonizing message about being locked out. We love fallen changeling flavor
    Changelings have their Honorific names back! Hello, Mr. Omnicron!
    This does NOT readd changeling team objectives, or really anything encouraging teaming beyond the hivemind itself.

    I think antagonists have generally lost a lot of power versus the station, and this is one big way to pump up the heat for this antag in particular. Changelings, given an ability to possibly team up, are much MUCH scarier.
    One reason it was removed years ago was because teaming was too often, but back then there were entire gamemodes about changelings having team objectives and many other things to encourage it. I'm bringing us back to a point BEFORE all those design ideas were explored, because I don't think they worked out.

Add information about the changeling hivemind, and the dangers of being turned into a fallen changeling if you get betrayed to the Changeling Antag Info UI

Changelog

add: Changelings once again have reestablished their changeling hivemind, and can secretly communicate between each other.
fix: Fixed up the Changeling UI a bit, like for example some dimmers would never render.
2022-09-29 18:00:23 -07:00
SuperSayu
94cbfb30c3 Various assembly fixes. (#69772)
About The Pull Request

Fixes #69043 assemblies not providing a UI when part of a one-tank bomb. (This doesn't count voice analyzers, which don't have UI)
Fixes #68139 assemblies triggering themselves (and often turning themselves off).
Fixes timers ceasing to loop if the timer is set to less than the 3-second anti-spam threshold.
#69335, #68733 signalers occasionally runtiming due to qdel'd weak reference datums. Already addressed by another PR
Proximity sensors and mousetraps work on more wire datums, but proximity sensors are still buggy.
Igniter-sensor pairs can detonate fuel tanks properly, including plumbed fuel tanks. Fuel tank explosions scale with how much fuel is in them; this is slightly nerfed from existing values.

The fuel tank detonation code has been made generic, but other reagent dispensers have rigging turned off. If turned on with a varedit, you can rig and detonate water and other reagent tanks. Reagent tanks can theoretically both explode and spread reagents if it should happen to contain both welding fuel and other stuff. I have not actually tested this part of it, but I have detonated both water tanks and fuel tanks and each works correctly.

In making mousetraps work on wire datums, I had the opportunity to make it so that you could place a mousetrap in a door's wire and it would activate when someone passed through the door (useful to bolt a door open when someone authorized goes through, for example). This is a fun mechanic but does not make sense for a simple mousetrap to be so powerful, so it is disabled. Ideally, you could put the laser tripwire in a door's wires to do the same thing, but that would be a massive rework. Mousetraps still work in on-found mode for all wire datums, and will work on items with wiring datums (like C4 and chem bombs) when stepped on.

The signaler runtimes were a result of weak_ref datums being deleted, and the communications system not handling that. It's probably not ideal to run null checks in the post_signal loop, but I am not going to worry about it.

Many of the assemblies were not properly registering when the assembly holder was attached to an item. This was most important for proximity sensors, but that also has other problems that I haven't been able to track down.

The problem with UI not appearing was a result of the transition to TGUI however long ago that was; the proc that assures TGUI that you have the right item needed to be aware of one-tank bombs and similar, or else when you pass along an interact request it says "but you can't see it" and ignores you.
Why It's Good For The Game

Bugfixen.

The thing with the reagent dispensers only got this complicated when I realized that the plumbed fuel tank variant wasn't a subtype and therefore couldn't be rigged. And then... I basically just scaled it because the flat scale no matter the contents of the tank offended me. You could wrench open tanks, drain them entirely of fuel, rig them, and they would still go off like a pile of dynamite.

I used to have code in my branch that turned chem bombs into variants depending on the trigger, with mousetraps being mines for example. That's honestly the main reason I went out of my way to make mousetraps work better as assemblies. I could wish it were better supported, but mousetraps on grenade wiring will have to do for now.
Changelog

cl
balance: Welding fuel tank explosions have been scaled slightly down and require the fuel tanks to actually be full of welding fuel
fix: You can detonate welding fuel tanks with an igniter-sensor assembly
fix: You can reach your one-tank bomb's assembly controls by activating the item in your hand.
fix: Certain assemblies should no longer turn themselves off.
fix: Clumsy fools handling a mousetrap-based multi-part assembly may set it off by accident
/cl
2022-09-30 13:07:02 +13:00
coldud13
264fe546fa you can now toggle an electrolyzer with a right click (#70088)
messed around with these the other day and got a little annoyed with how they work.
mostly copied existing code from the space heater
Why It's Good For The Game

this should clear things up a bit
Changelog

cl
qol: you can now right click an electrolyzer to toggle it on & off
/cl
2022-09-30 11:11:10 +13:00
MrMelbert
ea899232b0 Game panel is a bit more generous when spawning multiple paths for admins (#70078)
Changes the limit of paths to spawn via game panel from a hardcoded 5 to be based on the admin spawn limit.
Why It's Good For The Game

5 is a bit limiting, especially as it's easily possible to spawn more than five types of something in other ways. QOL.
Changelog

cl Melbert
admin: The game panel now lets you make more than five different types of something at once.
/cl
2022-09-30 11:02:42 +13:00
Carmine
a92719210e Adds the Moffra wing pattern (and antennae) (#70064)
Adds the moffra wing pattern and antennae based off of mothra.

New choices to express yourself is always good and it seems like a fun reference.

cl
imageadd: Adds Moffra wing and antennae sprites
/cl
2022-09-30 11:02:02 +13:00
ShizCalev
55957805eb poster fixes (#69956)
fuck poster code. whole thing needs a rewrite imo.
Fixes #69954

cl ShizCalev
fix: Wanted/missing posters are no longer broken.
fix: Missing posters no longer change text color after being taken down.
fix: Posters no longer fail to get put up 4 seconds after you walk away while placing them lol

/cl
2022-09-30 11:00:26 +13:00
John Willard
abe15dea7f Bot Code Improvement - Cleanbots (#69925)
About The Pull Request

    Removes a ton of unused vars
    Replaces blood/trash/pests/drawn vars with flags
    Adds docs to most remaining vars
    Registers cleanbot's on_entered when they get deputized instead of on initialize, removing calling procs uselessly.
    Also makes the title only update when they get a new one, also removing useless proc calls.
    Reworks how updating titles work so it isn't copy pasting its own code.
    Cleanbot stealing names now check for the mind's assigned job, rather than the living's job.
    Replaces single letter vars in many areas
    Removes two places of checking what targets to scan for, makes use of the generalized scanning proc instead.
    Slightly reworks process_scan to return null
    Replaces cleanbot's cleaning time with a define
    replaces 'initial' weapon force with just initial(weapon.force)

Why It's Good For The Game

Continuing my past work that since I haven't done a bot code improvement PR in a pretty long while, I thought I would try to get back into this with cleanbots, which used to be one of the worst bots but I fixed some major problems in the past already, so it wasn't too bad.
Changelog

cl
refactor: Cleanbots have been entirely reworked, please report any bugs you might find.
/cl
2022-09-30 11:00:11 +13:00
John Willard
ee1aba7a32 pumping your heart doesnt require to be conscious (#63290)
Simply removes the requirement to be conscious to pump your blood with a cursed heart.
Why It's Good For The Game

Entering crit or falling asleep is basically a life sentence since you are unable to pump your blood while asleep. The player still is manually pumping it, I don't see any reason why the user has to be awake for it.
This also means medical can't revive you, as you'll instantly lose all your blood before you have enough time to wake up to start pumping again. The only IC fix would be to remove your heart entirely, something most doctors wouldn't even notice.
Changelog

cl
fix: You can manually pump your blood while asleep/in crit, rather than instantly lose all your blood and die forever.
/cl
2022-09-30 10:53:05 +13:00
Salex08
5dada0e63a Removes ghost check for battlecruiser objective and fixes players being able to roll it multiple times in a row (#70194)
Removes the ghost check for the battlecruiser objective
Fixes the same player being able to reroll battlecruiser
2022-09-29 22:52:21 +01:00
RandomGamer123
36498c5e78 Stops erroneous manifest prices decreasing exponentially to negative infinity (#70165)
Fixes #69020 by applying k_elasticity = 0 to the negative priced items
2022-09-29 14:48:28 -07:00
Y0SH1M4S73R
9317472c29 Fixes a runtime when the MC invokes a varedited callback synchronously (#70172) 2022-09-29 14:23:30 -07:00
ShizCalev
dab1cfe277 Fixes facehugger exploit (#70166) 2022-09-29 14:17:53 -07:00
AnturK
839b7a4c14 Fixes pulse rifle sound and converts some text paths (#70189) 2022-09-29 11:08:25 -07:00
John Willard
1aa85b6f10 Makes wizard event not run when it isnt supposed to (#70178)
fix: Wizard's anonymous event won't run near the start of a round anymore.
2022-09-29 10:46:02 -07:00
Tim
893604fda7 Fix psicodine to suppress all phobias (including claustrophobia and nyctophobia) (#70183)
Add TRAIT_FEARLESS to claustrophobia and nyctophobia
2022-09-29 10:45:33 -07:00
Salex08
d35e7d1ec1 Adds missing blood filter in medical borg module (#70185) 2022-09-29 10:45:07 -07:00
san7890
acd43427c9 List Them Out - A Modern Revision On Extracting Global Lists (#70080)
Co-authored-by: John Willard <53777086+JohnFulpWillard@users.noreply.github.com>
2022-09-29 10:44:41 -07:00
tralezab
0bb22f59b5 Baguette swords make proper sounds and are toggled from left clicking the baguette, not right click (#69769)
Baguette swords make proper sounds and are toggled from left clicking the baguette, not right click
2022-09-29 10:32:55 -07:00
John Willard
edafd89abe Native FOV is tied to eyes, Flypeople don't have native FOV (#69913)
About The Pull Request
Native FOV is now tied to the eyes instead of the mob, and Flypeople are immune to it.
This doesn't affect TG because it's disabled in config, but I played on a server that does have it enabled, and I found it strange that Flypeople had it.

Why It's Good For The Game
Quickly searching it up says that Flies can see nearly in 360, so I think this should be reflected in-game too.
It give Flypeople a small benefit to being flashable from all directions, and while it could be implanted in regular humans, they'd have to then live with them big ol' eyes.
2022-09-29 10:30:27 -07:00
Jacquerel
72a207cc04 "It has been 0 days since the last incident" sign (#70099)
Adds a fun sign to various places in engineering which tracks how many days (read: rounds) it has been since last time the engine delaminated.
2022-09-28 22:51:59 +00:00
Wallem
90c4e89354 Gives the microwave sprite a little tune-up (#70160)
imageadd: Gives the microwave a fresh coat of paint
2022-09-28 17:27:12 -04:00
TiviPlus
6e5cb2e75f Remove uneccesary var copy paste from vehicles (#70167)
Co-authored-by: TiviPlus <572233640+TiviPlus@users.noreply.com>
2022-09-28 11:54:39 -07:00
Kyle Spier-Swenson
241c1d19c0 Bump byond up to 514.1588 (#70168)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-09-28 11:54:22 -07:00
Tim
83e443fe41 Adds Nightcaps (2nd try) (#70117)
This was taken from #67742 by @soapstain22 and I really liked the idea. Not sure why the original author closed it but here it is again.

Adds red and blue nightcaps to the pajama lockers.
2022-09-28 11:07:27 +01:00
John Willard
be450e12c8 Unit tests powernets to make sure the whole station is connected. (#70090) 2022-09-27 22:33:56 -07:00
MrMelbert
cf0f039c8e Reverts #68155 (Fix simple mob deaths causing deadchat notifications), Fixes living level mobs being able to die while dead (#70103) 2022-09-27 22:33:27 -07:00
John Willard
a2a2c2da24 Removes newscaster admin topics and vars (#70158) 2022-09-27 22:32:23 -07:00
John Willard
5f1c98bd45 events now have to check parent to see if they can run (#70128) 2022-09-27 22:31:15 -07:00
John Willard
b570fceab6 Increases the capacity of command disks (#70105) 2022-09-27 22:30:48 -07:00
John Willard
dafbcf29bd Prosthetic surgery now checks if you can attach the bodypart (#70157)
Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com>
2022-09-27 22:30:24 -07:00
san7890
784c6b3986 [s] You can no longer Summon Cultist to get out of Admin Prison (#70156)
There's an old issue report that detailed how, using the Summon Cultist rune, you could be able to escape the Admin Prison (!!!) from CentCom (and could even go back to the station from CentCom using this in general!). This is very bad! So, let's do TWO things to fix this issue report.

The first is just to ensure that you can not summon a cultist from CentCom. They are "too far away from the veil" to be reachable. I can un-add this, but I think there's no reason we shouldn't leave it in.

The second is to ensure that the Summon Cultist rune respects TRAIT_NO_TELEPORT, so let's do that. I also whipped up a fast component that tracks the location of the "prisoner" that we send to Admin Prison, and ensure that the trait easily clears if an admin determines they are worthy of re-entering the game (so they don't have to delete the trait/component/whatever themselves, because that is non-intuitive). Should be all good now in this edge-case.
2022-09-27 22:29:44 -07:00
san7890
aed0b5ce8d Adds Support For Exotic Bloodtypes To Operating Computer (#70149)
Hey there,

So basically, whenever you had an ethereal or some other species with an exotic blood type (ethereals bleed liquid electricity)- you would get a standard blood type that came from... somewhere? No idea what that was reading. Anyways, this PR just fixes the DM-side code to pass either the actual Rhesus blood type if it's genuine blood, or if it's something special (like a clown on April Fool's day)- it'll say that instead. Splendid!
2022-09-27 22:25:14 -07:00
VexingRaven
1533bb73ea Updates the description of the eyepatch HUD (#70133) 2022-09-27 22:24:38 -07:00
GoldenAlpharex
4cf6151ee7 Fixes the skill cape drop pod's murderous tendancies (#70154)
Fixes the skill cape drop pod yeeting people's organs on impact
2022-09-27 16:56:39 -07:00
san7890
78e6dd051c Adds Balloon Alerts To Valve Open/Closing (#70138) 2022-09-27 16:26:37 -07:00
Time-Green
3c6cf9bc8d Adds a unit test for dupe planes (#70129) 2022-09-27 15:13:55 -07:00
John Willard
243231eb48 Properly checks flags with & instead of == (#70130)
* Makes flags properly check themselves

Byond ref: https://www.byond.com/docs/ref/#/operator/&
Basically, flags should use & instead of ==
We can have more than 1 slot on any item, so it's preferred that we do this instead. Even if it doesn't immediately fix any problems, it's something that should be the standard anyways to prevent it from ever being a problem.

Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2022-09-27 21:51:45 +00:00
tralezab
1810b85553 Heretics cannot be converted, and are immune to cult stun hands. Instead, the cult is rewarded for sacrificing them with the bloody bastard sword, an oversized SPIN2WIN funblade. + Soul Stealing Fantasy Affix (#69725)
About The Pull Request

Heretics can no longer be converted to a cult, as they follow their own Forgotten Gods.
Instead, Nar'Sie will reward the cult for managing to sacrifice one, with the bastard sword.
The bloody bastard sword has been cleaned up codewise and all that. Because it is a free reward instead of a (removed) progression mechanic of cult, it swings just a bit slower during the spin and doesn't have a jaunt. It's still a !fun! swinging sword of hilarity and death.
BLOODY BASTARD https://www.youtube.com/watch?v=ukznXQ3MgN0
Fantasy weapons can now roll "soul-stealing" weapons. They, on killing something, capture its soul inside the item.

    Add fail conditions that instantly end a spin2win, ala how 

    Mimes can now hold a baguette like a sword by right clicking it #69592 works

Why It's Good For The Game

Bloody bastard sword was fun, it made no sense that heretics were valid converts when they're already worshipping a DIFFERENT evil god granting them powers. Should be in a good spot as a nice little antag to antag special interaction. I fucking love antag to antag special interactions, we should have more of 'em

Fantasy affixes are always a neat thing to throw a new component into
Changelog

cl
add: Heretics can no longer be converted to cult. But sacrificing them is very valuable to Nar'Sie, and she will grant special weapons if you manage to do so.
add: Fantasy affixes can also include soul-stealing items!
/cl
2022-09-28 10:24:04 +13:00
TiviPlus
6ec64d1dd8 Lets vehicle abilties actually be removed (#70151)
Co-authored-by: TiviPlus <572233640+TiviPlus@users.noreply.com>
2022-09-27 14:12:31 -07:00
Rhials
b748f9e091 Cleans up events folder, moves stray round_event_control/round_event pairs to events module (#70147) 2022-09-27 11:17:49 -07:00