Elemental is a big world. Much of our game design for Fallen Enchantress has come from imagining how different parts of the world would drive different strategy.
Western Anthys & The War of Magic
For example, in Elemental:War of Magic, we envisioned the random make staking place in Western Anthys around a century after the cataclysm. This meant a barren, desolate world where the objective was to find the tiny spots of resources (fertile land for example) and gain control of them. Where you built your city didn’t matter so much as long as it was close to a resource tile of some kind.
But Fallen Enchantress takes place in Eastern Anthys, a land that was once the seat of power of the Titans and whose land, while far more dangerous, is less desolate. This presents some interesting AI challenges.
Where should I build my city?
In War of Magic, that was easy. Find a resource and build near it. Voila. Those resources were all pretty uncommon and so there weren’t a lot of AI decisions there.
In Fallen Enchantress, the precise tile matters. To the player, they can visually tell the “good” places because they’re green (or otherworldly violet). But if that’s not good enough, you can turn on the resource overlay and actually see the initial output of a tile.
Two obvious resources would be food and material. The more food, the higher the population the city can support. More material and the more productive the city can become. Since population and what improvements you build have a great deal to do with how “powerful” the city is, there is a natural inclination to have fewer, powerful cities. The world has a limited population to attract and so the more cities you have, the more spread out your population gets. This is a tough thing for the AI because normally, having a ton of cities is always a good thing. Here, it is an “interesting choice” that depends on your overall strategy.
Sticking with the concept of “green is good” let’s also bear in mind the importance of scouting now. The AI not only has to train pioneers but he has to find a place to send them. Which means he needs to scout out territory to find the very best tile for his strategy. This is a challenge because players will quickly notice if the AI builds a city on a stupid spot. At the same time, taking too much time scouting gives the human players the opportunity to beat them to the punch.
Another challenge that has to be baked in a bit is that certain geographical features can act as short-cuts for the AI in terms of its scouting. Rivers, for instance, are almost always desirable to have cities around. So if the AI scouting party sees a river, he’s going to almost certainly send a pioneer out into that area in parallel with scouting. In fact, a lot of the time I’ve been spending on this code is deciding when I should “roll the dice” and send out a pioneer. What % of the tiles do I need to have explored before I send a pioneer?
Another AI challenge has been dealing with monsters. In Fallen Enchantress, the monsters won’t enter your territory voluntarily. So if you stay within your borders, you’re safe. However…if your territory expands into a spot where a monster is already hanging out, then bad things are going to be done to you (or the AI player). Monsters won’t be attacking cities (or I should say, it’ll be extremely rare). But they will camp out in the outskirts waiting for meat to come their way.
Now, there is also a new concept called the Wildlands. This is actually a new AI player that I’ve had to program that has been very interesting to do. The Wildlands control a portion of the map. Kill their leader and you get to colonize their awesome area and get to their fabulous quests and goodie huts (easier said than done). If you stand outside their “territory”, they won’t bother you. Walk into it and they will hunt you down. Marketing won’t let me show you call the cool new monsters they’ve got in there but the art team has had a year to come up with some horrible, nasty things to have lurking around.
Next Time: AI dealing with quests and goodie huts, the new Quest and Notable Location system.