mehtank / androminion

Androminion : Unofficial Dominion for Android
189 stars 65 forks source link

Apprentice causes AI to trash all cards in deck #220

Open ghost opened 9 years ago

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

What steps will reproduce the problem?
1. Drew, Mary
2. Apprentice
3. Enough turns for them to trash all cards and be left with only an Apprentice

What is the expected output? What do you see instead?

What version of the product are you using? On what operating system?
HTC MyTouch 4G

Please provide any additional information below.

Apprentice causes Drew and Mary to trash all cards until they have only one 
Apprentice left in their deck. Final score 0 VP's each.

Original issue reported on code.google.com by armandga...@gmail.com on 11 Jan 2012 at 3:25

Copied from original issue: tkdennis/androminion#221

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

I've seen this behaviour myself and look into it.

Original comment by t.mahlm...@gmail.com on 11 Jan 2012 at 1:34

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

This happens with several cards, including Bishop and Chapel, among others.

Original comment by August.D...@gmail.com on 12 Jan 2012 at 7:34

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

Sarah based AIs shouldn’t actually trash when they have less then three 
copper. 

What's the actual desired behaviour here? Personally, I don't chapel-trash 
anything else besides estates and copper, and maybe some duplicate action cards 
later; especially chapels.

Original comment by t.mahlm...@gmail.com on 12 Jan 2012 at 8:26

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

The question "What is the desired behavior?" is actually enormously complicated 
and depends on multiple factors which change with and within every possible 
iteration of supply piles.

I would suggest the desired behavior (for immediate implementation) would be:
1. Trash Estates
2. Trash Coppers only when they are outnumbered in one's deck by other treasure 
cards
3. Trash action cards that give curses when there are no curses left and those 
cards have no other use (such as Sea Hag)

Perhaps in future updates, attempts to address more complicated decisions 
regarding trashing and upgrading action cards could be implemented. One 
important question to address would be when to Apprentice, Remodel, Chapel, or 
Develop, etc., other copies of the same cards. This decision would be based on: 

1. Whether advantageous plays still remain (such as Estates to be converted to 
Silvers, whether any Curses remain in one's deck (or in the supply, to 
potentially be added to one's deck)), and

2. How close the end of the game is. 

In the endgame the goal of strengthening one's deck is supplanted by acquiring 
VP's (and thereby weakening one's deck). So the decision to convert action 
cards into treasure or VP's is based not only on the current effectiveness of 
the card as it relates to what's now in one's deck (and potentially opponent's 
decks, if they have purchased many defense cards), but also on the stage of the 
game; which is determined by the number of Provinces (and Colonies) remaining 
and/or the number of cards left in the 3 shortest supply piles. This would 
necessitate the AI recognizing an "endgame" state that alters its priorities. 

Once the Endgame state was met, it might begin Remodeling Militias into 
Duchy's, for example. 

Furthermore, the AI might, in the Endgame state, calculate the outcome in VP's 
of different decisions. For example, in the hand (Remodel, Copper, Silver, 
Gold, Platinum) one scores 7 VP's by Remodeling Copper into Estate and buying 
Province, 9 VP's by Remodeling Silver into Duchy and buying a Province, 10 VP's 
by buying Colony and Upgrading nothing, 12 VP's by Remodeling Gold into 
Province and buying a Province, and 13 VP's by Remodeling the Platinum into a 
Colony and buying a Duchy.

An AI that could assess those possible plays and make the best decision would 
be truly extraordinary. 

Original comment by armandga...@gmail.com on 12 Jan 2012 at 10:01

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

Don't forget on the top of the above lists: thrash Curse. I know it is obvious, 
but nobody mentioned it before.

Original comment by buralien on 2 Feb 2012 at 9:16

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

Issue 200 has been merged into this issue.

Original comment by August.D...@gmail.com on 21 Feb 2012 at 9:51

ghost commented 9 years ago

From @GoogleCodeExporter on May 31, 2015 1:53

Issue 323 has been merged into this issue.

Original comment by August.D...@gmail.com on 4 Apr 2012 at 9:18