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

Felinid Thievery #1102

Merged
merged 17 commits into from
May 9, 2024
Merged

Felinid Thievery #1102

merged 17 commits into from
May 9, 2024

Conversation

WarMechanic
Copy link
Contributor

@WarMechanic WarMechanic commented Apr 17, 2024

About the PR

This PR updates Felinids with a soft rework to their old passive thieving gloves ability. Now, Felinids have instead learned to see hidden items when stripping other mobs (i.e. items in pockets) and strip items faster in general (100% -> 66.67%). Admin Observers get this ability too.

Why / Balance

Since the removal of passive thieving gloves (see #666), Felinids cannot so much be called pickpockets anymore since they get little to their name that benefits such. Allowing Felinids to see into players' pockets and increasing stripping speed are parts of my suggested changes to work the pickpocket identity back into the Felinid kit while having implications for both antags and non-antags.

Weren't passive thieving gloves removed for good reason? / Won't this change promote shittery? / Any other variation thereof.

Passive stealth was indeed removed for a very sensible and good reason, but I would like to make the distinction that passive stealth enabled uncontested shittery since Felinids could simply have gloves, magboots or even belts disappear with little retaliation and RP value by extension, this comparison honestly isn't fair. This PR addresses this concern by leaving out stealth and only introducing pocket sight and strip speed buffs. I tried to implement this new set of changes with non/antag viability in mind. While old Felinids' passive thieving gloves let you skip on 4tc to rob people, this new iteration doesn't hide doafter which allows for retaliation. Any attempts made to steal, irrespective of success can and will go noticed by players (unless thieving gloves are used). But you can even combine thieves gloves with Felinid strip speed as an antag Felinid for a fastest thief gimmick (has similar energy to species specific traitor items). Pocket sight can give any player useful information and faster stripping has implications in both the Security department and everyday stealing.

At the end of the day, Felinids could likely be used by 'shitters' to steal an item or two. But remember that stripping is an action largely restricted to roleplay and non-combat scenarios. As such, this rebalance would not affect parts of the game an Oni's stat stick with accuracy penalty would (the average greytider will not use a gun, and benefits from increased crowbar/baseball damage). This buff will likely balance itself out over time to rising awareness and an anticipated 'Felinid = thief' stigma. Subversions of this stigma provides opportunity for roleplay.

Why pocket sight?

Felinid pocket sight grants them a new way to comb information that's largely befitting of their roguish archetype. While in the past the same results could have been achieved with passive stealth, this ability creates agency regarding the value of an item and whether to actually attempt stealing it in the first place (especially since you no longer have passive stealth). Having information unique to a species also creates opportunity for 'boy who cried wolf' situations wherein a set of people decide on the merit of a Felinid's argument: "i saw an e-saber in his pocket!!!", as well as providing reason for Antags to distrust Felinids (nobody should trust Felinids).

Why pocket sight AND strip speed buff?

While the PR could be left with just pocket sight, pockets only pertain to two item slots where one of them likely holds an emergency oxygen tank anyway. But most importantly pocket sight is likely to go unnoticed by a majority of players that do not play Felinids or look at the github / changelogs, since pocket sight rejects an established notion that you cannot see into another players' pocket. It almost feels metagamey, like an afterthought to mention it. Adding a strip speed buff is very much complementary to the pocket sight addition since it provides diegetic ground for players to acknowledge Felinids' pickpocket potential. While pocket sight only directly affects the user, faster stealing can be witnessed by all players. As for the numbers, 66.67% strip time brings down pocket/radio/shoes/hand strip times from (3 -> 2) seconds and backpack (6 -> 4) seconds. 2 seconds I've observed to be the reaction time of most players, so Felinids will be able to nip items more consistently. I chose multiplicative strip time as faster belt stripping has better implications for Security when searching for contraband. If one were to have their belt stolen, it is likely their fault for not paying attention and would have had it stolen anyway.

I talk to myself here regarding balance choices: https://discord.com/channels/968983104247185448/1228169033547776152

Technical details

Content.Client/.../StrippableBoundUserInterface.cs checks for ThievingComponent and its IgnoreStripHidden variable on the local entity before obscuring hidden items. Because this is client-sided I do not know if this is the safest implementation of this feature.

StripTimeMultiplier variable was also added to Thieving, which simply updates a preexisting multiplier argument that's passed to an event.

Media

image

https://youtu.be/cAVxXPUNImI?si=fBuKBQHGrzzJn03f

  • I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Breaking changes

Changelog

🆑

  • tweak: Added the IgnoreStripHidden variable to ThievingComponent, which allows entities to look into the pockets of mobs it strips.
  • tweak: Added the StripTimeMultiplier variable to ThievingComponent, which multiplies strip time.
  • add: Felinids and Admin Observers are now able to identify items in pockets of other players. Felinids also gain a faster strip speed.

@github-actions github-actions bot added the Changes: C# Changes any cs files label Apr 17, 2024
Content.Shared/Strip/Components/ThievingComponent.cs Outdated Show resolved Hide resolved
Content.Shared/Strip/Components/ThievingComponent.cs Outdated Show resolved Hide resolved
Content.Shared/Strip/Components/ThievingComponent.cs Outdated Show resolved Hide resolved
Content.Shared/Strip/Components/ThievingComponent.cs Outdated Show resolved Hide resolved
Content.Client/Inventory/StrippableBoundUserInterface.cs Outdated Show resolved Hide resolved
@github-actions github-actions bot added the Changes: YML Changes any yml files label Apr 17, 2024
@NullWanderer NullWanderer added the S: Do Not Merge Don't merge this yet label Apr 17, 2024
@WarMechanic WarMechanic changed the title Strip UI can now check for Thieving Component to see hidden items Felinids can see into players' pockets Apr 17, 2024
@NullWanderer
Copy link
Contributor

Felinid thiefing was removed on purpose

@WarMechanic WarMechanic requested a review from deltanedas April 17, 2024 13:52
@deltanedas
Copy link
Member

this has no reduction and still shows doafter so seems ok balance wise

@WarMechanic
Copy link
Contributor Author

WarMechanic commented Apr 17, 2024

What's wrong with reduction? I believe that reduction while still maintaining doafter while allowing you to successfully take something, wouldn't let you get away with said item for free. Most people respond to pickpocketing over the halfway mark so I thought it would be a fair change.

Multiplicative reduction which I reverted earlier I implemented because multiplicative strip time reduction has use cases in Security to strip belts and bags off criminals to search for contraband faster.

Although at the end of the day I will probably put it in a separate PR so the changes are easily revertible.

@WarMechanic WarMechanic marked this pull request as draft April 17, 2024 16:48
@WarMechanic
Copy link
Contributor Author

I've decided that there may have been something I misunderstood regarding the PR guidelines on Robust Book since the scope of this PR was originally going to be the tweak by itself.

I would greatly appreciate advice on how to treat this PR going forward.

@WarMechanic WarMechanic changed the title Felinids can see into players' pockets Felinids Thievery Apr 17, 2024
@WarMechanic WarMechanic changed the title Felinids Thievery Felinid Thievery Apr 17, 2024
@WarMechanic
Copy link
Contributor Author

How do I fix the outdated review?

@WarMechanic WarMechanic marked this pull request as ready for review April 17, 2024 23:51
Copy link
Contributor Author

@WarMechanic WarMechanic left a comment

Choose a reason for hiding this comment

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

Testing, can this outdated review resolve?

@WarMechanic WarMechanic marked this pull request as draft April 18, 2024 02:23
Copy link
Member

@deltanedas deltanedas left a comment

Choose a reason for hiding this comment

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

i approve of the implementation

@WarMechanic
Copy link
Contributor Author

holy shit

@WarMechanic WarMechanic marked this pull request as ready for review April 18, 2024 02:29
@rosieposieeee
Copy link
Contributor

in my completely one hundred percent unbiased opinion, i think vulps should get this too since they lost thieving gloves as well.

@WarMechanic
Copy link
Contributor Author

huh, skub

i never saw any remove thieving from vulps pr but yeah i looked at the first pr and thieving is there. i think pickpocketing fits with felinids because they have a small size, but it should be easy to copy and paste the thieving component from felinid to vulp if you want to pr it.

@WarMechanic
Copy link
Contributor Author

how do i fix do not merge, is it a balance concern

@deltanedas deltanedas requested a review from NullWanderer April 19, 2024 15:07
@WarMechanic
Copy link
Contributor Author

thanks a bunch deltanedas

@WarMechanic
Copy link
Contributor Author

any word on this? slimes can turn into geras and have minor internal storage now

@therealDLondon
Copy link
Member

personally from a balance standpoint im fine with this, Especially considering other species have been buffed somewhat recently

@deltanedas deltanedas merged commit 9b763f3 into DeltaV-Station:master May 9, 2024
11 checks passed
NullWanderer added a commit that referenced this pull request May 9, 2024
NullWanderer added a commit that referenced this pull request May 9, 2024
Revert "Felinid Thievery (#1102)"

This reverts commit 9b763f3.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Changes: C# Changes any cs files Changes: YML Changes any yml files S: Do Not Merge Don't merge this yet S: Needs Review
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants