Dominion Strategy Forum

Please login or register.

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

Author Topic: Geronimoo simulator request  (Read 976 times)

0 Members and 1 Guest are viewing this topic.

DG

  • Cartographer
  • *****
  • Offline Offline
  • Posts: 3996
  • Respect: +2550
    • View Profile
Geronimoo simulator request
« on: May 01, 2012, 07:46:11 pm »
0

I know Geronimoo isn't doing a lot of work updating the simulator at the moment but I'll still put forward three substantial requests. Maybe someone can help him out.

Firstly it would be good to have some "user values" that could be defined at the start of the script and calculated from existing terms in the simulator. For example you could define a user value as "Count in deck: copper" + "Count in deck: curses" and then reference that user value in the purchase conditions. This would allow the user to create far more interesting purchase conditions without great changes to way the simulator works. The user definitions could perhaps be on another tab at the top of the script.

Similarly, it would be good to have a purchase/gain condition of "When playing <card name> with <card name>". This would allow the user to take many of the most difficult decisions away from simulator logic. So as an example, if you could specify a line of Buy Gold when playing Mine with Loan then the simulator would check the buy condition to see if you were playing a mine, if you had a loan in hand, and then gain the gold by trashing the loan. Existing purchasing logic would continue otherwise.

I imagine this second request would be a heck of a lot more work to code but would let users themselves solve problems with mine, mint, remodel, upgrade, develop, expand, horns of plenty, ill gotten gains, ironworks, workshops, universities, thief, etc. The simulator wouldn't need increasingly complex AI to deal with each situation. It also fixes a variety if logic problems where you want  to gain card Y by trashing card X and you can't do the same tests before/after card X is trashed.

Thirdly it would be good after a simulation to keep a record of the final decks, something like the average number of each card type for each player. It would be even better if there were separate records for winning decks and losing decks. This would let the user find out more easily whether the kingdom cards are being bought and whether they have any impact. Maybe this data could be presented on a new display window. The simulator certainly doesn't need this feature but it might be nice to have.
Logged

blueblimp

  • Margrave
  • *****
  • Offline Offline
  • Posts: 2757
  • Respect: +1493
    • View Profile
Re: Geronimoo simulator request
« Reply #1 on: May 02, 2012, 12:26:44 pm »
0

In my mostly uninformed opinion...

Request 3 should be reasonably easy, because it's just a matter of recording some data from games then displaying it. The main question is what data is most useful here: average # gained? ...bought? ...present in final deck? Also, keep in mind that the anti-suicide rule can distort these statistics sometimes: a bot that aims to 3-pile on IW, GH, and Islands (in that order) will almost always have 8 Islands in its deck when winning and less than 8 when losing, because of anti-suicide.

Requests 1 and 2 are trickier because they add new features to the bot definition. That means that it's important not to do a bad job of implementing them, or you'll be stuck with a crappy bot definition format.

That said, request 1 is maybe not too bad. Expressions are already possible, so it's just a matter of being able to give names to expressions to reuse them later. It's not trivial, but hopefully not too hard either. It'd be helpful to have an example (or examples) of a bot where this feature would be useful.

Request 2 is very difficult, as it pretty much requires a rewriting of every play rule that you want to customize. Being able to qualify buy rules by card being played is probably not too bad, but more complicated things like specifying Mine target are seriously hard, and are nearly as difficult as providing fully customizable play rules, in my opinion.
Logged

DG

  • Cartographer
  • *****
  • Offline Offline
  • Posts: 3996
  • Respect: +2550
    • View Profile
Re: Geronimoo simulator request
« Reply #2 on: May 02, 2012, 01:18:16 pm »
0

Quote
It'd be helpful to have an example (or examples) of a bot where this feature would be useful.

At the moment the simulator can compare x to y + constant, or compare x to y - constant, however it can't compare x + y to anything.

User values would help with calculation of variable vp card value, how to use multiple buys, cost changes using quarries or bridges, neater emptying of supply piles, cards remaining in your deck, and so on. In other words, all the difficult stuff that is hard to work out at the moment.
Logged
Pages: [1]
 

Page created in 0.109 seconds with 20 queries.