The ten (10) modified and three (3) new AI modules in the attached zip file have been run successfully on FO v0.3.17 [SVN 4282] MSVC 2010. (They will not run successfully on newer builds that include tech tree changes.)
These modifications add the following AI capabilities:
1. production of new scout ships
2. production of new troop ships
3. production of outpost ships
4. outpost colonization capability
5. planet invasion capability
6. improved research queue selection
7. resource focus changes on an empire’s capital planet
These modifications do not add armed ship attack capability.
I release my contribution under the terms of the Creative Commons Attribution-ShareAlike 3.0 and GNU GPL 2.0 licenses to anyone who may be interested in testing this InvasionAI Module Bundle in FO v0.3.17.
InvasionAI Module Bundle for v0.3.17
Moderator: Oberlus
InvasionAI Module Bundle for v0.3.17
- Attachments
-
- GA_Contribution_02.zip
- (20.77 KiB) Downloaded 63 times
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: InvasionAI Module Bundle for v0.3.17
I tweaked the ResearchAI code a bit to work with the modified API for the SVN version, and I'm now getting some errors that suggest a logic issue:
Code: Select all
2011-12-15 16:17:29,856 DEBUG AI : issuing fleet orders:
2011-12-15 16:17:29,856 DEBUG AI : fleet order[1] source:{5:233} target:{3:47}
2011-12-15 16:17:29,856 DEBUG AI : fleet order[9] source:{5:235} target:{2:183}
2011-12-15 16:17:29,857 ERROR AI : AIInterface::IssueInvadeOrder : planet with passed planet_id is owned by this empire so cannot be invaded
2011-12-15 16:17:29,857 DEBUG AI : fleet order[1] source:{5:235} target:{3:27}
2011-12-15 16:17:29,857 DEBUG AI : fleet order[1] source:{5:240} target:{3:41}
2011-12-15 16:17:29,857 DEBUG AI : fleet order[9] source:{5:273} target:{2:183}
2011-12-15 16:17:29,857 ERROR AI : AIInterface::IssueInvadeOrder : planet with passed planet_id is owned by this empire so cannot be invaded
2011-12-15 16:17:29,857 DEBUG AI : fleet order[1] source:{5:273} target:{3:27}
2011-12-15 16:17:29,857 DEBUG AI : fleet order[1] source:{5:242} target:{3:6}
Re: InvasionAI Module Bundle for v0.3.17
I have not run into that particular error message.Geoff the Medio wrote:I tweaked the ResearchAI code a bit to work with the modified API for the SVN version, and I'm now getting some errors that suggest a logic issue:
I have seen a couple of cases where two (2) different empires with entirely different population counts have claimed ownership of the same planet during the same turn. But those anomalies didn’t generate any type of error messages. And, I doubt that those anomalies have anything to do with the AI program. I didn’t report those anomalies because one would have to have access to modified AI log printouts, similar to mine, to see them.
Let me take a look at how I’ve selected planets for invasion in the InvasionAI module. I suspect that any problem will be right there and should be easy to fix. (I did have a similar, but not identical problem, a while back.) Give me a day, or so, to take a hard look at that particular area, and I’ll get back to you.
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: InvasionAI Module Bundle for v0.3.17
These messages are appearing after ending turn once, so nothing fancy is happening to set up the relevant situation.Gray Area wrote:I have not run into that particular error message.
- Attachments
-
- AI_1.log
- AI log after starting new game and ending turn once.
- (26.5 KiB) Downloaded 66 times
Re: InvasionAI Module Bundle for v0.3.17
You are correct. I found that error message when I went looking for it. It was there all along and I didn’t notice it, as the InvasionAI module appeared to be invading in spite of the error.Geoff the Medio wrote:These messages are appearing after ending turn once, so nothing fancy is happening to set up the relevant situation.Gray Area wrote:I have not run into that particular error message.
I fixed that particular problem and have attached the three (3) modified modules.
Again, I release my contribution under the terms of the Creative Commons Attribution-ShareAlike 3.0 and GNU GPL 2.0 licenses.
Now, however, I’m seeing the following error message:
AIInterface::IssueInvadeOrder : planet with passed planet_id is not colonized
I believe this error message is appearing because the AI empires can not invade ‘monster populated planets’, that is planets that are not owned by other actual empires.
To test this theory, I played a passive game. I watched AI troop ships enter ‘monster populated systems’ and fail to capture any planets. When I, however, captured the same ‘monster planets’, the AI’s troop ships were able to invade and capture them from me.
I do not believe there is anything I can do to correct this problem from within the AI program. I suspect this problem is being caused by something within the AIInterface.
- Attachments
-
- GA_Contribution_02a.zip
- (5.46 KiB) Downloaded 76 times
- Geoff the Medio
- Programming, Design, Admin
- Posts: 13587
- Joined: Wed Oct 08, 2003 1:33 am
- Location: Munich
Re: InvasionAI Module Bundle for v0.3.17
Indeed; the safety checks in the AI interface code were different from the checks in the SidePanel UI code. I am / have made them more similar, so that should be fixed soon...Gray Area wrote:I’m seeing the following error message:
AIInterface::IssueInvadeOrder : planet with passed planet_id is not colonized
I believe this error message is appearing because the AI empires can not invade ‘monster populated planets’, that is planets that are not owned by other actual empires.