Closed Maleclypse closed 3 years ago
Hey, great minds. I was playing with the idea of introducing bleed resist to keep chunky monsters from being kited to death recently. I could come up with two ways of doing it:
is_immune_effect
in monster.cpp, as a flat chance to negate an application of bleed, similar to what I did for blobs getting downed,make_bleed
as a multiplier on the effect's applied duration - this way there could be monsters that are more susceptible to bleeding as well.I admit haven't really looked into the feasability of either solution, so consider it up for grabs.
From a quick look I think it would be possible to add it to Creature::deal_damage_handle_type
, the make_bleed
as a multiplier seems like a better solution, as a multiplier of 0
would make the monster immune. Other functions that apply bleed would also need to be touched for the new feature, like in mattack::longswipe
and mattack::bio_op_impale
.
The attacks applying the effect directly is pretty janky, and a relic from the old bleed system if I had to guess. I can take care of longswipe
in the PR unhardcoding reach attacks by buffing the throat slit damage and removing the effect in preparation.
Ideally there would be a genericized resistance array that would allow for completely dynamic immunities, but I don't know how centralized the code for effects being applied to creatures is (and the hope somebody would implement the nice solution kept me from starting on the sloppier ones).
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. Please do not \'bump\' or comment on this issue unless you are actively working on it. Stale issues, and stale issues that are closed are still considered.
Should have been closed by https://github.com/CleverRaven/Cataclysm-DDA/pull/49546
Is your feature request related to a problem? Please describe.
Mi-go are the masters of their own biological processes. I believe they should take damage from bleeding but I believe their bleeding wounds should close faster than human speed.
Describe the solution you'd like
I'd like to know how to make this happen or encourage someone more knowledgeable than myself to make this change.
Describe alternatives you've considered
Mi-go not bleeding at all, but that seems overkill.
Additional context
Add any other context (such as mock-ups, proof of concepts or screenshots) about the feature request here.