[Not a bug]AI cursed itself with Curse of Death's Hold
Moderators: BAgate, drool66, Aswan jaguar, gmzombie, stassy, CCGHQ Admins
[Not a bug]AI cursed itself with Curse of Death's Hold
by etphonehome » 18 Sep 2021, 13:09
- Attachments
-
curse of death's hold savegame.rar
- (2.54 KiB) Downloaded 98 times
Last edited by Aswan jaguar on 28 Sep 2021, 12:16, edited 2 times in total.
Reason: not a bug - ai good choice
Reason: not a bug - ai good choice
- etphonehome
- Posts: 307
- Joined: 21 May 2020, 12:50
- Has thanked: 281 times
- Been thanked: 46 times
Re: [confirmed]AI cursed itself with Curse of Death's Hold
by drool66 » 21 Sep 2021, 19:33
I added an AI mod in 99ffe1d; not sure if this is the reason or not. AI still does the same thing in your save, but the choice could have been determined ahead of the save point.
The latest images for Manalink will be here.
The latest Manalink installation directory will be here. Well, not quite, anymore. Check the latest patches.
The latest Manalink installation directory will be here. Well, not quite, anymore. Check the latest patches.
-
drool66 - Programmer
- Posts: 1185
- Joined: 25 Nov 2010, 22:38
- Has thanked: 187 times
- Been thanked: 280 times
Re: [confirmed]AI cursed itself with Curse of Death's Hold
by Korath » 22 Sep 2021, 03:35
The save point is always the start of the turn - that's when it autosaves, and manually choosing "save game" just copies the autosave file - and the AI doesn't decide things in advance. At least, not unless you deliberately store data somewhere and then explicitly retrieve it later when the AI would otherwise decide on its own.
I don't see anything immediately wrong in curse() or enchant_player() that might cause this, though. curse() and card_curse_of_deaths_hold() itself should be looking at targets[4], not targets[0] (and certainly not damage_target_player, which is never set in Manalink) to determine what they're attached to, but that won't matter for this card since it doesn't pick targets. Maybe instrument real_select_target() to be sure preferred_controller is still 0 during actual target selection.
I don't see anything immediately wrong in curse() or enchant_player() that might cause this, though. curse() and card_curse_of_deaths_hold() itself should be looking at targets[4], not targets[0] (and certainly not damage_target_player, which is never set in Manalink) to determine what they're attached to, but that won't matter for this card since it doesn't pick targets. Maybe instrument real_select_target() to be sure preferred_controller is still 0 during actual target selection.
-
Korath - DEVELOPER
- Posts: 3708
- Joined: 02 Jun 2013, 05:57
- Has thanked: 496 times
- Been thanked: 1108 times
Re: [confirmed]AI cursed itself with Curse of Death's Hold
by Aswan jaguar » 24 Sep 2021, 13:38
There are two things happening here that will overwrite the choice to select human for target for Curse of Death's Hold, tested only with preferred_controller = 1-player added although I expect the same results without it.
One factor is the low AI life (1) and Human's creature at 6/6. Fact - Give AI life bigger than 4 and AI will curse human. Assumption - AI after it's evaluations sees that if it plays it on opponent Human's creature goes to 5/5 then play Death's Approach (with one creature on humans grave) on it and goes to 4/4 so with more than 4 life AI is safe next turn.
I think it is a matter of AI tries to protect itself from Humans next turn and some De-synching. AI has 1 life and Blessed Orator in play it's code forces AI to attack with it's only creature, [ AI will attack with any creature with power bigger than 0 if it will not die in combat (except some mana creatures sometimes, and those that can't attack of course, and sometimes also with creatures with banding)]. Assumption - AI sees that and it plays Curse of Death's Hold on itself so it's Blessed Orator goes to 0/3 power and now AI is no longer obliged to attack an has a blocker for next turn, still a 0/3 can't stop a 5/5 creature with trample and not loose that's why I mention that AI could be de-synching or just not taking into account trample damage. This assumption is based on the fact that if you give AI another blocker like a vanilla 1/1 for instance AI will cast Curse of Death's Hold on opponent and of course attack happily with Blessed Orator.
One factor is the low AI life (1) and Human's creature at 6/6. Fact - Give AI life bigger than 4 and AI will curse human. Assumption - AI after it's evaluations sees that if it plays it on opponent Human's creature goes to 5/5 then play Death's Approach (with one creature on humans grave) on it and goes to 4/4 so with more than 4 life AI is safe next turn.
I think it is a matter of AI tries to protect itself from Humans next turn and some De-synching. AI has 1 life and Blessed Orator in play it's code forces AI to attack with it's only creature, [ AI will attack with any creature with power bigger than 0 if it will not die in combat (except some mana creatures sometimes, and those that can't attack of course, and sometimes also with creatures with banding)]. Assumption - AI sees that and it plays Curse of Death's Hold on itself so it's Blessed Orator goes to 0/3 power and now AI is no longer obliged to attack an has a blocker for next turn, still a 0/3 can't stop a 5/5 creature with trample and not loose that's why I mention that AI could be de-synching or just not taking into account trample damage. This assumption is based on the fact that if you give AI another blocker like a vanilla 1/1 for instance AI will cast Curse of Death's Hold on opponent and of course attack happily with Blessed Orator.
---
Trying to squash some bugs and playtesting.
Trying to squash some bugs and playtesting.
-
Aswan jaguar - Super Tester Elite
- Posts: 8129
- Joined: 13 May 2010, 12:17
- Has thanked: 748 times
- Been thanked: 477 times
4 posts
• Page 1 of 1
Who is online
Users browsing this forum: No registered users and 24 guests