This is How I Would Program the AI for War

This is my opinion.  It is NOT meant to be criticism of the designers.  But I want to get these ideas out so the developers can at least think about it, even if they reject it.  So without further ado:

The problem with computers is on a fundamental level they're dumb.  A computer is a complex tool, nothing more.  Consequently AI writing can be summarized as "how do I get this dumb piece of shi- to PRETEND to be smart?" 

My answer to this question is: you don't.  There's no point.  The human will always have more finesse than the AI.  Instead, treat the AI like it's a dumb, but stubborn person.   Instead of trying to teach an "un-smart" person fancy tricks, teach him how to do a couple of dumb tricks REALLY WELL.  After all, there's no point in teaching un-smart people smart tricks.  They'll get confused and they won't get it.  The AI is the same.  

Consequently:

1.  During war preparation, the AI will mass fleets next to their shipyards.  In other words, each shipyard will generate a fleet.  That fleet will NOT rally anywhere.  It will literally sit next to the shipyard until it gets to a certain size.  Consequently you (the AI programmer) won't have to worry about rally points anymore because the fleet will literally be sitting next to the shipyard and WILL NOT MOVE for offensive operations until it gets large enough. 

2.  There are two conditions where the fleet will move prior to commencement of offensive operations: 

      a.  It sees a weaker enemy fleet in its vicinity, at which point it will pounce on it.  After pouncing on it, the fleet will return back to its annointed place next to the shipyard.

      b.  The fleet sees a STRONGER enemy fleet in its vicinity.  At which point the fleet will RETREAT back to the world the shipyard is based on. And will not move back to its anointed position next to the shipyard until the stronger fleet moves away.  

3.  Every fleet will be packed with exactly ONE fast moving transport along with the largest number of overpowered units (carriers in this case) it can pack together given the AI's logistics level.  Once again, this fleet will NOT move for offensive operations until it has hit maximum size.  Every ship in the fleet will be built with the same number of engines (3 good engines is a good number).  

4.  Once the fleet has hit maximum size (and one transport), that fleet will pick a RANDOM planet to attack.  Once selected, the fleet will make a beeline towards it.  It will either get there and capture the planet, or it won't.  It doesn't matter.  If the AI has 10 shipyards, that means the AI can generate up to 10 fleets of maximum size, filled with overpowered units like carriers, and one transport, making beelines towards planets you control.  

This is called "the fleet-wave strategy," similar to the strategy employed by the Russian and the Chinese in the 1940s and 1950s.  While that fleet is being destroyed, the AI will be building another one of comparable size.

5.  After capturing the planet, the fleet will be ordered to roam around in your territory looking for anything it can destroy, with a focus on destroying shipyards.  

There is absolutely ZERO finesse to this strategy.  As a result I believe it will be relatively easy to program (compared to other alternatives) and I also believe it will be effective because of the AI production bonuses at the higher difficulties.  Think of Russia vs Germany in WWII.  The Germans would out-smart the Russians at every single battle, BUT IT DIDN'T MATTER because the Russians had a MAJOR production advantage and knew how to use it (like a big giant bludgeon).  

With this you don't have to worry about the AI defending its home planets (because each fleet will literally be sitting next to each planet).  You don't have to worry about theaters of war because the AI will randomly select planets to attack, meaning that it now can attack in multiple locations (some of the locations might be really dumb, but that's fine.  As long as you have overwhelming numbers, it doesn't matter).  

Finally, you don't have to worry about bad rally points where the AI is feeding you individual ships because each fleet will literally sit still until it gets to maximum size.  Nor do you have to worry about insufficiently large fleets because the AI will try to pack as many ships into each fleet as possible, under the condition that EVERY SHIP must have the same number and type of engines.   And finally because each world will literally build each fleet separately, you don't have to worry about the trickiness of programming inter-world cooperation or rally points.  

 

Your thoughts? 

107,239 views 40 replies
Reply #1 Top

Have you fought many wars at higher difficulty levels? I've seen reasonable behavior from the AI at challenging and tough, with the AI sending in screener fleets first to engage my ships with transports coming in behind to take out planets. Transports are often in fleets with other ships to protect them. AI planets are often defended by ships, although when I bring in overwhelming force the AI doesn't always react coherently.

I think this post would be a lot more useful if you first described what you observed and how you think it could be improved. It's not clear that you can make useful observations about war in games where you've set up conditions to use Infinite Planet Sprawl as your primary strategy, since you'll always be bringing overwhelming strategic force to bear and tactics become irrelevant (as you've so vociferously stated ad infinitum).

Also, Frogboy has a very useful post about how the AI works in GalCiv3 and his thoughts for improving it, and if you want to help you should probably read that.

Reply #2 Top

Quoting asinine_99, reply 1

Have you fought many wars at higher difficulty levels? I've seen reasonable behavior from the AI at challenging and tough, with the AI sending in screener fleets first to engage my ships with transports coming in behind to take out planets. Transports are often in fleets with other ships to protect them. AI planets are often defended by ships, although when I bring in overwhelming force the AI doesn't always react coherently.

I think this post would be a lot more useful if you first described what you observed and how you think it could be improved. It's not clear that you can make useful observations about war in games where you've set up conditions to use Infinite Planet Sprawl as your primary strategy, since you'll always be bringing overwhelming strategic force to bear and tactics become irrelevant (as you've so vociferously stated ad infinitum).

Also, Frogboy has a very useful post about how the AI works in GalCiv3 and his thoughts for improving it, and if you want to help you should probably read that.

Frogboy's thread is about helping the current AI.  This thread is NOT about helping the current AI.  Consequently, this SHOULD NOT be posted there. Obviously you did not read the instructions in the other thread carefully. This thread is about bringing in ideas for FUTURE AI.  The design process is long, so I want to get the developers thinking about these issues long before the actual programming takes place. If it happens to improve the current AI, that's great.  But honestly I don't really expect any of these ideas to be implemented (if at all) until Gal Civ IV.  

But you did get one major idea: tactics don't matter without good strategy. Let me repeat that again, with capital letters: TACTICS DON'T MATTER WITHOUT GOOD STRATEGY. It doesn't matter what fancy tactics you use if I can station transports next to each of your worlds before the war starts, and win the war in 1 turn. You might call that unfair or an "exploit" but I don't give a shi-.  My job is to win the war any way I can.  And if the AI isn't smart enough to handle it, then I will crush the AI before our fleets even meet.  

Battle tactics are mostly irrelevant as long as you know how to mass the right type of fleets in one big ball and hurl it at the enemy in waves of overwhelming numbers.  The Russians proved that in WWII and the Chinese (sort of) proved that in Korea.  

Simple, and reasonably effective.  Perfect for the AI.  

Reply #3 Top

Frogboy's thread was about his plans for the GalCivIII AI. So, if this thread is not about the GalCivIII AI, then this thread is off topic and belongs in a different forum, maybe the Stardock Games General or the Everything Else General forum.

More to the point, from what I've seen the AI already does something similar to what you've suggested, although it's actually a bit smarter about grouping up into fleets and choosing planetary targets, so it's not clear what you're suggesting.

 

Reply #4 Top

Does every ship in the fleet have the same number of moves?

Are AI rally points where they should be?  In other words, can AI ships be picked off as they move to a rally point? 

Are the fleets of MAXIMUM size before they commence offensive operations?

Do the fleets have lots of overpowered units like carriers in them? 

Is the AI attacking in multiple locations? 

Does the AI mass fleets in non-obvious locations before war? 

Reply #5 Top

At higher difficulty levels I try to bop the AI with early transport ships before they're ready. Like hell I'll let the Yor build up if I can avoid it.  If I can't declare war on them because they're too far away, I'll bribe others to do it for me.    >:( >:(

Or out-expand them.  Depends on map size.  

I'm not a person who believes in fair fights.  If I actually have to fight the AI mano-a-mano I've probably already lost the game at the higher difficulty levels.  Fights go much easier if you can stab the other person in the back while they're sleeping.  Or attain such crushing numerical superiority that you could be brain dead and still win.  

EDIT: Also, Frogboy has said he's puzzled by the "massing fleets before war" and the "how do I get the AI to attack on multiple fronts" problem.  My solution solves it.  The AI will mass ships at their shipyards before declaring war.  Each fleet will hit a separate target (randomized).  Is it a good solution? I don't know.  But it sounds reasonable.  And more importantly, it sounds relatively straightforward to program.  

Reply #6 Top

As I've tried to explain in the past, the AI does try to do these kinds of obvious things.  The issue is always a matter of (a) Did something else preempt it (b) did it have the resources and (c) how much turn time can we support.

If you genuinely want to help, my recommendation would be to share some saved games with specific behaviors you find to be an issue.  

Reply #7 Top

Quoting Frogboy, reply 6

As I've tried to explain in the past, the AI does try to do these kinds of obvious things.  The issue is always a matter of (a) Did something else preempt it (B) did it have the resources and (c) how much turn time can we support.

If you genuinely want to help, my recommendation would be to share some saved games with specific behaviors you find to be an issue.  

I got a game where I got 5 free transports from Malevolence level 3, stationed them next to the important Yor worlds without any other support, and invaded and effectively won the war in 1 turn.  It was on turn 40 or so on a Huge or a Gigantic map abundant/abundant.  

The AI didn't have any ships ready to defend because the AI was still building up its economy.  Should I add it to the metaverse? The problem is the game isn't done yet ( I have trouble finishing  games).  

Reply #8 Top

Can't tell if you're being serious or joking. But here goes:

 


1.  During war preparation, the AI will mass fleets next to their shipyards.  In other words, each shipyard will generate a fleet.  That fleet will NOT rally anywhere.  It will literally sit next to the shipyard until it gets to a certain size.  Consequently you (the AI programmer) won't have to worry about rally points anymore because the fleet will literally be sitting next to the shipyard and WILL NOT MOVE for offensive operations until it gets large enough.

OK, so the AI makes no effort to mass it's forces or defend it's planets. Awesome. What happens if I send two fleets to one world? What happens if I target his starbases? What happens if I build a transport tat can move quickly enough to reach his planet in 1 turn? There's no defenders, after all. They're all sat in space next to the ship yard, guarding a hugely important bit of empty space.



2.  There are two conditions where the fleet will move prior to commencement of offensive operations: 

      a.  It sees a weaker enemy fleet in its vicinity, at which point it will pounce on it.  After pouncing on it, the fleet will return back to its annointed place next to the shipyard.

      b.  The fleet sees a STRONGER enemy fleet in its vicinity.  At which point the fleet will RETREAT back to the world the shipyard is based on. And will not move back to its anointed position next to the shipyard until the stronger fleet moves away.  

 

So, it only attacks if the enemy is weaker, or else it runs away. So if I have one fleet that is more powerful than any of them one-on-one, I can avoid ever having to fight them at all and then just nuke the shipyards while they're cowering in orbit.


3.  Every fleet will be packed with exactly ONE fast moving transport along with the largest number of overpowered units (carriers in this case) it can pack together given the AI's logistics level.  Once again, this fleet will NOT move for offensive operations until it has hit maximum size.  Every ship in the fleet will be built with the same number of engines (3 good engines is a good number).  

I particularly like this one, since in combination with 2) it means we have a fleet  which will run away if it's not got higher combat stats than the enemy fleet, and now is also spending a good % of it's logistics on a non-combat vessel. So basically, if you have 1 fleet of all-combat equiv-tech vessels per enemy planet, you can camp them and they'll run their entire fleet back to hide on the homeworlds while you nuke the shipyards and bring up a couple of conquest fleets. Better still, since this AI makes absolutely no effort to co-ordinate it's forces AT ALL, even if there's 4-5 of their fleets in front of your 1 they will all run away. It has no situational awareness whatsoever.


4.  Once the fleet has hit maximum size (and one transport), that fleet will pick a RANDOM planet to attack.  Once selected, the fleet will make a beeline towards it.  It will either get there and capture the planet, or it won't.  It doesn't matter.  If the AI has 10 shipyards, that means the AI can generate up to 10 fleets of maximum size, filled with overpowered units like carriers, and one transport, making beelines towards planets you control. 


This is called "the fleet-wave strategy," similar to the strategy employed by the Russian and the Chinese in the 1940s and 1950s.  While that fleet is being destroyed, the AI will be building another one of comparable size.


Yes, it's definitely a good idea to pick completely random targets so that they arrive spread out and piecemeal. Especially when they make no effort to support one another whatsoever and are programmed not to react to the enemy in any way whatsoever. I particularly like the way that about half of them will choose planets on the far side of my Empire, giving the ships which are moving up from the rear something to do on their way to the front.



5.  After capturing the planet, the fleet will be ordered to roam around in your territory looking for anything it can destroy, with a focus on destroying shipyards.  

 

I could almost respect this, if the AI were doing it before trying to take a planet. The fact is, it's not exactly going to be hard picking off the individual fleets as they attempt to trek across my territory for the (clearly strategically vital) class 5 oceanic craphole 500 hexes from their origin point, and the enemy is ignoring my vulnerable shipyards in his haste to try and take the planet. A vulnerable shipyard that has seen the enemy coming for a dozen turns and which is undoubtedly cranking out a defensive fleet every few turns itself.

 

A good AI would be responsive rather than ignoring the enemy, would think in terms of theatres of war and front rather than ignoring the battle lines completely, would mass it's forces and using them in a mutually-supportive manner, and most certainly would NOT be programmed to stick transports in it's air superiority fleets. This particular set of suggestions would make for a much weaker AI than the one SD have already put it.

 

I suspect posts like this one are pretty much why Brad has no patience for armchair AI designers.

Reply #9 Top

1.  Station the building fleet in shipyard's homeworld then.

2.  The AI evaluates everything based on FLEET strength.  And yes, in the face of overwhelming force, you should give up your shipyards and starbases.  What can you do? Turtling upis the right strategy against overwhelming numbers.

3.  You'll have trouble generating a fleet on higher levels that is stronger than each individual fleet because of the AI production bonuses.  More importantly, if the AI masses their fleets BEFORE war you'll be way behind in fleet numbers by the time the war even starts.

Also, if you DO have local fleet superiority, the AI fleets SHOULD cower in their worlds.  Much better to do that than to move out and get defeated in detail which is what the AI is currently doing.  Even if you destroy their shipyards, the AI still has fleets protecting their world.  "The hedgehog" strategy so to speak.  

4.  If the AI fleets are big enough (they're in large enough balls), they can't be stopped except with an equivalently sized ball.  Your individual ships moving piecemeal to the front won't be able to stop a MAXED OUT FLEET of ships beelining towards your worlds.  

The key is to MASS the AI fleets into as many BIG BALLS OF DOOM as possible and then just send them rolling in different directions.  It's your job as the human to stop them.  In other words, this is how the AI can use its massive production bonuses at the higher levels to consistently win.  

My point is that trying to program interworld cooperation with regards to war is fraught with danger.  The more the AI has to move its ships around, the more possibilities the more agile human has to take advantage of it.  In small fleet tactics the human has an incomparable advantage, so you limit that advantage by keeping the AI's ships on their homeworlds as much as possible until the mass is ready to rumble. Consequently there's much less things the human can do to exploit it.  

Besides, this strategy has the advantage of being relatively easy to program.  You don't have to worry about tricky things like "theaters of war" or "interworld cooperation."  The more complicated the strategy, the easier it is to break.  

All of my game strategies are extremely simple and easy to explain.  (E.G. Bop the Yor before they're ready.  Or: out-expand the AI by building nothing except colony ships).  See? If you can't explain your strategy in two sentences, it's probably not worth trying it.  

Reply #10 Top

Good AI is written to achieve it''s purpose as simply as possible. Yours manages to be simple, but mostly just because it''s not able to achieve it''s purpose.

 

Seriously, you have designed an AI that runs away from tech-equivalent combat fleets 100% of the time. That's genuinely comical.

 

Also, most of the strategies you employ require considerably more than two sentences to explain,  given the rather convoluted exploits required to pull them off. The 'bop the yor before their ready' strategy, for example, needs a fairly dedicated ideological pathway, a colonising and production strategy, and even placement of transport ships above their world's prior to the DoW. If you want to abstract that to just 'bop the yor', then we can abstract more or less any plan to 'beat the other players'.

Reply #11 Top

Rules the AI should follow some rules.

For all sane empires leaders the AI should never be declaring war against an opponent it doesn't have a higher power number advantage. Right now one of the indicators that is a good numbers is the overall strength number. This is listed in the main UI under that "Power" tab. Some combination of Military power could figure into that too. When the AI finds itself declared on then it should play the diplomacy game and try to get other empires to declare on their attacker. 

In terms of strategy, which ones the AI should employ, well it should have more than one to go with, and it should go with a strategy that it appears would be most effective. Against an opponent with a higher ratio of ships to itself it should mass fleets and try to engage in skirmish actions and attrit the enemy while avoiding direct massed confrontation. Against a foe with fewer ships, it should do the opposite, and try to strike as many locations as possible early on.

The AI should also be better at figuring out how well its ships will do in a combat. That is all a numbers game the AI should excel at yet right does not appear to be very effective at in the least. 

Before war is declared the AI should also try spending 10-15 turns building up a force which could be noticeable to the opposition by way of the ratio of ships metric each empire should be measuring constantly. They should try doing this too if they have more than one neighbor doing the same. 

War should really only break out if it is declared when the AI has sufficient force to win, which should be more overall strength combined with more military power, or with a few act of war events, such as if an enemy ship is inside of ZOC borders for more than 5 turns and there is no open borders agreement. Then intercept, attack, commit and act of war and start a war. 

These types of defensive skirmishes should end relatively quickly and should only really pile up as the war gets more intense or costly for each side, which should in turn create feedback loops in the AI to keep the war up. Think MidEast, no conflict there of any real value in terms of resources or, ideology is the given reason but a great contributing factor is that it is a non-stop cluster of family killing family and avenging deaths to family, cycle, cycle, cycle....

A war of annihilation should get a build up similar to build up prior to D-Day where it takes a good year of running excess military production and keeping that inside the borders, shifting around and then bubble over and start the fires. 

It doesn't really matter what is done with the AI until diplomacy is unborked though, because all of the intel gathering I need even without sensors is right there, how many planets, how many ships, I can station the number of ships at my outposts sufficient to counter an attack and the AI is nullified. Simply building a few extra ship yards, saving up 5-10k credits, allows for fast construction of reinforcements if needed, the AI simply doesn't even conceptualize strategy right now. 

Insane leadership should have much looser restrictions on war declaring, but they are also likely to have much smaller presence on the galactic stage. North Korea, Venezula, so as to be essentially irrelevant. 

Reply #12 Top

Quoting marigoldran, reply 7


Quoting Frogboy,

As I've tried to explain in the past, the AI does try to do these kinds of obvious things.  The issue is always a matter of (a) Did something else preempt it (B) did it have the resources and (c) how much turn time can we support.

If you genuinely want to help, my recommendation would be to share some saved games with specific behaviors you find to be an issue.  



I got a game where I got 5 free transports from Malevolence level 3, stationed them next to the important Yor worlds without any other support, and invaded and effectively won the war in 1 turn.  It was on turn 40 or so on a Huge or a Gigantic map abundant/abundant.  

The AI didn't have any ships ready to defend because the AI was still building up its economy.  Should I add it to the metaverse? The problem is the game isn't done yet ( I have trouble finishing  games).  

 

Can you send me that saved game?

Reply #13 Top

You know, the most amusing part of the whole thing is what would happen if two AIs went to war with each other using this strategy.  AI1 sends it's doomstack at AI2's planet. AI2's defending fleet is, of course, weaker, since otherwise it would've started it's own oblivious charge, so it retreats to the planet, is defeated and the planet is lost. So far so good, even when the few surviving ships go off and die at the next planet along (where an undamaged fleet is sat building up)

 

Except, exactly the same thing is happening at the other end. The flaws that allowed AI1 to take the planet allow AI2 to do e actly the same thing to AI1 - and their identical fleet compositions and strategies mean they'really happening at more or less the same time, too. So over time, the two players will continously swap worlds randomly until both empires are a messy patchwork. Neither will every have eno ugh defenders to hold off an invasion. Neither will ever both to concentrate their forces. And neither will make any effort to capitalize on or consolidate gains. They'll just keep on swapping world's until they peace out.

Reply #14 Top

Quoting marigoldran, reply 7


Quoting Frogboy,

As I've tried to explain in the past, the AI does try to do these kinds of obvious things.  The issue is always a matter of (a) Did something else preempt it (B) did it have the resources and (c) how much turn time can we support.

If you genuinely want to help, my recommendation would be to share some saved games with specific behaviors you find to be an issue.  



I got a game where I got 5 free transports from Malevolence level 3, stationed them next to the important Yor worlds without any other support, and invaded and effectively won the war in 1 turn.  It was on turn 40 or so on a Huge or a Gigantic map abundant/abundant.  

The AI didn't have any ships ready to defend because the AI was still building up its economy.  Should I add it to the metaverse? The problem is the game isn't done yet ( I have trouble finishing  games).  

 

The only way you get transports by turn 40 (when most factions realistically don't have military ships yet) is from colonizing 5 worlds to get the required ideology points for malevolence, i.e. colony rushing to rush transports in a map with tons of available worlds. I suspect that means it was a Huge/Abundant setup, which is going to mess up the ideology system by giving you lots and lots of free points so long as ideology doesn't scale to planet availability.

Reply #15 Top

Think of Russia vs Germany in WWII. The Germans would out-smart the Russians at every single battle, BUT IT DIDN'T MATTER because the Russians had a MAJOR production advantage and knew how to use it (like a big giant bludgeon).

Honestly, I can't look at this and not crack out a joke in response. You think a smart person would start a land war in Russia in winter? Yeah, right. Not unless we're talking alternate history.

That said, I'd ask you to watch your statements. "Russians" and "Soviet government" aren't one and the same things. If anyone was acting dumb during that war it's the government. Not to mentioned that quite a number of Russians are "not exactly fond of" that government even in our days. For quite a number of different reasons, I might add. Quite a popular way to turn a Russian soldier's colours back in the times of that war was to brainwash him on the grounds of "it'll help to get Russia free of soviet regime". Long story short - please don't lump "Russians" with that cancerous government.

Instead of trying to teach an "un-smart" person fancy tricks, teach him how to do a couple of dumb tricks REALLY WELL.

THAT doesn't end well. Never did and never will. Unless of cause we're talking about a competition of two gorillas.

...We aren't.

On top of it, you're constantly referring to the strength advantage. I'm really wondering if you've got a wrong idea about the purpose of the AI. Well, at least one of us has, that's for sure.

You might call that unfair or an "exploit" but I don't give a shi-.  My job is to win the war any way I can.  And if the AI isn't smart enough to handle it, then I will crush the AI before our fleets even meet.

Wait, your job includes winning games? Where did you get one?

Jabs aside, games are about fun, not just winning. If you don't care how you do it you might as well cheat. Sure it's not a good way to play a game, but it fits your definition like a glove. Or namely, it's a way for you to win.

 

Now, let's drop the manoeuvring and get to the point.

 

The point - it's not AI's job to BE smart. It's not the AI's job to be EFFICIENT. It is not even his job to force YOU to be efficient and smart to beat him. His only jobs are to pretend to be smarter than he is and to make YOU feel smart when you beat him.

Plain old "AI cheating" aka AI's advantage over player is enough to make you work for your victory. Not to mention that many 4x AIs are no worse than players when it comes down to crunching numbers and optimising snowballs. And a simple starting advantage combined with "no punches pulled" approach from AI is often enough to constitute the "questionably possible" tier of difficulty. Call it brutal, call it impossible, call it bananas for all I care, the important part - most players will get fed and bored long before they know how to beat that kind of monster. And if that can't be achieved just by artificial smarts and a bonus there's always an option to roll out a bigger bonus.

The only problem this leaves is that the player doesn't feel all that special when he can see the AI's unfair advantage. It's a counter-intuitive element if you ask me (I mean EVERYONE knows that AI is no genius, why would anyone want to beat one in a fair game is puzzling) but it's a fact. For some reason humans keep needing the belief that AI was actually resisting defeat by using his "advanced decision making" and "adaptability". In other words "with his smarts".

It is more or less for that reason that the AI cannot afford to look dumb or inefficient. Even when the player expects him to be, and even when the player KNOWS that it is. It's a rare individual that requires anything more of AI (requires, not claims to require), and a rare individual rarely gets to be the model of the target audience of any massive endeavour.

And to get to the specifics, the real problem with GCIII's is not in how smart or effecient it is, it's in:

-How exploitable it is.

-How annoying his strategy is.

The first part is self explanatory. The one and only thing to add here is that displaying his dumb nature to the player is not an acceptable cost for curing him of his exploitabilities. We cure his exploitability to make him look smarter, not make him smarter to cure his exploitability.

The second part revolves around 3 facts.

1. AI has a STARTING advantage.

2. AI's strategy revolves around aggressive expansion.

3. It takes no small amount of map-tailoring to get enough breathing space to NOT get choked by the rapid expansion of top tier AIs into your backyard and yet NOT get bored by the chore managing tens of colonies for hundreds of turns.

And let me tell you - rubbing borders in early turns is one of the champions of 4x players' annoyance hit parades.

And this guy takes the cake up a notch. He's basically settling (and "base-ing") in your each and every crevice. No beeping respect for land staking, borders, border contingency and starting location distance whatsoever.

To make matters worse there's a strong suspicion that the bastard is not just cheating for vision, but is in fact directly cheating for YOUR vision and is specifically trying to hamster down whatever space that YOU, the pissed-off neighbourhood player, is aware of. If that's indeed so, than I'd like to ask whomever invented that approach to go eat a cactus. Not that it'd make us even remotely even, but it's a start.

I'd send saved games of this behaviour but there hasn't been a game with any decently-levelled (and, consequentially, indecently-behaving) AI that HASN'T done it, and I don't have a habit of keeping THAT many saved games around ;P.

Jokes aside, it's making that each and every time. Who the heck would need a save game to see THAT?

Oh, if anyone asks - I was talking about "huge" (yeah, right) maps, around 8 AIs (don't forget to throw a few players in for good measure), default frequencies and any map that doesn't try to spread the stars around the entirety of itself. I suggest trying "tight clusters" for one heck of a "border jam".

Honestly it's always been THE problem of this genre, but you people have taken it to a new low.

Yet the tale is always the same in every 4x game... First you meet them, then they settle in your backyard, then all of a sudden they are upset by border friction. Yeah right... Go figure... WE are ones most upset by border friction not them. And they don't even care, it's not like player has any diplomatic penalty he can scare the AI with. Just the annihilation penalty, but that is almost the root of the problem - it's just no fun to derail each and every game to "snowballing by conquest" and as soon as you've got border friction, war is almost a given outcome. And guess what, you ALWAYS have border friction and the AI is never handling that with care being anywhere close to the required level.

THAT is what the 4x AI's lack the most - the ability to be a challenge but not a thorn in the backsi  backyard. And yours, like I said, is a champion of all thorns and backyards.

+1 Loading…
Reply #16 Top

Quoting Frogboy, reply 12


Quoting marigoldran,






Quoting Frogboy,



As I've tried to explain in the past, the AI does try to do these kinds of obvious things.  The issue is always a matter of (a) Did something else preempt it (B) did it have the resources and (c) how much turn time can we support.

If you genuinely want to help, my recommendation would be to share some saved games with specific behaviors you find to be an issue.  



I got a game where I got 5 free transports from Malevolence level 3, stationed them next to the important Yor worlds without any other support, and invaded and effectively won the war in 1 turn.  It was on turn 40 or so on a Huge or a Gigantic map abundant/abundant.  

The AI didn't have any ships ready to defend because the AI was still building up its economy.  Should I add it to the metaverse? The problem is the game isn't done yet ( I have trouble finishing  games).  



 

Can you send me that saved game?

 

How?

Reply #17 Top

Quoting naselus, reply 13

You know, the most amusing part of the whole thing is what would happen if two AIs went to war with each other using this strategy.  AI1 sends it's doomstack at AI2's planet. AI2's defending fleet is, of course, weaker, since otherwise it would've started it's own oblivious charge, so it retreats to the planet, is defeated and the planet is lost. So far so good, even when the few surviving ships go off and die at the next planet along (where an undamaged fleet is sat building up)

 

Except, exactly the same thing is happening at the other end. The flaws that allowed AI1 to take the planet allow AI2 to do e actly the same thing to AI1 - and their identical fleet compositions and strategies mean they'really happening at more or less the same time, too. So over time, the two players will continously swap worlds randomly until both empires are a messy patchwork. Neither will every have eno ugh defenders to hold off an invasion. Neither will ever both to concentrate their forces. And neither will make any effort to capitalize on or consolidate gains. They'll just keep on swapping world's until they peace out.

So how is this any different from what's happening right now?

If the two AIs are evenly matched at the beginning of a war, with equal production and everything, will one AI come out on top? 

Also, the survivors will go and hunt shipyards and starbases. They won't go after another world because it won't have a transport ship anymore.  

There should be two types of AI fleets: 

The ones with transports and the ones without.  And the two types will have different purposes.  

Reply #18 Top

Quoting naselus, reply 10

Good AI is written to achieve it''s purpose as simply as possible. Yours manages to be simple, but mostly just because it''s not able to achieve it''s purpose.

 

Seriously, you have designed an AI that runs away from tech-equivalent combat fleets 100% of the time. That's genuinely comical.

 

Also, most of the strategies you employ require considerably more than two sentences to explain,  given the rather convoluted exploits required to pull them off. The 'bop the yor before their ready' strategy, for example, needs a fairly dedicated ideological pathway, a colonising and production strategy, and even placement of transport ships above their world's prior to the DoW. If you want to abstract that to just 'bop the yor', then we can abstract more or less any plan to 'beat the other players'.

Would you rather have the AI run away from superior fleets it can't beat or TOWARDS superior fleets it can't beat? 

In other words, which AI is the smarter one:

The one who masses ships in his worlds (and in the process protecting them), takes advantage of planetary defenses, and waits until he has a big enough ball?

Or the one who moves his half formed fleets towards your fully formed fleets and get defeated in detail, thereby leaving his planet defenseless?

Is the AI better off trying to rally his troops to an undefined point in space where the reinforcements can be picked off piece by piece in transit by an intelligent human?

Or is the AI better off rallying his newly built ships BACK TO THEIR WORLDS where not only is there a significantly shorter travel distance (less likely of getting picked off), the ships can take advantage of the planetary defenses?

Reply #19 Top

Quoting marigoldran, reply 18

Would you rather have the AI run away from superior fleets it can't beat or TOWARDS superior fleets it can't beat? 

they should fight because then, there's at least a small fight that transports are destroyed and the conquest of planets is delayed. keeping planets (=production) is one of the main goal in a war, because a war ultimately is a comparison of military prod output with technology level acting as a quality factor.

if the AI keeps running or trying to stalemate the game with poor play you'll find the galaxy crowded with lots of ships that seem to have no apparent function.

 

besides, for the player it is more challenging if weak AIs get absorbed into stronger AI which subsequently will grow potentially stronger and stronger, and these can then become a real danger for the player (in order for the player to compete he has to do the same)

Reply #20 Top

An AI should only fight a fleet if it has a chance of significantly damaging it.  

Sending 2-3 ships against a giant armada will do nothing and instead waste the ships.  100 fleets of 2-3 ships fighting an armada will do significantly less damage than a single fleet of 200-300 ships.  Concentrate your forces, is I believe, a military adage for precisely this reason. 

Those ships should instead retreat back to their worlds, and BALL UP with another group of 2-3 ships, until it can create a fleet capable of challenging yours to an extent that it can actually damage it.  

Remember, the AI SUCKS at situational awareness.  Trying to teach it tactics WITHOUT situational awareness is a recipe for disaster.  

Against overwhelming numbers the AI should RETREAT its exposed ships until it has conserved enough to BUILD a fleet of equivalent size.  Then counterattack.  

The AI at higher levels can afford a war of attrition.  It can afford to lose a couple of planets if it means it can concentrate its forces and later wipe out your only maxed out fleet.  

Reply #21 Top

Quoting marigoldran, reply 20
Concentrate your forces, is I believe, a military adage for precisely this reason. 

 

But your AI design doesn't concentrate its forces. It concentrates a single fleet and then sends this off alone, without reference to any other units. 

 

Your AI withdraws from the superior enemy force and hides in orbit, waiting for reinforcements. But those reinforcements will never come. The only build queue which has any reference to the planet they're now orbiting is the shipyard that you just left undefended in front of an enemy fleet. So now, the fleet is facing a superior enemy force, and they will never, ever reach parity with it, because no other shipyard in their empire will ever attempt to send extra units to help it. Sure, they probably have hundreds of fleets within a short rush-in distance... but those fleets will sit doing absolutely nothing while they wait to reach their logistics limit, and then will run off toward a random target world.

 

Worse, if you should sneak in and destroy the shipyard with a minor fleet, then the doom fleet will now do nothing, because it'd eternally waiting to reach full capacity. It just sits there waiting for a new shipyard to be built at that same planet, as you've given it no orders to try and mass with other ships.

 

The current, dumb-as-a-brick AI is superior to the one you're proposing here. The current AI actually tends to send in fleets in mutually-supportive groups of 3 or 4. It tends to pick a target and concentrate force on taking that planet. It's willing to sacrifice a weaker fleet in order to soften up a target for another of it's fleets. You are basically suggesting an AI model which is about as complex as the placeholder they put in before real AI work commenced.

 

You've made the mistake of assuming that because complicated things can break, simple things are always better. That's like saying a length of metal pipe is better than an AK-47, because the AK-47 can jam and the metal pipe can't. I still know which one I'd rather have in a fight. The AI needs to be complex enough to do the tasks assigned to it, but should be coded to do so as simply as possible. While your proposal manages to be simple, it doesn't manage to do the tasks it's supposed to do (i.e., provide any challenge whatsoever). It is a war AI that breaks when you move a powerful fleet near it. It is a war AI that cannot deal with one of the most commonplace things that happens in a war. 

Reply #22 Top

Quoting marigoldran, reply 20

An AI should only fight a fleet if it has a chance of significantly damaging it.  

Sending 2-3 ships against a giant armada will do nothing and instead waste the ships.  100 fleets of 2-3 ships fighting an armada will do significantly less damage than a single fleet of 200-300 ships.  Concentrate your forces, is I believe, a military adage for precisely this reason. 

Those ships should instead retreat back to their worlds, and BALL UP with another group of 2-3 ships, until it can create a fleet capable of challenging yours to an extent that it can actually damage it.  

Remember, the AI SUCKS at situational awareness.  Trying to teach it tactics WITHOUT situational awareness is a recipe for disaster.  

Against overwhelming numbers the AI should RETREAT its exposed ships until it has conserved enough to BUILD a fleet of equivalent size.  Then counterattack.  

The AI at higher levels can afford a war of attrition.  It can afford to lose a couple of planets if it means it can concentrate its forces and later wipe out your only maxed out fleet.  

 

Concentrating forces isn't always the best option to win a war. While it won't win battles it can keep you in the fight longer. Consider for a moment if the AI was able to measure its fleet strength and compare to the enemy, if it could measure it's potential to ramp production say if the defender has fewer ships but has a 7:3 shipyard advantage, then you'd want to try to keep as many ships alive for 10-20 turns while your shipyards get your fleet up to size in order to counter attacks in numbers.

 

If the enemy has only a few really large powerful ships which could wipe our your entire fleet, then your best bet might be to form into a half dozen smaller task forces, just strong enough to take out enemy starbases and ship yards and go on offensive-counter-space-strikes.

Shooting down every Mig the Iraqis had in Desert Storm wasn't a primary objective but bombing their runways was to keep air superiority and prevent any Iraqi counter air operations.

In terms of Situational awareness and strategic awareness, you are right, the AI is clueless right now. They are neither very good at choosing targets they can kill that would have an effect or very good at executing attacks which would be successful and that is a shame.

One thing that makes it hard to take shipyard and starbase attacks seriously is that planets are the real primary objective. They hold the production, the population, generate the influence and credits. Meanwhile they also provide a logistical range just like starbases and shipyards only they should not. They shouldn't provide logistical support, that is why you should build shipyards and starbases and those should be military objectives but they simply become irrelevant once you take the planet, so why would you target a starbase over a planet? Shipyards are always nice to eliminate but if you cut off all the planetary supply or just have an enemy shipyard costing a lot of resources to the enemy due to decay why again would you target it? Call it another exploit but let the enemy sink in 500 production credits and only see 100 of it realized in the shipping.

Would the AI be wise enough to move it or stop building there until it re-takes the planet? Yeah right.

Reply #23 Top

Quoting Reianor3, reply 15

The point - it's not AI's job to BE smart. It's not the AI's job to be EFFICIENT. It is not even his job to force YOU to be efficient and smart to beat him. His only jobs are to pretend to be smarter than he is and to make YOU feel smart when you beat him.

This is silly.

The AI is part of the game. Beating the AI is not about proving how smart you are, anymore than doing well at Tetris is about proving how well you can line up blocks. You can design challenging games without an AI (Tetris). You can design easy games with impressive AI (the Sims/Cities Skylines). It depends on what you want to do and how you design the game.

GalCiv3 is not supposed to be a sandbox, the game mechanics aren't interesting on their own (though the UI could be thought of as a puzzle-game :moo: ).

The design of this game is premised on the AI not only providing a challenge for newbies and casuals, but also for hardcore players. Without a challenging AI the game's depth disappears. Developing a challenging AI is a difficult task, but it's the task that Stardock took on when they designed this game.

Marigolran's contribution to the AI discussion mostly revolves around the player exploiting the ideology tree and rushing on a map with tons of available planets. It's pretty clear that Brad and Stardock didn't really design the AI (or the game) around early rushes, so it's not surprising that the AI doesn't handle that contingency well. But then, I wouldn't handle that contingency well.

I think they'll get this stuff worked out, and the AI will get better at things like martialing its fleets and recognizing threats. But it wont make much of a difference unless they also are open to adapting the game to match the improved AI.

Reply #24 Top

Quoting marigoldran, reply 16
[quote who="Frogboy" reply="12" id="3562536"]Can you send me that saved game?

How?[/quote]

Once you save the game, go to your ...Documents\My Games\GalCiv3\Saves folder, and find the GameName.GC3Sav, upload it to a site like Dropbox or Mediafire, and either post it here or PM it to Frogboy.

Reply #25 Top

A simple and effective fix for early rushes would be eliminating the range n logistics support you get from a planet and requiring a starbase, longer range ship, or shipyard in order to expand. Every time you colonize a new planet you get the full range from that planet and that allows for rapid colonization rather than a reduced and limited by logistical support expansion. Change that and you eliminate the exploit. Do you neuter the AI in doing so? Try it and see, my guess is not.