AIPriority in Techs_Amarian.xml

I think it's pretty obvious this is the value the AI uses to determine what to research next and I'm about to edit the file in a pretty big way to get the AI to keep up with me, but I have a couple questions first.

Does it matter if the AIPriority value is 1 above another or 100? I see lots of 550, 450, and 50, so this suggests to me that it isn't a simple "research whatever has a higher AIPriority value" going on, and that other calculations come into play. Otherwise there would be just values of 1, 2, 3, 4, etc. Can anyone shed light on what kind of cvalculations occur?

Can the AI "see through" to the techs that they haven't researched the prereqs for? What I mean is, if I set Expert Armor to 900, and the AI has researched everything else that has a value of 900 and above, but has not researched Light Armor, or Equipment, or whatever, will the AI beeline to Expert Armor by selecting it's prereqs, even though the prereqs may have a lower AIPriority value than others that are currently available? In other words, if I want to set Expert Armor to 900, do I need to set every single one of its prereqs to 900 for it to make the AI favor beelining it?

AIAtWarMultiplier seems intuitive, its what the AI multiplies AIPriority by during wartime (if I'm wrong, correct me), but AITradeToGetValue and AITradeOutValue? You can't trade techs so I have no idea what the hell these two values are for. Can anyone offer some insight?

Anything else any of you can say about editing techs would be appreciated. =)

Thanks in advance.

5,611 views 4 replies
Reply #1 Top

priority values tend to work by taking a random number between 0 and the value, for all choices, and doing the research with the highest number.

Reply #2 Top

Thanks for the response. Is there a limit coded into WoM as to how high the AIPriority value can be, or is it just the highest value used by the data type?

Reply #3 Top

I seem to recall that odd results started happening above 1000.

Reply #4 Top

I used 9999, 5000, 2500, and 1000 as the four highest tiers. That would explain why I didn't see the results I was expecting. I guess I can just chop the least significant digit off of each value.