632 Commits
Author SHA1 Message Date
nevimer 00ccf0c6b5 Merge remote-tracking branch 'tgstation/master' into upstream-feb12-2026
# Conflicts:
#	.github/CODEOWNERS
#	.github/workflows/compile_changelogs.yml
#	.github/workflows/stale.yml
#	SQL/database_changelog.md
#	_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm
#	code/__DEFINES/atom_hud.dm
#	code/__DEFINES/inventory.dm
#	code/__DEFINES/mobs.dm
#	code/__DEFINES/species_clothing_paths.dm
#	code/__DEFINES/subsystems.dm
#	code/__DEFINES/surgery.dm
#	code/__HELPERS/global_lists.dm
#	code/_globalvars/lists/maintenance_loot.dm
#	code/_globalvars/traits/_traits.dm
#	code/controllers/subsystem/minor_mapping.dm
#	code/controllers/subsystem/processing/quirks.dm
#	code/controllers/subsystem/shuttle.dm
#	code/datums/components/palette.dm
#	code/datums/components/surgery_initiator.dm
#	code/datums/diseases/advance/advance.dm
#	code/datums/hud.dm
#	code/datums/mood.dm
#	code/datums/mutations/chameleon.dm
#	code/datums/quirks/negative_quirks/nyctophobia.dm
#	code/datums/status_effects/debuffs/debuffs.dm
#	code/datums/status_effects/debuffs/drunk.dm
#	code/datums/status_effects/debuffs/slime/slime_leech.dm
#	code/datums/weather/weather.dm
#	code/game/data_huds.dm
#	code/game/objects/items.dm
#	code/game/objects/items/devices/scanners/health_analyzer.dm
#	code/game/objects/items/frog_statue.dm
#	code/game/objects/items/rcd/RLD.dm
#	code/game/objects/items/robot/items/hypo.dm
#	code/game/objects/items/stacks/medical.dm
#	code/game/objects/items/stacks/wrap.dm
#	code/game/objects/items/storage/garment.dm
#	code/game/objects/items/tools/medical/defib.dm
#	code/game/objects/items/weaponry.dm
#	code/game/objects/items/weaponry/melee/misc.dm
#	code/game/objects/structures/crates_lockers/closets/secure/security.dm
#	code/game/objects/structures/curtains.dm
#	code/game/objects/structures/dresser.dm
#	code/game/objects/structures/girders.dm
#	code/game/objects/structures/maintenance.dm
#	code/game/objects/structures/mirror.dm
#	code/modules/admin/greyscale_modify_menu.dm
#	code/modules/admin/verbs/light_debug.dm
#	code/modules/antagonists/ashwalker/ashwalker.dm
#	code/modules/antagonists/heretic/knowledge/starting_lore.dm
#	code/modules/antagonists/ninja/ninjaDrainAct.dm
#	code/modules/art/paintings.dm
#	code/modules/client/preferences.dm
#	code/modules/client/verbs/ooc.dm
#	code/modules/clothing/head/wig.dm
#	code/modules/events/disease_outbreak.dm
#	code/modules/holodeck/holo_effect.dm
#	code/modules/jobs/job_types/head_of_security.dm
#	code/modules/jobs/job_types/security_officer.dm
#	code/modules/library/skill_learning/generic_skillchips/point.dm
#	code/modules/mining/lavaland/ash_flora.dm
#	code/modules/mining/lavaland/mining_loot/megafauna/ash_drake.dm
#	code/modules/mob/dead/new_player/new_player.dm
#	code/modules/mob/living/basic/guardian/guardian.dm
#	code/modules/mob/living/basic/space_fauna/space_dragon/space_dragon.dm
#	code/modules/mob/living/carbon/carbon.dm
#	code/modules/mob/living/carbon/human/human.dm
#	code/modules/mob/living/carbon/human/human_defines.dm
#	code/modules/mob/living/carbon/life.dm
#	code/modules/mob/living/living.dm
#	code/modules/mob/living/living_defines.dm
#	code/modules/mob/mob.dm
#	code/modules/mob_spawn/ghost_roles/mining_roles.dm
#	code/modules/mod/mod_control.dm
#	code/modules/mod/modules/modules_general.dm
#	code/modules/modular_computers/computers/item/computer_ui.dm
#	code/modules/paperwork/paper.dm
#	code/modules/paperwork/paperbin.dm
#	code/modules/power/lighting/light.dm
#	code/modules/projectiles/guns/energy/kinetic_accelerator.dm
#	code/modules/projectiles/projectile.dm
#	code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm
#	code/modules/reagents/chemistry/reagents/food_reagents.dm
#	code/modules/reagents/chemistry/reagents/other_reagents.dm
#	code/modules/reagents/chemistry/reagents/pyrotechnic_reagents.dm
#	code/modules/research/xenobiology/crossbreeding/_clothing.dm
#	code/modules/research/xenobiology/crossbreeding/prismatic.dm
#	code/modules/surgery/advanced/brainwashing.dm
#	code/modules/surgery/advanced/lobotomy.dm
#	code/modules/surgery/amputation.dm
#	code/modules/surgery/blood_filter.dm
#	code/modules/surgery/bodyparts/_bodyparts.dm
#	code/modules/surgery/brain_surgery.dm
#	code/modules/surgery/cavity_implant.dm
#	code/modules/surgery/coronary_bypass.dm
#	code/modules/surgery/gastrectomy.dm
#	code/modules/surgery/healing.dm
#	code/modules/surgery/limb_augmentation.dm
#	code/modules/surgery/organ_manipulation.dm
#	code/modules/surgery/revival.dm
#	code/modules/surgery/sleeper_protocol.dm
#	code/modules/surgery/surgery_helpers.dm
#	code/modules/surgery/surgery_step.dm
#	code/modules/unit_tests/_unit_tests.dm
#	code/modules/unit_tests/designs.dm
#	code/modules/unit_tests/icon_state_worn.dm
#	code/modules/unit_tests/screenshots/screenshot_antag_icons_cultist.png
#	code/modules/unit_tests/screenshots/screenshot_antag_icons_headrevolutionary.png
#	code/modules/unit_tests/screenshots/screenshot_antag_icons_provocateur.png
#	code/modules/unit_tests/screenshots/screenshot_husk_body.png
#	code/modules/unit_tests/screenshots/screenshot_husk_body_missing_limbs.png
#	icons/map_icons/clothing/head/_head.dmi
#	icons/map_icons/clothing/shoes.dmi
#	icons/map_icons/items/_item.dmi
#	icons/mob/huds/hud.dmi
#	icons/mob/inhands/64x64_lefthand.dmi
#	icons/mob/inhands/64x64_righthand.dmi
#	icons/obj/machines/computer.dmi
#	tgui/packages/tgui/interfaces/OperatingComputer.jsx
#	tgui/packages/tgui/interfaces/PreferencesMenu/CharacterPreferences/MainPage.tsx
#	tgui/packages/tgui/interfaces/PreferencesMenu/types.ts
#	tgui/packages/tgui/interfaces/SurgeryInitiator.tsx
#	tools/icon_cutter/check.py
2026-02-12 23:50:09 -05:00
Leland KembleandGitHub 321287dd34 Sheathed weapon counterattack 2: What if the sheath was also a gun (#94780) 2026-01-28 18:46:10 +01:00
6916730eca Ballista adjustments (#94724)
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
2026-01-15 20:45:43 +00:00
SmArtKarandGitHub 71a232f03b Makes lizard skin and lizardskin items inherit their "donor's" skin color (#94751)
## About The Pull Request

As title says, skin butchered from humans (currently only applies to
lizardskin) now inherits their owner's skin color, and so do items
(lizardskin boots and hats) made from it.

Also this PR gagsifies lizardskin hats and boots for this very reason.

## Why It's Good For The Game

Consistency, when you butcher a purple lizard you should get purple
lizard boots.

## Changelog
🆑
add: Made lizard skin and lizardskin items inherit their "donor's" skin
color
/🆑
2026-01-12 00:29:35 +00:00
MrMelbertandGitHub b804e1df79 Revamps security bounties (#94545)
## About The Pull Request

<img width="565" height="201" alt="image"
src="https://github.com/user-attachments/assets/f747992c-82d7-4cd2-9d5c-b94b7de37cdd"
/>

<img width="618" height="108" alt="image"
src="https://github.com/user-attachments/assets/8d5c4e25-87ea-4e53-b9e6-e95e26b3e69f"
/>

- N-spect scanners can no longer print reports

- Clown N-spect scanners have been removed as printing reports was their
primary function

- Security no longer get bounties to loot the brig's equipment. The
contraband bounty is still available.

- Patrol bounties have been reworked. 
- A patrol bounty will give you an area and a number of steps that you
must take in an area.
- To complete the bounty, you must walk to the area and take that many
steps. It's that simple.
   - Your ID card will update you as you progress the bounty. 
- You are rewarded more for larger areas, and less for teeny tiny areas.
- Walking back and forth the same two tiles will not count towards
progress.
- When done, all you need to do is go back to the civ console and press
"send". You don't need to add any items to the pad.
- All security officers can get general patrol bounties (service + maint
+ hallways). Departmental officers can get patrol bounties for their
department.
- And yes, it tracks if your *id card* moves. This means you can strap
your ID card to a drone and it'll count. Get creative if you're lazy.

- ID trims how handle bounty generation. This changes very little,
besides allowing certain trims for certain jobs to add specific
bounties.

- There's now setters for bounties and bank accounts. 

- Fix Bountious Bounty trait by having a `get_reward`

## Why It's Good For The Game

Sec bounties to loot a bunch of miscellaneous things from the brig is...
odd. All it does is deprive your team of equipment should you need it.

On the other hand, patrol bounties are really flavorful, but a bit
cumbersome thanks to needing a hand scanner. By integrating the process
of patrolling *into* the officer's ID card, it means you can just grab a
bounty and go about your business.

The idea is that this'll streamline the process of patrolling a bit and
make it more natural and fun (well, as fun as "walking around" can be.
Which is fun to me...)

## Changelog

🆑 Melbert
del: N-spect scanners can no longer print reports. All it does now is
scan for contraband.
del: Clown N-spect scanners have been removed.
del: Security no longer get bounties to loot the brig's equipment.
Though the contraband bounty is still available.
add: Security's patrol bounties have been reworked. Now, they just
require you to walk around an area for a bit. No scanning necessary.
refactor: Adds setters for bounties and bank accounts. Report any
situations where your bank account is not set correctly.
refactor: ID trims now handle bounty generation. Report any situations
where you get a weird pool of bounties.
fix: Bountious Bounties station trait works again
/🆑
2026-01-11 14:20:11 -05:00
BloopandGitHub cf14dcfc1a Converts 3 components into elements (#94589)
## About The Pull Request

`adjust_fishing_difficulty` is a good one to make into a bespoke element
since a number of the same clothing item are created in the wardrobe
system.

climb_walkable is also good due to how prevalent it is, and it is a bit
of a two for one since it also removes the need for the
`/component/connect_loc_behalf`

Also stops adding the on_climbable trait to literally everything in the
turf, it now only applies it to atoms with density. So no more pipes and
stuff getting trait lists created for no reason.

<details><summary> Tested + things still work as before </summary>

<img width="422" height="122" alt="image"
src="https://github.com/user-attachments/assets/b23696f5-cd16-4150-aeb3-14ea6bd256fc"
/>

</details>

## Why It's Good For The Game

Lessens overhead, fixes a bug as well.

## Changelog

🆑
fix: fixes a pushed crate not removing on_climbable trait properly off
the mob standing atop it
/🆑
2025-12-30 01:05:50 +01:00
JeremiahandGitHub da7ee7e532 Fixes search in crafting menu (#94623)
## About The Pull Request
The frontend is expecting a recipe's requirements `reqs` to be an
object, but it doesn't send it when there are none

<img width="415" height="102" alt="image"
src="https://github.com/user-attachments/assets/b4c453e6-6d17-4733-bfe2-3e44153d7962"
/>

This kills the tgui
## Why It's Good For The Game
Fixes #94604
## Changelog
🆑
fix: Fixed a bluescreen in the personal crafting menu
/🆑
2025-12-28 19:02:39 -05:00
53ed83bb9d Makes some more lists lazy (#94388)
Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com>
2025-12-28 19:57:42 +01:00
TimandGitHub 826d2b4638 Add recipes for flare, washer machine, lamp, lantern, cabinet, alien closet, and large metal box (#94283) 2025-12-21 14:00:19 +01:00
47606e453e Siege Warfare: Adds two new craftable emplaced guns, a bigger laser musket, and a new spear for crew-sided mining. (#94102)
<img width="517" height="305" alt="image"
src="https://github.com/user-attachments/assets/e8cd8bcd-dd3c-4733-99fe-0cdfb9799182"
/>

So, been a while, hasn't it? This PR adds three things. First Up: The
Ratvarian Repeater.


![side](https://github.com/user-attachments/assets/cdbadfad-29a9-4e32-b1b6-85872db94143)

The Ratvarian repeater is a mounted gun made from bronze, stock parts,
and some drinking glasses. it is the emplaced counterpart to the laser
musket, as the pipe organ gun is to the crossbow. Being a laser musket
derivative, this means it has the benefit of _infinite ammo._ However,
this also means to reload it, you turn the crank on the back. My
personal headcanon was it works via a spring mechanism not unlike a
watch, so naturally, it turned into a clock-cult flavored weapon. Each
individual volley per winding shoots 12 laser musket shots in bursts of
two.


https://github.com/user-attachments/assets/152c3ce8-3560-4c8a-b618-7f2d81fb75a0

However, this isnt the only thing it's capable of. If you prefer your
weapons more iconoclastic, you can take a welder to the stand, and carry
it around, for the ability to shoot two laser musket shots instead of
one per trigger pull... with the price being a decreased movespeed, and
the second shot having random spread. Also you cant redeploy the stand,
because iconoclasm. Still, the power is there, if you desire it.

Overall, the repeater is the "Expensive but reliable" option of the
three craftable gun emplacements. It has the most work to get, but once
you have it, theres no need for ammo.


On the complete opposite side of the coin, we have the Improvised
Ballista.


https://github.com/user-attachments/assets/16262965-a860-4205-bc3e-eeb8ec593647

This thing is as cheap as it gets - taking iron and wire to make (plus
tools), and fires the classic spears greytiders love for 80 damage. This
sounds like a lot (and it is), but once the ballista has fired - that's
it, and reloading a second spear takes a full six seconds. Of the four
emplaced guns, it has the least damage per firing sequence, but has all
that damage in one big projectile. The ballista overall is designed to
be dirt cheap to make and generally useful, but requiring a lot of work
to keep running.



And lastly, we have the Giant-killer spear. 
<img width="417" height="287" alt="image"
src="https://github.com/user-attachments/assets/613379aa-379c-40b3-b4fc-ccdaa5ea4678"
/>

Crafted from titanium, plasteel and seven knives, and then forged by
throwing it into lava this monstrously oversized spear is designed to
fight monstrously oversized... monsters. While only doing 21 damage when
wielded, this damage is multiplied by 3.5 against lavaland fauna,
dealing damage equal to a crusher mark detonation. However, despite the
ease of use, it lacks the ability to mount trophies like the crusher, so
is much more suited to killing basic enemies like legions or goliaths,
rather than megafauna. (It still does decently versus them, but youre
prone to just dying.) Additionally, due to lacking the requirements of
mining access or lavaland monsters, it can be made by the crew at large,
providing them a meaningful defense on lavaland/icemoon. It can also be
loaded into the ballista, so you can, if you desire, show those
ashwalkers how the dark ages were REALLY fought.

<img width="202" height="236" alt="image"
src="https://github.com/user-attachments/assets/d21a7275-3d9e-427b-ac14-fee080541fb5"
/>

This PR has been six months in the making, so it feels good to finally
get it out.

Why its good for the game: Similar logic to my previous improvised
weapon prs; I feel the dichotomy of "High tech laser rifle" and "Gun
made from stuff lying around" is an interesting one. Of the damage
values, the only one that has the potential for a balance issue is the
spear, but due to being basically a plastitanium spear that does better
versus mining mobs, I don't forsee this becoming a weapon that you can
arm an entire revolution with.

## Changelog

🆑 Webcomicartist
add: Added the ratvarian repeater, a craftable emplaced crank laser
weapon that can be carried by hand, themed after clock cult.
add: Added the improvised ballista, the rebar crossbow's bigger brother,
that fires spears. Huge damage, terrible fire rate.
add: Added the giant-slayer spear, a spear made at a necropolis tendril
that does extra damage to lavaland creatures. (Ballista compatible)
image: added sprites for the above.
qol: The pipe organ gun should be easier to light now.
fix: Fixed Pipe Organ Gun firing sprites not always going back to normal
after finishing firing.
refactor: Mounted guns are now EVEN MORE flexible codewise, now
supporting secondary ammo types.
/🆑

---------

Co-authored-by: Jacquerel <hnevard@gmail.com>
2025-12-21 03:03:54 +00:00
nevimer 6e9f2ccfc0 Merge remote-tracking branch 'tgstation/master' into upstream-12-15
# Conflicts:
#	.github/workflows/compile_all_maps.yml
#	.github/workflows/run_integration_tests.yml
#	_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm
#	code/_onclick/hud/credits.dm
#	code/controllers/subsystem/networks/id_access.dm
#	code/datums/diseases/advance/advance.dm
#	code/datums/diseases/advance/symptoms/heal.dm
#	code/game/machinery/doors/door.dm
#	code/game/objects/structures/crates_lockers/closets/secure/medical.dm
#	code/game/objects/structures/crates_lockers/closets/secure/security.dm
#	code/modules/antagonists/malf_ai/malf_ai_modules.dm
#	code/modules/jobs/job_types/_job.dm
#	code/modules/loadout/categories/accessories.dm
#	code/modules/loadout/loadout_helpers.dm
#	code/modules/loadout/loadout_items.dm
#	code/modules/loadout/loadout_preference.dm
#	code/modules/mob/living/silicon/robot/robot_defense.dm
#	code/modules/mod/mod_theme.dm
#	code/modules/projectiles/ammunition/energy/laser.dm
#	code/modules/reagents/reagent_containers/cups/drinks.dm
#	code/modules/shuttle/mobile_port/variants/supply.dm
#	code/modules/surgery/organs/internal/eyes/_eyes.dm
#	code/modules/unit_tests/screenshots/screenshot_antag_icons_heretic.png
#	icons/hud/screen_full.dmi
2025-12-15 18:12:29 -05:00
LT3andGitHub f24d464abc Updates silent jaws of recovery (#94082) 2025-12-03 11:25:11 +01:00
GhomandGitHub 0b0c5ea91e Unit test material checks are now performed on all crafting recipes by default. All stack recipes now transfer mats to the results (#92620)
## About The Pull Request
Extends the part of the crafting unit test that ensures consistency
between the total mats of the components of a recipe (or rather, the
result of said recipe) and a generic instance of the same type as its
result, previously only implemented on food recipes.

## Why It's Good For The Game
This ensures a degree of consistency with the material composition of
various objects in the game. I couldn't do it in the original PR as that
one was too big already and it took months to get it merged, and have
the relative bugs fixed.

Currently a WIP as I slowly deal with the unit test reports.

## Changelog

🆑
refactor: Follow-up to the crafting/material refactor from months ago.
All objects crafted with stacks now inherit their mat composition (not
necessarily the effects and color) by default, while previously only a
few things like chair, sinks and toilets did. Report any object looking
or behaving weirdly as a result.
fix: The material composition of ammo boxes is no longer a 1/10 of what
it's supposed to be. It was a shitty hack to make it harder to recycle
empty ammo boxes. Instead, they lose materials as they're emptied now.
/🆑
2025-12-02 18:29:01 -05:00
nevimer baf3837ae8 Merge remote-tracking branch 'tgstation/master' into upstream-2025-11-29
# Conflicts:
#	_maps/RandomRuins/SpaceRuins/derelict_sulaco.dmm
#	_maps/RandomRuins/SpaceRuins/garbagetruck2.dmm
#	_maps/map_files/CatwalkStation/CatwalkStation_2023.dmm
#	_maps/map_files/tramstation/tramstation.dmm
#	code/_onclick/hud/new_player.dm
#	code/datums/components/squashable.dm
#	code/datums/diseases/advance/symptoms/heal.dm
#	code/datums/diseases/chronic_illness.dm
#	code/datums/status_effects/buffs.dm
#	code/datums/status_effects/debuffs/drunk.dm
#	code/datums/status_effects/debuffs/stamcrit.dm
#	code/game/machinery/computer/crew.dm
#	code/game/objects/items/devices/scanners/health_analyzer.dm
#	code/game/objects/items/wall_mounted.dm
#	code/game/turfs/closed/indestructible.dm
#	code/modules/admin/view_variables/filterrific.dm
#	code/modules/antagonists/heretic/influences.dm
#	code/modules/cargo/orderconsole.dm
#	code/modules/client/preferences.dm
#	code/modules/events/space_vines/vine_mutations.dm
#	code/modules/mob/dead/new_player/new_player.dm
#	code/modules/mob/living/carbon/human/death.dm
#	code/modules/mob/living/carbon/human/species_types/jellypeople.dm
#	code/modules/mob/living/damage_procs.dm
#	code/modules/mob/living/living.dm
#	code/modules/mob_spawn/ghost_roles/mining_roles.dm
#	code/modules/mob_spawn/mob_spawn.dm
#	code/modules/projectiles/ammunition/energy/laser.dm
#	code/modules/projectiles/guns/ballistic/launchers.dm
#	code/modules/projectiles/guns/energy/laser.dm
#	code/modules/reagents/chemistry/machinery/chem_dispenser.dm
#	code/modules/reagents/chemistry/reagents/cat2_medicine_reagents.dm
#	code/modules/reagents/chemistry/reagents/drinks/alcohol_reagents.dm
#	code/modules/reagents/chemistry/reagents/medicine_reagents.dm
#	code/modules/surgery/healing.dm
#	code/modules/unit_tests/designs.dm
#	icons/mob/inhands/items_lefthand.dmi
#	icons/mob/inhands/items_righthand.dmi
#	tgui/packages/tgui/interfaces/ChemDispenser.tsx
2025-11-29 22:49:21 -05:00
d76d2f5438 Laser Gun Update: Deep Lore, Gun Variety, Pew Pew (#93520)
## About The Pull Request

Updates the laser gun into four proper subtypes: Standard, Pistol, Rifle
and Carbine.

<img width="229" height="210" alt="image"
src="https://github.com/user-attachments/assets/12c03076-8ebf-4d87-8c98-6a8cce6821db"
/>

Current sprites are pending a palette change.

**Standard:** Functions as you would expect. Same as ever.

**Pistol**: Lower charge, 20 force, normal sized, recharges faster.

**Carbine**: 15 force, 26 mag, two round burst. Projectiles flight
slightly faster. Cannot dual-wield.

**Rifle**: 20 force. 40 mag. Two round burst. EMP resistant (not
immune). Projectiles fly slightly faster. Cannot dual-wield (not that
you need to).

All but the rifle can be sourced from cargo. You can also buy the sovl
version of the laser gun if you're especially nostalgic.

### Armory Changes

The Armory now can potentially spawn either pistols, carbines or
standard. The weighting leans closer to spawning carbines and standard
as opposed to pistols.

### Lore Dump

The laser line of weapons now all have lore. That rich, deep lore that
every game needs and is totally not important at all to the meat and
potatoes of the game. I'm paid by the hour ($0.00)

### Code Tidying

Lasers are old and a total mess code-wise so we've tidied up while we're
here.

## Why It's Good For The Game

Variety is the spice of life and also some of these weapons could have
used a face lift. Especially the laser carbine. Both functionaltiy wise
and appearance wise.

A bit of randomness in the armory means some rounds might have unique
outcomes compared to others. Sometimes, items in cargo don't see
particularly much use, so peppering in a few random potential deviations
can maybe nudge people to utilize variant gear on future rounds.

I'm obsessed with writing too much information. I blame Hatterhat.

## Changelog
🆑
add: Three variants of the laser gun; Carbine (replacing the existing
one), Pistol and Rifle! Find it (possibly) in your armory today!
balance: The armory laser guns might be different variants of the laser
gun, rather than always being the standard. The standard is the same as
ever, even if it looks different.
add: If you care, the sovl version is available as a goodie. And in the
hands of pirates...
spellcheck: Lore! LORE FOR LASER GUNS! LOOOORE! Examine laser guns
closely and you might learn more about them.
balance: The new set of laser guns come with brand new sprites.
/🆑

---------

Co-authored-by: StaringGasMask <62149527+Exester509@users.noreply.github.com>
2025-11-20 22:21:16 -05:00
Roxy d0ca474789 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-2025-11-05 2025-11-05 19:43:07 -05:00
GhomandGitHub 0b1292a5ee [NO GBP] Un-reverts some core crafting changes (with better fix) (#93545)
## About The Pull Request
The soft-revert was merged since it targeted an issue that could crash
the server with infinite loops. However, the solution was kinda shoddy,
which brought the `get_environment` inside the main loop, which I'm once
again trying to move outside it. This way it only has to be called once.

The NO GBP tag is here because the issue was my fault. This PR includes
some small changes done to test and ensure that this won't happen in the
future.

## Why It's Good For The Game
Fewer unnecessary calls. The performance of the crafting unit test is
roughly the same (10 seconds circa), because the bulk of it is spawning
the required objects anyway.

## Changelog
N/A
2025-11-03 17:24:30 -08:00
Roxy e28e9fbdba Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-23-10-2025 2025-10-23 17:38:23 -04:00
MrMelbertandGitHub a69bce8c39 Revert core crafting changes from #93121 (#93512) 2025-10-20 18:29:27 +02:00
0ee962c4b4 Secure safe, secure briefcase, and vaults improvements (#93085)
Co-authored-by: SmArtKar <44720187+SmArtKar@users.noreply.github.com>
2025-10-20 15:19:58 +02:00
e5be2d0f91 Sensors can now be printed, removed and installed on jumpsuits. HANDCRAFTED jumpsuits no longer have sensors by default (also mild crafting refactor) (#93121)
Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
2025-10-18 11:43:38 +02:00
Aliceee2chandGitHub 51a01efdab Jaws of Recovery QOL's (#93454)
## About The Pull Request

changelog should say pretty much enough, dont want to double it here.

## Why It's Good For The Game

as paramedic later into the game you'll prefer jaws of life over jaws of
recovery because theyre both silent AND have no area restrictions, but
heres the thing: you cant wear it in suit storage, nor it can act as
bonesetter additionally (why would paramed need wirecutter?) this PR is
aimed to combie both of those jaws into one modified, that would be
useful for paramedic.

also you really should be able to wear them in mod suit storage, trust
me, it sucks to carry paramedic jacket/coat in inventory everytime and
waste time on swapping

## Changelog
🆑
qol: Jaws of Recovery can be worn on medical MODSuit suit storage now.
add: Added modified Jaws of Recovery and recipe for them. Made from
regular Jaws of Life they act like one, without area restrictions and
radio announcements.
/🆑
2025-10-16 09:23:44 -04:00
Roxy d14e538393 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-15-10-2025 2025-10-15 19:34:41 -04:00
ce433c9698 Adds Stunsword (#93270)
Co-authored-by: necromanceranne <40847847+necromanceranne@users.noreply.github.com>
2025-10-14 16:39:47 +11:00
xPokee 5e629dff04 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync 2025-10-03 07:05:54 -04:00
MrMelbertandGitHub f20c61f670 [MDB Ignore] Deletes the bluespace gas vendor (#93137)
## About The Pull Request

Deletes the Bluespace Gas Vendor and accompanying Bluespace Gas Sender

## Why It's Good For The Game

These wall mounts were added as ways to encourage Atmos Techs to
participate in the economy and crew at large. Unfortunately, it's missed
the mark and is unused in 99% of all rounds*.

**I have seen more atmos techs use the bluespace gas sender for exploits
than for its intended use.*

It has been noted that
1. Atmos doesn't need to sell gas to the crew to make money. They can
export gas to cargo to make more money.
2. The crew doesn't really care about gases. They will rarely go out of
their way to acquire them, even if free.
3. Most importantly, most atmos players **like to give out gas for
free** - it's mass producible and seeing people utilize their creations
tend to be its own reward.
4. Even for the atmos techs that want to charge for their products (to
create conflict or whatnot), *you could easily do that by hand via
pre-filling tanks**.

***I have seen more atmos techs make money off of selling pre-filled
tanks than by using the vendor.*

Ultimately, this machine serves no purpose besides bloating wall space
and existing as an atmos exploit vector.

## Changelog

🆑 Melbert
del: Bluespace Gas Vendors and the accompanying Bluespace Gas Sender
have been removed
/🆑
2025-09-26 20:27:30 +02:00
xPokee b308ee9d78 Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync 2025-09-24 10:13:01 -04:00
GhomandGitHub 852f6f8868 [NO GBP] recipe speed fix (#92939)
## About The Pull Request
This PR aims to fix another issue with #92577. The main problem is that
the list of instances we get from `get_surroundings()` doesn't contain
items that are found within the person that's crafting the recipe, since
those are checked separately in `check_tools()`. This ends up making the
recipe hella slower because the appropriate tool couldn't be found in
the checks for calculating the duration of the craft.

This also trims a few lines of code and other small things worth of a
small refactor.

EDIT: Found out the real problem. the list of instances was an assoc
list of type -> instances, while I thought otherwise.

## Why It's Good For The Game
Fixing some recipes taking too long to make. Fixes
https://github.com/tgstation/tgstation/issues/93003

## Changelog

🆑
fix: Fixed some recipes taking too long to make.
/🆑
2025-09-21 14:19:34 -04:00
xPokee 9b282a850e Merge branch 'master' of https://github.com/tgstation/tgstation into upstream-sync 2025-09-17 11:45:44 -04:00
GhomandGitHub 76b933fd4b Underwater basketweaving recipes are hidden unless you've the skillchip (#92979)
## About The Pull Request
The recipes are locked behind a particular skillchip anyway. We might as
well just use the framework for learnable recipes instead of relying on
a particular trait with no other use to it. This also prevents these
recipes from showing in the menu even if the requirements aren't met.

## Why It's Good For The Game
See above.

## Changelog

🆑
refactor: Underwater basketweaving refactored so it doesn't show in the
crafting menu unless you've the skillchip active.
/🆑
2025-09-15 16:41:01 -07:00
necromanceranneandGitHub 62190069d0 Bow revisit; they hit harder, there are more sprites, there is a new bow made of bone. Really live that ranger fantasy. (#92809)
## About The Pull Request

### Bows deal more damage.

Increases the baseline damage of the shortbow to 25, and the divine bow
to 30.

The divine bow also launches arrows at a higher velocity than normal
bows.

### Flaming arrows have sprites now, and deal burning damage. Oh, and
actually do reasonable damage.


![demonstration_flaming](https://github.com/user-attachments/assets/918893c9-8d09-46ab-a8f9-9ef76ca5e044)

I'm not at all skilled at animation but at least it has an actual,
visible sprite now.

I completely overlooked the fact this did 20 damage when I changed bows
to use damage multipliers. Oops.

### Ashen Bow and Ashen Arrows

Made from sinew, bone and for the bow specifically, leather. The bow is
largely identical to a shortbow, but the arrow has mining bane. If you
feel like hunting megafauna with a bow, this is your means of doing so.

<img width="384" height="128" alt="demonstration_ashen"
src="https://github.com/user-attachments/assets/1c4f493c-f694-4b09-a406-c63140628d56"
/>

Assets partially taken from
https://github.com/Skyrat-SS13/Skyrat-tg/pull/5266

Which in of itself took assets from
https://github.com/BeeStation/BeeStation-Hornet/pull/1802

The functionality is entirely new. I also did some sprite edits.

### Arrow quivers are made from wood.

Iunno, this was really weird to me. Cardboard seems like a poor quiver
material.

### Other Stuff

Shortbows and ashen bows have the ability to be renamed.

## Why It's Good For The Game

Bows are fun, but kind of middling. They're a lot slower to fire than
the vast majority of ranged weapons, and don't really have enough oomph
in their own right to intimidate people being shot by them.

This is even true of the divine bow, which is the chaplain's version.
Because of how slowly it fires and how little damage it does, the
chances of actually killing someone who poses any real threat to you
with it is pretty laughable. This is not true of the nullrod that you
sacrificed to get this weapon. 30 damage is within the ballpark of
chaplain weapons and their potential damage in some contexts. A slow to
attack weapon probably should have a more impactful hit when considering
your alternative options.

The ashen bow is mostly because I really want to go fauna hunting with
entirely bone-based weaponry. Does this mean some ashwalkers might be
putting arrows into you from afar? Yes. Does this sound fun? Yes. Is
this especially strong? Not really. Miners out damage these bows by a
significant margin, and their armor is usually good enough where they're
not at risk from arrows sticking into them or hurting them very much.
This is also a degree more effort to make than other weapons because of
the leather requirement and the need to kill several fauna for the
materials. The outcomes should be more fun than the costs.

## Changelog
🆑
balance: Shortbows and divine bows do more damage. The divine bow also
launches arrows at a higher velocity than normal bows.
image: Flaming arrows now have proper sprites.
balance: Flaming arrows now deal BURN damage. And also deal an
appropriate amount of damage for an arrow.
add: Ashen bows and arrows, made from sinew and bone. And leather for
the bow.
add: Ashen arrows deal significantly more damage to mining mobs.
balance: Arrow quivers are made from wood rather than cardboard.
qol: Shortbows and ashen bows have the ability to be renamed.
/🆑
2025-09-14 14:00:23 -04:00
FalloutFalconandGitHub d2f34e33be moves abstract_type up to datum, spawners wont spawn them (#92909)
## About The Pull Request
moves all implementations (im aware of) for "Im a parent type dont spawn
me please" to the datum layer to standardized behavior
adds a standerized proc for filtering out "bad" items that we dont want
spawning. applies to it the subtype vendor, gifts, and a new spawner and
mystery box for a random gun (neither playerfacing)
"port" of https://github.com/shiptest-ss13/Shiptest/pull/4621



https://github.com/user-attachments/assets/22f6f0b2-b44e-411a-b3dc-6b97dc0287aa

small warning: I dont have EVERY abstract type defined right now but,
ive done a good enough job for now. Im tired of data entry rn
## Why It's Good For The Game
standardizing behavior. Might be a micro hit to performance however

having this lets us not rely on icon state to determine whether
something is a parent type and makes it much easier to tell something is
a parent type (could be applied further to things like admin spawning
menus and things like that).

need feedback on if this is actually good for the game.
## Changelog
🆑
add: Soda cans show up in the silver slime drink table.
add: Examine tag for items that are not mean to show up ingame.
refactor: Standardizes how gifts rule out abstract types.
fix: gifts no longer check if something has an inhand, massively
expanding the list of potential items.
/🆑
2025-09-13 00:36:15 +02:00
xPokee 939f2fc9ac Merge branch 'master' of https://github.com/tgstation/tgstation into xpokee-test-upstream-sync 2025-09-10 14:12:16 -04:00
GhomandGitHub 9a79856851 [no gbp] small oversight with crafting and tools (#92881)
## About The Pull Request
While looking for possible reported issues and reviewing my own code
post-merge, I've found out that I've made an error in the logic for
crafting and tool speed. It's basically just one line in which the value
wasn't multiplied by `dynamic_recipe_time` anyway, meaning some recipes
were faster than they ought to.

## Why It's Good For The Game
Fixing an issue.

## Changelog

🆑
fix: Crafting recipes with tools such as wirecutters, wrenches,
screwdrivers etc. should take the right amount of time to complete.
/🆑
2025-09-09 16:43:53 -04:00
50499dba9a Adds opium and meth rocks! (#92699)
## About The Pull Request


![demo2](https://github.com/user-attachments/assets/26223fa6-6eb8-43eb-ba87-54be7d2c19b3)<img
width="612" height="185" alt="dreamseeker_SNMvxqCRiR"
src="https://github.com/user-attachments/assets/1d3103e9-edc1-4e50-8793-c8c2ace53aea"
/>

This is a small expansion to narcotics, their production, and presence
in the game! For my esteemed Terry and Manuel/Sybil sector colleagues
I've added:
- 2 new solid drug items: **crystal meth and opium**!
- A **precipitation reaction** for meth after it's been cooled,
producing a solid crystal form, 2u sulfuric acid, 10u meth. **Above 90%
purity, the meth will gain an increasingly blue tint!**
- A production method for opium! Slice a well developed poppy pod with
any sharp item, **before it's fully mature and flowered** to extract a
small amount of opium to enjoy! It's a small container for morphine. Can
be pressed together to combine the concentrations up to 10u, as each
extraction contains trace amounts. Scales off poppy's potency.
- Populated narcotics/contraband spawners with new items, and items that
really should have been on there.
- Added a brand new smoking apparatus, the glass pipe! Can be crafted.
Fixed the transparent pixel.
- **Fixed methsplosions so that now spacemen can finally smoke meth
without exploding!!!** Omegaweed too. Normal methsplosions are
untouched!
- **Expanded the ability for players to insert all drug items into
pipes**, so now players can smoke moon rocks, SaturnX, and my new items!
Previously, only 'dried' items were.
- Fentanyl patch box for narcotics spawner, also for a new ruin I've
made.
- **Expanded these changes to the black market uplink.** 
<img width="640" height="256" alt="demo"
src="https://github.com/user-attachments/assets/c8a0eb2c-b0fa-4e70-b6c1-2e741cd170a2"
/>

Now, players can precipitate meth into a solid form, and produce opium.
I added a lot of these substances and the ones that didn't exist into
spawners that they were partially in, or could reasonably be in. The
opium poppy extraction required a new variable that can be used for
similar interactions too. Crystal sprites are transparent, smoked sprite
has a nice little animation and glow.

These items are now on the black market uplink, in both expensive dealer
shipments of varying rarities for different narcotics, as well as
personal use quantities on a different rotation, at a steeper price.
Expanded randomized spawners to give the black market and ruins more
teeth and edge, without adding another weapon.

Credit to the moon rock guy, I'm just happy I made your stuff smokable!!
<img width="219" height="201" alt="dreamseeker_N8x9bsN3kS"
src="https://github.com/user-attachments/assets/64d23c27-92b9-423b-91ac-903b8476d0b4"
/>


tl;dr added opium and meth
## Why It's Good For The Game
For **too long**, narcotics, chems and stims have been mere integers or
buffs/debuffs in pills or syringes, so I introduced two new methods for
making them and populated niche, criminal vectors with them. These are
real items now, with more interactions. Allowing these to be smoked also
allowed moon rocks and SaturnX to be smoked too, including them into
this and enticing players to have another reason to make them as well.
Buffs with drawbacks, addictions and problems are actually great.

It's a new venue for flavor. I've put thought into the balance for
addition and quantity. It'll add a criminal, or exotic tone to a round,
provide new business opportunities, and new access to stims and chems
without going over the top. Perhaps something peaceful antagonists can
do. More proverbial floor pills give security or command something to
selectively enforce, and absolutely provide novel opportunities for
medical staff!

Also, methsplosions now don't happen in cigarette items! You can smoke
omegaweed without fucking dying!
## Changelog
🆑
add: Added meth, opium, and their production! Also added to black market
uplink.
add: Added a craftable glass pipe.
add: Added to contraband spawners. 
qol: Can now insert any drug item into a pipe.
fix: Spacemen can now smoke meth without exploding!!
/🆑

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2025-09-09 01:13:46 +00:00
necromanceranneandGitHub a363eece32 Removes the circular saw tool requirement to make a modular receiver (#92847) 2025-09-08 15:02:32 +02:00
John WillardandGitHub f8186a7db3 Adds a furnace that grants space protection to nearby people (#92342)
## About The Pull Request

##### Code bounty for holinka4ever

Adds a furnace equippable to the back slot, which when active (it is a
lamp), will form a bubble of space protection, affecting the user and
people nearby, and will last 5 minutes before it dissipates and needs to
be re-formed. This item requires a pyroclastic anomaly core to activate,
while the bubble itself can only be formed in pressurized environments.
It's researchable in the Anomaly technology node.

The downsides of the item is it requires 2 hands to hold, can't be
inserted into storage items (as it's bulky), can only be equipped to the
bag slot, and has slowdown while on, which only affects you when you're
in gravity anyways.

## Why It's Good For The Game

The pyro anomaly is currently one of the more useless anomaly cores, not
even getting a unique reactive armour variation. This hopefully gives it
some purpose as a good tool to keep people alive in a spaced area at a
good cost to the user. This is an item that shouldn't be overpowered,
but also isn't just a selfish tool- when someone's crafting this item
it's specifically aiming to help people, which I think is a benefit.

## Changelog

🆑 JohnFulpWillard, sprites by PopLop
add: Added a new pyroclastic anomaly locked item, the Space Furnace.
Grants space immunity to people nearby while active.
/🆑
2025-09-07 21:04:47 -04:00
nevimer b348b617a3 Merge branch 'master' of https://github.com/tgstation/tgstation into pupstream-2025-09-07
# Conflicts:
#	README.md
#	code/__DEFINES/admin.dm
#	code/__DEFINES/melee.dm
#	code/_globalvars/traits/_traits.dm
#	code/controllers/subsystem/economy.dm
#	code/datums/components/crafting/crafting.dm
#	code/datums/elements/crusher_loot.dm
#	code/modules/antagonists/pirate/pirate_shuttle_equipment.dm
#	code/modules/clothing/suits/_suits.dm
#	code/modules/escape_menu/leave_body.dm
#	code/modules/jobs/job_types/_job.dm
#	code/modules/mining/equipment/mineral_scanner.dm
#	code/modules/mob/living/living.dm
#	code/modules/plumbing/plumbers/pill_press.dm
#	tgui/packages/tgui/interfaces/Vending.tsx
2025-09-07 00:37:52 -04:00
64af7e953d Adds back mounted wind turbines (#92516)
## About The Pull Request
Adds portable wind turbines that can be put in your back slot or
anchored to the ground. They accept a cell-powered item and charge it
while you walk, or when space wind passes over them. Can be purchased
for 400 credits or crafted with 3 kitchen knives, plastic, and servos.
Requires a capacitor to charge things, and higher tiers charge faster,
faster walkspeed also charges faster.

<img width="592" height="644" alt="im222age"
src="https://github.com/user-attachments/assets/e9997536-5ee0-4417-a31c-cb58666d4d07"
/>


https://github.com/user-attachments/assets/1cf7fce5-d385-4e3e-be97-fb15e253c308

## Why It's Good For The Game
Sometimes you don't have a cell charger. And you need to charge
something. Now you can charge something by running laps around the
station.
During a blob, rechargers are brought to the front lines to charge
energy guns and such but what if the blob turns off the power? And what
are bar-rp'ers to do? Kill two birds with one stone by having them run
laps instead of sitting around doing nothing.
Also its funny.

## Changelog

🆑
add: Added a portable wind turbine which can charge things when you walk
around
add: Added a signal that procs when an object resists space wind (from
being anchored / pulled)
sound: added woosh.ogg as a low "wooshing" noise
image: added a wind turbine sprite
/🆑

---------

Co-authored-by: tattle <66640614+dragomagol@users.noreply.github.com>
2025-08-31 21:13:11 +00:00
GhomandGitHub 697bdea143 The speed of tools used in a crafting recipe now affect the time spent on it (#92577)
## About The Pull Request
Title. Using better tools should now make crafting faster (or lower)
depending on the quality of the tools. This affects roughly 85% of the
crafting time, so, for every second of it, you're guaranteed to spend
0.15 seconds even if your tools are fast as light itself.

Also a nit with the main benefit of the mining skill being locked to
humans despite it being bound to the mind datum.

## Why It's Good For The Game
Tool speed previously didn't play a role in crafting. Now it does.

## Changelog

🆑
balance: The speed of tools used in a crafting recipe now affect the
time spent on it. Report any recipe that takes awfully little or too
long to complete.
balance: Non-humanoid mobs can now benefit from being skilled at mining
when swinging that pickaxe.
/🆑
2025-08-29 19:02:28 -04:00
Thunder12345andnevimer 20118ad747 Converts a bunch of time/delay vars to use time defines (#92495)
## About The Pull Request

Converts as many time vars expressed in deciseconds as I could find to
use time defines.

## Why It's Good For The Game

Makes these values neater and more readable.

## Changelog
🆑
code: Converted a lot of time-based variables to be expressed with time
defines.
/🆑
# Conflicts:
#	code/modules/clothing/head/hat.dm
#	code/modules/clothing/shoes/boots.dm
#	code/modules/clothing/suits/utility.dm
2025-08-19 22:38:55 -04:00
Krysonismandnevimer 17006b220f NT researchers make shocking breakthrough in flux anomalogics! Tesla Cannon Resprite / Resound (#92031)
## About The Pull Request

![tesla_card](https://github.com/user-attachments/assets/27d0777b-3014-4785-b06e-f5e7fe0d5a36)

Resprites:

Tesla Cannon 
Tesla Cannon crafting kit

### New SFX / VFX

The tesla cannon now uses a new type of beam effect that randomly picks
sprite variants for each segment instead of a tracer.

This makes the arc look more dynamic and less distorted. 

Autofire guns can now choose to use a looping sound datum when firing.


![image](https://github.com/user-attachments/assets/b9c0c494-fce6-48bc-9d09-ea2e6257c86c)

#### Balance changes

The tesla cannon must now have its stock unfolded before firing, this
takes 1.5 seconds and makes the gun bulky.

It is still normal sized when folded, and folding it is instant.

### Bug fixes

Fixed a bug where looping_sound.stop() would fail to stop sounds.

The tesla cannon is an incredibly powerfu 

## Why It's Good For The Game

### My reasons for respriting

The old sprite was not bad, by all means but I had a few gripes with it.

* The old sprite does not incorporate the flux anomaly yellow colour.

* The old sprite looks a bit much like a real, professionally produced
sci-fi weapon,

* The old sprite looks pretty small for such a ultra high dps full auto
weapon.

* The old inhand is quite indistinct for something that can game end you
in like one second.

### My design

I think that anomaly items should be very mad science coded and, since
anomaly science is by definition a poorly studied field, they should
look more like prototypes created by a scientist rather than something
professionally made in a factory.

## Changelog

🆑
image: The tesla cannon has new sprites.
image: The tesla parts kit has new sprites.
image: The tesla cannon has a new shocking beam effect when firing.
sound: The tesla cannon has new sounds.
balance: The tesla cannon must now be unfolded to fire.
fix: looping sounds now stop playing sounds when commaned to do so.
/🆑
2025-08-19 22:35:58 -04:00
Thunder12345andGitHub 260960d6f4 Converts a bunch of time/delay vars to use time defines (#92495)
## About The Pull Request

Converts as many time vars expressed in deciseconds as I could find to
use time defines.

## Why It's Good For The Game

Makes these values neater and more readable.

## Changelog
🆑
code: Converted a lot of time-based variables to be expressed with time
defines.
/🆑
2025-08-12 18:30:25 -04:00
KrysonismandGitHub 45e76d80fc NT researchers make shocking breakthrough in flux anomalogics! Tesla Cannon Resprite / Resound (#92031)
## About The Pull Request

![tesla_card](https://github.com/user-attachments/assets/27d0777b-3014-4785-b06e-f5e7fe0d5a36)

Resprites:

Tesla Cannon 
Tesla Cannon crafting kit

### New SFX / VFX

The tesla cannon now uses a new type of beam effect that randomly picks
sprite variants for each segment instead of a tracer.

This makes the arc look more dynamic and less distorted. 

Autofire guns can now choose to use a looping sound datum when firing.


![image](https://github.com/user-attachments/assets/b9c0c494-fce6-48bc-9d09-ea2e6257c86c)

#### Balance changes

The tesla cannon must now have its stock unfolded before firing, this
takes 1.5 seconds and makes the gun bulky.

It is still normal sized when folded, and folding it is instant.

### Bug fixes

Fixed a bug where looping_sound.stop() would fail to stop sounds.

The tesla cannon is an incredibly powerfu 

## Why It's Good For The Game

### My reasons for respriting

The old sprite was not bad, by all means but I had a few gripes with it.

* The old sprite does not incorporate the flux anomaly yellow colour.

* The old sprite looks a bit much like a real, professionally produced
sci-fi weapon,

* The old sprite looks pretty small for such a ultra high dps full auto
weapon.

* The old inhand is quite indistinct for something that can game end you
in like one second.

### My design

I think that anomaly items should be very mad science coded and, since
anomaly science is by definition a poorly studied field, they should
look more like prototypes created by a scientist rather than something
professionally made in a factory.

## Changelog

🆑
image: The tesla cannon has new sprites.
image: The tesla parts kit has new sprites.
image: The tesla cannon has a new shocking beam effect when firing.
sound: The tesla cannon has new sounds.
balance: The tesla cannon must now be unfolded to fire.
fix: looping sounds now stop playing sounds when commaned to do so.
/🆑
2025-08-13 07:43:28 +10:00
FalloutFalconandRoxy 0b677b689a generic parent type for both sabre sheaths (#92300)
## About The Pull Request
puts both the grass and normal sabre sheath types under a shared parent
type for shared behavior.
considered subtyping the storage datum but it seemed overkill. can do if
requested.
## Why It's Good For The Game
less copy paste. good if someone wants to add a clay-more sheath for
similar (believe that exists somewhere downstream), would have done it
myself but no sprites.
## Changelog
N/A
2025-07-30 17:37:32 -04:00
FalloutFalconandGitHub d74f9ae8d5 generic parent type for both sabre sheaths (#92300)
## About The Pull Request
puts both the grass and normal sabre sheath types under a shared parent
type for shared behavior.
considered subtyping the storage datum but it seemed overkill. can do if
requested.
## Why It's Good For The Game
less copy paste. good if someone wants to add a clay-more sheath for
similar (believe that exists somewhere downstream), would have done it
myself but no sprites.
## Changelog
N/A
2025-07-25 20:14:26 -06:00
Roxy 159943c9b7 Fix crude shuttle blueprints being uncraftable (#91941) 2025-07-04 16:42:06 -04:00
SyncIt21andRoxy db73bb2579 Motorized wheelchairs can be upgraded again (#91823)
## About The Pull Request
- Fixes #91822

## Changelog
🆑
fix: motorized wheelchairs can be upgraded again
/🆑
2025-07-04 16:41:48 -04:00
RoxyandGitHub 8cbf749cee Fix crude shuttle blueprints being uncraftable (#91941) 2025-07-04 18:33:51 +02:00
SyncIt21andGitHub 3c73d5b557 Motorized wheelchairs can be upgraded again (#91823)
## About The Pull Request
- Fixes #91822

## Changelog
🆑
fix: motorized wheelchairs can be upgraded again
/🆑
2025-07-01 14:30:56 +01:00