Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge Upstream 02.02.2025 #1122

Merged
merged 21 commits into from
Feb 2, 2025
Merged

Merge Upstream 02.02.2025 #1122

merged 21 commits into from
Feb 2, 2025

Conversation

ss220app[bot]
Copy link

@ss220app ss220app bot commented Feb 2, 2025

This pull request merges upstream/master. Resolve possible conflicts manually and make sure all the changes are applied correctly.

Changelog

🆑 tgstation
fix: Исправлен частично отсутствующий интерфейс рыбалки.
add: Добавлены рыболовные сумки, которые можно найти в автоматах с развлечениями или изготовить из кожи карпа.
balance: Добавлено улучшение аквариума-генератора в автолаты обслуживания и науки.
image: Обновлены спрайты рыболовных катушек и поплавков.
fix: Исправлена неработоспособность светящихся палочек.
fix: Большая рыба больше не будет отображаться за настенной подставкой.
del: Мобильные полые биоскрэмблеры больше не появляются из руин исследований аномалий, избавляя всех от неизбежного без предупреждения появления постоянного полого биоскрэмблера на станции. Однако вы всё ещё можете встретить неподвижные биоскрэмблеры в руинах.
fix: Теперь душевые снова моют предметы, которые находятся под ними, если включены.
fix: Исправлены визуальные эффекты у медбота, взломанного через эмаг.
spellcheck: На документе, найденном в руинах старой станции, слова "Диск генерации сингулярности" заменены на "Осколок кристалла суперматерии", чтобы они соответствовали содержимому инвентарной комнаты.
/:cl:

Summary by Sourcery

Update showers to wash items on the ground beneath them, add fishing bags, re-sprite fishing reels and bobbers, and fix various bugs.

New Features:

  • Add fishing bags that can be found in fun vendors or crafted from carpskin.

Bug Fixes:

  • Fix partially missing fishing UI.
  • Fix glowsticks not working.
  • Fix large fish rendering behind wall mounts.
  • Fix showers not washing items placed under them.
  • Fix medbot emag VFX.

SmArtKar and others added 18 commits February 1, 2025 19:42
## About The Pull Request
A typo resulted in center part of fishing bar not showing up

## Changelog
:cl:
fix: Fixed partially missing fishing UI
/:cl:
## About The Pull Request

Adds two new fishing bags: normal and carpskin. Normal fishing bag can
be bought from the fun vendor in the library, and is capable of holding
up to 10 normal fish (and only fish), but it does not preserve them
unlike stasis containers or portable aquariums. Carpskin fishing bag can
hold up to 14 normal-sized fish and needs to be crafted using 3 carp
skins, but is also capable of fitting fishing lines, hooks and lures.


https://github.com/user-attachments/assets/80e333f5-4388-40c7-a31b-3384b96c21a1

Also resprited four normal reels and the fishing bobber:


![image](https://github.com/user-attachments/assets/d518d5ab-2081-46bb-b088-4f6a2e8be6be)


![image](https://github.com/user-attachments/assets/97f9686c-1209-458a-893a-cd7c2f08f714)

Additionally, while I'm at it I've added the generator aquarium upgrade
to service and science lathes.

## Why It's Good For The Game

There's currently no good way to store smaller fish, especially when
you're planning to use it as bait, so you usually end up making a mess
of the room you're currently in. Carpskin bag is also a good way to
organize your fishing gear without cluttering up your bag.

While the aquarium upgrade is technically only used to generate power,
it doesn't make sense to restrict it to engineering lathe only as its
usually service and sometimes science who do fishing instead.

## Changelog
:cl:
add: Added fishing bags, found in fun vendors or made from carpskin.
balance: Added the generator aquarium upgrade to service and science
lathes.
image: Resprited reels and bobber
/:cl:
## About The Pull Request

tgstation#88909 broke glowsticks

## Changelog
:cl:
fix: Fixed glowsticks not working
/:cl:
## About The Pull Request

Fixes large fishes going behind wallmounts like here

![image](https://github.com/user-attachments/assets/22f1f192-2c09-491a-948a-16c01b4467ec)

## Changelog
:cl:
fix: Large fish should not render behind their wall mounts now
/:cl:
…rch ruin. (tgstation#89303)

## About The Pull Request

What it says on the tin. Mobile anomalies still spawn in and around the
ruin, but never bioscramblers.

## Why It's Good For The Game

A) These fucking things cannot be disabled by conventional means. It
needs anomaly research.

B) They drift through space away from the ruin literally every single
time the ruin spawns. They are meant to be an environmental hazard for
the ruin, not for the entire playing space because a remote ruin
spawned.

C) Because they are not blocked by walls, they will keep drifting until
eventually arriving on the station, where they will stay there.
Typically occupying a space perpetually until a scientist comes and
fixes the problem with their anomaly neutralizer.

The only reason this happened was because of bioscramblers being
reworked into the state they are now. I don't imagine the original
creator intended for the ruin to create problems for the wider round
like this.

## Changelog
:cl:
del: Mobile hollow bioscramblers no longer spawn from the anomaly
research ruin, sparing everyone from the inevitable unannounced arrival
of a permanent hollow bioscrambler aboard the station. You maybe still
encounter immobile bioscramblers in the ruin, however.
/:cl:
<!-- 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
Fixes tgstation#89261 by adding the thing
This loop was present prior to tgstation#88465 , but it seems like it was deleted
by accident together with some check
<!-- 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
Bug fix
<!-- 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 its effects on PRs in the tgstation guides for contributors. Please
note that maintainers freely reserve the right to remove and add tags
should they deem it appropriate. You can attempt to finagle the system
all you want, but it's best to shoot for clear communication right off
the bat. -->

:cl:
fix: showers wash things under them when they're turned on again
/:cl:

<!-- Both :cl:'s are required for the changelog to work! You can put
your name to the right of the first :cl: 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. -->
## About The Pull Request


https://github.com/user-attachments/assets/38218bb2-d38c-4698-afff-db75dde0597c

I've used flick() which flicked the medbot icon itself instead of adding
a spark overlay on top of it.

## Why It's Good For The Game

Fix

## Changelog

:cl:
fix: Fixed medbot emag VFX
/:cl:

---------

Co-authored-by: SyncIt21 <110812394+SyncIt21@users.noreply.github.com>
…T(id)` (tgstation#89291)

## About The Pull Request

This makes (almost?) all traits given by status effects use
`TRAIT_STATUS_EFFECT(id)` as their source, rather than the previous mix
of `id`, `type`, `REF(src)`, or some bespoke thing.

## Why It's Good For The Game

Consistency is good.

## Changelog

No user-facing changes
## About The Pull Request

Replaced "Singularity Generation Disk" with "Supermatter Crystal Shard"
(and the space in front of the "prototype modsuit" has been removed,
because it doesn't look pretty.)

## Changelog
:cl:
spellcheck: Replaced the words "Singularity Generation Disk" with
"Supermatter Crystal Shard" on a paper found by the old station ruin, to
match the contents of the inventory room.
/:cl:
Copy link

sourcery-ai bot commented Feb 2, 2025

Reviewer's Guide by Sourcery

This pull request merges the upstream master branch into the current branch. It includes several bug fixes, new content additions, and balance changes, primarily focused on the fishing system and some minor fixes to other game mechanics.

Sequence diagram for shower cleaning process

sequenceDiagram
    participant S as Shower
    participant T as Turf
    participant A as Atoms
    participant R as Reagents
    S->>S: process()
    S->>S: Check if on
    alt shower is on
        S->>S: Assemble cleaning flags
        S->>T: wash(flags)
        S->>T: expose_to_reagents()
        loop for each atom on turf
            S->>A: expose_to_reagents()
        end
        S->>R: remove_all(SHOWER_SPRAY_VOLUME)
    end
Loading

Class diagram for new fishing bag storage system

classDiagram
    class StorageBag {
        <<interface>>
    }
    class FishingBag {
        +name: string
        +desc: string
        +fishing_modifier: int
        +Initialize()
    }
    class CarpskinBag {
        +name: string
        +desc: string
        +storage_type: datum/storage/carpskin_bag
        +fishing_modifier: int
        +Initialize()
    }
    class CarpskinStorage {
        +forced_pickup: bool
        +process_numerical_display()
        +remove_single()
    }
    StorageBag <|-- FishingBag
    FishingBag <|-- CarpskinBag
    CarpskinBag -- CarpskinStorage
    note for CarpskinBag "Special fishing bag made from carpskin
with enhanced storage capabilities"
    note for CarpskinStorage "Custom storage handling for
fishing equipment categorization"
Loading

State diagram for trait status effect system

stateDiagram-v2
    [*] --> Applied: Status Effect Applied
    Applied --> Active: Add Traits
    Active --> Removed: Status Effect Removed
    Removed --> [*]: Remove Traits
    note right of Applied: Uses TRAIT_STATUS_EFFECT(id)
    note right of Active: Traits active with unique ID
    note right of Removed: Cleanup traits with same ID
Loading

File-Level Changes

Change Details Files
Showers now properly wash items and mobs that are under them when activated.
  • The wash_atom proc was renamed to expose_to_reagents and now only exposes the target to the shower's reagents.
  • The logic for applying the wash effect was moved to the process proc.
  • The process proc now iterates through all movable atoms in the shower's location and exposes them to the shower's reagents.
  • The process proc now applies the wash effect to the turf the shower is on.
code/game/objects/structures/shower.dm
Added fishing bags that can be found in fun vendors or crafted from carpskin.
  • Added a new fishing bag item that can store fish and other fishing equipment.
  • Added a carpskin fishing bag item that can store more items and is crafted from carpskin.
  • Added a new carpskin_bag storage type that allows for a radial menu to select specific fishing items.
  • Added fishing bags to the list of phobia objects.
  • Added a recipe for the carpskin fishing bag.
  • Added fishing bags to the fun vendor.
code/modules/fishing/fishing_equipment.dm
code/_globalvars/phobias.dm
code/game/objects/items/stacks/sheets/leather.dm
code/modules/vending/games.dm
code/datums/storage/subtypes/carpskin_bag.dm
The generator aquarium upgrade was added to service and science lathes.
  • The generator aquarium upgrade can now be produced by service and science lathes.
code/modules/research/designs/power_designs.dm
Updated sprites for fishing reels and bobbers.
  • Updated the sprites for fishing reels and bobbers.
code/modules/fishing/fishing_equipment.dm
Fixed a bug where glowsticks were not working.
  • The glowstick's Initialize proc now correctly sets the max_fuel variable before creating reagents.
code/game/objects/items/devices/flashlight.dm
Large fish no longer render behind their wall mounts.
  • The pixel_x variable was renamed to pixel_w and base_pixel_x was renamed to base_pixel_w to better represent the offset of the sprite.
code/modules/fishing/fish/types/anadromous.dm
code/modules/fishing/fish/types/rift.dm
code/modules/fishing/fish/types/ruins.dm
code/modules/fishing/fish/types/saltwater.dm
code/modules/fishing/fish/types/station.dm
code/modules/fishing/fish/types/syndicate.dm
Mobile hollow bioscramblers no longer spawn from the anomaly research ruin.
  • A new spawner type was added that does not spawn bioscramblers.
  • The anomaly research ruin now uses the new spawner type.
code/modules/mapfluff/ruins/spaceruin_code/anomalyresearch.dm
Fixed visual effects for medbots that were emagged.
  • The medbot's emag visual effect now uses flick_overlay_view instead of flick.
code/modules/mob/living/basic/bots/medbot/medbot.dm
The 'Singularity Generation Disk' was renamed to 'Supermatter Crystal Shard' on a paper found in the old station ruin.
  • The text on the paper was changed to match the contents of the inventory room.
code/modules/mapfluff/ruins/spaceruin_code/oldstation/oldstation_fluff.dm
Various status effects now use a common macro for trait sources.
  • The STATUS_EFFECT_TRAIT macro was replaced with the TRAIT_STATUS_EFFECT(id) macro.
  • The TRAIT_STATUS_EFFECT(id) macro is used to generate a unique trait source for each status effect.
code/modules/research/xenobiology/crossbreeding/_status_effects.dm
code/datums/status_effects/debuffs/debuffs.dm
code/datums/status_effects/buffs.dm
code/datums/status_effects/buffs/food/grant_trait.dm
code/datums/status_effects/debuffs/staggered.dm
code/modules/antagonists/heretic/status_effects/ghoul.dm
code/game/machinery/dna_infuser/organ_sets/fish_organs.dm
code/modules/antagonists/heretic/status_effects/mark_effects.dm
code/datums/elements/organ_set_bonus.dm
code/datums/status_effects/buffs/stop_drop_roll.dm
code/datums/status_effects/debuffs/pacifism.dm
code/datums/status_effects/debuffs/silenced.dm
code/datums/status_effects/debuffs/tower_of_babel.dm
code/datums/status_effects/drug_effects.dm
code/datums/status_effects/gas.dm
code/datums/status_effects/neutral.dm
code/datums/status_effects/song_effects.dm
code/modules/antagonists/heretic/knowledge/sacrifice_knowledge/sacrifice_buff.dm
code/modules/antagonists/heretic/magic/realignment.dm
code/modules/antagonists/heretic/magic/shadow_cloak.dm
code/modules/antagonists/heretic/magic/void_conduit.dm
code/modules/antagonists/heretic/magic/void_prison.dm
code/modules/antagonists/heretic/status_effects/debuffs.dm
code/modules/antagonists/heretic/status_effects/void_chill.dm
code/modules/antagonists/voidwalker/voidwalker_status_effects.dm
code/modules/mob/living/basic/lavaland/watcher/watcher_overwatch.dm
code/modules/spells/spell_types/shapeshift/_shape_status.dm
code/__DEFINES/traits/sources.dm
Fixed a bug where items could be duplicated when taking them from a storage.
  • The remove_single proc in datum/storage now returns a boolean indicating if the item was removed.
  • The put_in_hands_async proc is now only called if the item was successfully removed.
  • The remove_single proc in obj/item/storage/fancy and obj/item/surgery_tray now checks if the item was removed before calling put_in_hands.
code/datums/storage/storage.dm
code/game/objects/items/storage/fancy.dm
code/game/objects/items/surgery_tray.dm
The fishing minigame now uses a new icon for the bait bar.
  • The bair_bar icon state was renamed to bait_bar.
code/modules/fishing/fishing_minigame.dm

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!
  • Generate a plan of action for an issue: Comment @sourcery-ai plan on
    an issue to generate a plan of action for it.

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@github-actions github-actions bot added 🖌️ Спрайты Вы заработали свою миска-рис и кошко-жена. Партия гордится вами! 🗺️ Изменение Карты В этом ПРе затронут файл не станционной карты. Может и не один. 🙏 Слияние с восходящим потоком О великий восходящий поток, спасибо что приносишь нам свои дары контента и багфиксов labels Feb 2, 2025
@ss220app ss220app bot added the 📜 CL валиден Этот чейнджлог будет успешно опубликован label Feb 2, 2025
Copy link

@sourcery-ai sourcery-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We have skipped reviewing this pull request. It seems to have been created by a bot (hey, ss220app[bot]!). We assume it knows what it's doing!

@Gaxeer Gaxeer merged commit 7ecbc5e into master Feb 2, 2025
21 checks passed
ss220app bot added a commit that referenced this pull request Feb 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🖌️ Спрайты Вы заработали свою миска-рис и кошко-жена. Партия гордится вами! 🙏 Слияние с восходящим потоком О великий восходящий поток, спасибо что приносишь нам свои дары контента и багфиксов 📜 CL валиден Этот чейнджлог будет успешно опубликован 🗺️ Изменение Карты В этом ПРе затронут файл не станционной карты. Может и не один.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants