AI isnt very smart.. it Cheats

Cheating AI

I did some tests with not only exploring ships that can auto survey, but also with a small galaxy and watching what the AI players do.

Auto Survey.

Take one of the ships that you have and make a direct b-line somewhere where it is completely surrounded by fog of war. When it is out far enough, turn on Auto Survey. It will go directly to an anomaly outside of its "viewed" space. Cheats Although is is for my empire, it just proves that the AI knows were everything is on the map w/out "discovering" it first.

AI Colonization.


I randomly kept generating a small galaxy map with only 2 players and I made sure that I was on the opposite end of the map from the AI. During gameplay, I built nothing but exploring vessels and researched sensors so that I could see a long ways. All I focused on was uncovering the map as much as I possible on my side of the galaxy w/out losing the ability to "see" where the AI was going..

I want to make it clear, I was EXTREMELY vigilant on watching where the AI ships were going and recorded what they could "possibly" have seen with their scouts.

Loe and behold, without any "scouting" ships (or ANY ships for that matter) I saw the AI player building colony ships and sending them to my side of the map to habitable planets that the AI could NEVER have seen.

I repeated this test 5 times with a small galaxy and a different race each time (thinking it might be possible for some races to be omniscient?). And all 5 times the AI exhibited the ability to see resources and habitable planets w/out "discovering" them first.

I am a programmer myself (business apps actually.. would like to get into gaming some day) but I focused on AI during my last year in college. It would not be "too" hard to create a heuristic that would allow the AI the INABILITY to choose destinations that it was unable to "discover" first.

By the way, the AI was on "NORMAL" for all of these tests.

This is the MAIN reason why this game needs multiplayer. There are only so many times I will play this game on single player *knowing* that I am at a distinct disadvantage from my opponents.

PAR
99,122 views 147 replies
Reply #1 Top
They know where the planets are but they don't know the planet value.They all start with Stellar Cartography.That is well known.

Thats odd because usually I get the Survey Ship cannot detect an anomaly message.
Reply #2 Top
I think what he is saying is they go directly from were they're built to a hapitable planet. If that is the case then, yes the AI has an advantage. However if the ship deviates in anyway from its course then it doesn't cheat, it just has a good idea due to stellar cartography as the guy before me said. I mean I can send a ship to were a star system is on the map and by the time I get close it could see were the planet is.
-Try your test again with Rare habital planets, and see if the AI sends ships to star systems with out habital planets. If it doesn't then yes, It does cheat.
Reply #3 Top
Sorry I should have included that. Yes, I did use RARE habitable planets with ABUNDANT stars so that I could, once I uncovered the systems behind me, watch and see if the AI went to "Star Systems with habitable planets" only or just random known "Star Systems" due to the minimap.

Every single time, the AI went to a star system with habitable planet(s). Not only that, the course was a DIRECT VECTOR to said habitable planet.

Once I saw a colony ship on my screen, I watched it diligently to see if it veered in its direction. The only time it changed directions was when something was in front of it, but it would go right back on the same vector which was directly associated with the ONLY habitable planets in the system.

Same with the anomalies and the minable resources. The AI knows where each of these are whether it has uncleared that area of space or not.

PAR
Reply #4 Top
-Try your test again with Rare habital planets, and see if the AI sends ships to star systems with out habital planets. If it doesn't then yes, It does cheat.


I think you meant, try a test with a galaxy with rare habitable planets. If the AI sends colony ships to stars WITHOUT habitable planets, then it proves your point that it's just sending out colony ships to stars on the chance that they will have good planets.
Reply #5 Top
Although is is for my empire, it just proves that the AI knows were everything is on the map w/out "discovering" it first.


It looks like auto survey isn't working the way the manual states, so there may be a bug involved, but if it works the same for you and the AI, there's no cheating going on.
Reply #6 Top
The Auto-Survey code to go to unseen anomalies was added in late gamma as a gameplay improvement. It in no way implies that the AI is given unfair knowledge about the map.

Your computer knows EVERYTHING about the map.

Only some of that knowledge is passed to you and the AI's
Reply #7 Top
To Citizen StoweMobile. I tried to edit my previous post but I keep getting an error. I see that you actually said what I said and I didn't read it correctly. My apologies. I did not mean to correct you when, indeed you were correct.

Reply #8 Top
My experience has been slightly different. I suspect that the AIs can see what I can see. In my most recent game, twice, towards the middle of the game, I found a resource on the other side of the galaxy (huge galaxy). In each case, there was a mass rush of construction vehicles to the resource directly after that (the first one I was beat, the second one was closer to my colonies). I doubt multiple AIs simultaneously discovered the resource when I did, so something odd happened.

In GC1, the AIs knew the entire board (by my understanding). This was supposed to be changed in GC2 (again, by my understanding), but I am suspicious that some aspect was missed (like maybe how the AI reacts to what it knows you can see). Not knowing the internals, however, who knows?

You appear to presume that the observed behavior is a result of laziness in AI design. I think you underestimate the difficulty of creating a good AI, but, at least in this case, I suspect it is rather a bug.
Reply #9 Top
Having obviously not seen the code, I can't promise there are no bugs involved, but from my experiences so far, I doubt it. From what I've seen, the AI uses the survey ship and scout ships to check out the area before sending out colony ships, so they've probably already seen the planet, which is why the colony ship makes a beeline.
Reply #10 Top

Sigh.

Look, the code isn't very complicated. Here's a copy/paste:

for(ulIndex=0;ulIndex

{

pPlanet = g_pGalaxy->pPlanetInGalaxy[ulIndex];

if((pPlanet)

&& pPlanet->IsOnMap()

&& (pPlanet->IsKnownBy(QueryID()))

&&(pPlanet->GetQuality() > ulMinimumQuality)

&&(!pPlanet->IsColonyColonized())

&&( (pPlanet->GetOwner()== CIV_INVALID_PLAYER_ID)||(pPlanet->GetOwner() == pShip->GetOwner()) )

&&(pShip->IsDestinationInRange(pPlanet->GetXPosition(),pPlanet->GetYPosition()) == TRUE) )

{

//evaluate to colonize

}

See the "pPlanet->IsKnownBy(QueryID()))"?  The only way it can know a planet is if a ship flies near enough to spot it.

It's really that simple.

 

Reply #12 Top
How does espionage work? I mean, once the levels are high enough, can you see (to a degree) what your target sees? In that case, shouldn't the AI be able to see what the player is seeing with enough money put into esponiage, so that its scout ships don't necessarily have to fly by the habitable planet? After all, if you map out the galaxy and it can see what you see, it only makes sense the AI would beeline its way to the good planets.

Of course, if esponiage doesn't show anything on the map at all, then something must be up if their scout ships indeed didn't fly by.
Reply #13 Top
This is the MAIN reason why this game needs multiplayer.
I think this is one of the main reasons I have liked this game so far; the absolute lack of this attitude. I have never played anything that I thought was 'good' as a multiplayer experience. I have had people quit, I have had people act like babies, I have had people act as if they had no idea how to play when they were experts. To me, multiplayer is about the biggest joke I have ever seen in gaming. The RPG industry has gone almost completely to MMO's, which are just sickening to me {thank the Lord for Oblivion in about a month).

I want to play the computer. I have really liked the great attitude about this game so far. I have been thoroughly thrilled with the fact that I have heard no one complain about the lack of multiplayer up until now. Instead of just accepting and enjoying a great game (yes, even with some flaws...of course with some flaws), I should have known someone would start to complain like this.

I don't blame the Frog Man for sighing. I loved finding a game that was good, and was a single-player game. Personally, I hope it stays that way.

I really do think multiplayer is about as bad as any game gets. If you want multiplayer, how about going to the rec center and playing basketball or softball. I am not trying to be rude, I just wish for once a game could just be accepted and enjoyed without the "Multiplayer is what it's all about" whine! To be honest, I think there are a lot of people who really would be fine with never playing multiplayer. This game's attitude and the makers of Oblivion are really my heroes right now, because they are making games for gamers. I wish that's how most companies would treat it. Instead we get mostly horrid games on consoles, and ridiculous amounts of multiplayer.

Civ 4 is great and has multiplayer. Let this game be {damn it!}!

Reply #14 Top
Ok well... I redid my test for a 6th and 7th time.

Now, I know I mentioned my "testing procedures" previously and unless you want to just blatently ignore them, well... so be it.

Now, I made a medium galaxy with RARE habitable planets and ABUNDANT stars. I had only 1 opponent and that was the Terran Federation. I recreated the game each time until I knew that we were on opposite sides of the map from each other.

All I did was create exploring ships, colony ships (for distance), star bases (cheap ones) and sensors. In both games this was the position of each player...

-
- -
- -
- ME AI -
- -
- -
-


What I did was create constructors and colonized habitable planets so that I could "watch" the AI and what it would do like so:

-
- | -
- | -
- ME | AI -
- | -
- | -
-


I also made sure that there were plenty of stars behind my lines.

Now, by the time the AI had enough distance to go past my lines, I could pretty much watch their every move.

I watched their colony ships go straight to stars systems with habitable planets and ignore the star systems with NO habitable planets. Not only that, their colony ships didnt make any "turns" or adjustments in their vectors (unless sommething got in the way) when heading towards habitable planets.

I also made sure I watched the "anomalies very carefully". You can tell when scouts do not have survey ability... they just randomly go all over ( I watched all their scouts and plotted where they could have gone). MANY anomalies behind my lines were in no way within their field of view. So once I noticed a ship come over my field of view boundary, I watched them for a turn, and plotted a direct course to see where they would go if they continued on that vector. And not to my surprise, 100% of the time, the AI ship was headed towards its goal without every having "seen" it.

Oh, and until you run the same tests, just try my simple little survey ship test with your own ship. Get it way out in the middle of nowhere (where the only path "seen" is behind it) and stick it on Auto Survey. You will then see the ship veer off into the unknown DIRECTLY to an anomaly.

Now, you can blow all that away and call me a fool. I hardly care. I am hoping for 3 things here.

1) For Stardock to take a look at their AI code a little better since this "is" a single player only game.
2) For non-fanbois to coherently read and understand my "testing" and either back it up with their own testing or debate me if they find different results.
3) For Stardock to see the value of putting in a multiplayer option.

Now, for Mr. Sunjah Kahn and any other fanboi's that like to bash those asking for a multiplayer option instead of debating, I have read the "need" for multiplayer in the forum and I have also read that if they get enough requests for multiplayer they will add it in. That is what I am hoping for.

You sir, seem to have no "gaming" friends and only get online games where you know NOBODY. Yes, its rough out there, but I would hope your parents instilled enough self confidence in you that you could enjoy a game that is fun and not be constantly insulted by little kiddies.

I have a very round group of friends who LOVE multiplayer games and that is all we do. We played the hell outta MOO2 (tried MOO3 but it was ghastly), played Alpha Centari, played all the Civ games etc etc. And no doubt about it, all of us like MOO2 the best. And ALL of use were ready to buy this game until we heard there was no multiplayer.

But, to look at this from a business point of view. They state that they would rather save a buyer 10% off the retail price because it does not have multiplayer. Wouldnt it be "smarter" business wise to open up your prospective customers and let them pick and choose if they want to buy? I know at least 20 people right now who will NOT buy this game w/out multiplayer =/ I am the only one that bought it and so far its very fun (cant believe they didnt put tactical battles in... but I guess I can see why) but I would much rather go to work tomorrow and discuss my "continuing" game with my coworkers and laugh and talk about the battles we have had, instead of just ending a game and starting a new one

PAR
Reply #15 Top
See the "pPlanet->IsKnownBy(QueryID()))"? The only way it can know a planet is if a ship flies near enough to spot it.


Maybe you need to take a look at your code for IsKnownBy and whatever function(s) flag objects as being known by a particular player. What you say should be happening just doesn't seem to be what people are observing.

On a related note, is there a cheat that will remove the fog of war for the player but not the computer? That would be a really easy way to check and see if the computer is behaving improperly.
Reply #16 Top
Um, Par... They said that the framework is built in to the game for multiplayer. And that they may release a FREE upgrade to multiplayer in the future. So chill, kay?
Reply #17 Top
I didn't watch you make your tests, so I'm not going to comment on them. All I know is that in my observations, the AI has never sent a colony ship to a system unless a survey or scout ship has already been in the area. At that point, the colony ship does go straight for its target, but if they've already checked it out, that's to be expected.


Oh, and until you run the same tests, just try my simple little survey ship test with your own ship. Get it way out in the middle of nowhere (where the only path "seen" is behind it) and stick it on Auto Survey. You will then see the ship veer off into the unknown DIRECTLY to an anomaly.


This has already been addressed, and no one has argued the results. Auto survey sends ships to anomolies in unrevealed areas of space -- for both the AI and the player. It's not cheating if both sides can do it.
Reply #18 Top
Nice clean code is so refreshing. I've seen things that would make an experienced programmer cry....in terror at the idea of debugging it.

Even without the code example, it is obvious that the AI uses scouts to figure out its surroundings. It's actually more obvious on larger maps rather than smaller. when you see scouts in your area of space you can be certain the ai will build colony ships imediatly for any non colonized worlds in your area.
Reply #19 Top
Um, Par... They said that the framework is built in to the game for multiplayer. And that they may release a FREE upgrade to multiplayer in the future. So chill, kay?


I personally dont see anything that I wrote that requires me to chill

I made some observations, they got flamed w/out any basis, so instead of flaming back I very concisely wrote a reply with more facts. If that is wrong by you then maybe you need to chill?

And your quote "...they may release..." is the reason I am posting here. So I am doing what I can to let them know that a multiplayer "patch" would greatly increase their sales.

See what I find interesting on forums is that people always love to attack someone who is not of the same opinion as themselves (here its multiplayer) . Their examples are personally tragic experiences that have scarred them for one reason or another such that they are biased against said subject and blatently turn the thread into arguing and arguing match

I am not arguing... I am stating facts with more facts and would love others to do the same tests and tell me I'm full of $hit with something backing it instead of typical "i said this so believe it"

Oh, and they should realize that we actually LIKE the game enough to request that they go ahead and put multiplayer in. How would that hurt you single player people if "the framework is already there"? Why do you think the devs put the framework in there in the first place?

PAR
Reply #20 Top
Hmmm...that's odd, because not only does my survey ship shut off "Auto-Survey" if it can't see any more anomalies, but I've seen the AI scout it's butt off with scout ships before it sends colony ships. Those scout ships seem to move around pretty fast. Isn't it possible you are missing the AI's ships? Or more likely, that the AI is sending a ship to every star system?

Frankly, I don't know why I should believe your rather strange test when the code clearly says that what you describe can't actually occur. In my experience, the AI has seemed to explore with scouts before colony ships.
Reply #21 Top
I haven't run any "tests", but I firmly believe the AI knows the locations of all the habitable planets and resourses without having explored for them. I had a Military Resource right next to my home planet. I never saw a scout ship, but a constructor got there before I even got one of my own built. As for multiplayer, I could care less. I never use it.
Reply #23 Top
Did your tests include the fact that the AI might already have scouted those planets before you even got your starbases up and running?

I think it would make sense to send scouts out to the further away planets so you know early on if you should send colony ships there...
Reply #24 Top
I haven't done any experiments and I suppose there could be an overlooked factor that somehow allows the AI to benefit from your experience as well as it's own but I would wonder why, if they know where the usuable planets are, do they spend so much of their treasure on fleets of scouts?

Maybe they scouted the area before you cleared the fog in your example. I have found that the AI rushes to build extended range scouts early. In a recent game I was beating the AI like a cheap rug in colonization but they had me in ship range by several sectors.

It is well known that the AI has some advantages at the high levels of the game but nothing in their behavior has given me any reason to think that they know where the planets are at normal. If they do, perhaps they need to, because I have no problem swamping them in the early going at normal difficulty. It is their lack of fatigue vs mine in the last third of the game that I have the most trouble with.
Reply #25 Top
Thats odd... I've tried varients on the "send the survery ship out into the black and autoexplore", and I usually get the "can't see" error message -- or it went after only the ones I could see. Maybe I did it wrong or something (since I've rarely sent it straight out as my only explorer).