v0.4.2 Release Candidate #3 Discussion
Moderator: Oberlus
Forum rules
Always mention the exact version of FreeOrion you are testing.
When reporting an issue regarding the AI, if possible provide the relevant AI log file and a save game file that demonstrates the issue.
Always mention the exact version of FreeOrion you are testing.
When reporting an issue regarding the AI, if possible provide the relevant AI log file and a save game file that demonstrates the issue.
v0.4.2 Release Candidate #3 Discussion
I played my first game with r5763 (aka 0.4.2 RC3) with Cray. Maybe i was very lucky, but the AI's didn't really manage to expand their empires or threaten me in any way. I think the AI's fought a lot between themselves.
Notable is that the pink and green empires planned to build Black Hole Power Generators (the green one even started building one on Heinlein), which shouldn't have a high priority for empires that small.
This is turn 115:
Notable is that the pink and green empires planned to build Black Hole Power Generators (the green one even started building one on Heinlein), which shouldn't have a high priority for empires that small.
This is turn 115:
- Attachments
-
- Turn115.JPG (120.43 KiB) Viewed 1286 times
All released under the GNU GPL 2.0 and Creative Commons Attribution-ShareAlike 3.0 licences.
Re: v0.4.2 Release Candidate #3 Discussion
In a recent playtest (typical difficulty, v5767), one of the AIs was spamming single "basic troopers" into a system with a sentry and a native planet. The sentry never took damage, and so far the AI had lost at least 4 ships.
I haven't tested with more aggressive AIs yet. As of 5763, the aggressive/maniacal AIs had a habit of colonizing poor or hostile planets too early and their new colonies kept dying off. These "emergency colonies" generally won't survive long enough before they will provide a significant amount of resource output, so I think this should be removed from the AIs decision making list and have them seek alternate solutions when there are very few habitable planets. Prioritizing certain growth techs or creating more warships (not scouts or troop ships) would be better than wasting a colony ship to get an outpost.
I haven't tested with more aggressive AIs yet. As of 5763, the aggressive/maniacal AIs had a habit of colonizing poor or hostile planets too early and their new colonies kept dying off. These "emergency colonies" generally won't survive long enough before they will provide a significant amount of resource output, so I think this should be removed from the AIs decision making list and have them seek alternate solutions when there are very few habitable planets. Prioritizing certain growth techs or creating more warships (not scouts or troop ships) would be better than wasting a colony ship to get an outpost.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: v0.4.2 Release Candidate #3 Discussion
What aggression, and what monster frequency did you use? In a couple AI-only test games, I got very little AI expansion by turn 115 with Maniacal with ~20 systems/AI and moderate monsters, but on Typical with ~30 systems/AI and few monsters, there were several quite large empires after only 70 turns.
Re: v0.4.2 Release Candidate #3 Discussion
Aggressive AI setting. And at least pink and blue are Royal Demesne ( = Aggressive).Geoff the Medio wrote:What aggression, and what monster frequency did you use? In a couple AI-only test games, I got very little AI expansion by turn 115 with Maniacal with ~20 systems/AI and moderate monsters, but on Typical with ~30 systems/AI and few monsters, there were several quite large empires after only 70 turns.
Medium monsters (but i haven't seen a single monster nest).
All released under the GNU GPL 2.0 and Creative Commons Attribution-ShareAlike 3.0 licences.
Re: v0.4.2 Release Candidate #3 Discussion
I've run through one session with Aggressive AI's. One gave me a lot of trouble initially, ended up pretty much a WWI scenario with neither side making much progress for a bit, then I started pushing the AI back, AI responds with Psychogenic Domination, I decided to just pull back for a bit and wait it out (39 turns, hadn't researched much in that direction), played with the other AI on my borders, had mostly beene some ship sightings between us hadn't given me any trouble, didn't have much left, found the other AI (the one giving me some trouble) on the other side of that one), never even saw the third AI, was probably caught between the other two.
AI was doing more production until about turn 228 and more research till about turn 237 or so but once I went back on the offensive wasn't any real trouble.
AI was doing more production until about turn 228 and more research till about turn 237 or so but once I went back on the offensive wasn't any real trouble.
Re: v0.4.2 Release Candidate #3 Discussion
Another small note: If the AI starts as Eaxaw, it doesn't realize it can make Mark VII's from the get-go and will still research the weaker weapon techs and subsequently produce weaker ships (Lynx-2, Lynx-3, etc.).
Re: v0.4.2 Release Candidate #3 Discussion
Ack! The AIs that start off with Laser 1 just immediately start making Lynx-5's, but I'm afraid I had overlooked having that hull line going up to a high enough weapon; it was needing to get Organic hulls before it had a design that used that weapon. I've now rectified that -- thanks for the catch!unjashfan wrote:Another small note: If the AI starts as Eaxaw, it doesn't realize it can make Mark VII's from the get-go and will still research the weaker weapon techs and subsequently produce weaker ships (Lynx-2, Lynx-3, etc.).
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: v0.4.2 Release Candidate #3 Discussion
Are you reasonably certain that change won't break anything else? I'd like to avoid another few days delay to do an RC4 if possible, so could we just make the release the version with that change added? Or should we just do the release without that change, if it's not a major issue?Dilvish wrote:Ack! [...] I've now rectified that...
Re: v0.4.2 Release Candidate #3 Discussion
Based on current description, not a major issue.
Code released under GPL 2.0. Content released under GPL 2.0 and Creative Commons Attribution-ShareAlike 3.0.
Re: v0.4.2 Release Candidate #3 Discussion
This was a very easy/straightforward matter to rectify; I'm very confident that hasn't caused any other problems. The fix was just to change a single digit in line 302 of ProductionAI.py -- the "6" to an "8"Geoff the Medio wrote:Are you reasonably certain that change won't break anything else?Dilvish wrote:Ack! [...] I've now rectified that...
Either way would be ok. I went ahead and just now committed that one fix in case you want to proceed (or undo it if you want to skip it). There are a couple other issues I just today fixed / worked on, respectively, that I feel I should mention.I'd like to avoid another few days delay to do an RC4 if possible, so could we just make the release the version with that change added? Or should we just do the release without that change, if it's not a major issue?
The smaller one was that I sorted out & fixed the issue with my code for logging enemy/monster fleets that were just briefly glimpsed as an AI ship was destroyed. The bug had been leading the AI's to underestimate the enemy/monster fleet there and try clearing that system with insufficient firepower, thereby wasting ships. This bug was noticeable to people, but is far from critical.
A bigger issue I just discovered today, which I don't have a fix for yet, relates to AI invasions apparently being wrongly blocked. I had noticed AI troop ships sometimes piling up over a (generally & perhaps always native) planet & failing to complete their invasion. I thought it might relate to the "invasionus interruptus" problem we've discussed with respect to the player UI, that if an invasion/colonization order gets interrupted/blocked by combat or whatnot, that the local client might be left thinking there is still an invasion order pending when there is not. I checked the AI invasion code & saw that it was indeed susceptible to that problem, so put in some extra checks to cause the invasion order to be reissued if necessary. I'm pretty sure that helped, but it did not entirely solve the problem. The continuing problem appears to be due to something strange that I haven't fully sorted out. Below is a log line from a failed invasion attempt which is seeming typical for this problem:
Code: Select all
2013-02-18 20:59:46,288 ERROR AI : AIInterface::IssueInvadeOrder : planet with passed planet_id is not invadable due to one or more of: owned by invader empire, not visible to invader empire, has shields above zero, or is already being invaded.
2013-02-18 20:59:46,288 DEBUG AI : Ordered troop ship ID 1922 to invade Algedi II, got result 0 -- planet has 0.0 stealth, shields 2.0, 15.0 population and is owned by empire -1
ok so I just went and added a little more info into the AIInterface error message to confirm if these "ghost" shields are indeed the problem, and it is -- AIInterface.cpp::IssueInvadeOrder is being told that these native planets have nonzero shields. To double check its not something just on my system, I tried a clean SVN version, same result. I'm out of ideas for tonight.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: v0.4.2 Release Candidate #3 Discussion
Weird... Can you post a universe Dump output for that planet on that turn as the AI sees it?
Re: v0.4.2 Release Candidate #3 Discussion
Silly AI had one colony, that was blocked in (other empire fleets at both ends of the two starlanes), was sitting there building scouts... Later with an enemy fleet over the planet was building troops ships.
Re: v0.4.2 Release Candidate #3 Discussion
I guess the AI is not ready for Battlestar Galactica scenario yet.AndrewW wrote:Silly AI had one colony, that was blocked in (other empire fleets at both ends of the two starlanes), was sitting there building scouts... Later with an enemy fleet over the planet was building troops ships.
https://github.com/mmoderau
[...] for Man has earned his right to hold this planet against all comers, by virtue of occasionally producing someone totally batshit insane. - Randall Munroe, title text to xkcd #556
[...] for Man has earned his right to hold this planet against all comers, by virtue of occasionally producing someone totally batshit insane. - Randall Munroe, title text to xkcd #556
Re: v0.4.2 Release Candidate #3 Discussion
I can have the AI print out more information & also swap to verbose logging & then get the detail log lines for the planet, is that what you mean?Geoff the Medio wrote:Weird... Can you post a universe Dump output for that planet on that turn as the AI sees it?
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: v0.4.2 Release Candidate #3 Discussion
Verbose logging would show dump info, yes. There's also a universe.dump() command that should be usable in python which returns a string. There could be one added to UniverseObject but I don't think it has been.Dilvish wrote:I can have the AI print out more information & also swap to verbose logging & then get the detail log lines for the planet, is that what you mean?Geoff the Medio wrote:Weird... Can you post a universe Dump output for that planet on that turn as the AI sees it?