Internal build 0.78 is the first build that the full strategic AI has been checked in. From then on, it’ll be balancing it based on play testing and listening to players discuss how they beat it. But feature wise, the AI can now fully play the game with one exception – we don’t let the AI win via the master quest. But it will try to win through other means if you have it selected.
The next public build will be where we begin the tactical AI implementation. We’ve been writing the APIs for tactical battles for months but we haven’t made use of them yet since we first have to decide how tactical battles are typically fought. That is, knowing the rules is only part of the challenge.
AI Wars: Let it begin. LET IT BEGIN!
To see how effective the AI is at decimating each other, we put a ton of them on a small map. Specifically, small map, 18 players.
I, on the other hand, will be going out of my way to kill them all quickly.
As you read this, please understand, I’m not trying to play the game. I am trying to win the game as efficiently and, truth be told, as cheaply as possible. Any scummy tactic I can find I’m going to use.
It’s a three way battle: FE’s AI vs. My cheese vs. Kael’s design.
So let’s the cheesing begin…
Since I am scum..
So the other players are out there happily exploring the world. Getting gear, probably training pioneers with dreams of expanding their empires.
What they’re really doing is starting my cities for me because while they’re out, I’m going to take their cities.
So…
What should we do about that? What should they do to stop me?
Here’s the data we have to work with:
What sort of evil should we inject into the function above?
Getting ganged up on
To answer some of the things above, we can create some interesting consequences that will help “mix things up”.
For example, I can take advantage of the ideological differences between Kingdoms and Empires. So if I’m a Kingdom and I attack another Kingdom, that’s a big deal. Or I can make it a big deal if I attack early depending on the faction traits. For example, a player with a Diplomatic trait might freak out a lot more if I go and attack someone early on.
I'm guessing this is your answer:
What's needed is the ability for players to set stacks to auto-defend areas so raiding won't be as annoying.
If the AI knows that you are the aggressor, then it should be expecting an invasion, especially if you are of comparable or greater strength. It should put out recon parties to detect your approach. It should anticipate what cities you are likely to target based on its knowledge of which cities you have spotted and determine which cities are more important to defend based on output and proximity to your territory. In general, the AI should not try to pursue a war on multiple fronts. If a stronger aggressor declares war on them when they are already at war, they should try all means to end one conflict, or gain allies in their conflict to even the odds. If they are outmatched, focus on defense and make the aggressors pay for every inch of ground. Spawning a group or two to hit you from behind in order to distract and delay your attack would also be wise.
As far as attacking goes, the AI, both individually and as allied groups, need to be able to identify targets, assemble forces and time simultaneous attacks. Here is where it would be nice if the tactical battles could incorporate units in adjacent squares. Two (or more) allies converging to cooperatively attack your strongest armies or cities would be very evil. You would almost need another level of strategic AI for alliances above the individual player's decision making processes. Diversionary tactics are also very useful. Attack city A to draw forces out of position, then move in the main forces to attack city B. Of course, the AI should be able to recognize a diversionary attack when it comes and not overreact by moving all its forces in response.
Tactical strategies are also important, as a superior force can still lose if they do not use their forces well. Minimum, teach the AI to try to not move their units into attack range of the player at the start of a close battle, especially since counter-attacks are not in FE. Hold the faster moving units back until first contact is made if rushing in would get them torn to pieces before the heavier units can pin the enemy down. Spread out or mix in with the enemy if AoE spells are in play. Hold the line if your ranged attacks and spells are superior. Close in if they are poor. Either attack to take out enemy damage dealing capability, or attack to inflict losses (kill someone completely ASAP). Don't just attack whomever is the closest. Withdraw heavily damaged units if the battle can be won without their help to prevent unnecessary losses. A well fought battle is the icing on a well planned attack.
As for the diplomatic incentives, perhaps add temporary negative relations for capturing a city. Say, -3 for a close relation, -2 for a positive relation, -1 for a neutral, +1 for a shared enemy. And have them stack for each city. Also, additional, longer term negative relations for razing a city. They would have to wear off over time, though, or you would have everyone at war with every one fairly soon. But this would quickly turn the world against a steamroller. How about negative bonuses for being the highest on the power scale: -1 for being the highest ("Your power is worrying to us"), -2 for being 20% above the next highest ("Your power is getting out of control"), -3 for being 50% above the next highest ("You must be stopped before you destroy us all!") There would need to be positive balances, like gifting capitol or resources to produce a mollifying effect: (+3 "You have given us a great gift!")(+2 "You are very generous")(+1 "Your token is appreciated")
If you are going to use diplomatic penalties as (one) solution to this, make sure the player is warned that "declaring war on this faction will be viewed [very] badly by other [kingdom/empire] players". Confirm?
Maybe you could be given an option to spend some diplomatic capital to mitigate that effect? That is how diplomatic capital is used in real life.
Indeed, it is testing like this that caused Civ 5 to become a war-only type game, obsessed with maximizing military production asap rush rush rush.But i'm sure Stardock tests it in all kinds of ways, this is just 1 little stress test to see how the AI deals with stuff.
I was thinking that AI that feels uncomfortable/unhappy with my faction (without being at actual war) should cast in support of my enemies. So assuming:
A - that's meB - that's the unhappy partyC - a faction that I'm at war with
If A and C are about to meet in battle, then B could cast some global spell that hampers/harms A's stack. (I don't have beta access, so I don't have an example of what kind of spell would work for this.) Likewise, B could cast a non-permanent buff on C's stack, if B felt that was more advantageous. Or both of course.
Gimmi .78 already!
This one is going straight into feature requests impossible to implement, but here goes...
In real world pre-war diplomacy is much about building justification for your war, and getting acceptance for your actions from other major factions. Now, building justification isn't easy to do in the game, except maybe something like border pressure could be used here.
But getting acceptance from other players could be part of the game. You get acceptance if you bribe other players enough. Those having non-aggression pacts and who have similar viewpoints with the enemy are hard to bribe, those who are friends with you might not need any bribes. If the attacked player is viewed as aggressive, then attacking such a player is cheaper than attacking a peaceful player. You would need something like a council of wizards for this (UN in real life), and there you would simple say "I am gonna declare war on player X in Y turns, what is the cost for you looking the other way?" You could then ignore some of the wizards, and pay for others.
Now, if you do a sneak-attack on your enemy without any acceptance from others, they will get _mad_ ad you. If you go through the council, even without any bribes, they will get less angry. The attacked player gets a warning. Still, if you bribe your key allies, they are not going to mind the attack.
How does this relate to early-game war-mongering? Do that, and you will be viewed as acceptable, even preferred, target by all the other players.
As said this is probably one of those features which are just too complex to nicely fit into the game.
What if the 'human player' would collect a series of automatic 'opinions' on the AI you want to attack just like the AI does in order to decide what its opinion is of other players? What if you then had a diplomatic option to 'denounce' the target civilization to other civilizations, and based on their opinion of the target combined with your 'evidence', you could receive a reaction as to how they would feel about you going to war with the target? Maybe this could even reduce their opinion of the target to the point where they are ok with you attacking? Or even cause them to join in, or break treaties if the evidence is strong enough and lowers their opinion enough? That way, the system kind of makes use of what is already there in the AI 'opinions'.
Maybe something like this for the "council".
You claim: "I am going to declare war against "Al-Froglar" in 10 turns, what say you?"
And then you would have a select list for each faction with choices like:
And then you could use your gildar or diplomatic capital to "buy" one of the options.
Now, implementing this in a way that is fun and adds to the game would be interesting... But part of the fun of these forums is designing your own game without the need to implement anything working
Sounds interesting, and would be a good use for diplomatic capital!
I really want to see a robust diplomacy system implemented along with this and the diplomatic capitol above is great.
Some things mentioned above like Super-stack versus guerilla warfare should also be partially up to having different "AI" personalities.
As for the narration, I think that every time there is a "state" change there should be some kind of message at the minimum. For instance if the war so far has been about raiding and harassment but the AI now believes it has enough power to kill you, it should have some kind of message that it is going for the killing blow or total war.
Also, war and diplomacy should never happen in a vacuum between two groups. Beyond just declaring war the changes in relationship should be evaluated by other AIs. For example a Kingdom seeing a weaker kingdom being taken out by a powerful empire (or even rival kingdom) should think about how it can prolong the war and make it more costly for the larger power. This is a tactic I used in Galciv a lot to keep groups I didn't want to deal with going at each other for longer.
Conversely an Empire seeing a weakened opponent being taken out by a stronger opponent should swoop in for the kill to capture it before the other does. For example: a message from Magnar saying "Nothing personal, but we must seize your cities before Ceresa does. Do not worry, if I capture you first you will become one of my favored slaves". They might have been helping you a turn before, but you see back then you still had a reasonable chance of victory...
(-6.0) Empire razes a Kingdom Capital City - an event that unites the Kingdom sovereigns against the Empire threat.
(-6.0) Kingdom razes a Kingdom Capital City - Any Kingdom sovereign that would do this is evil and must be stopped by the other Kingdoms (not Sovereigns)
(-1.0) Kingdom razes a Kingdom Non-Capital City (not outpost) - causes other Kingdom Sovereigns (not Empire Sovereigns) concern.
(-12.0) Kingdom or Empire razes all cities of another Kingdom striking fear in all the other Kingdom sovereigns (not Empire Sovereigns) that they might be next.
Guys, it's the weekend, I am sure Frogsy has other stuff to do. No point in filling up his post with game changes.
A good diplomacy system doesn't consider the relations between the factions in isolation. Having a system where an action against one faction affects the whole system is better. I was going to say more realistic, but as this is a game about magic I don't know if that is the right word to use here...
I do understand that the idea I presented goes probably too far. It has the risk of making diplomacy too central part of the game. If a really good implementation of the "council" would be done, maybe it would be actually fun to adjust how much you are going to bribe each faction to make them look the other way. But realistically it is unlikely such an implementation is actually possible.
It's fun thinking about these things, though. I don't see a reason to not discuss about these things, as long as we are not claiming "do this or the game is broken". This is about entertainment after all. And there is always the odd change that once in a while something implementable is actually found.
it would make a lot of sense to change "haven't met each other yet" or whatever it is to "unmet" in the diplomacy screen. the former is kind of a long awkward read compared to the other information on that screen
add strategic infiltration with spies or hidden or teleported units operations?
It really doesn't go too far, because currently diplomacy has *no* role in the game so it could use some love to make it a useful strategy, especially if it's there's going to be a Diplomatic victory condition.
It's a good thing to suggest whatever comes into your head. It's a great thing to put those ideas in a separate post so that dev blogs don't go off topic into the realm of wishful thinking.
One thing to think about is that we can create our own resources fairly easily. You could even have several types of diplomatic capital that do specific things. And it can all be produced from the current diplomatic buildings.
Except that's really not "my logic" at all. No matter how it's done, adding AI strategy to deal with an early game rush is going to cripple it's long game. You either get AI's with low level sovs/champs because they camped in their backyard preparing for a rush, or they crash their economies and drastically slow their city progression by churning out militia for the first 100 turns. Granted there's some "in-between" possible but it's still going to result in an AI with weaker late game strength, for what, to deal with a strategy nobody is going to use? Rushing is the antithesis of the TBS genre.
The AI, I'd want it to be unpredictable in how it dealt with the early game. An AI that prepared for a rush and went hybrid would be cripped if you just built.
An AI that rushed would wipe out that turtling.
An AI that built would destroy a half-hearted rush but get wiped out by a true one.
These gambles occur in MP games, the AI can simulate this. Another option is the AI trying to ally with another player (or you) early one to jajaja another player.
When writing AI one has to look at all the players, not just the one.
For instance, how to you make early game rushing be costly to the player?
Well, one way is to have it affect their relations with other players. Because, as a practical reality, I don't want every player to have to prepare to be rushed early on. It should be a strategic CHOICE of the human player to try to do that but one with definite consequences.
I remember dialog during EWOM about rushing. I think the solution of city militia is a good one and can be further balanced by increasing the quantity and/or strength of the early game militia.
I agree. Armies which only serve to defend cities don't really unbalance the game, and if you have decent quantity and/or strength, you can make it hard to take over other cities in the critical early stages.
Early rushing by any player should also give any other factions of that race in the game some bonus population, or maybe trigger a "Refugees" event which gives a bonus population growth for a time.
There are many great features available to you once you register, including:
Sign in or Create Account