Let's talk about feedback loops.
There are essentially two ways for a player's success (or failure) to impact later stages of the game. In a positive feedback loop, a success causes future successes, or vice versa, resulting in a snowball effect. In a negative feedback loop, a success comes with a drawback that makes future successes harder to achieve. If you want to learn more about feedback loops in games, check out this article or this video by Mark Brown.
HoMM is built almost entirely on positive feedback loops:
- getting more resources leads to getting more troops that help clear way to more resources;
- being stuck with no resources makes the player unable to recruit troops and get more resources;
- losing troops in early game leads to losing precious momentum as you can't break out of your starting area, so while your opponents expand and scout around, you're stuck waiting for start of the next week;
- extra towns grant more gold and troops.
There are negative feedback loops too:
- building up second town takes double the resources, but the number of mines you control doesn't increase;
- more towns you capture means more towns to defend; discounting Town Portal, that means your main army is weaker than it could've been.
but those don't outweigh the snowballing effect.
Positive feedback loop isn't necessarily bad, but it does mean that the player lagging far enough behind may as well give up. On the other hand, a strong negative feedback would draw out the game, making it even longer.
So, what now? I want to counteract the early-game failure compounding, and dampen early- to mid-game snowballing. Biggest offenders are losing troops and extra towns, respectively.
One way to counteract snowballing is to introduce an upkeep cost: the more towns you have and the further apart they are, the higher the cost. This forces the expansion to take longer, as the player has to spend turns and resources making sure they can afford that extra town, or spend time recovering from having no resources due to short-sightedness.
Dealing with compounding losses is trickier. If you lose an army, you lose an army, there's no getting around that. But maybe, if you win a fight with heavy losses, you recover a portion of lost troops? Give each hero a persistent Healing Tent that will let them recover, say, 100 HP worth of troops after battle. That's a hefty boost in early game, but becomes almost worthless in late game.