mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-02-08 23:39:32 +00:00
a999e8df87574c5fdc2b0850d9cd6dc1004f0934
257 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
43aa0f219f |
Two New Skills (#26880)
* sure * cough, girders are something * what if I said this --------- Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com> |
||
|
|
6947f89d04 |
[MIRROR] mobile defibrillator mount (#27737)
* mobile defibrillator mount (#83000) ## About The Pull Request   5 iron and 1 sheet of silver and 15 cable to craft its a defib mount but mobile, thats basically it ## Why It's Good For The Game good for maps where there are no good spots to place wall defib mounts or if you cant or dont want to take off your backpack (maybe using a modsuit?) and theres no defib mount nearby ## Changelog 🆑 add: mobile defibrillator mount /🆑 * mobile defibrillator mount --------- Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com> |
||
|
|
a2cad3c467 |
Pipegun updates and glowup (#83063)
## About The Pull Request Updates pipeguns with a brand new set of sprites. Also comes with pipe pistols; plinkier versions of the pipegun.    Alters pipeguns away from utilizing shotgun/rifle ammunition towards a bespoke junk round ammo. These shells are crafted similarly to current improvised shells. This also removes improvised shells as a shotgun ammo type. (these new shells aren't shotgun shells to begin with, they're more like rifle bullets) Crafting junk rounds produces an entirely unknown projectile in the shell. You won't know what you get until you fire the gun. Almost in every instance, however, the shot is beneficial towards killing things. And they all do about the same amount of damage, so there is hopefully never a round you didn't want to fire in the gun. Fighting someone with a pipegun is usually predictable for what amount of damage it will do, but any additional effects it might have is going to be an unknown factor. They also brutalize borgs, which is a quality that improvised shells had previously. Pipeguns operate as they did before, and do roughly 40 damage per shot with the majority of their ammo types (less than what they do currently with .310). They only have one shell in the gun at a time, so every time they're fired, they must be reloaded. Pipe pistols do roughly 15 damage per shot, but hold more ammo than the bigger pipegun. However, they're more likely to veer off-course. There are regal versions of each of these weapons, and each are more potent respective of their general rarity. Having one is going to be a lot more noteworthy. ### Minor changes Some more clothing items can carry pipeguns in their suit storage. The icemoon hermit spawns with a heroic laser musket rather than a regal pipegun (partially because it is too difficult for the hermit to get more ammo for their gun, and also because the regal pipegun is a more powerful weapon than previously) ## Why It's Good For The Game It has been a few years since I added the pipegun, and time was never particularly kind to it. There are alternative weapons now with interesting mechanics of their own. The ammunition it used has changed considerably. And it simply didn't ever feel like a 'junk gun' in a way that was fun. The original mechanics added to give it that feeling were just not fun to experience and were removed. So the pipegun has been left as 'a shitty version of X'. Even the regal pipegun was, at the end of the day, a shittier version of either a shotgun or cargo rifle. It didn't feel right not having some kind of unique quality to using these weapons that help them express themselves as unpredictable trash weapons built inside of maintenance. But I expressly didn't want to make it 'unpredictable' in a way that felt unfair on the person getting shot either. So just giving it more damage was right out. As a compromise, I reduced the overall lethality of the weapons while introducing a gimmick that will appeal to those wanting to play out the role of a homeless lunatic with a shitty homemade gun stalking maintenance. A 'chaos gun' so to speak. Maybe that will appeal to people. ## Changelog 🆑 balance: Reworks pipeguns to use an unpredictable 'junk round'. You won't know what you're shooting until you fire it. add: Introduces a pistol version of the pipegun; the pipe pistol. It is inaccurate and does significantly less damage, but more portable and has more ammunition in the gun. image: Updates the visuals of the pipeguns. balance: Also improves the Regal varieties of these weapons. By a lot. balance: More articles of clothing can be used to carry pipeguns in suit storage. balance: The Icemoon Hermit comes with a Heroic Laser Musket instead of a Regal Pipegun. remove: Improvised shells (the shotgun shell) has been replaced with improvised junk shells (which don't work with shotguns but do work with pipeguns). /🆑 --------- Co-authored-by: Jacquerel <hnevard@ gmail.com> |
||
|
|
2b15dbdbb9 | Fix crafting bypassing checks | ||
|
|
55d1c715e5 |
Pulls2 (#27514)
* New docking port sprites (#82729)
* Adds text to lootpanel items [no gbp] (#82722)
## About The Pull Request
Just some qol, this captures a small portion of the item name and fixes
some icon clipping issues
I clipped it at 5 because monke


## Why It's Good For The Game
Handy if youre in a rush and won't upgrade byond to fix the issue
## Changelog
🆑
fix: Lootpanel additions: Condensed item names for the quick of draw
/🆑
* Fixes tgui alert buttons (#82714)
<!-- 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
Been on my mind for a long time
I did this while relatively inexperienced (how do I center a div etc)
Fixes an issue inherent to our stack implementation where reversing the
direction caused strange spacing issues. This effectively reverses the
extra margins in css so it looks identically spaced whether reversed/not
<details>
<summary>before/after</summary>
Before (normal buttons)

Before (large buttons)

After (normal buttons)

After (large buttons)

Long buttons (normal)

Long buttons (large buttons (I am 35 and yet still fight the forces of
chaos))

</details>
<!-- Describe The Pull Request. Please be sure every change is
documented or this can delay review and even discourage maintainers from
merging your PR! -->
## Why It's Good For The Game
Looks better, runs smoother, no clipping
<!-- Argue for the merits of your changes and how they benefit the game,
especially if they are controversial and/or far reaching. If you can't
actually explain WHY what you are doing will improve the game, then it
probably isn't good for the game in the first place. -->
## 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 it's 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. -->
🆑
fix: TGUI Alerts shouldn't have such wonky buttons any more
/🆑
<!-- 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. -->
---------
Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com>
* MetaStation: Replaces the tools in the Primary Surgery Theatre with filled surgery trays (#82730)
## About The Pull Request
Replaces the tools on the tables with 2 surgery trays.

## Why It's Good For The Game
Makes surgery a bit less painful in the surgery theatre, Using tools
from a tray is much nicer than having to open the context menu on the
piles of tools on the tables.
## Changelog
🆑
qol: Replaced the surgical tools in the Primary Surgery Theatre with 2
Surgery Trays.
/🆑
* Fixes smart pipe & cryo gas reallocation (#82701)
## About The Pull Request
**1. Smart Pipe Problem**
- Fill a pipe with any gas, plasma for e.g.
- Unwrench the pipe to deconstruct
- The pressure sends you flying but notice plasma is nowhere to be seen
from the now destroyed pipe
**2. Cryo pipe connector problem**
The gas gets reallocated when the object is deleted. We only want this
when its deconstructed not deleted to prevent any side effects
This PR fixes them
## Changelog
🆑
fix: smart pipes release their gases into the air when unwrenched
fix: cryo pipe connector component has no side effects of gas
reallocation when deleted
/🆑
* Fix Primal Instincts (#82741)
## About The Pull Request
#82539 randomly made these two lines switch their AI controllers to idle
rather than on, when the intent was for them to wake up immediately to
do make the mob attack or fight or do something
## Changelog
🆑 Melbert
fix: Primal Instincts and Living Flesh should be a tad more reactive
/🆑
* Fix handcuffing (#82760)
## About The Pull Request
Changed this to an early return but then didn't invert the condition
## Changelog
🆑 Melbert
fix: You can handcuff people with 2 arms and you can no longer handcuff
people with 0 arms
/🆑
* Gets rid of UNIT_TESTS compiler warning (#82695)
## About The Pull Request
Basically every single CI Run is throwing the following warning:
```txt
code/modules/unit_tests/lootpanel.dm:24:warning (unused_var): new_box: variable defined but not used
```
You may find an example here:
https://github.com/tgstation/tgstation/actions/runs/8698627681/job/23855921813#step:9:24
This is pretty silly but I don't really know why we even have this
variable (I assume there's something far more complicated underneath the
surface based on what the unit test is asserting), but assuming it is
important let's just insert a do-nothing procedure to get rid of the
compiler warning while ensuring the unit test is actually operating as
it should.
I also don't really like the fact that this is a warning instead of an
error but let's tackle this problem one step at a time by at least
getting rid of the compiler warning in a quick advance PR while I dwell
on this issue (is there a way to get the Dreamchecker linter to look at
the unit test files? it's caught perfectly fine in the langserver)
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Makes dropdowns better (#82697)
## About The Pull Request
Kind of a pain to work with, confusing people with its prop names (many
such cases!)
After recently discovering deathmatch it's very obvious to me how broken
it is, so I made it less so
(now comes with a complete ui upgrade!)
It now scrolls with the selection and to the selection on open, which
felt like major QoL
<details>
<summary>pics/vids</summary>
In motion

Deathmatch got some UI facelifts


Fixes #75741

</details>
## Why It's Good For The Game
Better UX
Bug fixes
Potential exploit patched (ui validation for ai voice changer)
Fixes #81506
## Changelog
🆑
fix: Dropdowns received some much-needed QoL, like having the scrollbar
follow your selection.
fix: AI voice changer now shows its current voice selection.
fix: Deathmatch screen has been touched up.
fix: Prefs menu has their dropdowns simplified, hopefully fixing issues
/🆑
---------
Co-authored-by: san7890 <the@san7890.com>
* Fixes the NT SWAT helmet sprite (#82743)
* Mass Item Creation (#82455)
## About The Pull Request
Have you ever had to click the "Make" button a dozen times for a chef
making soup? I've also had it, so with this PR you can press the button
and everything will repeat itself as long as possible.
## Why It's Good For The Game
Makes life easier for chefs, now they can play chess on their cool
smartphone and craft food. (actually you can transfer it to other items
as well, see for yourself).
* Adds Retain volume flag on the ants reaction (#82718)
Fixes #82575
We'd expect feeding ants to always result in more ants I imagine.
* Borg movement now has sounds (#82704)
## About The Pull Request
adds sound effects to cyborgs when they move
Demo:
https://imgur.com/a/7Mu98pQ
Open to feedback on this sound so please tell me what you think.
## Why It's Good For The Game
a hunk of metal moving at you without any sound is frightening
## Changelog
🆑 grungussuss
sound: cyborgs now have sounds to indicate they are moving
/🆑
* Use cell defined constants for various stuff (#82594)
## About The Pull Request
This re writes most cell power usage cases with 2 defines
`STANDARD_CELL_CHARGE`(Joules) & `STANDARD_CELL_RATE`(Watts) so changing
cell capacity values in the future won't cause discrepancies.
## Changelog
🆑
code: most cell power usages are scaled with defined constants to help
adapt to future changes
/🆑
* Plumbing machinery power & processing tweaks (#82702)
## About The Pull Request
- Plumbing machinery begins processing only when wrenched & ends
processing when unwrenched. The machines plumbing component
`/datum/component/plumbing/process()` already does this but the
underlying machines processing proc for e.g.
`/obj/machinery/plumbing/synthesizer/process()` is always processing
regardless of its wrenched state or not. We can optimize this & save
power when unwrenched
- Fixes #82621. This adds plumbing machines `idle_power_usage` on top of
its `active_power_usage` ensuring it only uses power when actively doing
work, So if your factory is say full of reagents & cannot do any more
work it will use less energy i.e almost enter an stand by mode,
efficiency
- Plumbing grinder chemical will grinds & juice stuff correctly i.e.
prefer grinding over juicing most of the time
## Changelog
🆑
fix: plumbing machinery begins processing only when wrenched & ends when
unwrenched
fix: plumbing machinery uses energy only when wrenched & doing work,
will stop/use less energy when idle
fix: plumbing grinder chemical will grinds & juice stuff correctly i.e.
prefer grinding over juicing for most stuff
/🆑
* Carps migrating through the station no longer idle so they don't get stuck after spawning until someone walks by. (#82744)
## About The Pull Request
Carps migrating through the station no longer idle so they don't get
stuck after spawning until someone walks by.
## Why It's Good For The Game
Bugfix for Carp Migrations.
## Changelog
🆑
fix: Carps migrating through the station no longer idle so they don't
get stuck after spawning until someone walks by.
/🆑
* Alt click no longer conflicts with mech suit [no gbp] (#82758)
## About The Pull Request
Get in the gundam shinji!!!
Context: Mech users hold ALT to disable strafe, which would trigger the
lootpanel to come up while committing war crimes (annoying!)
This prevents the panel from appearing and fixes the previous behavior,
meaning you can alt click your own mech to disable strafing.

It also makes toggling strafe a balloon alert with sound. Parties for
all occupants!!
## Why It's Good For The Game
Fixes #82753
## Changelog
🆑
fix: Mecha pilots are no longer bothered by incessant loot panels while
holding ALT for strafe disable.
/🆑
---------
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
* Adds a Wizard-themed map to the deathmatch (#81640)
## About The Pull Request
Deathmatch is severely lacking in HIGH IMPACT MAGIC LARPING. So I added
a big ass wizard arena. The arena itself is based off the wizard den.
Loadouts:
**Wizard:** Standard all-rounder. Got magic missile, jaunt, and
forcewall. Regular gear.
**Pyromancer:** Fire guy. Red robes, fireball, smoke.
**Electromancer:** Zappy guy. Lightning and tesla shock.
**Necromancer:** Is a skeleton. Has Scream for Me and blink.
**LARPer:** Straight from Station & Spessmen. Fake robes and can only
throw lightning and repulse.
**Chuunibyou:** Classic animage. Got chuuni buff and magic cards.
**Battlemage:** Melee fighter. Got some armor and a big hammer with
instant summons.
**Apprentice:** Underpowered until they find a mystery box. Got charge.
**Gunmancer:** Who needs magic when you have guns? Starts with an m1911,
lesser gun summons, and knock.
**Monkeymancer:** Is a monkey. Can summon monkeys and gorillas. Has a
banana.
**Chaosmancer:** Jumbled robes. Starts with a chaos rod. Can rod form
and summon traps for high chaos.
**Funnymancer:** It's just a clown with a banana staff.
The map itself is a pretty standard arena with a long sightline in the
middle. Each participant spawns in their own room complete with a magic
item box. The very southern portion of the ship has a standard mystery
gun box. Soon after the round starts, a hostile gelatinous cube in the
center of the map will break out and attack whoever it sees. Inside its
enclosure is a free death wand. Map has been tested to make sure
deathmatch participants can't escape the deathmatch.
## Why It's Good For The Game
Deathmatch provides a unique opportunity for people to play with
mechanics they will not often get to use. Allowing people to play wizard
for a few minutes shouldn't cause too much harm aside from admin logging
from explosions, which hopefully a fix is in the pipeline for.
## Changelog
:cl:Motho
add: Added wizard-themed deathmatch map.
add: Added mystery wand box.
/🆑
* Makes viewers() defines (#82767)
* Fixes Pseudo circuit delay & some missed cell define usages (#82771)
## About The Pull Request
- Fixes #82688
If the circuit cost is<= 1% of `STANDARD_CELL_CHARGE` then the delay is
5 seconds, if the circuit cost is >= 50% of `STANDARD_CELL_CHARGE` then
delay is 1 minute. All other delay values are interpolated in between
these 2.
- Pseudo circuits don't use power when used on cooldown
- Makes `INSPECTOR_ENERGY_USAGE_*` defines values use standard cell
values
## Changelog
🆑
fix: pseudo circuit adapter computes recharge delay durations correctly
& won't use power when on cooldown
code: uses standard cell defines for N-spect scanner
/🆑
* Lava/Plasma River tiles now immerse you in them (#82736)
## About The Pull Request
This adds the "immerse" element to lava tiles.

It's a tad hard to see because you're super on-fire, but it still looks
nice.
## Why It's Good For The Game
Eye candy, pretty...
## Changelog
🆑 Rhials
qol: Lava and plasma rivers now immerse you in them.
/🆑
* Adds `ALLOW_RESTING` to a bunch of items (#82761)
## About The Pull Request
Allows you to alt-click a bunch of items while resting.
Fixes #82788
## Why It's Good For The Game
Some of these, such as storage, are bugfixes. You shouldn't need to be
standing up to configure a spray can, or change the direction of your
bedsheet
Others are just sensible changes.
## Changelog
🆑 Melbert
fix: You can open bags with alt click while resting again
qol: Many items which previously required you to stand to alt-click now
don't, such as bedsheets and spray cans
/🆑
* Fixes sight range on lootpanel [no gbp] (#82765)
## About The Pull Request
When asked to make lootpanel visible at range they did not just mean
_any range_
AI alt click was a little weird (still is) but now it works
(TM BUG)
Fixes #82768
* Adds Omnitools for engineer and medical cyborgs, reducing on inventory clutter. (#82425)
[This PR is a bounty requested by Ophaq and worked on by
Singul0.](https://tgstation13.org/phpBB/viewtopic.php?f=5&t=36013)
All of the following description in this PR is written by Ophaq as to
what this PR entails:
In this PR, the medical and engineering cyborg's tools are completely
reworked and condensed into an arm similar to the implant a carbon would
get. The tools are shown in a radial wheel around the character to quick
select what is needed instead of looking for it in a cluttered bag of
items. There are a few tools such as the blood filter for the medical
cyborg, as well as the welder, gas analyzer, and t-ray scanner for the
engineering cyborg excluded from the radial wheel. mostly due to their
inherent inmodularity


Each cyborg gets two arms in case the player wishes to have one on the
side to quick swap to, like having a scalpel in one arm and a hemostat
in the other on the hotbar for convenience or just preference. An
upgraded version of the tools has been added to each respective cyborg
upgrade node with somewhat faster action speed. The upgrade replaces the
arms and transforms them into the "advanced" version which is currently
the same sprite as the regular but just a faster and more efficient
version. The sprites for the surgical arm currently look good but may
need replacing later if someone who wishes to resprite them down the
line decides to do so.
As it currently stands, the medical cyborg's magical bag of gadgets
takes up a lot of your screen space and as a player who plays medical A
LOT, this was a MUCH NEEDED quality of life feature.
The amount of clutter in a medical cyborg's bag makes it in my opinion,
hard to see at the bottom of the screen and a nuisance to constantly
close compared to other models. My standard set up for playing medical
cyborg on the hotbar is 1=med analyzer, 2=usually a secondary surgery
tool or injector, and 3=another surgery tool. The flow of gameplay
during surgery ends up being surgery tool, hit 3 and drop it, surgery
tool, repeat or for efficiency using X to swap between the two surgery
tools I need on 2 and 3. This gets tedious especially after so many
hours of playing medical cyborg. I know some people may disagree, but I
think it would help a lot of help to speed up this flow of gameplay
during surgery and declutter.
By turning the medical cyborg's toolset into an omni-surgery tool which
functions like the surgery arm implant's radial wheel, this would
greatly declutter by like an entire row and make things easier on
medical cyborg players. Having a secondary in the bag helps with
efficiency for those players who like having an extra tool on their
hotbar and swapping back and forth would also improve efficiency and
make less swapping by hitting Z needed. Additionally with the upgraded
version as an optional upgrade in the mediborg tech, this also lets them
be on par with players who use advanced tools late game but not at the
level of alien tools where players would obviously out compete a
mediborg in terms of action speed.
Engineering models also benefit from this rework but at a slightly
different and lesser way whereas certain tools are excluded such as the
welder, due to the way they work on refill and the gas scanner and t-ray
scanner not counting as tool components are not included in the arms.
Syndicate versions of the engineering and medical cyborg also get these
arms, unupgraded.
🆑
add: Adds an omnitoolset for both engineering and medical cyborgs,
containing various basic tools
qol: Engineer and Medical module inventory space is now significantly
decluttered
/🆑
---------
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
* Fixes dropdown displaytext not working for numeric values (#82778)
## About The Pull Request
https://github.com/tgstation/tgstation/pull/82697 broke the prefs menu
downstream; we have a couple of dropdown choices that are numeric but
that make use of `display_names` to map those choices to appropriate
strings.
The code was assuming that `value` would always be a string when calling
`capitalizeFirst(value)`. Basically it should be doing
`display_names[value]` when `display_names` are present.
## Why It's Good For The Game
Fixes an oversight/bug.
## Changelog
🆑
fix: dropdowns that use display_names as an alias for numeric values
will no longer cause tgui bluescreens
/🆑
* [NO GBP] HPLC can purify inverted chems (#82727)
## About The Pull Request
- Fixes #82725
Inverted chems are now coloured green and classified as clean (like
before my general maintenance PR) which means they can be purified
again.
Only chems that are too impure to use & have an inverted chem value are
coloured red in the UI and not when they are just of the inverted type
## Changelog
🆑
fix: HPLC can purify inverted chems and are now coloured green(clean) in
the UI
/🆑
* Lathes compute their local storage size correctly (#82770)
## About The Pull Request
Basically we have to add the material container before we call parent
Initialize(which calls `RefreshParts()`), else the container doesn't get
initialized early and we skip over computing storage sizes
## Changelog
🆑
fix: off station & round start lathes with local storage don't have
infinite storage size.
/🆑
* Arcmining QoL: GPS component to scanned vents and vent(pin)pointer (#82724)
## About The Pull Request
Scanning ore vents will now tag them on GPS so you can find them easily
when you are prepared (and remove them when they are tapped). Also adds
special pinpointer to help with finding unscanned vents in a first
place. And adds missing uranium overlays for scanned vents. Because why
not.
<details>


</details>
## Why It's Good For The Game
While looking at mineral density to find vents is somewhat fun and
entertaining, having some sort of upgrade to make finding them easier
adds a bit of a progression. Also re-finding already scanned vents can
be a bit annoying. You need to fill your backpacks with GPSs and tag
them manually. It is also inconsistent with geysers that are added to
positioning after you scan them. And with tendrils, which are always
visible.
## Changelog
🆑
add: added ventpointer that points toward nearby ore vents and can be
bought with mining points
balance: scanned ore vents can now be found with GPS
fix: fixed ore vents missing overlay icon for uranium
/🆑
* Fix oven tray runtime (#82782)
## About The Pull Request
Fixes a lil typo from the interaction refactors that broke the ability
to load oven trays from containers
## Why It's Good For The Game
squamsh bug
## Changelog
🆑
fix: loading oven trays from serving trays and other containers works
again
/🆑
* Fix flaky test detection (#82790)
- Add missing job pagination.
- Fix multiple jobs being able to fail if they aren't in
`CONSIDERED_JOBS`
* Add utf8 support for state laws button (#82789)
## About The Pull Request
Adds UTF-8 support for state laws HTML page. Now it supports more than
just English
## Why It's Good For The Game
Support for other symbols, such as cyrillic

* Update highest available sound channel (#82780)
Current channels are:
```
```
So, the highest available now is 1013
Updating the thing which everyone forgot for 7 years. Not that many
special channels were added either way
* Revert "Borg movement now has sounds" (#82795)
Reverts tgstation/tgstation#82704
The sound ingame appears much louder than the original author intended.
Not to mention that the sound loops stack for every borg moving near
you.
* Use defines for "General Research" where it's not used (#82785)
## About The Pull Request
There is a define for it, so why not use it?
## Why It's Good For The Game
Defines good
* [READY] the unfuckening of clothing rendering (#79784)
refactors clothing visors to use the same system, including masks being
toggled and stuff like riot helmets toggling using the same system and
welding helmets and such
adds a handler that updates all visuals in slots that an item has
obscured, each visual proc calls that so you no longer have weird shit
happening like having to hardcode a proc for heads where you need to
also update hair, mask, glasses everytime you put on an item
one thing here i could also do is make check_obscured_slots return the
HIDEX flags instead of item slots, because in 99% of cases its hardcoded
to be ran against specific slots (like eye code running it against the
glasses slot), but maintainers didnt seem to like that :/
fuck this 2003 bullshit
theres like several bugs here i fixed but i forgot them all and they are
small
* Allows vv investigate /appearance + better checking image (#82670)
* Fixes Alien Numerical Identifier Transfer System (#82762)
## About The Pull Request
Fixes #82756
I'm not sure what the root cause of the issue is or why it broke so
recently (this has been a thing since #49150) but I went and cleaned up
the code and ensured that we always reset the `name` to the `initial()`
value we have for it if we determine that we need to transfer over the
`numba` from the old xenomorph. This is done by a new proc which is a
lot less convoluted from the old system (always respecting var-edited
names and stuff like that) that should make it flow a lot better and
make it more hardy against double-addition of the `numba` to the name.
## Why It's Good For The Game
Having two numbers in your name is weird, should only have one.
[x] I tested this PR
## Changelog
🆑
fix: Evolved aliens should no longer have two numbers in their name.
/🆑
* [NO GBP] Fixes runtime in advanced camera console (#82699)
## About The Pull Request
We only unset machine if we have a user who has logged in
## Changelog
🆑
fix: Fixes runtime in advanced camera console when power is turned off
/🆑
* Refactors how basic ais do their success/failures (#82643)
* Rocky DLXIII: Fitness to Athletics, Athletics skill influences Boxing against Boxers, Boxing overhaul, Evil Boxing (#82611)
as the only meaningful reward
Basically just a rebranding so that it is more broad in its concept. It
isn't just about peak physique. It's about how you can apply it too.
Reaching Legendary rewards you with the Golden Gloves.
I started it in this pr here
https://github.com/tgstation/tgstation/pull/80635
But this is a more significant overhaul of boxing from the ground up.
Namely, it now is majorly influenced by the Athletics skill, and also
more thoroughly aligns with conventional punching in its current state.
However, a major component of this is that boxing's breadth of mechanics
is only relevant when used against another boxer. Non-boxer targets are
only ever going to get smacked by a stamina punch, as it is currently
(and more or less the same values too). Additionally, boxers cannot
punch someone who is either unconscious or in stamina crit, so it can't
be used to maintain stamcrit.
- Boxing now has a One-Two Punch mechanic. Swapping between the left and
right mouse buttons to punch and maintaining this causes every second
punch to do more damage (to boxers). Breaking this chain by punching
with the same button twice will cause you to lose damage (against
boxers).
- Boxing now can have crits occur below 50 stamina damage (against
boxers). However, to knock someone out clean, the target must be
staggered from a previous crit first. (Or I guess be staggered at all,
maybe their shoelaces were tied or something). Crit probabilities are
determined by adding your Athletics probability skill bonuses to your
unarmed effectiveness, and then reduced by the targets own Athletics
skill bonuses. It is hard for two athletes to knock each other out in
one blow. It is trivial for a legendary boxer to knock out a novice in a
single punch. Cybernetically enhanced boxers are dangerously effective
at boxing.
- Boxers can block other boxers by using throw mode, but the chances of
doing so is based on Athletics skill bonuses. A successful block causes
the attacker to take stamina damage (as does the blocker, but less so).
- Participating in boxing increases the Athletics skill. Your gains are
probably slower than normal training, but you at least get some reward
for doing so. Only relevant if your opponent is a boxer. Get a sparring
partner!
So this is all well and good, but what if you're a scoundrel with no
care for the other person in this equation? Well, that's where Evil
Boxing comes in. Evil Boxing has absolutely no restrictions at all, and
can freely use its boxing abilities against anyone. Even non-boxers. You
can even grab people! Wow, what a scumbag. I bet you even king hit
people. Thankfully, only an admin can make you into an Evil Boxer.
(against boxers)
Both mutations have a flimsy increase to instability of 5 because of how
incredibly particular the bonus is.
Strength now reduces the amount of stamina damage inflicted via
exercising by half. Strength also adds a +2 damage bonus on boxing
punches while boxing against boxers (this doesn't influence normal
unarmed attacks whatsoever, or boxing against nonboxers). Obviously,
evil boxers just get this benefit against everyone because they're
knaves.
Stimmed increases the duration of the exercised status effect by one
factor. (That is, if you have no other modifiers, it will double the
duration on its own)
@Jacquerel was racking their brain trying to come up with an alternative
to the skill rewards of Fitness. At the moment, sprite growth is not
only a really bad bonus (it does literally nothing but make you big, and
thus is actually a detriment due to how intrusive sprite size is with
interaction, and plays weird with other sprite changing effects), but
isn't really all that interesting for all the effort put in.
Problem is, how do you make Fitness meaningful without making it a
powergame mechanic? Simple! You make it applicable to a really niche,
self-contained but still utilized game mechanic that is engaging to
participate in and makes you meaningfully very good in it. AND scratches
that power scaling itch that many players have.
Boxing is reasonably self-contained as is, but pretty bland due to how
old it is. While maintaining that self-contained nature, I hoped to
expand the interactivity of boxing a little bit by giving it a small
mini-game in of itself. And also introduce ways to simulate the idea of
boxing a bit better.
The idea of being an Evil Boxer is funny. For every Rocky, there is a
[Insert Rocky Villain Here that isn't Creed]. But in this case, it's
probably some Syndicate douchebag looking to punch clowns into a coma
and inspire the mime to take up shadowboxing in revenge.
🆑
add: Replaces Fitness with Athletics; same skill, but now more
specifically applicable to boxing.
add: Athletics does not increase sprite size.
balance: Overhauls Boxing to add a lot more depth to the interactions.
Only applicable to other boxers, however. You can still punch the snot
out of non-boxers though. But only up to stamcrit or unconsciousness. No
hitting someone who can't fight back!
balance: Adds Evil Boxing, which is the evil and fucked up version of
boxing that you kill people with and are allowed to flout the sacred
rules of boxing as you please. Everyone is a victim!
/🆑
* Cargo ui refactor -> TS (#82745)
Refactors cargo ui, fixing some visual bugs, just making it look better
in general
Should be no gameplay effect other than it looking better
<details>
<summary>pics</summary>




Fixes #81442

Made a type grabber for backend data in case you want to make your own
typescript uis
`logger.log(getShallowTypes(data))`

Otherwise cargo's data is unreadable
</details>
Any UI over 500 lines should get broken up to reduce cognitive load
~~Any ui in javascript shouldn't exist~~
Cargo UI is better
Typescript
🆑
fix: Cargo's supply console has been upgraded visually.
/🆑
---------
Co-authored-by: EricZilla <81941674+EricZilla@users.noreply.github.com>
Co-authored-by: Helg2 <93882977+Helg2@users.noreply.github.com>
* Makes lavaland stone tiles prevent immersion (#82807)
## About The Pull Request
Adds the same trait that lavaproof rods have to the stone tiles, so
things can continue being visually outside of the lava
## Why It's Good For The Game
this shit looks goofy

## Changelog
🆑 FlufflesTheDog
fix: Stone tiles (and things on them) no longer get immersed in lava
/🆑
* Getting up from prone, z movement, and mod de/activation don't do cogwheels (#82794)
Adds `hidden` to getting up (from prone), moving up (z-movement), moving
down (z-movement), and de/activating MODsuits
- Getting up from prone happens very often, makes it a bit hard to
differentiate when people are doing actions or just crawling around.
- If we want feedback for getting up, should just be a chat message.
- Moving up and down is just movement. Only affects using the verbs.
- Same as before: If we want feedback, it should just be a chat message.
- Other methods of moving up/down (IE, ladders) are untouched / retain
their cogwheel.
- De/activating modsuits have their own visual feedback and sound
effects associated. Both feels unnecessary.
🆑 Melbert
qol: Getting up from prone, moving up or down a z-level (not via
ladders, naturally. Like flight), and de/activating your modsuit no
longer shows cogwheel effect
/🆑
* [NO GBP]Inversely scale mechanical favor with STANDARD_CELL_CHARGE. (#82801)
## About The Pull Request
Makes the mechanical sect cell sacrifice favor adjustment inversely
scale with STANDARD_CELL_CHARGE. This reduces it by a factor of 1,000.
## Why It's Good For The Game
So they don't get 1,000 times the favor as intended from a cell.
## Changelog
🆑
fix: Fixes mechanical sect gaining 1,000 times the favor from a cell
sacrifice.
/🆑
* Fix all types of damage to the head causing brain damage (#82763)
## About The Pull Request
5 months ago when I separated this stuff out to its own proc I forgot a
damagetype check.
## Changelog
🆑 Melbert
fix: Only brute damage causes brain damage when applied to the forehead,
rather than all damage types
/🆑
* Converts ListInputModal to actually be a Modal | Adds ListInputWindow which uses it (#82792)
## About The Pull Request
If we say something is a Modal it should actually be a Modal
## Why It's Good For The Game
You can now use this system in other windows if you want.
Fixed the misnomer.
---------
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
* Higher capacity SMES variant for low maintenance areas; miners can access their maintenance area on mining base, gulag no longer saps all power from the main base (#82713)
## About The Pull Request
Creates a higher capacity version of the SMES unit that spawns in with
super capacity cells, as well as a full version. Places the full version
into all the AI sats (which all have independent grids for the most
part), some remote space ruins and the mining base. These SMES units are
intended for areas where players aren't expected or cannot reasonably be
expected to constantly monitor power usage within the length of a
standard round.
Miners can access their power stations, telecommunications box and
atmospheric station on the mining base. They're really the only people
who care, after all.
The gulag's SMES (also now upgraded) no longer saps power from the main
base due to having its input terminal rigged to the main base power
grid, and thus demanding all power from the grid greedily. To revert
this in-game is a single power cable placed back east of the SMES unit.
## Why It's Good For The Game
The power changes made some of the once largely low-maintenance areas
much more likely to run out of power more quickly than you would expect.
These aren't areas expected to be maintained or monitored by engineering
(probably because they're not easily accessed), and they're just kind of
troublesome to deal with on a round-to-round basis.
Mining had this problem triple-fold. It had significant drain with no
convenient method of installing power generation at all, miners couldn't
access what power generation there was without using their 'skeleton
key' to open the way (only engineers could, and they aren't expected to
come down to mining at all), and even then, there was the gulag SMES
just eating all the power anyway. I'm pretty sure that SMES unit was the
biggest culprit of them all, but I think this conveniently future proofs
these issues for the time being.
## Changelog
🆑
add: Adds a higher capacity SMES unit to lower maintenance areas and
maps.
fix: Miners can actually access and fix their engineering issues on the
lavaland base via the engineering section of the base.
fix: The gulag SMES unit is no longer needlessly draining the entire
power grid of the main mining base.
/🆑
* Revert "Higher capacity SMES variant for low maintenance areas; miners can access their maintenance area on mining base, gulag no longer saps all power from the main base (#82713)"
This reverts commit
|
||
|
|
7aa6664021 |
Mirror (#27453)
* Fix Conflicts
* Change COGBAR_ANIMATION_TIME to seconds and not deciseconds (#82530)
Most people should not be using this define
* New Battle Arcade (#81810)
Remakes Battle Arcade from just about the ground up, with exceptions
taken for emagged stuff since I didn't really want to touch its
behavior.
The Battle Arcade now has stages that players can go through, unlocking
a stage by beating 2 enemies and the boss of the previous one, but this
must all be done in a row. You can choose to take a break between each
battle and there's a good chance you'll sleep just fine but there's also
a chance it can go wrong either through an ambush or robbery.
The Inn lets you restore everything for 15 gold and you can buy a sword
and armor, each level you unlock is a new sword and armor pair you can
buy that's better than the last, it's 30 gold each but scales up as you
progress through levels. They are really worth getting so it's best to
try to not lose your money early in.
The battle system is nearly the same as how it was before but I removed
the poor combo system that plagued the old arcade as one big knowledge
lock, now it's more just turn based. The game is built on permadeath so
dying means you restart from the beginning, but if you are going to lose
you can try to escape instead which costs you half of your gold.
Getting to higher levels increases the difficulty of enemies but also
increases the gaming exp rewards which could make this a better way to
get exp if you can get good at it.
Gaming EXP is used to increase chances of counterattacking but doesn't
give any extra health to the player.
I also removed the exploit of being able to screwdriver arcade cabinets
because people would do that if they thought they were on the verge of
losing to bypass the effects of loss. I instead replaced it with a new
interaction that the Curator's display case key can be used to reset
arcade cabinets (there's several keys on the chain so it made sense to
me), which I added solely because I thought Curators would be the type
of person to have run an actual arcade.
This is some gameplay
https://github.com/tgstation/tgstation/assets/53777086/499083f5-75cc-43b5-b457-017a012beede
As a misc sidenote, I also split up the arcade file just like how Orion
Trail was before, just for neat code organization.
The Inn keeper is straight up just a photo of my localhost dude, he's
not a player reference or anything it's not my actual character.
I also have no idea how well balanced this is cause I suck at it lol.
Battle Arcade is one of 3 last machines in my hackmd here to turn into
TGUI https://hackmd.io/XLt5MoRvRxuhFbwtk4VAUA?view
I've always thought the current version of battle arcade is quite lame
and lacks any progression, like Orion Trail I thought that since I was
moving this to TGUI, it would also be a perfect opportunity to revamp it
and try to improve on where it failed before, especially since the
alternative (NTOS Arcade) is also lame as hell and is even lamer than
HTML battle arcade (spam mana, then spam health, then just spam attack,
rinse and repeat).
This will hopefully be more entertaining and give players sense that
they are getting through a series of tasks rather than doing one same
one again and again.
🆑 JohnFulpWillard, Zeek the Rat
add: Battle Arcade has been completely overhauled in a new progression
system, this time using TGUI.
add: The Curator's keys can now reset arcade cabinets.
balance: You now need to be literate to play arcade games, except for
Mediborg's Amputation Adventure.
fix: You can no longer screwdriver emagged arcade consoles. Accept your
fate.
fix: Silicons can no longer play Mediborg's Amputation Adventure.
/🆑
---------
Co-authored-by: Jeremiah <42397676+jlsnow301@users.noreply.github.com>
* Change setting item weight class to a setter to patch some weight class related shenanigans (#82494)
## About The Pull Request
Fixes #81052
Fixes #58008
Setting weight class of items is now done via `update_weight_class`.
I updated as many occurrences of manually setting `w_class` as I could
find but I may have missed some. Let me know if you know of any I
missed.
This is done to allow datums to react to an item having its weight class
changed.
Humans and atom storage are two such datums which now react to having an
item in its contents change weight class, to allow it to expel items
that grow to a weight class beyond what is normally allowed.
## Changelog
🆑 Melbert
fix: You can't fit items which are normally too large for a storage by
fitting it in the storage when it is small, then growing it to a larger
size.
/🆑
* Material datum color update, plus touching up some material items (knight armor, tiles) (#82500)
## About The Pull Request
Tries to bring the material datum colors in closer approximation to the
stacks they're attached too. I literally used the colors on the stacks.
some might need to be lighter or darker, but for the most part they'll
look...closer to their actual material hues.

I've also tweaked the sprites of both the tile object and the actual
material tile turf to give it the right shading.

In addition to the tiles, I've also updated the knight armor and helmet
to look closer to the much higher quality plate armor already in the
game.
## Why It's Good For The Game
It bothered me that the material datum coloring was inconsistent with
the actual colors used for the material stacks. When they were updated,
and even before they were updated, material datum stuff just never
looked _right_. I wanted to change that so that it looks just right.
I did not like the old material knight armor whatsoever. It was a
dithered mess, and seemed to already use parts of the standard plate
armor but with all the actual shading removed or replaced with the wrong
colors. This fixes that so that the armor is actually readable for what
it is.
## Changelog
🆑
image: Updates the colors of various material datum to bring them closer
in-line with their actual material stacks
image: Improves the sprites for the material knight armor and helmet.
/🆑
* LateInitialize is not allowed to call parent anymore (#82540)
## About The Pull Request
I've seen a few cases in the past where LateInitialize is done cause of
the init return value being set to do so for no real reason, I thought I
should try to avoid that by ensuring LateInitialize isn't ever called
without overriding.
This fixes a ton of machine's LateInitialize not calling parent
(mechpad, door buttons, message monitor, a lot of tram machines,
abductor console, holodeck computer & disposal bin), avoiding having to
set itself up to be connected to power. If they were intended to not
connect to power, they should be using ``NO_POWER_USE`` instead.
Also removes a ton of returns to LateInit when it's already getting it
from parent regardless (many cases of that in machine code).
## Why It's Good For The Game
I think this is better for coding standard reasons as well as just
making sure we're not calling this proc on things that does absolutely
nothing with them. A machine not using power can be seen evidently not
using power with ``NO_POWER_USE``, not so much if it's LateInitialize
not calling parent.
## Changelog
🆑
fix: Mech pads, door buttons, message monitors, tram machines, abductor
consoles & holodeck computers now use power.
/🆑
* Fix table top deconstruction (#82508)
## About The Pull Request
Edited: updated changelog, read comments for changes in implementation
details
So previously, tables would let you use a wrench to fully deconstruct
them, or a screwdriver to take off only their top.
This, however, broke in two different ways in #82280, when their
deconstruction logic got changed.
First off, deconstructed tables would only drop the materials for their
top and not their frame.
For this, the primary culprit seems to be on line 307:
|
||
|
|
20c0599ce6 |
Some more mirrors again (#27366)
* Ports additional Felinid ears from Orbstation (#82066) Adds 5 new ear options from Orbstation, originally PRed in lizardqueenlexi/orbstation#360. Sprites by @Or-Fi-S. Big:  Coeurl (FFXIV Miqo'te style):  Fold:  Lynx:  Round:  Also makes it so the code guarantees that custom ears on a felinid actually count as felinid ears and not human ones, as the code wasn't checking properly when preferences were applied. There's probably a cleaner, more permanent way to do this and a refactor is needed somewhere down the line (man that sprite accessories file is getting long huh) but I'll leave that to a more competent coder. More customization options are good also Cobby said I could  🆑 add: Added 5 new Felinid ear options, ported from Orbstation! (Sprites by Or-Fi-S) /🆑 --------- Co-authored-by: _0Steven <jaydondegenerschool@gmail.com> * Standardizes object deconstruction throughout the codebase. (#82280) When it comes to deconstructing an object we have `proc/deconstruct()` & `NO_DECONSTRUCT` Lets talk about the flag first. **Problems with `NO_DECONSTRUCTION`** I know what the comment says on what it should do |
||
|
|
e021ec7176 |
[MIRROR] Blocks (most instances of) screen elements from entering base atom /Click (#27049)
* Blocks (most instances of) screen elements from entering base atom `/Click` (#82236) ## About The Pull Request Fixes #76495 This PR prevents (most) screen elements from running base `/atom/proc/Click` and `/mob/proc/ClickOn()` when clickend. (The only exception I found to it was the cursor catcher for scopes.) Why? Most, if not everything in `ClickOn` is considered "in world" interacting. It abides by `incapacitated`, runs `faceAtom`, etc. This means, currently, you can "interact" with screen elements using in world elements. For example, TK-ing / pointing a gun at your mood face. Right now this affects very little, but there is a large potential for errors. All you have to do is forget a sanity check in `afterattack` and suddenly you have an item that can affect your screen objects. The only example I found was the `/item/godstaff`, which can color some of your screen elements. But there may be more. Like guns. Note: Many, many screen elements ALREADY do not fall down into atom click. They simply don't call parent. Which is totally fine. I am just ensuring ALL* screen elements do not fall down into atom click. ## Changelog 🆑 Melbert fix: Blocks mobs from trying to "physically" interact with some of their hud elements, such as using Telekinesis or point a gun at your mood meter. /🆑 * Blocks (most instances of) screen elements from entering base atom `/Click` --------- Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> |
||
|
|
f9ea4be02b |
[MIRROR] Moffers Crafting Recipe (#26860)
* Moffers Crafting Recipe (#81829) ## About The Pull Request Adds a crafting recipe to make Moffers clown shoes, using 2 mothroach hides and 1 pair of clown shoes, to the entertainment section of the crafting menu. Only the basic clown shoes can be used to make it, so other clown shoes like meown shoes won't work. https://github.com/tgstation/tgstation/assets/105574010/527424d7-107b-4a62-aa29-92056be2b136  ## Why It's Good For The Game Creates an additional use for mothroach hides so that they're not only for making moth plushies, giving another mechanical reason to butcher mothroaches. This will also allow the clown to psychotically pull the hide of a mothroach over each of their shoes and parade them around proudly to the horror of anyone watching. ## Changelog 🆑 add: Added Moffers as a crafting recipe in the entertainment section. /🆑 * Moffers Crafting Recipe --------- Co-authored-by: ValuedEmployee <105574010+ValuedEmployee@users.noreply.github.com> |
||
|
|
e178821ac4 |
[MIRROR] General maintenance for grilling related stuff. (#26835)
* General maintenance for grilling related stuff. * Update grill.dm --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Co-authored-by: jjpark-kb <55967837+jjpark-kb@users.noreply.github.com> |
||
|
|
2e7908c6c8 |
[MIRROR] Blesses the codebase with Blahaj (#26800)
* Blesses the codebase with Blahaj (#81862) ## About The Pull Request Adds the Shark and Shork Costume to the game, craftable via carp scales. In addition, adds the ability to use a shark costume to craft a shark plushy.   It is five carp scales and five leather to craft the shark costume, take the costume and craft it with wirecutters to make a shork costume. Take a shark costume, 10 cotton, and five cloth to craft a shark plush. ## Why It's Good For The Game Good and funny costumes that give an additional use to pre-existing crafting materials = good Giving players another way to craft the shark plushie = good Todo: - [x] Make sure shit wont break - [x] Add the crafting recipe for the costume - [x] Add the crafting recipe for the shark plushie - [x] Profit?? ## Changelog 🆑 Drag add: Adds the Shark and Shork costume. Blahaj lovers rejoice! /🆑 --------- Co-authored-by: Aki Ito <11748095+ExcessiveUseOfCobblestone@ users.noreply.github.com> * Blesses the codebase with Blahaj --------- Co-authored-by: Thedragmeme <81540056+Draggeru@users.noreply.github.com> Co-authored-by: Aki Ito <11748095+ExcessiveUseOfCobblestone@ users.noreply.github.com> |
||
|
|
68d12ca569 |
[MIRROR] New Shields and Sprites for them (#26713)
* New Shields and Sprites for them (#81615) ## About The Pull Request Updates shield sprites to new more polished and 3/4 perspective ones. <details>  </details> Adds 2 new shield types: - **Improvised Shield.** Made out of 10 iron sheets and 2 sticky tape pieces. Weaker then buckler shield and breaks after 2 gunshots or 4 baton hits, but has a 50% (BASE FOR ALL OTHER SHIELDS) blocking chance instead of 30% that buckler has. Bulky - **Ballistic Shield.** Printed at Security Techfab for a lot of titanium after getting weapon research. Strong against projectiles, but weaker than riot shield against melee. Bulky Both of these shields break, and both of them are their own subtype. As such you can still only craft strobe shield with a riot shield. ## Why It's Good For The Game The sprites of shields were very ancient and extremely flat, this gives them a more refreshed look. Ballistic Shield is added because Riot Shield was weakened against projectiles, Ballistic Shield gives the crew a way to get access to protection against projectiles at some point in the round. Improvised Shield adds a second improvised shield in the game (after Buckler Shield). It's balanced by being weaker than Buckler, but higher block chance, this adds an interesting choice for players on which shield to craft. ## Changelog 🆑 add: Adds 2 new shields to the game! Ballistic Shield - researched by Science, and Improvised Shield - made out of iron and sticky tape image: Riot, Strobe, Telescopic, Energy shields got new less flat sprites! /🆑 * New Shields and Sprites for them * This should do the trick * uh oh --------- Co-authored-by: DrTuxedo <42353186+DrDiasyl@users.noreply.github.com> Co-authored-by: Useroth <37159550+Useroth@users.noreply.github.com> |
||
|
|
51b8ac1431 |
[MIRROR] pipebomb (#26704)
* pipebomb (#81529) ## About The Pull Request  removes IEDs, these are its replacement  this recipe produces a finished pipebomb you can craft pipes (of the atmos kind) with some metal then you can make it into a pair of halved pipes with a welder then you stuff in items for extra effect (optional, only works if it does something) then you put in welding fuel OR gunpowder (no other options as of now, gunpowder is a better explosive) cable finishes that part after that, you can attach an unsecured assembly to finish the bomb also this is the math for the explosion, power is decided by fuel  using it in-hand activates the assembly, using it off-hand allows you to configure the assembly ## Why It's Good For The Game IEDs suck and stuff and this would be a better upgrade/replacement because with assemblies you could make a circuit sentient pipebomb or gift a pipebomb via cargo or something and gimmicks i guess ## Changelog 🆑 add: Pipebombs del: Improvised Firebombs /🆑 * pipebomb --------- Co-authored-by: jimmyl <70376633+mc-oofert@users.noreply.github.com> |
||
|
|
22bcdbf5f9 |
Nova ports batch 1 (#26273)
* Map votes are no longer random (#43) * Disables the annoying fear of Santa from the claustrophobia quirk (#51) * Removes the job locks from all armbands except the sec armbands, and reflavors all armbands to not directly state this person is a member of x department (#62) * [MODULAR] Removes Arbitrary Loadout Restrictions (#58) * Removes an AM template from NorthStar as well as the prison curtain logic (#72) * Bilingual now let's you take common (if you don't already have it) (#78) * Period Era Re-Enactment: Basic autopunctuation (#84) * [Semi-modular] Gives Xeno-hybrids some xeno-organs in trade for high temperature weakness (#91) * The Thrill of the Hunt: Hemophage blood digestion changes (#93) * Removes the ability for shocks to stop your heart (#116) * Ghost cafe turf fixes (#161) * ungatekeeps headshots (#170) * Lo(v)re Wins: Mothic Language return (#186) * Add Bone Greaves As Foot Clothing For Tribals (#197) * Saving Private Oversized: Quirk balancing adjustments (#199) * Over(sized) and Under: Oversized combat adjustments (#202) * Shuttles no longer bolt their doors on transit (#203) * Increases PAI description and OOC notes limit (#207) * Makes headset sounds not insane (WHY DO THEY HAVE A RANGE OF 17 TI:LES?) (#215) * Add Bone D6 For Tribals. (#217) --------- Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> Co-authored-by: Name <w4rd3nn@gmail.com> Co-authored-by: Ephemeralis <Ephemeralis@users.noreply.github.com> Co-authored-by: lila <sheepwiththemask@gmail.com> Co-authored-by: nikothedude <59709059+nikothedude@users.noreply.github.com> Co-authored-by: Sable <102194057+Thlumyn@users.noreply.github.com> Co-authored-by: goobliner <141452834+goobliner@users.noreply.github.com> Co-authored-by: Lutowski <136726218+Lutowski@users.noreply.github.com> Co-authored-by: FearfulFurnishing <139661819+FearfulFurnishing@users.noreply.github.com> Co-authored-by: SomeRandomOwl <2568378+SomeRandomOwl@users.noreply.github.com> Co-authored-by: Paxilmaniac <82386923+Paxilmaniac@users.noreply.github.com> |
||
|
|
ec2286db17 |
[MIRROR] Fishing hook and reel line tweaks (also qol for the fish bounties) [MDB IGNORE] (#26150)
* Fishing hook and reel line tweaks (also qol for the fish bounties) (#80599) ## About The Pull Request This PR includes a series of small changes and additions to hooks and reel lines, as well as the aforementioned bounties. My objective here is to make the (base) hook and reel line feel more useful. Ditto with a few other things. Here's the list of changes: - Almost all fishing rods come with a hook and reel line pre-installed. The rod from the fishing toolbox comes with separate hook and reel line. - Without a hook, you cannot fish. Without a reel line, the cast range is reduced (from 5 to 3). - Fishing with a reel line installed provides a mild boon to completion speed by default. - The sinewy reel line (craftable from lavaland mobs) can now be used to fish on lava / liquid plasma, but it's a bit stiff and gives a mild malus to completion speed. - Unlike other hooks, the rescue and jawed hooks now allow you to cast a line and reel in living mobs too, not only items. They even get a status alert they can click to un-snag themselves, or move away far enough to achieve the same effect. - Master fishing rod buffed. It now comes with a flexible reel line and weighted hook pre-installed, and can be cast further than other rods. - On top of that, the jawed hook will slow down living mobs snagged by it and is a bit harder to remove. - when casting a line, it will now show the icon of the current hook as projectile, not a generic one. - Reeling now correctly checks movement resistance and anchorage. - Reeling an object (or a mob) now plays a sound. Ditto for installing/removing slotted items. - A few balloon alert feedbacks. - Minor code improvements. - The jawed hook should look a smidge sharper. - reel lines are now small items. ## Why It's Good For The Game The base hook and reel line didn't do anything begin with, and you would do just fine without them. In the end it's just a bit unintuitive for them not to be a requirement. Beside that, it makes sense for the rescue hook to be able to snag mobs, so they may as well be used to drag people out of lava or liquid plasma. As for the jawed hook, it always felt to me a bit underwhelming and a bit of a filler I had cooked up on the moment. It really could have some 'tactical' utility in virtue of being one of those niche black market items. ## Changelog 🆑 add: Most fishing rods come with a hook and line preinstalled. Fishing toolboxes come with separate reel and lines as usual. balance: Fishing hooks are now required to fish. balance: Without a reel line, the range of fishing rods is reduced by two tiles. Conversely, having one installed gives a mild buff to the minigame completion speed. balance: The craftable sinewy reel line can now be used to fish on lava or liquid plasma, but it's a bit harder to use. balance: The rare-to-find-in-maintenance master fishing rod now comes with a flexible line and weighted hook preinstalled, and has better range than other rods. balance: Fishing reel lines are now small enough to fit pockets. add: The rescue and jawed hook can now snag and reel in mobs, not only items. The jawed hook also slows down when applied, a la beartrap. qol: Fish bounties now accept filled (stasis) fish cases. qol: Several balloon alerts for fishing rod interactions. fix: Reeling in items (and mobs) now respects movement resistance and anchorage. fix: Fixed the fishing rod equipment UI being too small to fit its components. sound: Reeling in something now plays a sound. /🆑 * Fishing hook and reel line tweaks (also qol for the fish bounties) --------- Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com> |
||
|
|
f3d6882c25 |
[MIRROR] Makes lizard wine (and some other crafting menu drink recipe drinks) produce their intended reagents [MDB IGNORE] (#26097)
* Makes lizard wine (and some other crafting menu drink recipe drinks) produce their intended reagents (#80874) ## About The Pull Request Crafting recipes now have an arg that decides if crafting results will retain their starting reagents, or have ingredient reagents transferred into them. So, previously, crafting a specialty drink (lizard wine, candycorn liquor) from the crafting menu would immediately empty the new bottle's reagents and replace it with the ethanol used in the recipe. Now, recipes can be prevented from modifying their result's reagents by setting unique_reagents to TRUE (False by default. I don't know what recipes really use this functionality but I wanted to preserve it for everything but the drink recipes it interferes with.) Bonus: This changelog entry I found from 3 years ago, apparently fixing this same issue.  ## Why It's Good For The Game Closes #80870. Makes some more reagents accessible again. ## Changelog 🆑 Rhials fix: Specialty drinks crafted in the crafting menu will now create the intended reagents, instead of containing the reagents used to craft it. /🆑 * Makes lizard wine (and some other crafting menu drink recipe drinks) produce their intended reagents --------- Co-authored-by: Rhials <28870487+Rhials@users.noreply.github.com> |
||
|
|
d3a6ccae68 |
[MIRROR] Sec Biosuit craft, more bio-emergency supplies [MDB IGNORE] (#26035)
* Sec Biosuit craft, more bio-emergency supplies (#80622) ## About The Pull Request Makes Security bio suit and bio hood craftable using a normal bio suit/hood and helmet/armour vest. Adds a box of sterile masks and latex gloves to the bio-emergency crate from Cargo. ## Why It's Good For The Game Security bio suit is the only one with different armour values, yet there is only one for the entire Security department. By giving them the ability to craft them we give more Security Officers protection from disease without losing their red colour and armour (which is worse in bio suits than on their armour vests). This makes Security more likely to care about roleplaying during outbreaks, like enforcing quarantines. This isn't creating any new bio-suits, as to craft a Security bio-suit you need to acquire a normal bio-suit and some spare armour. Adding a box of sterile masks and latex gloves to the emergency bio-emergency crate makes it more useful. There is only 1 box of sterile gloves and 1 box of latex gloves on all of the stations at medbay at the moment. This way they can get more sterile masks and latex gloves to protect themselves from diseases, which is cool to see players caring about not getting infected and being in fear. * Sec Biosuit craft, more bio-emergency supplies --------- Co-authored-by: DrTuxedo <42353186+DrDiasyl@users.noreply.github.com> |
||
|
|
24afc641c5 |
[MIRROR] hygeienbots basic bots [MDB IGNORE] (#25923)
* hygeienbots basic bots (#80435) ## About The Pull Request turns hygenic bots into basic bots. also now PAIs and people can play as hygeinebots. and they can wear hats ## Why It's Good For The Game transforms hyginebots into basic bots. their old AI used to handle all the logic. i moved some of the logic to the mob itself so players can also clean (or burn) things. also this pr will add pathing limits to bots, in the case the jps movement thinks it can reach something, but actually cant, in which case the bot will give up the chase ## Changelog 🆑 refactor: hygeinebots are now basic bots. please report all the bugs fix: fixes hygenebots not being able to patrol add: hygeinebots can now be controlled by Players /🆑 * hygeienbots basic bots --------- Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> |
||
|
|
067188d366 |
[MIRROR] Micro-optimize qdel by only permitting one parameter [MDB IGNORE] (#25889)
* Micro-optimize qdel by only permitting one parameter (#80628) Productionizes #80615. The core optimization is this: ```patch - var/hint = to_delete.Destroy(arglist(args.Copy(2))) // Let our friend know they're about to get fucked up. + var/hint = to_delete.Destroy(force) // Let our friend know they're about to get fucked up. ``` We avoid a heap allocation in the form of copying the args over to a new list. A/B testing shows this results in 33% better overtime, and in a real round shaving off a full second of self time and 0.4 seconds of overtime--both of these would be doubled in the event this is merged as the new proc was only being run 50% of the time. * Micro-optimize qdel by only permitting one parameter --------- Co-authored-by: Mothblocks <35135081+Mothblocks@users.noreply.github.com> |
||
|
|
b79167c173 |
[MIRROR] Organ movement refactor *Un-nullspaces your organs* [MDB IGNORE] (#25530)
* Organ movement refactor *Un-nullspaces your organs* * Fix conflicts I checked the conflicts on the two weird conflicts and no previous TG pr touches them i assume its just github being github because those shoulden't be conflicts *shrug * Fix #1 uhh...this is going to be a long one * Fix #2 Modular Movement Flags * Fix #3 It builds now * Fix #4 Oh god it builds now, I missed some things * Fix #5 No more Runtimesplosion Now time for Synths * Update nightmare_organs.dm * on_mob_insert * https://github.com/Skyrat-SS13/Skyrat-tg/pull/25664 * https://github.com/Skyrat-SS13/Skyrat-tg/pull/25685 * https://github.com/Skyrat-SS13/Skyrat-tg/pull/25582 * https://github.com/Skyrat-SS13/Skyrat-tg/pull/25686 * bro the fucking brain does not go into the chest. * seriously? undocumented code causing shit. if it breaks ghouls, so be it. --------- Co-authored-by: Time-Green <7501474+Time-Green@users.noreply.github.com> Co-authored-by: SomeRandomOwl <somerandomowl@ratchtnet.com> Co-authored-by: SomeRandomOwl <2568378+SomeRandomOwl@users.noreply.github.com> Co-authored-by: Gandalf <9026500+Gandalf2k15@users.noreply.github.com> |
||
|
|
adbf657c7d |
[MIRROR] Crafting now transfers reagents from ingredients to final product [MDB IGNORE] (#25711)
* Crafting now transfers reagents from ingredients to final product (#80391) ## About The Pull Request - Fixes #80143 - Fixes #80381 Based on the ingredients required reagents of the final product can differ. It now transfers the olive oil from the bottle to the toasted seeds & the orange juice and grenadine reagent from the ingredients into the kasei dango. Snow cones are now also edible ## Changelog 🆑 fix: crafting now transfers reagents from ingredients to final product making previously inedible foods (toasted seeds, kasei dango & snow cones) edible. Other crafted food products/items now differ in reagents based on the ingredients required. /🆑 * Crafting now transfers reagents from ingredients to final product --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> |
||
|
|
a661aeec7a |
[MIRROR] Fixes an inconsistency with ED-209's crafting recipe [MDB IGNORE] (#25662)
* Fixes an inconsistency with ED-209's crafting recipe (#80364) ## About The Pull Request Makes the ED-209 crafting recipe only take security helmets, just as the Beepsky one does. ## Why It's Good For The Game As it stands right now, any helmet can be used to assemble an ED-209. This includes anything from your standard security helmet, to a hardhat, an envirohelm, or even a cheap toy roman helmet. This makes it so you need an actual security helmet, just like the Beepsky recipe does. ## Changelog 🆑 fix: ED-209s can no longer be crafted with most instances of helmet, you need security ones just like Beepsky. /🆑 * Fixes an inconsistency with ED-209's crafting recipe --------- Co-authored-by: StaringGasMask <62149527+Exester509@users.noreply.github.com> |
||
|
|
4701a177b7 |
[MIRROR] Motorized Wheelchair improvements [MDB IGNORE] (#25655)
* Motorized Wheelchair improvements (#80045) ## About The Pull Request This PR improves motorized wheelchairs in the following ways: - On initialize, motorized wheelchairs will have the most basic possible stock parts inserted. This resolves a bug where motorized wheelchairs spawned by admins or other means (mail, mapping) were completely worthless, as they had no stock parts in them and you could not insert better ones. When crafted, these basic parts are deleted and replaced with the correct ones. - Power cells are now part of the motorized wheelchair recipe, instead of being inserted after. - When deconstructed or destroyed, motorized wheelchairs now drop their power cell on the floor with everything else instead of deleting it from existence. - Miscellaneous old code has been tidied up, removing one-letter var names, pointless code duplication, and the like. ## Why It's Good For The Game I've been talking to Dalm about this, and wheelchairs are in dire need of some improvements. Tidying up the mess that is the motorized wheelchair seemed like a good place to start. Firstly, it's good for motorized wheelchairs to function as expected when not specifically crafted by hand. This is helpful to admins, mappers, and anyone else who might have reason to make one of these appear. It's also good that all the parts in the wheelchair drop on the ground when destroyed, as there's no particular reason power cells should be lost. As for power cells being included in the recipe - it's not obvious at a glance that you _need_ to insert a power cell after crafting, until you try to drive your new wheelchair around. This extra step of annoyance is now avoided by making it required to stick one in when you build the thing. ## Changelog 🆑 fix: Motorized wheelchairs will no longer spawn in a bugged state where they have no parts and can't be upgraded. fix: Motorized wheelchairs will drop their power cell when destroyed or deconstructed. qol: Power cells are now inserted into motorized wheelchairs as part of the crafting recipe, instead of as an extra step afterwards. /🆑 --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@ users.noreply.github.com> * Motorized Wheelchair improvements --------- Co-authored-by: lizardqueenlexi <105025397+lizardqueenlexi@users.noreply.github.com> Co-authored-by: SyncIt21 <110812394+SyncIt21@ users.noreply.github.com> |
||
|
|
3d816fc0d5 |
[MIRROR] basic cleanbots refactor and new janitor skillchip [MDB IGNORE] (#25511)
* basic cleanbots refactor and new janitor skillchip * Update medbot.dm * UpdatePaths --------- Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
9c60ff1de1 |
[MIRROR] Removes Clone Damage [MDB IGNORE] (#25429)
* Removes Clone Damage * Update blackbox.dm * Modular * Update schema * Update database_changelog.md * More modular deprecated clone things --------- Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
a6975112ed |
[MIRROR] Basic bots (medibots) [MDB IGNORE] (#25384)
* Basic bots (medibots) * UpdatePaths, modular --------- Co-authored-by: Ben10Omintrix <138636438+Ben10Omintrix@users.noreply.github.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
6c4c965ea4 |
[MIRROR] Changes occurrences of recieve in code to receive [MDB IGNORE] (#25393)
* Changes occurrences of `recieve` in code to `receive` * Fix conflict --------- Co-authored-by: distributivgesetz <distributivgesetz93@gmail.com> Co-authored-by: SomeRandomOwl <somerandomowl@ratchtnet.com> |
||
|
|
148c205512 |
[MIRROR] Fixes crafting menu incorrect use of reagents [MDB IGNORE] (#25382)
* Fixes crafting menu incorrect use of reagents (#80046) ## About The Pull Request - Fixes #79931 The way crafting menu handles reagents is an abomination. It manually updates its volume, rather than calling the correct procs for it and also "clones" reagents like... it does some weird stuff that can leave the beaker in an inconsistent state let's just leave it at that. Now we properly consume the reagent via `remove_reagent()` proc and don't do stuff manually so it works now. Also added some sanity checks such as `>=` and not simply `>` when checking for reagent volumes and also checks if we actually found a container in our surroundings which could runtime if none was available Also for my sanity please don't tell me to change any single letter var names here. This whole file is crawling with them so let someone else get their GBP from that ## Changelog 🆑 fix: crafting food or any other items that require reagents will not leave behind blank reagents. That and properly updates the holder those reagents are stored in /🆑 * Fixes crafting menu incorrect use of reagents --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> |
||
|
|
ed67fa1a29 |
[MIRROR] Final optimizations for reagent holder [MDB IGNORE] (#25216)
* Final optimizations for reagent holder * Modular --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
c34cd6fd3d |
[MIRROR] More code compression for reagent holder [MDB IGNORE] (#25121)
* More code compression for reagent holder (#79796) ## About The Pull Request Part 2 of #79686 where we trim down the size of `holder.dm` even further and in the process give some procs more advanced features as they get merged with their counterparts. **1. Removes & merges `get_multiple_reagent_amounts()` proc with `get_reagent_amount()`** The proc `get_multiple_reagent_amounts()` was only used by bio generator and 1 other item with its only use being finding the sum of all reagents present in the list returned by `typesof(datum/reagent/consumable/nutrient)`. Currently the approach is very inefficient because. - `typesof()` is an expensive call which returns a long list of reagents - `get_multiple_reagent_amounts()` would then use 2 nested for loops. One to loop over every reagent in this holder & another inner for loop to loop over every reagent returned by `typesof()` operator so the time complexity of this proc is overall multiplicative which in lamen terms means "Bad" We can replicate the same behaviour of `typesof()` by using the `type2parent()` proc and 1 more direct type check to get the exact same behaviour but with much faster results, therefore reducing overall code **2. Removes & merges `get_reagent()` proc with `has_reagent()`** The proc `has_reagent()` is way more advanced than `get_reagent()` with arguments requesting for a specific amount, metabolization and now even has a new argument i.e. `chemical flag`. `has_reagent()` has always returned the reagent reference directly and not a simple TRUE/FALSE so it is a perfect replacement for `get_reagent()`, therefore reducing overall code **3. Removes & merges `has_chemical_flag()` proc with `has_reagent()`** The proc `has_reagent()` can now look for a specific reagent with a specific chemical flag as well as mentioned above thus it can replace `has_chemical_flag()` therefore reducing overall code ## Changelog 🆑 code: Removes & merges `get_multiple_reagent_amounts()` proc with `get_reagent_amount()` inside reagent holder code: Removes & merges `get_reagent()` proc with `has_reagent()` inside reagent holder code: Removes & merges `has_chemical_flag()` proc with `has_reagent()` inside reagent holder refactor: Reagent holder code has been further compressed. Report bugs on github /🆑 * More code compression for reagent holder * Update hemophage_organs.dm --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
94e579cd35 |
[MIRROR] Emergency hotfix for engi crossbow [NO GBP] [MDB IGNORE] (#24910)
* Emergency hotfix for engi crossbow [NO GBP] (#79606) Hadnt added these commits when the PR got merged due to not expecting it oops ## Why It's Good For The Game See above, used to make my last pr actually function as intended. ## Changelog 🆑 fix: fixed engi crossbow being able to be used onehanded + ability to craft with sci inducers /🆑 --------- Co-authored-by: Jacquerel <hnevard@ gmail.com> * Emergency hotfix for engi crossbow [NO GBP] --------- Co-authored-by: KingkumaArt <69398298+KingkumaArt@users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@ gmail.com> |
||
|
|
064682b5cd |
[MIRROR] Adds engi improvised weapon - rebar crossbow + Engi Exclusive Tot Shop Variant [MDB IGNORE] (#24860)
* Adds engi improvised weapon - rebar crossbow + Engi Exclusive Tot Shop Variant (#78777) <!-- 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  Engi now has access to a Half Life 2 Inspired rebar crossbow! Made of rods, wire, and an inducer, it shoots sharpened iron rods at a high velocity. High damage and good embed chance, but requires you to reload every shot which requires you to stand still for three seconds to pull the string back. You can also Use a wrench on it to force it to store more rods (read: more than one), but risks it exploding and shooting you instead. The syndicate variant, avaliable to traitor engis, can fire three rounds before needing a reload, and features a scope and better armor piercing ammpo, but costs 10TC. I see it as a sidegrade to the revolver - quieter and has much more widespread ammuniton, but holds less ammo and doesnt have the same burst stopping power. And, to those concerned about the balance of a non-traitor with this item - the AP ammo can only be made by the traitor who bought it, and anyone else has to use normal ammo. GUN STAT JUNK Normal one has 60% embed chance and does 40 damage (against unarmored targetd), but requires you to wait at least 3 seconds not moving to pull the string back. Good alpha strike but not sustainable in a long fight. Its akin to a pipegun. Lacks any AP qualities besides piercing a jumpsuit, because any wound chance it has is due to a bare skin bonus. Generally not a great weapon to fight sec with. Syndie version is generally the above but better. Takes less to pull the string back, slightly higher damage, better fire rate, etc. Doesnt fare well against any armor thats equivalent to sec gear or better due to most having low (relatively) AP and wound chance, but good bare wound bonus. STATS TLDR: Its good against unarmored chumps and greyshirts but anyone in armor that protects against bullets will kick your teeth in. Also, Ammo is crafted from an iron rod. I wanted to have it just fire rods as is, but theyre stacked items which you cant define projectiles or ammo from. ## Why It's Good For The Game I've always felt engi, for as big of a department as it is, is lacking in the "fun weapons" area. Sci has mechs and xenobio, med has chem nades and syringe guns, and cargo has anything the QM will buy - but other than the flamer and shocked doors, engi doesnt have much. Thats why I made this pr. it was originally just a traitor item, as they lacked many traitor items in their shop, but I felt like a worse, bootleg version would suit them. ## 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 it's 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: Enginenering rebar crossbows + tot kit add: Added a bunch of ammos and crafting junk to make the ammo exist image: added icond for all the above /🆑 <!-- 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. --> --------- Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@ gmail.com> * Adds engi improvised weapon - rebar crossbow + Engi Exclusive Tot Shop Variant --------- Co-authored-by: KingkumaArt <69398298+KingkumaArt@users.noreply.github.com> Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@ gmail.com> |
||
|
|
a7509e9dfb |
[MIRROR] Scatter laser shells now use the scatter laser beam, and makes them significantly easier to make. Projectiles can now have damage falloff. [MDB IGNORE] (#24584)
* Scatter laser shells now use the scatter laser beam, and makes them significantly easier to make. Projectiles can now have damage falloff. (#78927) ## About The Pull Request Allows for damage falloff to apply to more than just shotgun pellets. Now any projectile can have a damage falloff defined. Scatter Laser shells no longer use the minigun beams to determine their damage. Instead they use the actually defined scatter laser beams. Those beams do 7.5 damage per pellet, times by 6 pellets. Scatter laser beams now have damage falloff, a separately defined (positive) wounding power from normal beams, and wound falloff. Scatter laser shells can be printed from security protolathes once you have weapon tech. Scatter laser shells _may_ be damaged by EMPs based on severity. The result is that it fires a practically useless volley of laser fire. They cause a honk sound when they hit, so you know when you've shot one of these. ## Why It's Good For The Game Well, we want shotguns universally to not be defined by their damage output (especially extreme damage output) but by niche. What does the scatter laser shell currently occupy as a niche? The single highest damage output of any projectile weapon in direct damage. The thing we don't want of shotguns, and it is reigning champion of all guns. Okay, that's a bit misleading, because obviously it is competing with the likes of .50 BMG which does 70 damage outright and dismembers limbs, potentially doing upwards of 90 damage if it does, and also hard stuns people. Obviously _that_ is technically a stronger bullet. But not for raw damage, because the scatter laser does 90 damage out the gate, barring any potential wounding that might occur which increases the damage multiplicatively. No gimmicks, no extra procs, nothing. It's just 15 force lasers (with no damage dropoff) split between 6 beams. And the reason for this is because this shell has been nerfed once prior by making it not fire 6 normal laser shots into someone. That was 120 damage at the time, 120 to 90 was...I guess a nerf during the taser era. Depends on how you viewed it. Buckshot was doing like 80 at the time, believe me it was a wild period. But anyway, when we did the whole damage rearrangement over the course of the laser few years, every other shell got touched except this one for some reason. Even pulse slugs lost 10 damage while this was still sitting on 90 force point blank. So what is the new niche? Well, it's laser buckshot. That's not a niche but crew don't get buckshot, so this is their buckshot. It wounds real good. Real goddamn good. And its is a laser. It fits the aesthetic, obviously. Okay, thanks. ## Changelog 🆑 balance: Scatter laser shells actually utilize the _real_ scatter laser beam. This comes with damage changes. And wounding power. feature: EMPs can potentially damage scatter laser shells. refactor: All projectiles can now have damage falloff defined. Yay. balance: Scatter laser shells can be printed when weapons technology is researched. /🆑 --------- Co-authored-by: Jacquerel <hnevard@ gmail.com> * Scatter laser shells now use the scatter laser beam, and makes them significantly easier to make. Projectiles can now have damage falloff. * Modular --------- Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@ gmail.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
a6995da07d |
Pollution doesn't spawn when the subsystem is offline + only player-crafted bonfires produce smoke (#24555)
* Pollution no longer happens when the subsystem is offline * Removes the code for bonfire pollution that wasn't done modularly * Modularizes bonfire pollution, makes the default bonfire not produce pollution * Player-made campfires produce pollution |
||
|
|
aab4740f24 |
[MIRROR] Reverts crafting hologram check [MDB IGNORE] (#24517)
* Reverts crafting hologram check (#79185)
## About The Pull Request
Reverts crafting check from #79028
I'm investigating this runtime

and - while the runtime points to a larger issue - this check is not
even necessary, as hologram items are already excluded from the list of
items.
|
||
|
|
42512d62be |
[MIRROR] Fixes crafting menu not detecting ingredients properly [MDB IGNORE] (#24513)
* Fixes crafting menu not detecting ingredients properly (#79141) ## About The Pull Request 1. Fixes #79089 This fix applies for the above issue and all crafting recipes that require some sort of reagent container containing reagents. It now adds the container & the reagents inside of it to the list of available ingredients & not just the reagents which was previously the case. 2. Fixes #79159 Other crafting ingredients in general were not being detected if it was not a stack type. That's fixed now too ## Changelog 🆑 fix: items that require reagent containers & the reagents inside it for crafting(e.g. molotov) now crafts properly. fix: most crafting recipes should work now /🆑 * Fixes crafting menu not detecting ingredients properly --------- Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com> |
||
|
|
8a907d2813 |
[MIRROR] Fix holodeck items from being eaten, crafted, recycled, juiced, or grinded [MDB IGNORE] (#24494)
* Fix holodeck items from being eaten, crafted, recycled, juiced, or grinded (#79028) ## About The Pull Request - Fixes #74612 The holodeck edibles could be eaten by the crew giving them nutrition and medicine reagents. This could be done an infinite amount of times since holodeck programs can be reloaded instantly. Holodeck items no longer can be: - Eaten - Crafted as an ingredient - Juiced into reagents - Grinded into reagents - Recycled into material ## Why It's Good For The Game No more free infinite heals from holodeck or other silly exploits. ## Changelog 🆑 fix: Fix holodeck items from being eaten, crafted, recycled, juiced, or grinded. /🆑 * Fix holodeck items from being eaten, crafted, recycled, juiced, or grinded --------- Co-authored-by: Tim <timothymtorres@gmail.com> |
||
|
|
e197b087dd |
[MIRROR] Added more slapcraft recipes, improved its component, fixed base cowboy hat type [MDB IGNORE] (#24410)
* Added more slapcraft recipes, improved its component, fixed base cowboy hat type (#78854) ## About The Pull Request Added slapcraft recipes for: Pillow suits, pillow helmets, bone and sinew tailoring/weaponry, pipeguns, ghetto jetpacks, and pneumatic cannons. The base type of cowboy hats no longer looks and is named like a bounty hunter hat, clarifying the recipe for the heroic laser musket. Fixed an issue where if a slapcraft recipe required more than one instance of its 'primary' slapcrafting item, it wouldn't show the additional instance when examining its recipes. ## Why It's Good For The Game Idk lol ## Changelog 🆑 qol: Added slapcraft recipes for: Pillow suits, pillow helmets, bone and sinew tailoring/weaponry, pipeguns, ghetto jetpacks, and pneumatic cannons. code: The base type of cowboy hats no longer looks and is named like a bounty hunter hat, clarifying the recipe for the heroic laser musket. They need cowboy hats not bounty hats. fix: Fixed an issue where if a slapcraft recipe required more than one instance of its 'primary' slapcrafting item, it wouldn't show the additional instance when examining its recipes. /🆑 * Added more slapcraft recipes, improved its component, fixed base cowboy hat type --------- Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com> |
||
|
|
d5d78fec30 |
[MIRROR] Makes the Regal Condor realistically simulate being shot dead with a high caliber hand cannon by making it HITSCAN [MDB IGNORE] (#24149)
* Makes the Regal Condor realistically simulate being shot dead with a high caliber hand cannon by making it HITSCAN (#78674) ## About The Pull Request The Regal Condor come with a magazine and ammo already inside. The recipe for the magazine now no longer needs TC, but does need donk pockets (sponsored murder gear, you see) and a hell of a lot more materials per magazine (you're looking at like 40 sheets of various materials all up). It also needs you to make the Condor first. But it comes preloaded with ammo. The Condor is 1 whole TC more expensive. Also needs some metal. The old recipe is there in spirit. The Regal Condor and the magazines come with 10mm Reaper bullets. They're high damage. They're high AP. They are also hitscan. ## Why It's Good For The Game Apparently people don't like the Condor. Too much effort for not enough reward. After all, revolvers exist. 'It must be a joke' they say! 'It's joke content! I went to all that effort to make it for nothing! That slut Anne tricked us!' **Wrong, bitch.** If you want the Condor to make you shit yourself the moment someone with it appears on the screen, then fine! ### **You get what you fucking deserve.** ## Changelog 🆑 balance: Despite earlier reports suggesting that the famous lethality of the Regal Condor was largely a myth, there has been rumors that the gun has once again started to display its true killing potential on any station that it 'manifests'. /🆑 * Makes the Regal Condor realistically simulate being shot dead with a high caliber hand cannon by making it HITSCAN --------- Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com> |
||
|
|
90f0f07709 |
[MIRROR] adds boxes of bandages, and bandages to go in them [MDB IGNORE] (#24065)
* adds boxes of bandages, and bandages to go in them (#78406) ## About The Pull Request have you ever walked into medbay, picked up a suture, and asked yourself "how do i know how to stitch myself up?" do you long for the simplicity of a bandage that can be popped on, no thought required? well, look no further! now introducing, the DeForest First Aid Bandage!  each box of bandages holds five each, which are all one time use items. using one heals up to 25 brute damage from a single part of the body. boxes of bandages will drain much faster than sutures, and are much less precise for healing specific increments of damage, but heal more in exchange. they are also worse at stopping blood loss, but not completely useless for it. they can be found in a handful of places: (some) high value medkits in paramedic's pockets some medbay lobbies some cargo holds all sec infirmaries in goodies on the cargo console maint loot and nanomeds! i considered making these replace brute kits, but those are used in a lot of old references, so it felt a bit passe. so i made a new item that is a bit more balanced, so they can be mapped in and added to vendors without much worry. ## Why It's Good For The Game cute item, heals the people who wouldn't really be going into medbay anyways, and is fairly flavorful. if it's a bit too strong as is i can tweak the number, but the goal is to not be powerful enough to outshine sutures, while still offering somewhat effective healing for rough housing assistants and antags ## Changelog 🆑 add: adds boxes of bandages, a quick healing item /🆑 * adds boxes of bandages, and bandages to go in them * Update medical_boxes.dm * Update VoidRaptor.dmm --------- Co-authored-by: Lamb <110322848+CoiledLamb@users.noreply.github.com> Co-authored-by: lessthanthree <83487515+lessthnthree@users.noreply.github.com> |
||
|
|
89a03b48e2 |
[MIRROR] Converts slapcrafting into a component [MDB IGNORE] (#23955)
* Converts slapcrafting into a component * Update color.dm --------- Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
e310aa97b3 |
[MIRROR] [Fuck Shotties] Old Yellers Old Yeller (Improvised Shell Nerf) [MDB IGNORE] (#23812)
* [Fuck Shotties] Old Yellers Old Yeller (Improvised Shell Nerf) (#78235) ## About The Pull Request Reworks improv shells to not be equal or even superior to buckshot, by cutting their damage in half and reducing the wound bonuses. In return they have a demolition_mod of 3, so do more damage overall to the environment, a true vandal's paradise. Added a glass shard to the recipe as an actual projectile instead of just sheets of metal. ## Why It's Good For The Game When buckshot was originally removed from the station (#55663) the intended purpose was, as requested by oranges, to make shotguns a specialist weapon instead of general purpose lethals. It has come to my attention that improvised shells (which were initially intended to be a weaker alternative made form commonly available materials) are in fact better buckshot, and had no right to survive the original nerf. I am now fixing that oversight by turning improvised shells into a more specialised vandalism tool. ## Changelog 🆑 balance: Improvised shotgun shells now deal half as much damage to humans and cause less wounds, but do 50% more damage to structures and machines. They also require a glass shard for crafting. /🆑 * [Fuck Shotties] Old Yellers Old Yeller (Improvised Shell Nerf) --------- Co-authored-by: Thunder12345 <Thunder12345@users.noreply.github.com> |
||
|
|
08bbda5fd3 |
[MIRROR] Gun kits don't need cable coil or tools, halved crafting time [MDB IGNORE] (#23802)
* Gun kits don't need cable coil or tools, halved crafting time (#78419) ## About The Pull Request Crafting R&D guns from gun kits no longer requires tools or cable coil. The decloner and energy crossbow still need reagents. Halved R&D gun crafting time. 20->10 seconds. ## Why It's Good For The Game These changes were made a long, long while ago and honestly while I understand gun kits I don't understand why it was made So. Annoying. To make the fucking guns once you got everything ready. It makes it a total annoyance. You spent 40 minutes getting all the tech for it, you shouldn't have to also get tools and cables and wait 20 seconds standing still. Anyone who has played ingame like any time after that change can attest how underused any R&D gun is now. X-ray laser guns still DESTROY blobs but people don't even THINK about them because of the dumb annoying recipe (alongside RnD being a pain now). Simply put this just. Makes life easier for security officers. And reduces tool dependency. ## Changelog 🆑 qol: Crafting R&D guns from gun kits no longer requires tools or cable coil. The decloner and energy crossbow still need reagents. qol: Halved R&D gun crafting time. 20->10 seconds. /🆑 * Gun kits don't need cable coil or tools, halved crafting time --------- Co-authored-by: carlarctg <53100513+carlarctg@users.noreply.github.com> |
||
|
|
fb9d01d959 |
[MIRROR] Adds craftable surgery trays. [MDB IGNORE] (#23790)
* Adds craftable surgery trays. (#78364) ## About The Pull Request Surgery trays can now be crafted in the crafting menu for two rods and one silver, while having a screwdriver. (Same cost as a table.) Out of necessity, the preloaded variants of surgery trays have been re-pathed to a full subtype, though maps have already been updated to use the preloaded variant. The morgue tray and the (new!) advanced trays have been re-pathed to `.../full/morgue` and `.../full/advanced`, respectively Additionally, surgery trays can now be deconstructed by secondary click with a screwdriver. Woo! ## Why It's Good For The Game If you want more surgery trays, build 'em! If you want less surgery trays, unbuild 'em! ## Changelog 🆑 qol: Surgery trays can now be crafted via the crafting menu (two rods, one silver), and deconstructed via secondary click with a screwdriver! /🆑 --------- Co-authored-by: Jacquerel <hnevard@ gmail.com> * Adds craftable surgery trays. * UpdatePaths --------- Co-authored-by: Shadow-Quill <44811257+Shadow-Quill@users.noreply.github.com> Co-authored-by: Jacquerel <hnevard@ gmail.com> Co-authored-by: Giz <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
3863238ccd |
[MIRROR] Removes some food initialize arguments [MDB IGNORE] (#23712)
* Removes some food initialize arguments (#78322) ## About The Pull Request A prior PR added some new initialize arguments to the food subtype which did not strictly need to be there, this caused a large number of bugs as a result of places which already had extra initialize arguments not correctly accounting for these new ones. As a result I have removed these again in favour of performing the required operations in a different way (one of these arguments was seemingly used for butter purity and literally nothing else), for this food and also some of its subtypes. In some other cases where it _did_ make sense to have arguments in `initialize` I also added them to `new` so they can be passed by name. This will hopefully make the food more maintainable if in the future if someone does something similar, and solve any remaining bugs related to "not passing the arguments properly". ## Changelog Hopefully not player facing * Removes some food initialize arguments --------- Co-authored-by: Jacquerel <hnevard@gmail.com> |
||
|
|
6620bffa84 |
[MIRROR] Collected food fixes [MDB IGNORE] (#23596)
* Collected food fixes (#78190) I went through the code and tried to find all of the remaining places we forgot to update the arguments passed into `item/food/Initialize` after more arguments were added to it, because there were a couple and they caused things to stop working. Most notably, golems were unable to eat anything because nothing would correctly spawn "golem food". _Additionally_ we were using a bunch of named arguments in new whenever crafting or cooking food. This runtimed, causing the food not to init properly. _On top of that_ a late code review on a recent PR processed a list into a string_assoc_list twice causing it to become null. Finally, we were trying to check the food preferences of examining ghosts or dogs or other non-human mobs. We shouldn't do that. I also added a unit test for moth and golem food in the hopes that we'll notice them breaking. * Collected food fixes --------- Co-authored-by: Jacquerel <hnevard@gmail.com> |
||
|
|
5889ad4fc8 |
[MIRROR] Fixes an edge case in personal crafting that could result in the crafting window getting stuck forever [MDB IGNORE] (#23442)
* Fixes an edge case in personal crafting that could result in the crafting window getting stuck forever * Update crafting.dm --------- Co-authored-by: GoldenAlpharex <58045821+GoldenAlpharex@users.noreply.github.com> Co-authored-by: Bloop <13398309+vinylspiders@users.noreply.github.com> |
||
|
|
061770c032 |
[MIRROR] Ports poppy and geranium sprites from beestation (plus flower crowns!!) [MDB IGNORE] (#23432)
* Ports poppy and geranium sprites from beestation (plus flower crowns!!) (#78022) ## About The Pull Request Ported from [here](https://github.com/BeeStation/BeeStation-Hornet/pull/5397). I have for the longest time hated how geraniums and lilies are just a resprite of poppies, so, with the permission of the original PR author  I present you, plants.   ## Why It's Good For The Game No more recoloured poppies, plants have soul now. Also flower crowns are pretty. ## Changelog 🆑 xPokee, Pirill add: Added flower crowns, craftable via the clothing menu. image: Resprited geraniums, poppies, and lilys, along with changing their worn icon. /🆑 --------- Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> * Ports poppy and geranium sprites from beestation (plus flower crowns!!) --------- Co-authored-by: Alexis <catmc8565@gmail.com> Co-authored-by: MrMelbert <51863163+MrMelbert@ users.noreply.github.com> |
||
|
|
d0a892d19c |
[MIRROR] Big Slappy | Giant Weapon DLC [MERGE READY!!!] [MDB IGNORE] (#23082)
* Big Slappy | Giant Weapon DLC [MERGE READY!!!] (#77273) ## About The Pull Request Big Slappy is a new illegal shovel/wrench which can be obtained through illegals means. Parts you need to craft it can be found on the black market uplink for a low price, but if it is not there you can find it on the imports page on your hacked cargo console for 4400 credits usually. Big Slappy makes you slow and you will get 10 recoil damage everytime you hit someone and you will knock down your opponent for two seconds while throwing people back like a baseball bat. It deals 30 damage and is the fastest shovel/wrench out there. It can be folded into its wrench form which will change its typing and makes it look like a wrench. It also deals more damage in the wrench state, but also deals more recoil damage and your target will not get knocked down. This weapon will probably only appear in a few rounds since it has recoil damage, is slow and costs a lot to obtain. It also has a longer meele attack cooldown. To craft it you need 4 wrenches, 1 drill, 5 plasteel, 10 rods and 1 big slappy parts using tools.  ## Why It's Good For The Game Cool new weapon. ## Changelog 🆑 add: Added big slappy image: Added big slappy parts and big slappy sprites /🆑 * Big Slappy | Giant Weapon DLC [MERGE READY!!!] --------- Co-authored-by: Comxy <tijntensen@gmail.com> |
||
|
|
27bdb234e2 |
[MIRROR] fixes medbots made with tactical medical kits having the wrong skin [MDB IGNORE] (#23074)
* fixes medbots made with tactical medical kits having the wrong skin (#77080) Fixes #76996 🆑 ShizCalev fix: Medbots made with tactical medical kits now have the correct skin /🆑 * fixes medbots made with tactical medical kits having the wrong skin --------- Co-authored-by: ShizCalev <ShizCalev@users.noreply.github.com> |