I was thinking of ways to make combat interesting in my MUD, when I stumbled across the idea of a battlefield. As it is a MUD, most of it is represented by rooms, but also some "wilderness" by a text map built up of turfs.
The idea would basically be to allow either side to initiate attack, thus teleporting both sides to a square grid to fight. Due to how the game works, those wishing to enter close combat would have to stand on the same turf(Mobs aren't dense), while those with spells and long-range attacks could stand further off to avoid damage or to use bows or rifles or whatever.
The positive sides to it are...
Gives an aspect of size to battle. Archers can actually stand away from the battle and shoot, decreasing their risk of being jumped with just a bow in their hand. Spellcasters won't be standing directly in the line of fire when they cast their spells, unless they manage to taunt the monster enough with their spells to warrant it charging them.
It allows very interesting AI aspects. It makes it possible to create "Area effect" combat spells which have an actual physical range, and area of affect. It also makes it possible to create lesser, "closer" spell and melee attacks that only affect those standing by the monster. Perhaps it goes into a rampage, and all those standing in the room will take 3 hits from it, unblocked. That means if spellcasters are far enough away, they won't be hit by the rampage, while they might still be hit by its Fire Breath area effect spell.
The negative sides to it are...
It would look odd to others. I will have to represent the players and mobs transported off to this virtual grid in the room they were in before. And how do I show who is fighting who? What if the spellcaster isn't engaged in combat, how do I determine who they are fighting, if there are multiple enemies in the battlefield. I could simply say "Name_01 is fighting.", but thats very vague. How would outsiders know who is fighting who, and that might be very important?
Targeting the correct mobile. Say you have a party of 6 players, fighting 2 goblins. The 3 players are in the room with 1 of the goblins, while the other goblin is fighting solo against a 4th player. How does the spellcaster know which goblin is the goblin in the room with the 3 people, and which is the goblin in the room with the 4th player? The MUD supports the use of 1.item , 2.item, etc., but how will they know if the goblin is 1.goblin, or 2.goblin? Firing a spell at the wrong mobile may be fatal. As I write this, it occurs to me that I can change their names to include a number, and their shortdesc, so it would appear as so:
A goblin is here, fighting Alathon
A goblin is here, fighting Alathon.
A goblin is here, fighting Spuzzum.
Spuzzum is here, fighting A goblin.
Alathon is here, fighting A goblin.
And spellcasters would be able to use goblin3 to target the A goblin. Now a question on this proposed numbering system:
Do you believe it would be better to assign all monsters a number, completely independant of their name? Like so:
A mountain Gazelle.
A Digital Mouse.
An angry shoesalesman.
Or to assign mobs a number, if their name is the same? like so:
A mountain Gazelle
A Digital Mouse
An angry shoesalesman
The first option would allow players to target monsters using strictly a number(i.e. cast this_spell on 1 to cast it on the first A goblin), while the second means you have to use a full name, such as cast this_spell on goblin1.
And do mobs retain their number, if a mobile with a number smaller than theirs dies?
Please post your thoughts, and if Im not making sense, say so =)