Logo Platform
logo amplifiers simplified

summary of findings on AI

Reply
Copied to clipboard!
12 years ago
Aug 23, 2012, 2:51:59 PM
A few users, notably ail, have investigated changes to the xml which improve the AI. There are three main categories of changes. All of these are contained in community-mod serial 03.



a. System exploit/improvement selection

b. Ship templates and tonnage

c. Other



System exploit/improvement selection



Files: PlanetColonization.xml, PlanetInfrastructure.xml, StarSystemImprovement.xml

The first two files are changed to improve the use of exploits and colonization. The AI will now only colonize a new planet in a system, once the old planets are full. The AI will keep all planets on food exploit when the system population is below its total pop cap, and then switch each planet to its "optimal" exploit, ie the one which gets extra benefits for its planet type.



This is an improvement, but not perfect. It would be better to keep "some" planets on food exploits during population growth rather than "all", and it would be better to tag systems as forge systems, dust systems or research systems and specialize. This allows more efficient usage of the +ind%, +dust%, +sci% buildings.



The third file is where the majority of the improvement comes. The AI builds too many buildings, and it builds the less important ones first. This exact post describes what I did:



https://www.games2gether.com/endless-space/forum/27-general/thread/9289-suggestions-requested-rules-for-ai-to-not-build-something



Ail is in the process of making much more complex changes to this file. In particular, note that my mod makes the AI never build improvements for sensor/influence range. There is some debate about this. We would like some way to build these intelligently.



Ship templates and tonnage



Bluntly, AI ship design is very poor. There are three problems. The biggest problem relates to tonnage. When the AI researches a +tonnage% tech, the total tonnage available on a ship goes up by some percentage. The AI never uses this extra tonnage, resulting in designs that are 1/3 empty. That is a straight-out bug. Ail has gone to a lot of work to workaround this by changing the way tonnage works; he made all the modules smaller, instead of making the ship bigger. This still doesn't work perfectly. Please just fix this bug.



The second problem relates to ShipDesignTemplates.xml and the use of support modules. The AI never uses support modules, such as armor, engines, and power modules. Ail has modified the file so that these modules get used. I am sure there could be some more clever selection based on racial traits; but this part of the mod seems fine.



The third problem relates to selecting the number of defensive types and weapon types on a ship. Most players "omni-tank", building a ship with all three defenses. The AI never omni-tanks, it always leaves one big hole in its defenses. Possibly this is to make combat more fun, but it makes AI ships easy to destroy. This can be changed in ShipDesignTemplate.xml by adding more templates, some of which have three defense groups. For weapons, probably we only want one weapon, or maybe two; this part of the existing templates are probably fine.



In summary, fix tonnage in the code; pickup ail's changes for support modules and omni-tanking.



Other



There are small changes to the weights of different buildings to affect what order the AI builds; basically certain buildings such as the mag shield research building and the planetary institute should be more important. This is useful, but relatively minor compared to the above.



We have tried to do stuff with heroes, but the existing xml hooks just give different results without giving better results. The discussion is in these specific posts:



https://www.games2gether.com/endless-space/forum/37-modding/thread/15776-ai-modding

https://www.games2gether.com/endless-space/forum/37-modding/thread/15776-ai-modding



Basically what we want is to have the AI classify each hero it hires as a system hero or fleet hero based on its classes; keep system heroes off fleets unless it is on purpose to gain XP; and select abilities based on the classification. Today we see many corp/admin heroes on battle fleets, and we see many "hybrid" heroes (one system class, one fleet class) who have 50% of their levels in fleet skills and assigned to a system. We "should" have heroes with 100% system abilities on systems, and heroes with 100% fleet abilities in fleets, and nothing else. But the current xml hooks do not allow us to get this effect.



I should also point out the changes by grubsnik which remove completely useless buildings from the system building picklist. For example, it removes "careful sweeping" if the system has no moons at all, and it removes the trade buildings if you are craver. This is not an AI change, but it is in the same file SystemImprovements.xml. Many players have requested this.
0Send private message
12 years ago
Aug 23, 2012, 4:38:42 PM
Dave, could you get one of the devs to chime in regarding these issues. You're a VIP, exert your power. lol



I've resorted to not using the extra tonnage provided by techs to make the game more "interesting". It's a sad, but necessary, compromise if I want to be challenged by the AI.
0Send private message
12 years ago
Aug 23, 2012, 4:58:05 PM
Insolentius wrote:
Dave, could you get one of the devs to chime in regarding these issues. You're a VIP, exert your power. lol.


In fact this thread is exactly in reply to a post on the VIP forums, and I wanted the summary in public so you, ail and others could be involved.
0Send private message
?

Click here to login

Reply
Comment