Wall ahead. Beware!
Otyugh should target the most dangerous creature to its life, which is not always the highest attack/defense creature.
I consider lobotomy the most dangerous, then infecting stuff, otyughs with close defense come then.
Interesting feedback. Thanks. See my opinion at the bottom of the post.
It is not a problem if you infect a creature multiple times, but don't infect it if it would die anyway (infections>current defense).
Good point too.
Don't play spark when hourglass is in effect, unless you got more scavengers/bone walls than the enemy.
Don't play dive while hourglass/phase shield/bonewall is in effect.
Those are not part of the targeting function. But I keep them in mind for the future.
Now if I play Sundial I know for a FACT that there is NO POSSIBLE WAY of him killing me during the next 2 turns because I have also other higher priority permanents on the table. AI will target those higher every single time.
The FG
SHOULD consider your Sundial to be the highest priority. If it doesn't, the AI is wrong and needs improvement.
If you make it so they target weapons more often, small rainbows are screwed. Eternity will be useless. A lot of people are going to need to remake their rainbow decks :-/
I put a Protect Artifact on my Eternity as soon as it enters the game. Don't you?
Of course, there's the relevant Wiki page (http://elementsthegame.wikia.com/wiki/Potential_AI_Improvements) to check.
A lot of interesting suggestions there but not that much relevant. Most of them are not part of the targeting function.
Realistically, the various skills should be given a range of targeting values (beyond just "+3 value if skill exists".) Things like bioluminescence should be worth +0 (no more targeting Fireflys over FFQs), photosynthesis and gravity pull would be around +1, mutate and other potentially fail abilities along with momentum (which is already only great on a decent attacker) would be +2, most generally-useful abilities would be +3, and real game-changers like Queen, Destroy, Steal, Reverse Time, Sniper, and Devour would be +4.
That's exactly how I started to work. My evaluation of the threat is a little bit different than yours though. See below.
Also, in general, it would actually improve the AI's play quite a bit if, at the start of each turn, it looked through it's hand for free cards and played them first, then went through and played costed cards in order from most to least expensive. That way, Graviton would get an Otyugh (and control of the board) on turn 1 instead of turn 4 or 5 after it's used all of it's Fire Masters.
There are obviously circumstances when that isn't the case, but I think it would help. At the very least, it should play all pillars first before it goes back and plays any other cards.
Not part of the targeting function. But thanks anyway
If no PU/TU in deck, diversify buff targets. If this is possible to code, that is...
If creature has 10+ HP and/or HP>ATK, don't Armor
If poison count on creature = creature HP, don't infect it anymore
When Momentum, play it on a creature with 4+ attack
Use Photosynthesis multiple times until 12 Light quanta is reached, not once per turn per Rust/Leaf Dragon!
I agree with all points but the first one. I keep thinking that 99% of the times, when a deck has some buffs in it, they're supposed to target the same creature every time. PU/TU was just an example but it's the same with a Deja Vu rush deck or when you just want to buff a momentumed dragon.
Really check for buffs if there is a playable PU/TU in hand and play them on your strongest creature, then PU/TU. Not before.
Agree 100%. But not for now as it's not part of the autotarget function. I'll be sure to think about that when I work on the play order.
for example I play a have 9 life quanta, and play a frog, adrenaline it, then use an upped cockatrice. the frog's damage dealt at the end of the turn will be 12, and the cockatrice 5, but the frog is a lower-priority target (Statuses don't count as skills for the +3 apparently). Of course this is with adrenaline, which isn't out yet, but i'm assuming that the better AI will come out with the new cards.
Yes, statuses (momentum, poison, adrenaline and the others) definitely have to be taken into account.
also something needs to be said about the AI decking itself (as rainbow).
That's indeed a concern but I don't really know how to solve that. Even if I "teach" FG to reverse his own creature, that won't prevent him from decking out (as they'll only reverse 1 card and draw 2 on next turn). Any thought on this? Maybe we could ask Zanzarino if he would agree with the following change "FG might draw 2 cards per turn but they can choose to draw only 1 if they prefer". With this rule change (that I'm ready to implement) it would effectively be possible to prevent FG from decking.
EDIT: also wasting quant to play more eclipses/nightfalls or playing it when they have no creatures and the enemy does
Good point, thanks. But not part of the targeting.
I just hope the AI doesn't grow so complex that it slows down the game while it's thinking. AS isn't particularly fast programming language and one of the strong points of this game is the quickness of most matches.
I take great care in checking that, don't worry.
I say give pillars/towers lowest priority over everything, so if there's a sundial on the field, the AI targets the dial instead of the towers you played first.
Agreed, obviously.
my game against fire queen: shes playing with a lot of airquanta eagls eye... i have 2 otys with 0/5 and 3/5...
first sniper 0/5 and 3/2... but there are NO other creatures and sundial in play, so my 3/2 cant attack... but firequeen shoot on 3/2... so my 0/5 oty already has enough def to devour a skelett and so on... i think, its better when ai can think about the relevance, better to slow down the other one too, because so i get one round more für one of them... with 3/2 and 0/2 theres in this round not realy a chance... i think 8)
The old AI took only "creature's attack" into account to find the biggest threat of the battlefield, that's why the Oty with 3 atk was always the primary target. Now the threat will be calculated differently depending on the creature's skill.
For example, when several Oty are in play, computer will always target the one with the highest defense, as it's the highest threat
for a creature that has devour.
When 2 queens are in play, one 3/7 and one 3/3, it will target the 3/3 to finish it. Because a high defense queen isn't more dangerous than a low defense.
And so on.
but more funny, i think, is when FQ draws a flying weapon, she plays! so, as i had an oty with 7 deff and an eagls eye self... she plays her eaglseye with flying weapon... without snipering... so next round, i devour this flying eagl... not that much intelligent
This has to be fixed, indeed. But it's part of the card ordering, not skill targeting. I'm not working on this part right now. Hopefully later.
Also don't use dive if your attack strength is 0
In a heavy mutation battle i won by this quirk.
The enemy wasted quanta on diving a 0/4 flying egg.
Thanks, but part of the decision algorithm, not targeting.
Also, it seems the AI doesn't consider that after using a wounding ability (like owl's eye) it can use devour.
Many times I could slip in pests when an Oty has 0/2, the enemy hits my pest to 0/1, the Oty doesn't grab the snack.
And of course next round my Pest is already underground.
That's how the ordering function currently works. See "Main loop" section here:
http://elementsthegame.wikia.com/wiki/User:Chriskang/Sandbox/10#Main_loop (
http://elementsthegame.wikia.com/wiki/User:Chriskang/Sandbox/10#Main_loop)
Computer plays (or not) creature skills,
then permanent skills (including weapons),
then ends turn. There should be a second check on creature skills after permanent. I'll try to improve that when I work on this function.
Btw, i noticed a mutated pest/devourer still sucks mana, though it displays momentum.
I wonder if it is a bug or a feature.
It's a bug. Nothing to do in this thread though.
That reminds me. While all of this AI upgrading is going on, are y'all going to be fixing other bugs (like the Momentumed Mutant problem, the Quantum AI Pillars problem, etc.?)
Yes. Those are all getting fixed.
Not by me in the near future. Did you get this information from Zanzarino?
The AI seems to use Rewind to target the creature with the highest attack on the opponent's field. It's usually better to use Rewind against the creature with the highest cost -- thereby forcing your opponent to once again spend those quanta. As a default, it might be good to make that change, and allow for some exceptions (e.g. targeting creatures with activation powers over creatures without activations).
In mid/end game, you have more quanta than needed most of the time so replaying a costly card is not really a problem. In my opinion, threats should be evaluated by looking:
* creature skill first
* then attack
* then card cost
As for skills that represent a high threat when you face them, here's the order that I suggest:
1. Devour, Paradox, Immortality (highest priority, if human has it computer tries to get rid of it asap)
2. Reverse Time, Lobotomize, Congeal
3. Destroy, Sniper, Steel, Infection, Freeze, Tsunami
4. Queen, Infect
5. Growth, Improve, Poison, Venom
6. Ablaze, Fiery, Mutation, Scavenger, Dive
7. Gravity Pull, Hatch, Lycanthropy
8. Heal, Photosynthesis, Scramble
9. All other skill
Please comment.