A few days ago, famed AoS Youtuber 2+ Tough had a livestream in which he built an AI for Warcry, based primarily using the AI from the Solo Warhammer: Troggoth Slayers article. Having dabbled with the idea of an AI for AoS before myself (because I love the game, but I have been a lonely player for forever), I thought this might be a fun exercise to go through as well. I will be starting from scratch, so our end results should look totally different.
All actions that the player makes for the AI should be in the AI's best interest. After all, if you were playing an actual human opponent, they are not going to give you the easy win (unless, you know, they're a good guy and/or trying to get you addicted to plastic crack).
Roll six dice for both Player and AI as normal.
Player may add Wild Dice to own pool as normal.
Determine at this point who goes first based on whether Player or AI has the most singles, using a roll off as a tie.
Add one 'Wild AI Die' to the AI's pool, and add any from the previous round. Roll each Wild AI Dice separately and consult the table below:
|Roll||Wild AI Die Result|
|1||Discard this Wild AI Die|
|2||Roll an Additional Wild AI Die next round|
|3||Add the Wild AI Die to a single to make a double|
|4||Add the Wild AI Die to a single to make a double|
|5||Add the Wild AI Die to a double to make trio, or single to make double|
|6||Add the Wild AI Die to a trio to make a quad, double to make trio, or single to make double|
For each Double, Triple, and Quad, assign an ability to a fighter who can use one of those dice abilities. When assigning, do not assign Quads to Triples/Doubles or Triples to Doubles unless the AI does not have a valid fighter that can use those multiple rolls. Do not assign Universal Abilities if a valid Army-Specific Ability has not been assigned yet, and assign values to those abilities that utilize them. Assign abilities in this order: Those that do damage to multiple models, those that give bonus attacks, abilities that give bonus movement, abilities that heal, and then all other abilities.
Combat Phase - Activation Selection
Select a fighter to activate via the following order, moving all fighters that tie onto the next tiebreaker level:
A fighter that is at risk of being killed due to the amount of damage that can be done by the number of yet-to-activate models around it. ***See Note 1 Below***
A fighter that has an ability assigned to it from the AI Phase
A fighter that can deal the most damage this turn (remember that fighters in combat can attack twice compared to one that has to move into combat)
The fighter closest to an Enemy Fighter, Unclaimed Objective, or Claimed Objective that is under threat of becoming unclaimed.
Combat Phase - Actions
Make actions for the fighter based on trying to accomplish as many of the following, and in the following order:
Can claim an Unclaimed Objective or Treasure, or can deny victory for the Player
If a model has an ability assigned to it from the AI Phase, incorporate further actions to maximize the effect of that ability
Can move and kill a powerful fighter, yet-to-activate fighter, or any other enemy fighter
Can move and attack a powerful fighter or yet-to-activate fighter, or any other enemy fighter
Move toward the nearest enemy fighter (do not enter 1" melee range) or unclaimed Objective or Treasure, that the fighter would not have to pass through or around friendly units to reach. Use the next nearest enemy fighter or unclaimed objective if this fighter would be the third fighter heading for that fighter/objective (This prevents the entire AI army from clumping toward one weak decoy)
That should pretty much cover the whole system. I haven't had a chance to playtest it myself (that will require me having the time to clear my only desk space and setting up a game.
If you have any ideas or find the time to playtest, post your experiences below. Comments and Critiques are highly encouraged.
***Note 1: To determine a Fighter's Risk of Being Killed, Start with the Fighter's remaining health, then subtract each enemy's # Attacks * Non-Crit Damage for all enemy fighters who can make a move and attack, and twice that for all enemies within 1". If that number becomes less than zero, the fighter is at risk for being killed. Early thoughts were to use this to make some fighters run instead of fighting. But since the player isn't subjected to that rule, there isn't a point.