Monday, 14 May 2007

Warriors - or things that go "Bump" in the night: part three.

If you're reading this from future to past, can I suggest you start with part one of this article. Part two is here.

I was originally going to write an article about ways of giving warriors more defensive options. But that's not what I'm going to do. What I'm writing instead about is how to give warriors more incentives to keep killing stuff.

Angband is a dangerous game, where line of sight and line of fire are critical ways of 'managing monsters'. Your best choice is inevitably standing around a corner, with only one, or two monsters able to strike at you, or even better, carving out a diagonal corridor, so that even monsters capable of area effect spells can only get a bead on one grid adjacent to you. The methods of escape and 'resets' are all about getting from a dangerous point in line of sight to a lot of monsters, to a place where out of their view, either by creating obstacles around you (create doors, earthquake, destruction) or teleporting yourself away. And speaking of teleportation, its much safer to do it to them, instead of yourself.

Which is why I don't want warriors doing any of that.

I want warriors to advance into the fray, get as many enemies in line of sight, brutally melee them to death with impunity and quickly recover when they do get hit.

I've already suggested some ways of advancing towards the enemy, by dodging from side to side. You can do the same thing with blocking as I've described it, by allowing blocking to last two turns (And that's why I do this blog, because I only realised that as I write it), and alternating standing still (e.g. blocking) with stepping.

But when you get into contact with the enemy, how can you improve the situation?

Well, for a start, your enemies should be usable for as well as against you. They already block line of fire for a lot of attacks, such as arrows and bolts. While Unangband and other variants based on 4GAI no longer have the 'keystone Kops' situation of monsters shooting each other in the back, having monsters near you is great cover for directed attacks, they'll take damage from area effect attacks used against you, and they'll prevent more dangerous monsters being summoned in the area they occupy.

I'm considering treating every attack as a dodge towards the enemy you're fighting. That means whilst you're attacking someone, ranged attacks used against you are have a chance of hitting the person you attack.

I'd like to implement a 'push past' monster move, to allow you to switch positions with an enemy. Its easy enough to overload the 'run' command for this, and dodging would also apply. There should always be situations where running between the legs of a dragon should make sense.

Then there's the overall 'confusion of melee'. It'd make sense to have ranged attacks have a lower chance of being used against you, the more enemies are in your direct vicinity. A 10% reduction in chance for each enemy greater than 2 within 2 grids feels about right, but that's just off the top of my head. So if you're completely surrounded by 8 monsters, you'll likely be safe from attacks at range.

Those should help indirectly, particularly the confusion of melee. But playtesting will tell me whether these are enough.

I suspect I'll have to add some 'attack meter' that builds up as you do damage in melee, and rewards you with extra blows directed at targets other than your primary opponent. It'd be good to have the attack meter allow recovery of 'some' hit points: resting with the attack meter would reset it, but heal you. Making this apply with healing would give me the chance to let monsters heal you to reduce your attack meter - counter-intuitive, but I'm sure there'd be situations where this made sense.

Is that enough?


Mikolaj said...

O has the Fury specialty, which is an attack meter of sorts and it's quite fun. Anyway, I think what you describe altogether should be enough.

Moreover, sometimes people will really want to get to some spot in the middle of a room full of enemies and then they will act as heroes regardless of the bonuses. E.g. they may want to grab a healing potion and heal, a boost potion and boost, an artifact and flee with it, etc. Other things may lure them, too, like some terrain features that improve melee or a fountain of !CCW or !Hero, or a single dry spot amid an area periodically overrun by damaging waves...

Unknown said...

I like O's Fury a lot. It's one of my favourite features of O. You could enhance it by adding stuff other than speed (to-hit, damage, blows, etc.) - and varying the permutations.

I like your defensive ideas as well - push past, cover from ranged attacks.

One thing you might consider is giving warriors more access to area effect attacks (other than magic devices). Many RPGs have a "whirlwind attack" which allows a warrior to hit multiple adjacent enemies: allowing such a move to attack all 8 adjacent squares (say, once the Fury-esque attack-o-meter has reached a certain threshold) would do wonders for a warrior's ability to hold is own while surrounded.

Another one is to give some sort of killing blow. Angband suffers from hp inflation (even O-combat variants) and it's very hard to kill deep non-breeders quickly. Your attack-o-meter could be an increasing chance of instakill blow (say 1% per consecutive attack or hit or something).

Just random thoughts. Really enjoying this blog, and congrats on the wedding.