Quoting Lord Reliant, reply 14
Quoting Frogboy, reply 11Unfortunately, while rare, it's possible. This happens in Civilization as well, once in awhile (barbarians destroy your home city). It's extremely uncommon since there are, literally, checks in the AI to avoid attacking the capital. But the AI will still attack a city if it's in their way to something else and even then, that's extremely rare.
I'm sure this is oversimplified, but couldn't the path the monsters take avoid cities in the first X turns?
It's supposed to. But there's a lot of voodoo in path finding to make the game "fast". For instance, if you built on a tile after the path to a destination has been calculated, you could now intersect. The solution would be eto have it recalculate the paths every turn but of course, that would mean you'd increase the time between turns by around 10X.
Figured that was the case. Another idea:
How about just having it check only what's in it's most current set of moves? As in, "is there an obstacle between me and my destination on this turn?", if yes, THEN recalculate the path. Otherwise, keep on going. Rather than computing the who path, just check the current one. Some overheard, but not as much as the whole thing.
Or another, completely different alternative:
How about making monsters only attack or travel within a very well-defined radius (say, 3 squares) for the first 50 turns? In essence, leash them.