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

Bioscrambler improvements #1683

Merged
merged 13 commits into from
May 7, 2024
Merged

Conversation

Absolucy
Copy link
Member

@Absolucy Absolucy commented Apr 17, 2024

About The Pull Request

Adds some more organs to the bioscrambler blacklist, and prevents bioscramblers from giving you unremovable "abstract" organs, like the dullahan eyes.

Also prevents messing with anime implants, and allows them to give/change wings.

Ports tgstation/tgstation#76376 and tgstation/tgstation#82555

Why It's Good For The Game

Fixes some weird bugs like dullahan eyes, and bioscramblers are less likely to completely fuck up your round.

Also non-moths with moth wings are funny.

Changelog

🆑
fix: Bioscramblers can no longer give you buggy abstract organs, like dullahan eyes.
qol: Added some more things to the bioscrambler blacklist, such as psyker heads, fly tongues/stomachs, anime implants, and abductor glands.
add: Bioscramblers can now give you wings. Moffcats, here we come!
balance: The Bioscrambler will now actively attempt to get closer to living targets rather than chilling in a closet nobody goes into (unless you trap it in a containment field).
balance: Because it can now travel through walls, the Bioscrambler will no longer transform you THROUGH walls.
/:cl:

@YehnBeep
Copy link
Contributor

Any chance we could also get the 'bioscrambler-chases-you' PR from TG?

tgstation/tgstation#82555

Might make people ignore them less.

@Absolucy
Copy link
Member Author

ooh i like that

Absolucy and others added 4 commits April 20, 2024 00:00
…twalks with traits and a new element. (#76376)

This adds a new element for movables that grants turfs they're in
traits, changes lava and the chasm component to check for traits
instead, ditto for turf slowdown. It also implements another trait that
prevents wet floor from slipping people, as well as some other changes
(feel free to opine on them really):
- Tables and conveyor belts now stop turf slowdown, much like catwalks,
as I imagine people walking on them are not really touching the floor.
(I'd include protection against lava too... until they melt, but that'd
mean finding a way to have these objects burn in the first place, and
lava code is still stupid despite a years old refactor I did)
- Tables also stop slippery turfs from slipping (bananas, soaps etc.
still apply). I wish there were a way to make some objects slippery by
coating them in water vapor or splashing water/lube, but that's outside
the scope of this PR.
- Fixed an edge case in which a mob standing on a lava turf would be
left permanently visually on fire if the lava is changed to another kind
of turf.
- Removed unused code from stone tiles.

I'm going to include these traits in that global list for admin-added
traits... tomorrow perhaps. 💤

Replacing some hard-coded mechanics with easier to use traits and an
element, which I also need for the submerge element PR.

:cl:
refactor: Replaced hardcoded "safeties" for lava, chasms and ignoring
turf slowdowns on catwalks with traits.
balance: much like catwalks, tables and conveyors also disable turf
slowdowns.
balance: slippery turfs won't slip you when walking on a table.
fix: Fixed an edge case in which a mob standing on a lava turf would be
left visually but permanently on fire if the lava is changed to another
kind of turf.
/:cl:
I heard reports that people just ignore the bioscrambler anomaly because
basically you just don't go into that room any more and depending on
where it spawned, that's no big deal.
That won't do.

Now the Bioscrambler will be attracted to the nearest sign of advanced
thinking life (read: nearest humanoid mob controlled by a player) and
will very slowly pursue them, travelling through walls and obstacles in
order to do so.

Also if it decides to target you, you will get a foreboding psychic
warning like with the dark matteor, because I think it's funny for dire
warnings to have multiple obscuring sources.

The Bioscrambler can be blocked with containment fields if you want to
make an overly-elaborate pen for it.
To accomplish this I refactored containment fields a little bit to apply
turf traits instead of making four different `locate()` checks for
different objects. Those files smell bad.

Oh also I moved the dullahan organs to the Bioscrambler blacklist
because they runtimed while I was testing it (see also: my other
incoming PRs) and I can't see any other reasonable way to fix it (they
expect to be in an abstract body zone...)

Anomalies are generally meant to be problems that you deal with or face
some kind of consequence.
Because the Bioscrambler isn't a timed anomaly with a dramatic
detonation effect, being spawned in a poorly-trafficked area could
simply mean that it isn't a problem to anyone.
Now it will make sure that it is a problem for someone until someone
gets rid of it.

I thought this solution was funnier than making it do something zany if
you leave it alone for 3 minutes.

:cl:
balance: The Bioscrambler will now actively attempt to get closer to
living targets rather than chilling in a closet nobody goes into (unless
you trap it in a containment field).
balance: Because it can now travel through walls, the Bioscrambler will
no longer transform you THROUGH walls.
/:cl:
@KittyNoodle
Copy link
Contributor

removing abductor organs is kinda stinky

@Absolucy
Copy link
Member Author

Absolucy commented May 5, 2024

@KittyNoodle I actually left a few of the abductor organs in, which is why I didn't just add /obj/item/organ/internal/heart/gland to the blacklist - I took out the ones that are likely to ruin things for other players or cause way more problems than any other organ would on its own

@dwasint dwasint merged commit 05ffefb into Monkestation:master May 7, 2024
18 of 19 checks passed
github-actions bot added a commit that referenced this pull request May 7, 2024
@Absolucy Absolucy deleted the bioscrambler-fixes branch May 7, 2024 20:22
@flleeppyy
Copy link
Collaborator

honey, i love you, you have amazing programming skills, but this has severely hindered my Charlie Station rounds, and there has been at least 3 following me around and it is TORTURE

@RikuTheKiller
Copy link
Contributor

RikuTheKiller commented May 8, 2024

at least make it non-permanent if you're gonna make us not ignore it
having your body changed like this can end a round gimmick flat (or kill you nigh-instantly) if you get a bad roll
bioscramblers also tend to be very, very common

basically this PR makes them more destructive than even some of the other anomaly types
and if those are temporary, this should be too, or at least less common similarly to vortex

also is it supposed to jumpscare you straight through walls with 0 counter or reaction time

@Absolucy
Copy link
Member Author

Absolucy commented May 8, 2024

@flleeppyy can you not make an analyzer+signaler to neutralize it?

@RikuTheKiller

at least make it non-permanent if you're gonna make us not ignore it

/obj/effect/anomaly/bioscrambler
immortal = FALSE

having your body changed like this can end a round gimmick flat (or kill you nigh-instantly) if you get a bad roll

this pr should've blacklisted most of the round-ruining things that you could get from it

also is it supposed to jumpscare you straight through walls with 0 counter or reaction time

you should get the ominous nosebleed message in chat once it begins to target you?

@flleeppyy
Copy link
Collaborator

flleeppyy commented May 8, 2024

@flleeppyy can you not make an analyzer+signaler to neutralize it?

Im not sure. The ancient protolathe can make anything but not everything. I'll try the next time I get a chance

@RikuTheKiller
Copy link
Contributor

Absolucy a nosebleed isn't enough to tell you "a bioscrambler is about to bust through the nearest wall" I had to codedive to figure out wtf it meant. Maybe something like "you feel a murderous intent" or something would work better to actually WARN you.

On that note, anomalies are escaping from ruins onto the station as well as charlie, which results in some... questionable scenarios.

@YehnBeep
Copy link
Contributor

having your body changed like this can end a round gimmick flat (or kill you nigh-instantly) if you get a bad roll

Really, this has always been a problem with the bioscrambler.

Maybe someone could port something like the SAD or, since we already have it, improve the cloner, to better provide ways to reverse stuff like the bioscrambler's effects?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants