-
Notifications
You must be signed in to change notification settings - Fork 7
v3.3.0 Evaluate mode
Evaluate mode sims for each turn which of the options to play is the best and plays it, like 'flexible'. Instead of simming all options to the end a score for the whole board is calculated to approximate the situation.
In detail:
Every turn you have 3 (or less) cards to choose from to play. Evaluate will simulate what happens when you play one of those 3 cards. [A simulation in the simulation] Then for each card the resulting board is evalued (after one turn by the player and one by the enemy). The card with the highest score gets played.
Pro:
- Not as slow as flexible, but still significantly better than random (~8% better in 10x time vs random)
- More realistic simulation, due to dynamic order instead of a static/random order.
- Includes (multiple-)dynamic combos in playstyle.
- Simming enemies with evaluate order represents a more realistic random defense vs a manual offense.
Con:
- The Algorithm (eval-function) for judging the board has it's issues, eg. fine-tuned scaling of some skill values
- Some good decks might be avoided since they don't show a the board dominance to appeal to the eval-function
Options:
- 'eval'/'evaluate' : instead of ordered/random-order
- 'enemy:evaluate' : instead of ordered/random-order
- 'eval-iter X' : sets the number of iterations to X for the simulation which card should be played (default=8)
- 'eval-turn X' : sets the number of turns to use the evaluate method, after X turns random is used (default=8)
Notes:
- The output is not ordered, that means you need to figure out how to play this deck yourself.
- Before simming vs a gauntlet, better get a feeling for it vs a single deck.
- Values for normal iteration and (default-)eval-iter are not optimized (yet), just test and see how tuo responds.
If you have ideas how to easily/quickly and effective judge/evalue the board I'm happy to hear about new approaches.
'eval2' mode is like 'eval' mode, but one more simulation of 1 (atm hardcoded) iteration follows in order to provide better plays:
- simulation of the game
- evaluation of the 3 available cards to play
- evaluation of the 3 available cards to play after playing (2.)
- Play the card from (2.) with the best score in (3.)
Pro:
- Scores are close to 'flexible' scores, but there is a gab.
- Quicker optimation of a bad start deck than starting with 'flex' (~twice as fast)
Options:
- Uses the parmeters from 'eval'