Humble request for a slight change in AI settling evaluation rules

Home Forums Age of Wonders 3 Discussions Humble request for a slight change in AI settling evaluation rules

This topic contains 17 replies, has 4 voices, and was last updated by  Jolly Joker 1 month, 3 weeks ago.

Viewing 18 posts - 1 through 18 (of 18 total)
  • Author
    Posts
  • #256441

    Jolly Joker
    Member

    Hi devs, I’ve been experimenting a bit with the AI, and I’ve noticed, that the AI evaluation for settling places is sabotaged by the fact that the AI doesn’t take into consideration whether a “value-giving” structure has been cleared or not. This is hindering the AI and the evaluation as well as any modding attempts, because upping conditions will lead to the AI settling around structures with Mythical difficulty, since they have a high value.

    The AI should only take CLEARED sites into consideration. This would go a long way to a more natural way of AI play, since the AI would settle a lot less “wildly”.

    In the course of the next week I may make a couple more suggestions.

    #256450

    Fogcrow
    Member

    I`d expect that to lead to even more nonsensical AI settling behavior. I mean, as players, we also take both the cleared and the uncleared sites into account(obviously priorising locations where at least some sites are cleared).

    #256456

    Jolly Joker
    Member

    I`d expect that to lead to even more nonsensical AI settling behavior. I mean, as players, we also take both the cleared and the uncleared sites into account (obviously priorising locations where at least some sites are cleared).

    The bold print is exactly the point that makes the difference. It doesn’t make no sense at all building a town ONLY because of the POTENTIAL value of a town, because the AI is not guaranteed to clear anything AT ALL, espacially not the difficult structures (Legendary and Mythical).
    Building a settler is also keeping the AI from doing better things, because the AI escorts their settlers (which makes sense, because the AI settles in quite UNSAFE regions).
    So generally spoken, a more selective settling behavior would have some more benefits along the line.
    Also, the mod tools, that is, actually, the criteria to steer the AI’s settling behavior – value of stuff within a certain radius and distance from other settlements) doesn’t do much, when the AI considers places to settle. If you pick a low radius and a low value, the AI can settle everywhere. If you up the value, the AI can still settle at Mythical structures, instead of looking for really good sites. If you increase the radius, you also have to up the value, and then the AI is GUARANTEED to settle at Mythicals.
    Which means, you cannot steer this in any meaningful way.
    If you had TWO values here, like a neccessary cleared one (X cleared) and a “may be cleared OR potential), you might put in something like, radius 4, 20 cleared and 20 more (that may be cleared as well or potential).
    I think, it’s pretty obvious that you could steer AI settling behavior a lot better with something like that.

    #256514

    Jolly Joker
    Member

    No one seems to pick up on this, so I’ll support my case with a couple of screenshots and a more detailed reasoning.
    Example 1 shows a Dwarven settlement. I just conquered that (with a Boar) – and there is nothing in it. The next domain radius will give an unexplored Tomb and Haste Berries and should it continue to get 2 more radius a just as yet unexplored Ancient Ruins will be added. That’s it. It’s obviously a sorry place for a settlement.

    Example 2 shows a more critical situation. A Frostling Warlord has settled around a Lich King Castle. The Crystal Tree is as unexplored as the Mana Node just outside the Outpost. The army in the centre is a 3-piece thing with the chief Warlord himself plus 2 units, enough to impress the roaming army slightly above and to the left of the Outpost, but not enough to clear either site. A dead end, made worse considering the bigger picture which we will see later.

    Example 3 shows a settlement of a Drac Arch Druid around a Lost City. The Clover Field is fine, but the Lost City will continue to be unexplored for a mightly long time. There is a very imminent danger site to the left, and the city garrison of 4 units, led by a Flyer is not really sufficient for anything, but binds troops. The town has no development potential at all, when you increase the radius, in short, it’s an awful place to settle.

    Example 4 shows a second settlement of the same player. On first look this ne looks halfway decent – except that NOTHING has been cleared, not the Ruins, not the mana node, nor, if you look to the right, any of that circle of no less than 4 interesting sites, that you’d all have in a 3 radius, if you settled instead of the actual place on the hex 5 to the right and one above-right. More importantly, that settlement is guarded by what you see, with a second lone hero 3 hexes below and to the left of the Ruins. Again, not enough for anything and due to the same reasons which I will come to next.

    Attachments:
    You must be logged in to view attached files.
    #256519

    Jolly Joker
    Member

    The first screen here shows the general situation of the Frostling Warlord from Example 2 of the post before. His is the light blue “empire” to the right, the outpost being southernmost, awfully placed, stretching the area to control, making it vulnerable.
    The purple AI player to the left is an Orcish Necromancer who took a different course (for whatever reason), and did NOT settle at all until now. Instead he vassaled the 2nd Orc town and conquered Anglamor, a Tigran outpost, to the North. If you look closely, you can see the Necro’s main forces still on a roll to the right of Anglamor, conquering.

    Examples 2-4 show 3 settlements of the same AI-player. The first is around a Wizard Tower. The second is around a Forbidden Sanctum. There are 5+1 units there, but the Sanctum won’t be cleared. The last is again a sanctum plus a vulcano (plus a seal) none of which has been or will be cleared in the near future.

    However, this is not only about the AI picking bad places for settling. It’s also about the AI changing it’s game as soon as a settler is built. First, the settler has to be escorted, that is, the AI breaks up what is in general a decent exploration stack. The AI likes to escort its settlers with Heroes (probably due to unit evaluation). When the AI settles, the new settlements needs guards – so the excort stays, until lelieved by new builds or summons.

    So basically, the AI is disrupting its own game.
    One conclusion here is that you will get a much better game out of the AI, if you do NOT play with settling. This will still bog down the producing AI (due to guard requirements), less so for those who can summon stuff. But not as much as settling.

    However, you’ll either have an empty map then – or many towns from the get-go, and they will bog the AI down as well, sooner or later.

    A WAY better solution would be to add an instrument to fine-tune AI settling behavior, and in my opinion you can do that by simply making a difference in settling evaluation, whether a value giver is explored or not, because in that case you could limit the AI settlement to reasonable amounts and later points, forcing clearing before settling. At this point there are THREE criteria in the mod tools to steer that:

    1) Distance to next settlement (fine); default 7
    2) Radius (from settlement hex) to evaluate (fine); default 3
    3) Value minimum (not fine); default 30

    3) 3 is the critical thing, because it really makes a difference whether the “value” is explored or not and if not WHEN it will be.

    In reality this could be changed (by the devs) quite, well in theory at least, easily, because what the AI needs are 2 values, one for real (cleared) and one for potential (doesn’t matter).
    It would also be nice, if this values could be given some kind of property filter. You’d want to set a minimum cleared value and a minimum general value.
    Example: with a radius of 3 you’d set minimum cleared to 20 and minimum general to 30. This would mean the AI would pick a point where value 20 minimum was cleared with an amount of at least 10 more, either cleared or not.

    Of course you might have 2 different radiusses as well, 1 for cleared and one for general.

    This might see something like radius 3 for cleared 20, and radius 5 for a general 60. I’d also set the value for population not that high.

    In my opinion this would change the AI game MASSIVELY to the better, because the AI wouldn’t build a settler within the first half dozen turns (which it does quite often). Instead it would settle at reasonable places and spent more time with exploring.

    I hope for some discussion.

    Attachments:
    You must be logged in to view attached files.
    #256529

    Hiliadan
    Member

    The AI in Age of Wonders 3, by Jolly Joker (2017), the new book by the prolific author.

    😀
    (haven’t had time to read all yet)

    Check out the Wiki for a lot of very good data about AoW3!
    What you really need to improve your AoW3 experience: the balance mod and its presentation video
    Last but not least, check out the Battlefield.com/AoW3 the community website for AoW3

    #256530

    Jolly Joker
    Member

    Well, if my interest in something is piqued, I tend to persevere. 🙂

    The mod tools that allow to take an influence on the AI are limited by the actual AI behavior. In my opinion there is nothing wrong (for an AI) with the way it handles its own settlings and settlers, but only provided the settling itself isn’t “trivial”. This is especially important in the beginning.

    Settling is quite complex, because it creates a positionally advanced weakness that has to be protected (that is, a settler and its settlement create an obligation or even a liability). The flip side of the coin is that it is supposed to boost your available means, creating gold, mana, knowledge and production force.
    The second part has to be worth the effort, otherwise it IS just a liability.

    Tweaking the tools as suggested to refine the selection process for settling might produce the biggest AI boost you can possibly get at this stage.

    #256537

    Jolly Joker
    Member

    You can set the number of units the AI must have per town, before it can settle. The default here is 4. Now, obviously the AI starts the game with at least 8 units, no matter what (allowing any hero at all), this means the AI can go ahead and build a settler more or less right away. Increasing that number (drastically), will obviously delay AI settling a bit; it must build or acquire a couple of units first, before settling.
    I tried the effect of 12. This seems a lot – still the AI pumps out a settler after a dozen turns or so. However, doing so with a dozen units on the map isn’t as disruptive, since escort notwithstanding, that is leaving enough troops to carry on exploring.
    Still, it’s a pretty blunt tool, because 12 units per town is rather stressful for the economy, especially with the poor town placement, even considering the AI advantage.
    On lower settings it doesn’t actually work at all, because the AI either gets less economy bonus (difficulty) or more units (starting units), so as a workaround this is actually rather crude.

    #256547

    Hiliadan
    Member

    I read what you wrote, it seems to make sense. Another way to do it would be to weight the sites by difficulty when they’re not cleared: Mythical sites are weighted at 0.2 (so a value of 30 is actually a weighted value of 6) and Gold Mines, etc. are weighted at 1.
    The AI could also probably be recoded not to send heroes to escort Settlers.

    Check out the Wiki for a lot of very good data about AoW3!
    What you really need to improve your AoW3 experience: the balance mod and its presentation video
    Last but not least, check out the Battlefield.com/AoW3 the community website for AoW3

    #256548

    Jolly Joker
    Member

    As soon as evaluation is able to make a difference between explored and guarded, I don’t see any reason not to work with 2 radiusses and 2 values because that allows to factor in town growth. You might set, for example, 20 explored for radius 2, effectively limiting the AI to settle at specific points, and then limit it even more by adding a high potential value for a radius of 5 or 6 (considering that AI will have Stone Walls and Observatory fast, by making it, say, 70 for that radius (be it explored or guarded), catering for immediate gain and possible future development.

    #256549

    Hiliadan
    Member

    You’re repeating what you already said but didn’t really take into account what I wrote. 😛

    Check out the Wiki for a lot of very good data about AoW3!
    What you really need to improve your AoW3 experience: the balance mod and its presentation video
    Last but not least, check out the Battlefield.com/AoW3 the community website for AoW3

    #256550

    Jolly Joker
    Member

    If you insist that I explain it to you – if the AI can make a difference between Explored and Guarded, a solution that would rate Guarded sites with a multiplier in relation to their clearing difficulty would be inferior to a solution that would allow to make a difference the way sketched; in the end everything would have the same potential value, probably something between 5 and 8, and if you consider stuff like Hearts and Inns and Quarrys, the AI could still rack up a lot of “potential” points.

    #256551

    Hiliadan
    Member

    in the end everything would have the same potential value, probably something between 5 and 8, and if you consider stuff like Hearts and Inns and Quarrys, the AI could still rack up a lot of “potential” points.

    Not clear what you mean?

    To me, 30 from 3 Gold Mines or 30 from one Ziggurat is not the same. The Gold Mines are much easier to clear and the AI will clear them quickly.

    Check out the Wiki for a lot of very good data about AoW3!
    What you really need to improve your AoW3 experience: the balance mod and its presentation video
    Last but not least, check out the Battlefield.com/AoW3 the community website for AoW3

    #256552

    Jolly Joker
    Member

    Well, exactly. However, you said:

    Another way to do it would be to weight the sites by difficulty when they’re not cleared: Mythical sites are weighted at 0.2 (so a value of 30 is actually a weighted value of 6) and Gold Mines, etc. are weighted at 1.
    The AI could also probably be recoded not to send heroes to escort Settlers.

    So that would still mean, that the rating was based on potential. A site with completely unexplored stuff could still rake up impressive values.

    Or do you mean that IN ADDITION to what I suggested, the second ring with all values would have the unexplored sites additionally rated for difficulty? I’d say that distance from the site counts as well, if you start to rate stuff an explored mine in 5 distance is worth less than an unexplored Ancient Ruins in 3.

    So you should have a fairly low distance of 2 or 3 hex radius in which only explored stuff counts: the stuff you will profit from immediately or very soon. Then you’d have the stuff in up to 7 hexes distance. Starting at 1 as a multiplicator , explored sites might get -.1 for each hex distance above 3. Unexplored sites might get a second multiplicator for defense strength: mines, Forges and Farms 1, Strong and all other point givers that can be attacked with more than 1 stack with 0.8. Epic with 0.6, Legendary with .4 and Mythical with .2.

    You’d still need 2 radius and 2 point values, and the values for strength and distance would also be adjustable, in addition.
    Still, this might give an even more precide tool to deal with AI settling.

    So, if you meant it THAT way, sorry, I didn’t grasp it immediately. 😛 😀

    #256640

    Gloweye
    Member

    I think it should pick it’s settling locations in advance, then prioritize them with clearing. Like always haveing 1, 2 settling location in mind, if it can still build settlers, or skipping them if it wants to conquer a city instead, in which case that receives clearing priority.

    #256651

    Jolly Joker
    Member

    Bear with me in the answer, I’ll come to what you wrote.

    In general, we have TWO problems with the settling AI:

    1) Settling is a high-priority point on the AI agenda that commands a lot of forces for escorting and guarding duty, both for the settler unit and for the new settlement, which tends to disrupt the AI’s clearing potential. (To a lesser degree this is also true for the conquest or acquiring of an existing town, because it needs guards as well.

    2) The AI picks LOUSY places for settling. The reason here is, that the selection process is based on 2 criteria only: a) radius; b) value (I have no idea whether and how the AI is factoring in things like happiness and population growth here).

    In the beginning of the game, there isn’t enough clearing power to explore the tough stuff. The AI takes time to attack Epic structures, not to mention Legendary and Mythical ones. The simple conclusion is, that these structures have no value at all – and this next thing is important – when they are within a certain radius. Because, if they are in a radius of, say, 6-8, they don’t affect the actual settlement, but may become important later, which is incidentally the time necessary, until the AI may be able to clear the site.

    So, the IDEAL SETTLEMENT for the AI has:
    A) Easy to clear (in practise: already cleared) sites in a tight radius of 2-5 Hexes (I suppose 3 would be a good default). This alone would make sure that the AI would settle halfway usefully.
    B) ANY structure of ANY difficulty (in practise: Not cleared) in a much wider radius of up to 8 Hexes.

    If the Devs could expand the code, so that the AI can make a difference between “explored value” and “unexplored value”, adding two lines to the generalsettings, you could fine-tune AI settling so much, that the AI would do the right thing with settling AUTOMATICALLY, simply because you could increase requirements for a settling place, so that there wasn’t many in the first place.

    I think it should pick it’s settling locations in advance, then prioritize them with clearing. Like always haveing 1, 2 settling location in mind, if it can still build settlers, or skipping them if it wants to conquer a city instead, in which case that receives clearing priority.

    Picking settling locations in advance and then prioritizing them with clearing will work only when the “prioritizing” works as described above. Otherwise the AI will simply be unable to clear the selected site or lose a dozen units trying. Which basically means that the site selection must be in keeping with the ability of the AI to clear sites, which in turn means, the simplest way is to make a selection (mostly) based on already cleared sites.

    It is true, that the AI sometimes will take longer to settle, because it would be possible to do it at the same time (identifying a settling place, build a settler and found the settlement, while still clearing), but here the initial point 1) comes into play: settlers and settlements need special attention and tend to disrupt the exploration process.

    This CAN be addressed to a certain point with the existing mod tools (via the number of units the AI must have for each of its towns), and in combination with what I described above, I’m fairly certain that you could improve the AI massively, without actually changing it’s behavior patterns.

    #256652

    Hiliadan
    Member

    You should read this thread and bring them the good word: https://steamcommunity.com/app/226840/discussions/0/1470841715981942613/ 😛

    Check out the Wiki for a lot of very good data about AoW3!
    What you really need to improve your AoW3 experience: the balance mod and its presentation video
    Last but not least, check out the Battlefield.com/AoW3 the community website for AoW3

    #256653

    Jolly Joker
    Member

    That’s kind of unrelated, because the problem here isn’t the AI, the problem is human city spamming which can be easily thwarted by increasing the minimum distance necessary between towns. The default value is 5 (Domain Structire Min Distance in AoW global settings); increase that to 10 and the problem is solved.
    Also, the problem isn’t the number of cities the AI builds or doesn’t build, but the cost vs. gain if and when the AI builds (it’s towns aren’t good, and they are disrupting regular AI play).
    The guys in that thread actually haven’t got a very good idea of what is actually happening with AI play.

    • This reply was modified 2 months ago by  Jolly Joker.
Viewing 18 posts - 1 through 18 (of 18 total)

You must be logged in to reply to this topic.