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

Acid update - rebalance fields, acid zeds, add backgrounds for acid tiles #15359

Merged
merged 3 commits into from
Feb 13, 2016

Conversation

Coolthulhu
Copy link
Contributor

Problems addressed (at least partially):

  • Player sitting on acid field hides the acid field from view
  • Acid doesn't scale with density - density 1 fields are dangerous, density 3 fields barely more than that
  • Acid field resistance doesn't work too well unless you're approaching immunity
  • Acid barfs bypass armor too well compared to acid fields
  • Dodged acid barfs don't produce fields
  • "Accurate" acid spits are very inaccurate at range, but can randomly get devastating headshots near melee range
  • Corrosive zeds can be cheesed by fighting them from a shopping cart or by getting legs/feet protected, but are hard to melee otherwise

Changes:

  • Player and NPC symbols get backgrounds according to whether the tile contains electricity, fire, acid or gas. Also, sleeping player gets a background like sleeping NPCs
  • Acid field damage rebalanced - less damage at lower density, less damage to legs, except at 3 density (where max leg damage is 5, compared to old 4)
  • Acid barfs nerfed - 10-15 to 7-12. Got minimal DoT to partially compensate.
  • Dodging barf no longer makes the field not appear
  • Accurate acid spits get accuracy penalty at close range, but are more accurate at range. Damage nerfed from 5-10 to 3-5. Got new flag that prevents scaling from accuracy - headshots and glancing hits all deal 100% damage on hit (damage is still lost due to range). This makes them more dangerous at range. They blind on headshot (they always did, just that now you can expect to get hit in the head).
  • Corrosive zeds get longer cooldowns (5 instead of 3, on both attacks).
  • Corrosive zed defense changed: instead of producing acid fields (which would require a lot of acid), they produce acid projectiles that can hit all body parts for small amount of damage. This removes the ability to cheese them with a cart, but makes resisting their defense easier. Most projectiles hit the torso.
  • Buffed raincoat - it is now 7 encumbrance (fitted) and 2 acid resistance. Wearing one will now mostly protect from corrosive zed's defensive capabilities (but not offensive ones)
  • Changed projectile hit-but-reflected message to include the body part hit when the target is a character. For example, "projectile reflects off your torso" rather than "your armor".

Acid field damage:

Density Old foot damage Old leg damage New foot damage New leg damage
1 1-5 1-4 1-3 1
2 2-5 2-4 1-4 1-3
3 3-5 3-4 1-5 1-5

Increased the chance of getting the DoT from acid fields - immunity from direct acid damage won't necessarily protect from that.

And a minor code quality change:
Removed nonplayer.cpp and .h. Those weren't used anywhere.

@SilearFlare
Copy link

Praise.

@Zireael07
Copy link
Contributor

Amazing!

@CIB
Copy link
Contributor

CIB commented Feb 13, 2016

Okay, tested this on my seasoned character by taking off head protection and most other armor and engaging them with a sword. Result: The acid pool on the ground did MUCH more damage than the shots themselves.

PS: No the shots didn't miss, and I was wearing leather boots.

@Coolthulhu
Copy link
Contributor Author

Result: The acid pool on the ground did MUCH more damage than the shots themselves.

Leg (especially foot) protection is still a must when engaging corrosives in melee.

@kevingranade kevingranade merged commit ac048ed into CleverRaven:master Feb 13, 2016
@CIB
Copy link
Contributor

CIB commented Feb 14, 2016

As I said, I was wearing leather boots, and no head or torso protection besides regular clothing. I don't think feet should be the only source of damage in that scenario.

@Coolthulhu
Copy link
Contributor Author

Acid spilling on feet is undodgeable. If your character has 5+ dodge, corrosives may have hard time landing a hit.

@Chezzo
Copy link
Contributor

Chezzo commented Feb 17, 2016

Oh man, does this work on tiles? I am really only interested in the sleeping background, as tiles already shows things you are stepping on.

I could do little zs coming out as a background, and if it was an overlay, I could do closed eyes and zs.

@Coolthulhu
Copy link
Contributor Author

Oh man, does this work on tiles?

Nope, but the support for it would be next to trivial to add. In player::get_overlay_ids(), this needs to be added somewhere before return:

for( const efftype_id &effect_pair : effects ) {
    rval.push_back( "effect_" + effect_pair.first );
}

I didn't test it so it might not compile because of a typo or something like that, but that's basically all that needs to be done to allow setting up effect overlays.

EDIT: Fixed the code

This wouldn't allow per-body-part overlays (only global ones), but wouldn't have duplicates. No sorting order guaranteed, except that they wouldn't get scrambled every turn (only when an effect was added/removed).

@Coolthulhu Coolthulhu deleted the acid-nerf branch February 23, 2016 07:40
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.

None yet

6 participants