CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.25k stars 4.11k forks source link

[MoM] Anti-psi zombies are really bad at using their anti-psi attacks #75649

Open Terrorforge opened 1 month ago

Terrorforge commented 1 month ago

Describe the bug

Concentration buffs are pretty damn good. The various anti-psi zombies exist in large part to threaten players who rely on those buffs, but they consistently fail to use their anti-psi attacks in an impactful way.

They all share a bashing "scratch" attack that cancels all concentration buffs. The fundamental problem is that the cancel effect only applies if the attack actually deals damage, and even with 20% armor penetration 6 bashing damage simply isn't enough to penetrate even moderate armor. This not only means that any reasonably geared survivor is immune to the effect, it also means that what should be one of the scariest things about blanks, their potential to negate defensive buffs like Inertial Barrier and Trick of the Light, is rendered moot by those very abilities.

In addition, the nether-void simply won't use its scratch attack. This appears to be because it it prioritizes its ranged_pull and grab_drag attacks, and will just endlessly repeat them if they fail. This leads to a silly situation where it will be faced with a psion with 20 dodge from Concentration buffs, and instead of using the one attack that could in theory break through their defense, they just keep trying to grab the ungrabbable.

The zombie breaker has a very nasty ranged concentration-breaking spell, which in combination with its anti-psi field disallowing you from re-using your powers, should make it by far the most dangerous of the bunch. However, it stops using that spell once it's in melee range, and since the scratch doesn't really work this means that it stop using that only attack it has that can break through psionic defenses in favor of fruitlessly whaling on said defenses.

Attach save file

trivially reproducible

Steps to reproduce

Let various blanks hit you while you're concentrating and wearing vs. not wearing armor

Expected behavior

The "scratch" attack needs to be changed so it actually works on anyone other than the freshest of baby character. I'm not sure how many of these suggestions are practical or even possible, but I think it should look something like this:

The blank and null still have melee attacks that cancel concentration, but they only have to hit, not deal damage. They priotize this above grabs and other attacks. Ideally this would just be a rider on all of their attacks, because I like the idea that there's something so fundamentally wrong with them that just touching them makes a psion throw up in their mouth, but I'm not sure that can be done. If you want to be nice about it, allow the player a check against Concentration proficiencies like the breaker's spell does, but I don't think you really need to because the blank and null are kind of just slightly upgraded zombies you can still shoot, dodge or kite.

The void and breaker should be nastier, though. They need to be able to threaten psions who have their buffs up, which means they can't rely on a dodgeable melee attack. So give them some sort of melee version of the breaker's spell, maybe even in the form of an upgraded anti-psi field that forces checks to maintain concentration. And make sure they prioritize it when the player does have concentration buffs up.

Screenshots

image Nether void. The message for the concentration-breakign scratch attack is "%1$s strikes at your %2$s!", which is not seen

Versions and configuration

Additional context

@Standing-Storm add a Breaker Hulk, you coward

(No but seriously. It doesn't have to be a carbon-copy hulk, but some kind of very bulky anti-psi zombie would really put the fear into late-game psions)

Standing-Storm commented 1 month ago

I should point out that blanks don't have any attacks that affect your existing powers--they just stop you from channeling when you're nearby. That said.

The zombie breaker has a very nasty ranged concentration-breaking spell, [...] However, it stops using that spell once it's in melee range,

Cannot reproduce:

With Inertial Barrier level 15 and 50 Intelligence: Untitled

In addition, the nether-void simply won't use its scratch attack.

Cannot reproduce:

With Combat Sense level 35 and 50 Intelligence:

Untitled2

One thing I can do is change the Nether-Void so the droning hum it emits also cancels your ongoing powers instead of just stopping you from using new ones (to fit with the name--it's a void), so that even being near them is incredibly dangerous. I can also reduce the cooldown on the breaker's concentration-cancelling power to make them more likely to use it, and have the Nether-void only target Nether creatures with its anti-Nether power so it's not polluting the attack pool against survivors.

Unfortunately, there is no way to weight attacks. Monsters just use whatever is available and off cooldown.

add a Breaker Hulk, you coward

Ah, you want the Nullk from #68159!

I decided against that mainly because there are already too many hulks and I wanted something different, so I went with them increasing speed. I've thought about a post-Nether-void evolution where it stops looking even remotely human and starts looking more like an amigara monster, but the list of things I want to make is long.

The breaker does specifically get bulkier but I have non-hulk plans for future evolutions there.

Terrorforge commented 1 month ago

I did some more testing, and I'm now certain that they they have some sort of absurdly weighted preference for the grab specifically. Even removing the cooldown on the concenteration-breaking spell entirely, I cannot get the zombie breaker to consistently use it in melee without just removing the grab entirely. Look at this shit:

image Spell with no cooldown, grab removed. It casts the spell over and over, as expected.

image image Spell with no cooldown, grab present. It only uses the spell every few minutes, maybe as often as once every 30 seconds. I even moved the grab to the end of list of special attacks just to see if it was prioritizing the first listed special attack, but nope. If it's just picking a random attack that's off cooldown, this should be 50/50 grabs and spells, right?

I'm gonna have to report this as its own bug, but in the meantime it might be wise to just remove the grab attack from the blanks because uh this is bad.