It would definitely be nice if there was a "preferred" range for a Demigod that was enforced. For example, if you were out of range, the Demigod would merely move to be within maximum range and immediately start his attack (or ability). However, if you were attacking, he'd move to his preferred range, and attempt to stay within that range.
It'd have to be tweaked a bit; the idea would be that the Demigod would move to a preferred range whenever moving wouldn't delay some other action that's been queued. It'd also be somewhat annoying if the Demigod implicitly moved closer to an enemy, even though you really don't want to be closer to it. As a consequence, this could even be set by the user through a toggle:
- "Stay at Maximum Range" tries to keep the Demigod at maximum range at all times.
- "Stay at Preferred Range" tries to keep the Demigod at the preferred range, as described above.
- "Stay at Minimum Range" tries to keep the Demigod next to the target at all times. This could be useful if you could move to a targeted ally Demigod. If this was the case, you'd essentially follow him anywhere he went.
The use-case for a preferred range seems alot more convincing than the minimum range. I guess the big problem is currently you have to really micromanage the location of your Demigod, so this sophisication feels out of place. I personally could find it interesting.
If you went totally crazy with the idea, you could also have preferred-angle options. Specifically, you could define what angle you wish to be at, relative to enemy targets. For example:
- "Stay at the flank of my target" means you would form a line facing the enemy. I can't think of a use-case for this.
- "Stay behind my target" means you would, of course, stay behind the target. Useful for healers and ranged Demigods if you're following an allied melee Demigod.
- "Stay in front of my target" would be useful if your melee Demigod is following a ranged Demigod. The only problem is that this isn't as useful since you'd be relying on the ranged unit to move you to the correct position.
If you combine the range preferences with the angle preferences, you could really abstract alot of the movement in the game. Of course, if it wasn't intuitive, it'd add to more headache. Plus, since you're already controlling essentially one character, there's not much reason to abstract it. For heavy minion-based characters, it could mean your priests would kite on their own, for example.