Thursday, 20 September 2012

Various proposed changes

I have some ideas for a few relatively far-reaching changes.  The big question is whether they are radical enough that they warrant a fork (of V or v4) or whether inclusion in v4 is reasonable.  To begin with I want to motivate the problems I'm trying to solve.

1) The length of the second half of the dungeon is too long, and gameplay tends to be monotonous.  This is only countered by the enjoyment of being in the deep dungeon assuming you are unfamiliar with it.  (This is the standard operating assumption of Angband, it is not true for me.)

2) Unique monsters are too strong.  They can rarely be handled at depth.

2a) There is not enough incentive from dealing with uniques, particularly late game uniques. 

2b) On the other hand there is incentive to wait to kill uniques until deeper in the dungeon for better drops.  This is the standard gameplay strategy.

3) Monsters come in groups that are too large (and tedious to deal with).  Group monsters are also too ubiquitous in the dungeon.

3a) Later game escorts are absurd.  20 pit fiends or greater balrogs are not an interesting challenge.  They are an impossible challenge.

3b) Z monsters are too powerful.  Always awake + breathe for way too much damage make these groups uninteresting and not fun.

4) Monster summoning is too powerful.  If two Great Wyrms of Balance are too much for one player to fight at once, one should not be able to create another.

5) Teleport other, destruction and banishment are too strong.   4 and 5 are interrelated.  You can't weaken the players counters to summons without weakening summons.

So here's what I would like to do -mapped to the above issues.

1) Reduce the dungeon to 50 levels.  This may involve removing some unique monsters, but that's not entirely necessary.

1a) The mapping would proceed something like this.
     Current Angband                          Smaller version
    1-10                                               1-10
    11-50                                             11-30
    51-100                                           31-50

1b) This step is probably the final step I would take, and the most likely to require a personal variant, especially if it involves removing monsters.

1c) Sauron lives at 50, killing Sauron causes Morgoth to spawn on the level.

2) Lower the strength of uniques.  This would mainly be accomplished by reducing hit points.  An increase in the incentive to kill uniques is discussed in 4).

2a) Make uniques guaranteed to appear on their rated level.  A player that wants to systematically kill all uniques will be able to.

3) The main goal is to provide more customization for how large groups are.  This is likely to be the least controversial, so it's probably what I'll start with.  (It's also the hardest for me to implement)

3a) Allow specification of what monsters appear with given monsters.  The clearest example would be to have the three trolls Tom, Bert and Bill appear with each other.  But also Gothmog appears with Lungorthin and a couple other Balrogs.  (If Lungorthin is dead, Gothmog is that much easier to handle)

3b) Allow different magnitudes of how many friends should appear.  Novices can come in smaller packs, but orcs can still come in larger ones.  Size should be dependent both on danger and how annoying it is to deal with a large pack.  'Z's are annoying, 'o's are not.  The argument is that large packs of 'Z's are bad for game enjoyment but large packs of 'o's are ok.

3c) No spawned group monsters.

4) Major changes to summons and player abilities are called for.  First for summons.

4a) Monsters that tend to 'summon' other monsters instead appear with one as an escort.  Enchantresses are accompanied by a dragon, Mystics come with spiders.  Rangers get some dogs.

4b) Most summons get replaced with 'calls.'  A call brings a monster somewhere else on the level to the summoner to assist in the battle.  A called monster must not have LoS to the summoner (or maybe the player because that's easier).

 - I've considered having a called monster gain HP back at the expense of the caller if it was injured, but I'm not sure whether this is a good idea or a pointless one.

- Calls should be a preferred attack if no other monsters are in LoS of a call-capable monster.  The goal would be to first kill the escort, then the summoner.

- Failed calls should not be repeated.

4c) If no monsters are available to be called (all dragons on the level are dead) nothing is summoned.  The call goes unheeded.

4d) Monsters can still summon (read: create) a monster but at some penalty to themselves.  I was thinking a HP penalty related to the level of the summoned monster.  Monsters will not use this summon attack if their HP are below some threshold.  Very few monsters have this ability (Qs and some Uniques).

4e) Summon Uniques is unchanged.  Only Sauron and Morgoth have this spell.  The uniques come at no penalty.  Other non-unique summons arrive with the same penalty for Sauron and Morgoth.  If all uniques are dead, Summon_Uniques brings nothing.

5) The major nerfs of summons are accompanied by major reductions to the ways for the player to dismiss monsters it doesn't want to fight.

5a) Monsters get a save against teleport other.  The save maxes at 50% for Morgoth.

5b) Destruction does not remove monsters from the level.  Monster can save and be teleported elsewhere on the level, or just outside the destruction zone.  Destruction zones are smaller (radius 10 instead of 15).  Destruction will not work on level 50 until Sauron and Morgoth are dead.

- Destruction spell is only available to mages and priests.

5c) Banishment disappears entirely.  Mass banishment works as a mass-teleport other of everything within N squares without a saving through.  N must be larger than max-sight (uniques excluded)

Some more miscellaneous changes.

Monsters can forget about the player and fall asleep.  (I'd like to implement wandering monsters, but that might be beyond my ability.)  Spawned monsters can appear asleep, or maybe eliminate spawned monsters altogether?

Increase the divisor of many breaths.  Time, Gravity and Plasma top this list, but I would also consider Nether, Shards, Chaos and Inertia.  A pack of 6 time hounds that only breathe for 30 damage are still something you avoid.

I have a far goal of implementing permanent levels, but I know I don't have the skills for this right now. 

Allow probabilistic drops.  Sauron gets a 2% chance of dropping the One Ring.  Gothmog has a 50% chance of dropping his whip, etc.  This also includes normal drops like spellcasters dropping books, molds dropping mushrooms and so on.

Wednesday, 11 April 2012

Thoughts on the current state of 3.4 gameplay

The following are my thoughts on the current state of 3.4 gameplay. Overall the game is good. There have been many quiet improvements in this version and there aren't really any showstoppers. I think a release candidate at the end of May is certainly possible. I'll outline the rest of the post as follows:

  1. What gameplay improvements have been made
  2. Changes that still need to be made
  3. Current bad things about gameplay and where we might want to direct attention in the future.

1. The current improvements/changes in 3.4.

If you haven't had a chance to play 3.4 lately, the game is significantly different from 3.3, and mostly in a better way. Shockbolt's tiles are amazing. While I prefer ASCII, and still do, they may help in bringing new people into the game. The addition of new pits is another big improvement to gameplay. Summoning changes have made fights with summoners less tedious and more interesting (summon_hounds went from the least interesting summon to the most interesting). And lastly, the game is significantly more stingy with artifacts and good weapons. This successfully prevents the "runaway" effect that existed in 3.3 and previous where I personally found that below a certain dungeon level my character improved faster than I could descend. Currently I've found that many items and weapons that I would never use previously have a useful niche. And artifact production is way down, which means that other egos have longer lives. Lastly, in the endgame I'm spendting more time hunting for equipment than for consumables which is much more interesting (in fact I have excess consumables to be used for uniques). It's not perfect yet, but it's certainly better.

There are other changes, but these seem to be the most salient.

2. Changes that still need to be made.

From my gameplay, there is only really one change that absolutely needs to be made for 3.4 to be released, and this is:

A) remove_curse is currently useless.
Right now there are no longer any cursed jewelery, and no cursed weapons or armor that you can find (stats collection picked up 0 cursed non-artifacts). The only cursed items are the cursed artifacts, and the ones you create yourself with the curse scrolls. These are all heavy_curses which remove_curse does nothing for. The removal of light_curse on objects is probably a positive step until curses are made more interesting, but it puts us currently in an odd position because we have some useless items and spells in the game.

The simple solution is to remove all remove_curse scrolls (even *remove_curse*). We also need to get rid of the remove_curse priest spell as well. Enchant scrolls should have the curse breaking property in their text. the priest spell of dispel_curse could stay since it does have a niche use, however it's redundant because of the priest enchant spells, so it should probably be chucked also. Then we can look at curses in more detail when they've been overhauled (4.0?).

The other changes are not necessary but probably should be fixed.

B) MAX_RANGE option for large tiles/small screens.

Playing where I could only see about half of MAX_RANGE on my monitor is actually completely playable, provided you keep a sharp eye on the monster list. However, it's not ideal, and may not even be practical for phone screens (don't know if they support subwindows, probably not). The solution is to make a birth option to lower the MAX_RANGE, probably to around 10 or so. We need a couple lines of code to cap archery and throwing at MAX_RANGE, but all the devices and spells should be fine on their own. Unfortunately, this is a change that I'm not capable of coding myself. Changing MAX_RANGE requires some esoteric additions to some hardcoded values in cave.c that I don't understand. I also have no idea how this would work with an option, since these values are checked at game init. If someone wants to pick this up for 3.4, great. Otherwise it will probably need to be punted.

C) Early dungeon emptiness

I've talked about this a bit on irc, and d_m tepidly agrees that the early dungeon is too empty. In fact, it seems like it is suffering from TLJ (too little junk). Later in the game, where dragon pits and vaults spew crap all over the floor, TMJ exists, but that won't be fixed for 3.4 and I'll mention it a bit in the next section. My solution is to increase the floor drops, at least to 3.0.6 levels. This is an increase to 12 items per level instead of 9. I'd actually prefer it go up further to 15 or so, but there's some pushback to even raising it back to 12. Increasing floor drops mainly increases early game availability of items, since later in the game, you get more items from monster drops than the floor. If you oppose this, please play the first 10 levels or so of the current angband (preferably ironman style) and see how the dungeon feels to you. It's possible that we can wait until the RC is out and get player feedback, but player feedback can be notoriously skewed depending on who actually is playing it.

That's it for gameplay issues that are problematic. There's one must-fix, one easy-to-fix that we just need to reach a consensus on, and one fix that is hard, but won't prevent a release if no one wants to take it on.

3. Current problem areas

There are several longstanding annoyances with gameplay (or at least with how I play it), that we should be thinking of solutions for, preferably by poaching ideas from v4 and variants. In fact many of these problems have been focused on in v4, so we might be able to nip some of the mature ones for future vanilla development.

A) Traps are boring. CunningGabe's changes in v4 will certainly help. Although having traps being semi- or non-relevant is ok for quality of gameplay. Just because traps are boring doesn't mean I'm not enjoying the game.

B) TMJ from pits/vaults. I hate sorting through the tremendous amount of junk from pits and vaults. It's ok when you come across the lone item on the floor that's junk, but when you have 100 junk items to ID or test-wield (or even test-pickup) it gets tedious. Some solutions like auto-id on sight, or a LoS ID spell should be on the table. This is not a commonly test-played area of the game, since most test-playing doesn't simulate player-dungeon interaction at high levels. However, this is probably the least satisfying part of gameplay for me.

C) Dungeon interest wanes/game drags in the 2nd half. The game proceeds with much improved pacing between dlevels 1 and 50. Getting to dlevel 50 is a fun goal, and more enjoyable for me than killing Morgoth. There are lots of reasons for this, and no real good solutions, but it should be something to think about. This is a long-standing problem and has actually been improved relative to 3.3 with things like Ainu pits and lower artifact drop rates.

C2) There are too many uniques. Unique drops are still weak compared to the effort it takes to kill them. Uniques without a drop have no reason to be killed, besides personal pride (and the vague goal of preventing Morgoth from summoning them). This hasn't been touched in v4, except for the redistribution of monsters, which has made uniques even more out of whack with their level distributions. I don't have anything resembling a solution to this issue.

D) Caverns are still a problem. They are too dangerous, too common, and have no rewards. I may push for 3.4 to have a decrease in monster density in caverns and a increase in drop-quality (as exists in labyrinths). On the other hand, labyrinths, which I thought were fun because of the good drops are now so rare to be irrelevant.

E) I talked about curses earlier. There is potential for something interesting here, but there's a lot of inertia and a lot of resistance (and a lot of difficult coding). One improvement was recently pushed to v4 where curse scrolls either blast a weapon or make it sticky. I think this should have immediate consideration for inclusion in 3.4. However, I'm not a good judge here. Because of gameplay style, in all the games I've played, I've never once cursed a weapon or armor with a scroll...

F) Dungeon levels are too predictable. Nomad's extra rooms would be great if we could include them in 3.4. I doubt there's much opposition to this. Everyone seems to like new rooms. In the future, adjustable pit sizes, and multiple pits per level could be helpful.