Imho, the interesting thing in tactical combat is making non obvious choices.
High Ground is only a non obvious choice if said ground is either:
A) in the middle of the map, so moving your ranged dudes there risks them getting melleed.
if you have a choice between abandoning the high ground or getting your ranged units melleed.
C) if there are multiple positions with different boni available (f.e. defence bonus in a forest vs. better damage output from a hill).
This is not a very common situation.
Flanking would, generally speaking, have a lot more possible drawbacks:
A) Aggressive flanking is more likely to get your own flankers flanked too (this is the main thing, it will always be a factor unless you are fighting a single unit stack).
B)Your fast moving flankers will probably have a choice between going after the enemies ranged component, or going after his line troops (and do flanking moves).
Some other mechanics that could be fun:
-Something akin to a "defensive swarm" bonus for Pikemen. If you unit has a friendly pikemen in contact, it receives a +1 Swarm bonus against anything it attacks in mellee. This may only be done if the Pikemen has no direct contact with the enemy.
-Generalized trade off, do you want the Pikemen to give Swarm boni, or do you want the pikemen to do actual damage itself?
-Do you want a wide front to efficiently protect your archers, or do you want to focus your mellee component on a breakthrough?
-Do you want to risk getting seriously hit by area of effect attacks?
In general, I am trying to make different units more worthwhile. My reasoning is the following: There arent a lot of units that are buildable in general, and Paladins (due to their enchant abilitiy) are clearly the best units that involve resrouces. Imho, they outcompete all other units so much that any Crystal/Iron not used on a paladin is somewhat wasted.
Maybe other things:
-For units with shields:
--Shieldwall: Extra dodge against ranged attacks, reduced movement. Tradeoff is pretty clear I think.