Changes to monsters don't seem to come up much in discussions of game balance. I have plans in the works to make monsters, particularly in the deeper levels, a bit more challenging. Here are a few basic ideas I'll be following up:

Add more deep monsters

Strengthen up some existing monsters, and probably push them deeper

Make monster spellcasting power not just equivalent to level

Make monster spellcasting a bit smarter

Improve monster archery

Make shallow monsters a bit less likely to appear at deep levels

Comments and suggestions welcome.

__________________
One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.

Good luck doing items 4/5 without making the monsters irritating to fight. In particular, intelligent use of healing and teleportation spells make monsters largely immortal -- unless you introduce monster mana pools, in which case instead fights become two-phase things of first draining the monster's mana and only then being able to kill them. I'm sure these aren't unsolvable problems, but they will need to be taken into consideration.

One thing I'd like to see is better differentiation of the myriad "dumb melee" monsters in the game. We have probably over a hundred monsters in the game that can only move and attack in melee, many of them showing up in the early game (e.g. all kobolds except shamen, all skeletons, all orcs except archers/shamen, most trolls, all zombies, several ticks, several snakes...). Giving them minor differentiations would help relieve some of the tedium of said early game. Some brainstorming:

* Monsters that can hit you in melee from 2 tiles away.
* Monsters that move 2 tiles at a time instead of 1. Different from being fast a) in that they have to move in the same direction (no knight's move), and b) in that they can't both move and attack in the same turn.
* Monsters that take damage when standing in lighted tiles.
* Monsters that permanently light the tiles they step on.
* Monsters that are invisible unless inside the player's light radius (sort of like infravision)
* Monsters whose stats decrease as they take damage (hacking bits off of a skeleton)
* Monsters whose stats increase as they take damage (berserkers)

Most of these abilities needn't have a drastic impact on game balance, but would make the early game more varied when many encounters boil down to either trading blows in melee, or unloading ranged abilities against a foe with no ranged attack.

Good luck doing items 4/5 without making the monsters irritating to fight. In particular, intelligent use of healing and teleportation spells make monsters largely immortal -- unless you introduce monster mana pools, in which case instead fights become two-phase things of first draining the monster's mana and only then being able to kill them. I'm sure these aren't unsolvable problems, but they will need to be taken into consideration.

Yes, I'm well aware of the pitfalls of infinite healing and monster mana (partly through education from people like you and fizzix).

My rough idea is to classify spells, probably into something like attack, summon, annoy, escape. Then pick a spell at random as now, but for attack (and maybe annoy) spells allow choice of a better one from that group, so the monster can exploit resistance holes and other weaknesses.

As for archery, it'll be just like introducing a few more types of druj, and making them mobile

Your other ideas are along the lines of what I'm thinking, too. I'd like to see every monster have a reason for existence.

__________________
One for the Dark Lord on his dark throne
In the Land of Mordor where the Shadows lie.

If you added a mana pool to monsters as Derakon suggested, you could have them cast more intelligently without being too annoying. It would simply be a matter of setting reasonable costs for their healing and damage spells, and adjusting the size and regen rate of their mana resource. Another way to make that less of a problem would be to add items/weapons and player abilities that would allow them to steal, drain, or burn monster mana, or silence casters to take them out more quickly.
Another approach would be to just give monster spells cooldowns, so that after they have used a particular spell, they must wait x number of turns before it recharges and they are able to cast it again.

Better combos would be welcome. Adding the right friends to normal monsters rather than boosting them with a zillion of hp or heal spells. Friends/backing monsters would do e.g. missile, buffing (eg monster speed, resistance, shield) and digging.

Monsters that interact with each other. A mage in a party of adventurers that makes his party members invisible or casts haste. Orc Shamans that can heal orcs within a band.

Sentinel/guards that set off traps or cast a spell if you try to cross a room, but do nothing otherwise. Imagine a 10,000hp golem guarding a chest, that contains an OOD object. It only attacks you if you open the chest.

Bands or groups of monsters that have sentries. If you kill the sentry before they raise the alarm you get to ambush the rest, but if they raise the alarm you have to fight the whole band.

Monsters that call monsters already on the level to guard their retreat if they start to flee.