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

Add new negative traits to character creation #18491

Merged
merged 4 commits into from Apr 15, 2024

Conversation

Glamurio
Copy link
Contributor

@Glamurio Glamurio commented Apr 13, 2024

[Traits][Feature]

About the PR

This PR adds 2 new traits with negative effects to the game.

  • Slow Strider (+2)
    • You're unable to sprint.
  • Trippy (+1)
    • You randomly trip when moving.

Why's this needed?

When creating a new character, I find negative flaws as important as positive ones. This creates new ways for people to customize their characters without gaining an inherent advantage.

Changelog

(u)Glamurio (Ryou)
(+)Adds two new negative traits to character creation.

@boring-cyborg boring-cyborg bot added the C-Sprites Automatically applied on any .dmi or icons folder change label Apr 13, 2024
@keywordlabeler keywordlabeler bot added A-Traits Deals with traits in some way C-Feature A new feature or enhancements to existing features labels Apr 13, 2024
@github-actions github-actions bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Apr 13, 2024
Comment on lines +207 to +210
if (src.traitHolder && src.traitHolder.hasTrait("trippy") && prob(trip_chance))
src.setStatus("resting", INFINITE_STATUS)
src.force_laydown_standup()
src.visible_message(SPAN_ALERT("<B>[src]</B> trips!"))
Copy link
Member

Choose a reason for hiding this comment

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

isn't there a "trip" emote (for humans at least) already? Might be worth considering

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yeah, but that one force paralyses for 3 seconds and is pretty much only used for foreign_limb_effect(), seemed excessive.

@@ -202,6 +202,12 @@
last_move_trigger = ticker ? ticker.round_elapsed_ticks : 0 //Wire note: Fix for Cannot read null.round_elapsed_ticks
deliver_move_trigger(running ? "sprint" : m_intent)

// Tripping (the physical kind)
var/trip_chance = 5
Copy link
Contributor

Choose a reason for hiding this comment

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

an alternative implementation could be to add a signal (COMSIG_MOB_MOVE or something) that's called here, and add tripping as a component that hooks into such a signal. This would be better because it would avoid the need to check traitholder on every single step of every single mob's process_move.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

In that case we should also fix the "Two Left Feet" trait, because that does it even more frequently.

I've personally no idea how to work with signals, however, and feel like I'd do a shoddy job, but the idea behind it seems better.

@Valtsu0
Copy link
Contributor

Valtsu0 commented Apr 13, 2024

Unstable genes and soft swatter have too small of a downside to be +1 imo

@Glamurio
Copy link
Contributor Author

Glamurio commented Apr 13, 2024

Unstable genes and soft swatter have too small of a downside to be +1 imo

In terms of percentage or effect? I can crank up the percentages. I used Addictive Personality as a blueprint for the Unstable Genes which I found fairly even. A lot of the +1 effects are very situational, like Hemophilia or Medical Allergy. There's a good chance you're never in a situation where it matters, but if it does matter, you notice it.

@TobleroneSwordfish
Copy link
Contributor

I like Slow Strider and Trippy, but the other two do seem just a bit too situational. Hemophilia is actually really nasty when you get cut (which is pretty often on classic) and medical allergy can make you very hard to heal sometimes. In contrast most people never punch outside of hulk and boxing rings, and it would be near impossible to actually tell the difference with Unstable Genes.

@Glamurio
Copy link
Contributor Author

I like Slow Strider and Trippy, but the other two do seem just a bit too situational. Hemophilia is actually really nasty when you get cut (which is pretty often on classic) and medical allergy can make you very hard to heal sometimes. In contrast most people never punch outside of hulk and boxing rings, and it would be near impossible to actually tell the difference with Unstable Genes.

Alright, I'm not that attached. Let me cull those two for now and workshop them in a separate PR

@github-actions github-actions bot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Apr 14, 2024
@Tarmunora Tarmunora merged commit 1c6dd39 into goonstation:master Apr 15, 2024
22 checks passed
github-actions bot pushed a commit that referenced this pull request Apr 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-Traits Deals with traits in some way C-Feature A new feature or enhancements to existing features C-Sprites Automatically applied on any .dmi or icons folder change size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants