![]() |
#1 |
Angband Devteam member
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 42
Posts: 1,516
![]() |
Monster mana alternatives
Hi everyone, long-time-no-see.
I was talking about monster AI with Derakon on IRC and thought it'd be interesting to open up the conversation to a wider audience. This isn't necessarily limited to what should go in V (although that was the original context). Right now, V's monsters are powerful but dumb. There's nothing stopping a monster from (randmoly) choosing its most powerful attack N times in a row, although it's very unlikely. Of course, if we improve the AI, V's tougher monsters could easily become unbeatable. Many variants have introduced monster mana to solve this problem. From what I understand, monsters in these variants are incredibly tough until they run out of mana, and then are much easier. Monsters that can heal or teleport are particularly hard--you pretty much have to get them to use up their mana before trying to kill them. An alternative would be cooldown timers. This is similar to what a lot of MMOs have ended up doing. It'd mean that you'd never have to worry about two breath attacks (or mana storms or whatever) in a row, and would allow things like healing to be pretty rare. Unfortunately, I think it would also make monster battles very predictable. For instance, a teleporting monster would always teleport once when hurt. You'd have to track them down and kill them before the timer reset, or they'd do it again. I think this could get pretty tedious. (Healing has the same problem.) As I said, it also makes some unpredictably dangerous monsters less dangerous (if they only have one strong breath attack). Combining timers and mana might work. I think you'd still get the same kinds of predictable behavior, but it would be easier to "wear down" a monster by waiting until its mana was exhausted. Monsters could still teleport away to let their timers and mana reset though. One option I found really interesting was the option of having monsters use HP as mana, instead of a separate quantity. This would make building the AI a bit more interesting--spamming powerful spells might be the most efficient way to try to kill the PC, but would also bring the monster closer to death. And running out of mana would more obviously be fatal. The one big problem here is that healing doesn't totally make sense--if the monster could heal that would also reset the mana, which would be really powerful. But I do like the fact that with monster HP instead of mana, the player has a stronger incentive to damage the monster early on (to limit available HP for spells and attacks). None of these seem perfect, and its possible that a hybrid approach (mana + timers, HP + timers, something even more complicated) might work best. Since there is already huge asymmetry between the player and monsters, I don't think it's a problem to have very different systems here as well. What do you all think? |
![]() |
![]() |
![]() |
#2 |
Adept
Join Date: Jul 2007
Location: St George Utah, USA
Posts: 244
![]() |
I think a cool-down would be easy to implement as well. One could add different timers based on the degree of the spell. If the monster had some high level attacks, they could have a 3 turn cool-down. While low level spells (ie, blink-self) could have a 0 cool-down.
|
![]() |
![]() |
![]() |
#3 | |
Vanilla maintainer
Join Date: Apr 2007
Location: Canberra, Australia
Age: 57
Posts: 9,464
Donated: $60
![]() ![]() |
Quote:
__________________
One for the Dark Lord on his dark throne In the Land of Mordor where the Shadows lie. |
|
![]() |
![]() |
![]() |
#4 | |
Angband Devteam member
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 42
Posts: 1,516
![]() |
Quote:
|
|
![]() |
![]() |
![]() |
#5 | |
Angband Devteam member
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 42
Posts: 1,516
![]() |
Quote:
1. breathe fire 2. breathe cold 3. breathe poison 4. breathe lightning 5. breathe acid <repeat> Or, we put all breaths on the same 3 turn timer: 1. breathe fire 2. attack 3. attack 4. attack repeat (Obviously, with good monster AI, the AMHD might try out blindness and confusion to see if they are worth doing.) |
|
![]() |
![]() |
![]() |
#6 |
Prophet
Join Date: Aug 2009
Location: Madison, Wisconsin, US
Posts: 3,025
![]() |
So, at first I was a big fan of smarter monster AI, but over time I've become less fond of the idea. I really like monsters choosing abilities at random. It makes the battles different each time. Sometimes kavlax breathes gravity twice, sometimes he doesn't breathe at all. That's cool.
Also, smart monsters would require a fundamental redesign of late game mechanics. If monsters always led off with breaths, then you could never risk being in LoS of something that could kill you for a single turn. It completely eliminates a lot of risk taking choices, if you know that the monster's strongest attack will kill you. Similarly, you must always teleport away after any powerful summon (assuming that ASC's get eliminated as a possibility.) Being in LoS of two monsters that haven't breathed yet is instant death for most characters. Now this all can be changed too, but in general making the monsters smarter winds up reducing possible options for the player. While keeping monsters dumb and subject to RNG shenanigans yields lots of risk-reward opportunities. I think the second approach works much better for roguelikes. Nevertheless, Tome4 has smart monsters with all spells having cooldowns (and mana as well.) So at least it might be worthwhile to take a look at it to see how it plays and whether you actually like it in practice. |
![]() |
![]() |
![]() |
#7 |
Ironband/Quickband Maintainer
Join Date: Nov 2007
Posts: 1,009
![]() |
I think the best solution is 'sometimes smart' mobs.
Whenever the monster chooses an option, make a random check. If it passes, do the optimal thing. If it fails, do a random thing. The chance of passing the check could vary from mob to mob, and also by 'difficulty mode'. This would lead to mobs that felt smarter but didnt just spam their healing spell or their best unresisted attack. A.
__________________
Ironband - http://angband.oook.cz/ironband/ |
![]() |
![]() |
![]() |
#8 | |
Angband Devteam member
Join Date: Aug 2008
Location: Philadelphia, PA, USA
Age: 42
Posts: 1,516
![]() |
Quote:
|
|
![]() |
![]() |
![]() |
#9 | |
Ironband/Quickband Maintainer
Join Date: Nov 2007
Posts: 1,009
![]() |
Quote:
Its also very straightforward to implement, could go pretty much straight into a dev version, heck if the smart chance was small at first then some players might not even notice the difference... A.
__________________
Ironband - http://angband.oook.cz/ironband/ |
|
![]() |
![]() |
![]() |
#10 |
Prophet
Join Date: Dec 2009
Posts: 9,022
![]() |
Another possibility would be to have the monsters have different pools of spells each with its own set of cooldowns. For example, AMHDs might be able to breathe any two elements before running out of "breath charges" (like having a stack of rods); meanwhile, their confuse/blind/paralyze spells would have a separate pool with its own set of charges and timers.
This would save us from every fight being predictable, I think, while also meaning that the player isn't immediately safe as soon as the monster's big nasty attack is used once. Also, you can split up the pools e.g. by offense/defense/status/summon, let the monster pick which pool to use intelligently, but select randomly within the pool (or vice-versa -- select pool at random, cast best spell from with it, but I think that's less interesting). So when the monster gets low on HP, they won't necessarily always cast a healing spell, but they will cast something else defensive (probably teleport or teleport-away, since there aren't that many defensive spells available to monsters). |
![]() |
![]() |
![]() |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Display Modes | |
|
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
Ironband Mana | Mikko Lehtinen | Variants | 13 | October 8, 2012 20:07 |
What's the penalty for trying to cast spells without mana? | Nemesis | Vanilla | 5 | April 19, 2010 17:59 |
feature discussion - halve mage damage mana | PowerDiver | Vanilla | 48 | December 31, 2009 03:58 |
Morgoth's Mana Storm | awldune | Vanilla | 5 | November 22, 2008 03:15 |
question about armor imposed mana points penalty | tg122 | Vanilla | 4 | December 17, 2007 17:17 |