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

Halve all armour values #7773

Merged
merged 3 commits into from Jun 2, 2014

Conversation

Projects
None yet
@Izicata
Copy link
Contributor

commented May 29, 2014

This seems like a good start. At least now when I put on light survivour gear and stand 1 tile away from a turret, I actually die after getting shot a dozen times.

Halve all armour values
This seems like a good start. At least now when I put on light survivour gear and stand 1 tile away from a turret, I actually die after getting shot a dozen times.
@KA101

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

Constantly using The Best Gear In The Game (light survivor is late-game) is not a good starting point for balance arguments. Should probably test using a variety of loadouts and against a variety of attacks.

p-p-pow! You are hit in the head! GAME OVER! Press spacebar...

(Was a chap this week posting about how an NPC one-shotted xem through a tactical full-helm. And people still get killed by turrets, thanks.)

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

1: I have killed turrets by literally walking up to them and hitting them with a katana. I've cleared the lab finale with 4 security bots in the same way. Note that I took no damage, not even from the death explosions.

screen shot 2014-05-15 at 1 50 56 pm
screen shot 2014-05-15 at 1 51 53 pm

If you get killed by a turret you're doing something incredibly wrong.

2: Light Survivour Gear is in no way the best in the game. The best armour in the game would be one of the forms of power armour, I'm not sure which.

3: NPCs with high-tier weaponry should be dangerous. They're one of the only dangerous things in the game, currently, and dealing with marauding assholes with big guns is just part of the post-apocalyptic experience.

@KA101

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

Against someone who's been around for a While, maybe turrets aren't as scary. shrug

Overall, survivor gear is the best all-around gear you can find: good protection, plenty of storage, and NOT powered. Thicker armor exists, sure. (I've just gotten through repricing it.) But it tends to make carrying things tricky, and you need to make some provision for powering it.

Armed NPCs are already dangerous, because they're not using pipe SMGs. There's no need to change armor to make them more dangerous, and it's possible that buffing turrets can cure the problem you're complaining of.

That's why I ask that you demonstrate the nerf's effects against non-mechanical foes, and in different gear. (Starting gear, army jacket/pants, etc.) A sweeping 50% off protection is gonna affect a lot more than Izacata's survival rate at meleeing turrets.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

You're right, the nerf does effect a whole lot of stuff. I'm not going to be able to demonstrate that on my own. You should probably compile this branch and try it out yourself, playing a game through from the beginning. However, I'll do my best.

I give you, the tale of Average Averageman.

screen shot 2014-05-29 at 12 24 20 am

Here's me killing some zombies with nothing but the starting gear and a cudgel I crafted in the evac shelter.

screen shot 2014-05-29 at 12 35 13 am

Here's me killing a bunch of black widows, taking no damage. I'm wearing a fitted trenchcoat I found, a messenger bag, and a t-shirt.

screen shot 2014-05-29 at 12 38 45 am

More zombie re-murdering. Some of my clothing is getting damaged, I should go craft a bone needle and start training tailoring.

screen shot 2014-05-29 at 12 49 06 am

OH SHIT A HULK

screen shot 2014-05-29 at 1 08 32 am

Wait, it's caught on a car. I'll be fine.

screen shot 2014-05-29 at 1 10 16 am

Goodbye trenchcoat.

screen shot 2014-05-29 at 1 21 02 am

I dragged a ton of zombies through this window+bush combination and got beat up a bit by a Z-9 because I fatfingered some buttons. Then I found a skeleton, killed it, took its bones, made a needle, and spent the rest of the day tailoring until I could make a pair of trenchcoats. So don't worry, you can still get through the first day, which is by far the hardest part of the game. I didn't even start with a martial art or a good profession, either of which make the early game a lot easier.

@Stoukeer

This comment has been minimized.

Copy link

commented May 29, 2014

I honestly don't see the point of halving armor. You'd better make high-caliber turrets (.50bmg armored tower of doom :D) for lower floors of labs if 9mm are weak for you (well yeah, they kinda weak when you have kevlar stuff, but hey its pistol round)

@static1hazard

This comment has been minimized.

Copy link

commented May 29, 2014

There are people on the forum who can't survive the first few days or the week. Even for an experienced player the game can generate a tough start or (rarely) one that's impossible. Halving all armor values is mostly nerfing early game, because of how the armor system works. It makes zombies early game more dangerous, while late game they still do nothing against you. Early game being already hard enough (unless you got an easy start) is a fact we all agree on.
Power armor (here, unlike in real life) is all about protection, it's meant to be deployable on the field and should be able to protect you against the 9mm parabellum (and quite a few things above that). Just because the game doesn't have regular end game enemies that provide a challenge let's not hit everything with the "nerf wrecking ball of destruction", so a small turret with a 9mm smg can become our game ending arch enemy.
Firearms will be more balanced when getting shot at actually damages you through the shock even when the bullet is reflected/stopped. Continuing crafting or whatever while you are assaulted by zombies from every direction shouldn't be possible just because your armor protects you, but that's not the armor's fault.
Survivor themed stuff should be balanced in light of the new layering system imo, but only by Rivet. She made them and evidently better suited at keeping them consistent with everything(recipe, requirements, etc.).

@Wishbringer

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

How about having a configurable armor multiplier setting (that way everyone is happy)?
So 0.5 would mean half armor or 0.1(10%) can be used.
The default value needs to be established.

@Zireael07

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

I like your idea, @Wishbringer

@static1hazard

This comment has been minimized.

Copy link

commented May 29, 2014

Good idea.
Btw, how about changing the armor system itself. Currently equip enough armor and you can walk around zombies (except special attack ones) with no inconvenience, other than message spam.
So insted of just "damage - armor value" there could be something like the "armor hardiness" in TOME. Normal clothes woulnd't protect you against more than about 50%. If it has the STURDY flag it would be around 75-95%, power armor could be close to(or symply) 100%. The highest percentage value would be used (so no stacking to 100%). Would need balancing, but I think that would be at least better, than the current one.

@kevingranade

This comment has been minimized.

Copy link
Member

commented May 29, 2014

Has anyone that's criticising it tried the branch out? Yes it's a pretty
big time investment, but izacata has put a good bit of time and thought
into this, and while he'll obviously have his bias (no criticism, only
natural), he's making some valid points.
Light survivor armor as it currently is makes you nearly immune to 9mm smg
fire. I'd expect it to provide significant protection, but not immunity.
I haven't tested this personally, but I've heard the same many times before.
The case for the 'average player' is a bit weaker, it sounds from the
narrative that you rarely got hit at all(which is the expectation, it makes
things a bit tough), so it's not much of a demonstration of the effect of
armor on survivability.
What we need to decide this kind of thing is a set of clear expectations
for how good the protection provided by various levels of armor are. Right
now everyone is operating off some combination of gut feeling and
playtesting.
It might be good enough to establish some rough groupings for armors and
attacks, and categorize the combinations as 'no protection' (less than 10%
damage reduction), 'some protection'(10%-25%), 'major protection'(%25-%50),
'extreme protection'(%50-%75), 'near invulnerability'(%75-%90) and
'invulnerability'(%90+).
The actual numbers etc would be subject to discussion, they're just a wild
stab at reasonable values.
I strongly suspect if we did this exercise, we'd find that fairly typical
armor loadouts are providing a bit more than expected protection.

@tyrael93

This comment has been minimized.

Copy link

commented May 29, 2014

I can't believe there are people actually against this after seeing how it's an extremely needed nerf or want to even make the nerf less hard. This is a godsend.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

it sounds from the narrative that you rarely got hit at all

Hey everyone, I'm Average Averageman, wearing this stuff, post-nerf.

screen shot 2014-05-29 at 12 50 42 pm

This is how much damage I'm taking from a zombie.

screen shot 2014-05-29 at 12 52 14 pm

None. I'm worried I didn't go far enough with this nerf.

@vache

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

It might be advantageous to include a total calculated armor value alongside encumbrance and warmth on the status and layering screens.

@Zireael07

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

Uh, I think the main problem is that no matter what it's done in terms of armor itself, you can still get headshotted even when wearing stuff which would prevent it logically.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

That's a different problem entirely. This PR is trying to make the player consistently take more damage. The solution to the "headshot" problem, whatever it may be, would prevent the player from taking massive inexplicable spikes of damage. They can easily co-exist.

@Nickboom1

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

I noticed in the log you blocked the majority of the shots so that could mess with the results of the testing.

@vache

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

The testing was to point out the unexpectedly high strength of armor, not damage avoidance in general. Every time he got hit, the armor absorbed it. I think he proved what he set out to prove.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

I noticed in the log you blocked the majority of the shots

I blocked the majority of the shots because I'm wielding a cudgel, which you can craft the turn after spawning in the evac shelter. The cudgel has parry (WBLOCK_1), which reduces taken damage by 60% when you block. It doesn't negate all damage.

If you're not immediately crafting and wielding a cudgel, it's because you either started with something better like a martial art or a switchblade, or you have no idea what you're doing or how the combat system works and you deserve to be eaten by zombies.

@Nickboom1

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

...I was simply pointing out that the weapon screws with how much damage you get. Therefore armor has less to deal with. I'm not for or against this I'm just telling you an issue.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

And any decent player will have access to weapon that can block at this point in time, therefore testing with a weapon that can block is important to gain a realistic picture of how powerful armour is.

@Nickboom1

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

Sure, but it is however not valid for testing how protective armor is assuming every player is going to have a blocking weapon is a bias and corrupts the testing. What about noobs those people might not have a blocking weapon, also what about attacks you cant block?

@vache

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

None of this has ANY bearing on how much damage he takes when he DOES get hit. The blocked attacks don't matter, the unblocked ones do. The whole point of it is that every single unblocked attack got completely absorbed by the armor. If anything, the blocking just illustrates that the effect is even worse, because it gets compounded by things like blocks, dodges, and martial arts buffs.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

What about noobs those people might not have a blocking weapon

If you're not immediately crafting and wielding a cudgel, it's because you either started with something better like a martial art or a switchblade, or you have no idea what you're doing or how the combat system works and you deserve to be eaten by zombies. This is a roguelike, after all.

also what about attacks you cant block?

AFAIK you can block every single melee attack in the game, as long as your melee skill is high enough. The game does some complicated diceroll thing, and if your dice are larger then the attacker's dice you block the attack. Gunfire you can't block, but it's supposed to be dangerous.

@Wishbringer

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

Change blocking damage reduction to STR * 4 or 5 (% divide by 100).
Why isn't blocking based on strength?
Just bouncing ideas.
Anyway, I don't like hard-coded nerfs, make it a global setting.
I'm fine with a default 0.5 armor setting.
In case the way armor values are handled change, in the future, easy adjustments would be superb.
By adjusting the armor values to match the algorithms rather than the reverse.
@Izicata: If you haven't noticed, I'm not arguing against you, only trying to give useful feedback. :)

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

I'd be all up for a nerf to blocking, but that's outside the scope of this PR. If you want to code that, go ahead.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

And most melee weapons do have WBLOCK_1. If you take a look in the stuff you can make or find in the evac shelter, they mostly all have Parry, which is the fancy name for WBLOCK_1. Pipes, nail boards, pointy sticks, 2-by-swords, they all have Parry. You have to be really bad to leave the evac shelter without a weapon that can block.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

screen shot 2014-05-29 at 4 26 38 pm
LMAO
screen shot 2014-05-29 at 4 26 54 pm

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

After further testing, I conclude that blocking also needs to be hit with the nerfbat.

screen shot 2014-05-29 at 4 35 13 pm

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

Without wielding the cudgel, I'm very slowly taking damage. Mostly when I legblock, because I don't have as much armour on my legs, but still. 0 Unarmed Combat skill, no martial arts.

screen shot 2014-05-29 at 4 40 01 pm

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

Doubled trenchcoats are dealt with by my other PR, #7770. I like to keep my balance-related commits separate, but hopefully both will be merged.

I'm not quite sure what the final solution should be for the cargo shorts problem. Maybe shorts shouldn't be fittable?

@latogato

This comment has been minimized.

Copy link

commented May 29, 2014

Maybe you should apply a new armor calculation which just lessen the damage.
Like:
damage_multiplier=1-armor/(max_damage+armor)
final_damage=actual_damage*damage_multiplier

So a zombie with 6 max damage vs jeans with 6 cut protection would be able to deal 0-3 damage.
A turret with 18 max damage vs light survivor suit with 45 cut protection would be able to deal 0-5 damage.
Even versus a power armor with 132 protection, it would be able to inflict 0-2 damage per hit.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

In version 0.8 armor protection value was divided by 6 in the code. This part of the code was rewritten in 0.9 and from then the full protection value applied against the damage. That makes the character almost invicible.

So what you're saying is, I should chop armour values down to 1/6 of their current value, instead of 1/2.

I'll get my axe.

@KA101

This comment has been minimized.

Copy link
Contributor

commented May 29, 2014

Izicata is doubling down on the nerfage

That seems like something a Stop Having Fun Guy would do. I don't merge stuff from Stop Having Fun Guys. Don't let me confuse you for a Stop Having Fun Guy, Izicata!

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 29, 2014

Actually, going from 1/2 to 1/6 would be tripling down.

And I'm afraid I'm trying to bring fun back to the game. Cataclysm currently has no win condition, only the lose condition of character death. For something to be a game, it has to have at least one of the two. If there is no actual threat of character death, there is no game; only an increasingly pointless procession of higher and higher numbers.

Izicata added some commits May 30, 2014

Update layering
Make layering penalties consistent with master branch for testing purposes.
bugfix
I HATE SEMICOLONS
@gcaliber

This comment has been minimized.

Copy link
Contributor

commented May 30, 2014

I don't think the way to solve the problem is just by adjusting the armor values. Fully mitigated attacks should at least have a chance to cause pain, perhaps if the damage is not blocked by armor with at least 150-200% of its value it causes pain, or something like that. It also seems like bullets are far too weak compared to melee since they are also limited. Really, the best way to solve the problem in the long run would be to get away from a damage based system.

@tyrael93

This comment has been minimized.

Copy link

commented May 30, 2014

Godspeed izicata.

@John-Candlebury

This comment has been minimized.

Copy link
Contributor

commented May 30, 2014

Whats the problem with reinstating the division by 6?

I mean, nobody complained before about zombies killing you too fast when wearing armor, but on the other hand a lot of us have problems with the strength of current clothes.

I just took the time to check, and a single reinforced hoodie over reinforced jeans blocked 23 out of 25 normal zombie attacks. I don't think this is really intended.

@Zireael07

This comment has been minimized.

Copy link
Contributor

commented May 30, 2014

I suggest revisiting #7777 instead, it makes more sense than puttering about dividing some arbitrary values.

@vache

This comment has been minimized.

Copy link
Contributor

commented May 30, 2014

The problem is, as far as I can tell, armor values were arbitrary already seeing as how they haven't been balanced against mob damage in the first place.

@Zireael07

This comment has been minimized.

Copy link
Contributor

commented May 30, 2014

That's exactly I am saying, @vache - they were arbitrary and will still be arbitrary and #7777 is both more interesting and logical.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 30, 2014

They're currently arbitrary, but they're arbitrarily too high and should arbitrarily be lower.

Do people actually want the division by 6? Should I make another PR, or just change this one?

@kevingranade

This comment has been minimized.

Copy link
Member

commented May 30, 2014

The problem here is you're changing things without stating objectively what
you want out of it (the project as a whole is suffering from the same
problem in this area, this latest set of PRs is just highlighting it), your
acceptance test seems to be "I can survive after the nerf", but it seems
like you're good enough that you could do so without any armor at all, so
that doesn't really establish that the nerf is generally applicable.
All that being said, with the previous bug being highlighted, I'd rather
reinstitute the divider in the code than change armor values everywhere to
compensate, shrinking the values causes problems with making everything act
the same, and it's easier to fix the code to better reflect a large range
of values than to return all the armor stats to their previous values.

@Izicata

This comment has been minimized.

Copy link
Contributor Author

commented May 30, 2014

Reinstating the divider sounds good to me. I have no idea how to do that, though.

@latogato

This comment has been minimized.

Copy link

commented May 30, 2014

Maybe i'm wrong, but i think changing the item::bash_resist() and item::cut_resist() is enough, the monsters' armor already follows the "1/6 rule". The bear has 4 bash armor, soldier ant has 10 bash and 12 cut armor, hulk has 12 bash armor etc. Also some bionic and mutation gives a 1-3 armor, i think they shouldn't be divided by 6.

@latogato

This comment has been minimized.

Copy link

commented May 30, 2014

I double check my statement about the resist values was divided by 6.
I found that part of the code, it is in the player.cpp file, the player::absorb fuction:

            // also determine how much damage is absorbed by armour
            // factor of 3 to normalise for material hardness values
            bash_reduction = arm_bash / 3;
            cut_reduction = arm_cut / 3; 

What is suprise me, while in the 0.8 indeed the resist values was divided by 6, in 0.9 an 0.A versions they are still divided by 3! I found the armors so overpowered, I assumed the resist values are not divided at all!

So, you are absolutely right about that, halve the armor values. 😄

@latogato

This comment has been minimized.

Copy link

commented May 30, 2014

Okay, now i confused. In 0.8 there was only player::absorb, but now we have

  • player::absorb function called by only the hurtall function, this one is divide the resist with 3.
  • player::absorb_hit function, which calls player::armor_absorb, which i think use the full armor resist values... This function called by Creature::deal_damage

I feel a great disturbance in the Force.

@kevingranade

This comment has been minimized.

Copy link
Member

commented Jun 1, 2014

I'm still trying to come to grips with the best way to go about this, but there's definitely a problem.
I did an accidental test of this while playtesting #7806 by getting into a fight with a zombie brute while wearing boxers, bra, housecoat (hitchhiker) and a hoodie (found) and wielding a makeshift crowbar. Also had no combat skills whatsoever.
I proceeded to beat the tar out of the brute, taking minimal damage myself because the majority of the brute's attacks were blocked entirely by my "armor".

@Zireael07

This comment has been minimized.

Copy link
Contributor

commented Jun 1, 2014

What about #7777? Would it help with the blocking?

@Wishbringer

This comment has been minimized.

Copy link
Contributor

commented Jun 1, 2014

Maybe these, not so nerfed, values can be used for blocking: 2f61b01455e7f4ca1e58ac18339af74da272a9d6
WBLOCK_3 ended up weaker though (just add WBLOCK_4). :)
About the armor values:
Still think a configurable multiplier would be great (kinda like a difficulty setting).
Other ramblings:
Come to think of it, having a multiplier setting for melee weapons and one for guns would be cool too.
And having a traps power multiplier isn't bad either (although weird with shotgun trap).

@Rivet-the-Zombie

This comment has been minimized.

Copy link
Member

commented Jun 1, 2014

I've tested this for a few hours, and I really like it.

@KA101 KA101 self-assigned this Jun 2, 2014

@kevingranade

This comment has been minimized.

Copy link
Member

commented Jun 2, 2014

Configurable everything is rather problematic, it gets super cluttered. That having been said, you can actually do that kind of thing with a lua mod.

@Rivet-the-Zombie

This comment has been minimized.

Copy link
Member

commented Jun 2, 2014

I'm in favor of this one. The current armor values are waaaay too forgiving to the player, and this is a good step in the right direction.

@KA101 KA101 removed their assignment Jun 2, 2014

Rivet-the-Zombie added a commit that referenced this pull request Jun 2, 2014

@Rivet-the-Zombie Rivet-the-Zombie merged commit 3b7a605 into CleverRaven:master Jun 2, 2014

@Izicata Izicata deleted the Izicata:patch-4 branch Jun 2, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.