Dominion Strategy Forum

Please login or register.

Login with username, password and session length
Pages: [1]

Author Topic: Simulation Challenge - IGG with other cursers  (Read 1828 times)

0 Members and 1 Guest are viewing this topic.

WanderingWinder

  • Adventurer
  • ******
  • Offline Offline
  • Posts: 5275
  • ...doesn't really matter to me
  • Respect: +4386
    • View Profile
    • WanderingWinder YouTube Page
Simulation Challenge - IGG with other cursers
« on: January 21, 2012, 09:36:17 am »
0

There's been some discussion recently about games where IGG is available with other curse-givers (specifically witch and mountebank), about whether it's better to prioritize the IGG or the other curse-giver. On one hand, IGG could be better, because it gets that curse out immediately. On the other, the other curser could be better, because it has the chance to give out more curses over the course of the game.
I want to challenge people to come up with a) the best bot which uses only the basics, IGG, and witch; b) the best bot which uses only the basics, IGG, and Mountebank.
Here's my first, benchmark stabs at these things:
Code: [Select]
<player name="IGG/Witch"
 author="WanderingWinder"
 description="Witch is probably the strongest attack card in the game.">
 <type name="UserCreated"/>
 <type name="Competitive"/>
 <type name="Province"/>
 <type name="BigMoney"/>
 <type name="Bot"/>
 <type name="Attacking"/>
 <type name="SingleCard"/>
 <type name="TwoPlayer"/>
   <buy name="Province"/>
   <buy name="Witch">
      <condition>
         <left type="countCardsInDeck" attribute="Witch"/>
         <operator type="equalTo" />
         <right type="constant" attribute="0.0"/>
      </condition>
   </buy>
   <buy name="Ill_Gotten_Gains">
      <condition>
         <left type="countCardsInSupply" attribute="Curse"/>
         <operator type="greaterThan" />
         <right type="constant" attribute="1.0"/>
      </condition>
   </buy>
   <buy name="Duchy">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerThan" />
         <right type="constant" attribute="6.0"/>
      </condition>
   </buy>
   <buy name="Estate">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerThan" />
         <right type="constant" attribute="4.0"/>
      </condition>
   </buy>
   <buy name="Gold"/>
   <buy name="Duchy">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerThan" />
         <right type="constant" attribute="7.0"/>
      </condition>
   </buy>
   <buy name="Silver"/>
   <buy name="Estate">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="5.0"/>
      </condition>
   </buy>
   <buy name="Copper">
      <condition>
         <left type="countCardsInSupply" attribute="Curse"/>
         <operator type="smallerThan" />
         <right type="constant" attribute="1.0"/>
      </condition>
   </buy>
</player>

Code: [Select]
<player name="IGG/Mountebank"
 author="WanderingWinder"
 description="Get all the Ill-Gotten Gains and Duchies to empty 3 piles.">
 <type name="UserCreated"/>
 <type name="Competitive"/>
 <type name="Province"/>
 <type name="BigMoney"/>
 <type name="Bot"/>
 <type name="SingleCard"/>
 <type name="TwoPlayer"/>
   <buy name="Province"/>
   <buy name="Duchy">
      <condition>
         <left type="countCardsInSupply" attribute="Curse"/>
         <operator type="smallerThan" />
         <right type="constant" attribute="2.0"/>
      </condition>
   </buy>
   <buy name="Mountebank">
      <condition>
         <left type="countCardsInDeck" attribute="Mountebank"/>
         <operator type="equalTo" />
         <right type="constant" attribute="0.0"/>
      </condition>
   </buy>
   <buy name="Ill_Gotten_Gains"/>
   <buy name="Duchy"/>
   <buy name="Estate">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="2.0"/>
      </condition>
   </buy>
   <buy name="Silver"/>
   <buy name="Estate">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="4.0"/>
      </condition>
   </buy>
   <buy name="Copper">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="4.0"/>
      </condition>
   </buy>
</player>

DG

  • Governor
  • *****
  • Offline Offline
  • Posts: 4074
  • Respect: +2624
    • View Profile
Re: Simulation Challenge - IGG with other cursers
« Reply #1 on: January 21, 2012, 11:06:04 am »
0

Here's my stab at IGG/Witch - almost immediately buys duchies after the curses run low. Considers emptying the curses when in the lead. The mountebank seems to work well with almost exactly the same script, replacing with witch with mountebank.

Code: [Select]
<player name="IGG/Witch DG"
 author="DG"
 description="Buys one Witch, IGGs, green cards, some end game rules.">
 <type name="Bot"/>
 <type name="Province"/>
 <type name="TwoPlayer"/>
 <type name="UserCreated"/>
   <buy name="Province">
      <condition>
         <left type="countCardsInSupply" attribute="Curse"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="4.0"/>
      </condition>
   </buy>
   <buy name="Witch">
      <condition>
         <left type="countCardsInDeck" attribute="Witch"/>
         <operator type="equalTo" />
         <right type="constant" attribute="0.0"/>
      </condition>
   </buy>
   <buy name="Ill_Gotten_Gains">
      <condition>
         <left type="countCardsInSupply" attribute="Curse"/>
         <operator type="greaterOrEqualThan" />
         <right type="constant" attribute="2.0"/>
      </condition>
   </buy>
   <buy name="Province"/>
   <buy name="Gold">
      <condition>
         <left type="countCardsInSupply" attribute="Duchy"/>
         <operator type="greaterThan" />
         <right type="constant" attribute="7.0"/>
      </condition>
   </buy>
   <buy name="Duchy"/>
   <buy name="Ill_Gotten_Gains">
      <condition>
         <left type="countCardsInSupply" attribute="Curse"/>
         <operator type="greaterThan" />
         <right type="constant" attribute="0.0"/>
      </condition>
      <condition>
         <left type="countVP"/>
         <operator type="greaterThan" />
         <right type="countMAXOpponentVP"/>
      </condition>
   </buy>
   <buy name="Ill_Gotten_Gains">
      <condition>
         <left type="countEmptyPiles"/>
         <operator type="equalTo" />
         <right type="constant" attribute="2.0"/>
      </condition>
      <condition>
         <left type="countVP"/>
         <operator type="greaterThan" />
         <right type="countMAXOpponentVP"/>
         <extra_operation type="plus" attribute="7.0" />
      </condition>
      <condition>
         <left type="countCardsInSupply" attribute="Ill_Gotten_Gains"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="2.0"/>
      </condition>
   </buy>
   <buy name="Estate">
      <condition>
         <left type="countCardsInSupply" attribute="Duchy"/>
         <operator type="equalTo" />
         <right type="constant" attribute="0.0"/>
      </condition>
   </buy>
   <buy name="Estate">
      <condition>
         <left type="gainsNeededToEndGame"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="4.0"/>
      </condition>
   </buy>
   <buy name="Silver"/>
   <buy name="Estate">
      <condition>
         <left type="countCardsInSupply" attribute="Duchy"/>
         <operator type="smallerOrEqualThan" />
         <right type="constant" attribute="4.0"/>
      </condition>
   </buy>
</player>
« Last Edit: January 21, 2012, 12:29:03 pm by DG »
Logged
Pages: [1]
 

Page created in 1.622 seconds with 21 queries.