• Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • [Custom Deck] Silverfish AI

    Discussion in 'Archives' started by obtkamer, Jul 11, 2014.

    1. paperc07

      paperc07 Member

      Joined:
      Dec 16, 2011
      Messages:
      829
      Likes Received:
      9
      Trophy Points:
      18
      silent d34th do you have skype and can you add me if you do paperc07 is my skype name
       
    2. SIL3N7

      SIL3N7 Active Member

      Joined:
      Jun 12, 2012
      Messages:
      1,119
      Likes Received:
      11
      Trophy Points:
      38
      I do have Skype but never use it. What time zone are you in? We might have to arrange a time to meet on Skype I will add you when I'm home. You can also send me a pm on here,
       
      Last edited: Oct 9, 2014
    3. paperc07

      paperc07 Member

      Joined:
      Dec 16, 2011
      Messages:
      829
      Likes Received:
      9
      Trophy Points:
      18
      I am in the Eastern Time Zone but im usually always available.
       
    4. obtkamer

      obtkamer New Member

      Joined:
      May 27, 2014
      Messages:
      261
      Likes Received:
      4
      Trophy Points:
      0
      so, mulligan works, can now push the v113.2 update:
      - working mulligan (see how to use below)
      - some fixes with lifetap and rush-version
      - other stuff you will not notice :D


      how to write my own _mulligan.txt file?

      install place:
      after installing the uai,
      open your hearthbuddy folder and go to "HRTBUDDY-FOLDER/CustomDecks/Silverfish/Data" folder.
      Inside, there should be the a carddb.txt-file.
      this is the right place to create a new txt-file and rename it to "_mulligan.txt" !

      open this created "_mulligan.txt" file with an txt-editor of your choice, and you are rdy
      to start creating your own mulligan rules.

      a typical line of a mulligan file will look like this:
      hold;mage;all;CS2_189:1,CS2_106,CS2_222;3
      or
      discard;all;druid;CS2_108,CS2_222,CS2_112;4

      explanation:

      lets take this as an example:
      hold;mage;all;CS2_106,CS2_189:1,CS2_222;3

      the first word can be "hold" or "discard" which tells the ai,
      whether you want to hold the following cards or discards them.

      after this keyword (hold or discard) you have to write a ";" !

      the second item is the own class you will be using for the following rule.
      in our example, the rule in this line will be only used, whether you are using a mage.

      here is a list, which word you can use (instead of mage):
      all, hunter, priest, druid, warlock, thief, pala, warrior, shaman or mage.
      if you use the word "all" instead of a class-name, the own selected hero doesnt matter,
      the rule will be used for every class!

      the third item (which stands right behind an ";") is the name of the enemy-class, which you are facing.
      you can use this words again:
      all, hunter, priest, druid, warlock, thief, pala, warrior, shaman or mage.
      if you use the word "all" instead of a class-name, the class of the enemy hero doesnt matter,
      the rule will be used against every class!

      so the 4th "item" which is seperated by ";" is the list of the cards-id's, we want to hold/discard.
      in our case:
      CS2_106,CS2_189:1,CS2_222


      NOTE: you find the card-id in the carddb.txt-file! (search for the name and and a few lines above it you will find such a line:
      <Entity version="2" CardID="XXX-XXXX"> the XXX-XXXX is the cardid you are looking for!

      to create such a list, you have to follow this rules:
      - consider upper and lower case!
      - each card you want to hold/discard is seperated by a comma! like CS2_106,CS2_189,CS2_222

      - for HOLD-rules, (a line which starts with the word "hold"), you are able to specific
      how mutch cards should be holded, by adding ":1" (if you want to hold just one card of this specific card)
      or ":2" (if you want to hold two cards of this specific card) right after the card-id!
      (if you dont write :1 or :2 after the card id, the ai will hold 2 cards in the starthand!)
      so this line:
      hold;all;all;CS2_189:1
      will discard one Elven Archer (CS2_189), whether you got two of them in your starting hand!

      - also for HOLD-rules: you are able to add "condition-cards" for holding the specific card,
      by adding ":" and the cardid(s) you want in starting-hand, for keeping the selected card!
      example:
      hold;all;all;CS2_088:1:CS2_087
      will hold the card CS2_088 (guadian of kings) (one time), only if you also got a CS2_087 (blessing of might) in the starting hand.
      so if you dont hold a blessing of might, "hold;all;all;CS2_088:1:CS2_087" will discard all guardian of kings!
      Attention: this option requires the declaration of the number of cards you want to hold!
      so CS2_088:CS2_087 this is forbidden!!! write CS2_088:2:CS2_087 instead!
      if you want to hold the card CS2_088 whether you also hold a blessing of might (CS2_087) OR a holy light (CS2_089)
      just seperate them (condition-cards) with a "/". example:
      CS2_088:1:CS2_087/CS2_089
      (you can add as many "condition-cards" as you want, like CS2_088:1:CS2_087/CS2_088/CS2_089/...)

      this allows to add rules like "hold card a and card b ONLY if you have all two of them, elsewise discard the card you are holding"_
      CS2_222:1:EX1_019,EX1_019:1:CS2_222,...
      will hold CS2_222 only if you also have the EX1_019 on starting hand, and reverse. so you need both cards to hold them.

      and the last "item" seperated by a ";" is just a number (in oure example a 3):
      this adds the ability for HOLD-rules, to hold cards with LESS OR EQUAL manacosts,
      or discard them (for DISCARD-rules) whether they have HIGHER OR EQUAL manacosts!
      example:
      hold;all;all;CS2_222:1,EX1_019;2
      this line will hold all cards with mana <=2 AND the one stormwind-champion and 2 shattered sun cleric's (if you have them in the starting hand)
      (
      this mana-border is OPTIONAL, you dont have to add this!
      so just use
      hold;mage;all;CS2_106,CS2_189:1,CS2_222
      instead of
      hold;mage;all;CS2_106,CS2_189:1,CS2_222;3
      whether u dont want to use this mana-border

      BUT if you want to add only a mana-border, (example 3 mana)
      you have to write:
      hold;all;all;;3
      [it needs 4 ";" before the mana-border]
      )

      Note: atm after you create a rule for class a, but you are boting with class b, but you dont made any rule for that hero,
      the ai will use a simple defaulte rule for mulligan.



      if this is to cryptical and you know c#, just change the HBMulligan-class yourself!
       
    5. obtkamer

      obtkamer New Member

      Joined:
      May 27, 2014
      Messages:
      261
      Likes Received:
      4
      Trophy Points:
      0
      update v113.3:
      -fixed mulligan-rules :D
       
    6. picsa2

      picsa2 New Member

      Joined:
      Sep 28, 2014
      Messages:
      14
      Likes Received:
      0
      Trophy Points:
      0
      obtkamer you are miracle mate. one question i never tried druid with bot. is it playable, i saw people complaining about cards with two choices.
       
    7. azarielrdm

      azarielrdm Member

      Joined:
      Apr 13, 2014
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      6
      What does this stuff do? Is there a post that explains it so we can tweak the settings? I've been playing with it but I don't even know what ballpark values are best for enemy turn sim and all that.

      // play with these settings###################################
      int enfacehp = 15; // hp of enemy when your hero is allowed to attack the enemy face with his weapon
      int mxwde = 5000; // numer of boards which are taken to the next deep-lvl
      int twotsamount = 100; // number of boards where the next turn is simulated
      bool enemySecondTurnSim = true; // if he simulates the next players-turn, he also simulates the enemys respons

      bool playaround = true; //play around some enemys aoe-spells?
      //these two probs are >= 0 and <= 100
      int playaroundprob = 50; //probability where the enemy plays the aoe-spell, but your minions will not die through it
      int playaroundprob2 = 80; // probability where the enemy plays the aoe-spell, and your minions can die!
      this.useExternalProcess = false; // use silver.exe for calculations a lot faster than turning it off (true = recomended)

      int amountBoardsInEnemyTurnSim = 20;
      int amountBoardsInEnemySecondTurnSim = 20;

      int nextturnsimDeep = 6;
      int nextturnsimMaxWidth = 10;
      int nexttunsimMaxBoards = 50;

      bool secrets = true; // playing arround enemys secrets
      //###########################################################
       
    8. azarielrdm

      azarielrdm Member

      Joined:
      Apr 13, 2014
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      6
    9. azarielrdm

      azarielrdm Member

      Joined:
      Apr 13, 2014
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      6
      I think I messed up the hold line. Trying to keep only one nerubian egg but i think it's interpreting it as throw away everything but one egg?
       
    10. obtkamer

      obtkamer New Member

      Joined:
      May 27, 2014
      Messages:
      261
      Likes Received:
      4
      Trophy Points:
      0
      jeah, since hold-lines have a higher priority than discard-lines, the ai will discard all cards with manacost >1 (due to your hold line) and the cards you wrote in your discard line.

      and for the settings, i copy a explanaition from the other forum (so that you know how the ai works, and what the settings do):

      we are starting with one board, the current board, with your current mana, cards, minion on board and all the stuff you can see.

      ai is taking this board, and doing all the actions, you could do with this board:
      play card a, card b, attack with minion x the enemy minion y, attack with minion x the enemy minion z, attack with minion x the enemy hero, use your ability (and maybe target to something)
      each of these actions creates a new board. one board, where you played card a. one board where you played card b...and so on.
      so our begining board has get some childs.

      in the next level of calculation, we are taking these childs, and with every child, we are making the same stuff, we was making with the first board. some actions arent allowed this time (you cant play card a twice, because you only have it once, or you cant play card b, because of lacking mana, or you cant attack twice with the minion). so every child get also parents, and produces his own childrens.
      but after some "generations" there are too many childs of the childs of the childs of the... of the childs of the starting board, that we cant calculate them all (or your turntimer would be end/ your computer will melt/ you will die at the age of 90).
      so after our childs became parents and get some new childs, we take these new childs, and only take the best 3000 (maxwide) ones. so we make sure, that the next generation isnt growing to mutch!
      example:
      10000 parents -> produce 300.000 childs (30 childs each) without contraceptive and stuff these childs would produce 9.000.000 childs and these will produce 270.000.000 childs...
      but if we only select the 3000 best childs they will only make 90.000 new childs. these 90.000 childs of the elite childs, are also sorted, and the 3000 best childs, of the elite-childs are also produce only 90.000 childs.

      so the maxwide is our insurance, that the board-population dont explode.

      ------

      so, the mxwde (max-wide) number will affect, how many boards are keeped alive.

      the ai will simulate in the first phase the boards of your own current turn, and give each board a value (based on your minions, handcards and other stuff),
      then it will take the "twotsamount" (default 100) best boards of them, to calculate the enemys response to your actions and your response to that (your second turn). if you set "enemySecondTurnSim" to true, the enemy ai will also calculate the response of the enemy to your second-turn.

      for the enemys turn i only calculate the attacking of his minions / weapon, so i have only a setting for how many boards the ai is allowed to produce in the enemys turn (int amountBoardsInEnemyTurnSim = 20 and int amountBoardsInEnemySecondTurnSim = 20)

      if you activate "bool playaround = true;" the enemy will play some class-specific aoe-spells at the begin of his turn, if there are some conditions coplied (like he have to have enough mana, and the probability of having this aoe-spell in his hand, has to be above the given values (above the first one, to be non-deadly, above the second one, to be deadly))

      for your second turn, i have more settings for you:
      int nextturnsimDeep = 6; the deepness of the simulation (how many generations are generated) (in your first turn simulation, this value is set to 12), or better: the maximum amount of actions that are played in this turn.

      int nextturnsimMaxWidth = 10; same like mxwde (maxwide) in your mainturn, but only for your second turn.

      int nexttunsimMaxBoards = 50; the total amount of boards, that are generated in your second turn (in the first-turn-simulation, this value is infinite)


      bool secrets = true; this will simulate secrets for the enemy, but its not recommended yet (ai will be to careful). (so set it to false)
       
    11. clarkgaybeul

      clarkgaybeul New Member

      Joined:
      Jan 10, 2012
      Messages:
      181
      Likes Received:
      0
      Trophy Points:
      0
      Hello,

      I have a problem, I'm following the instructions here do not work properly .....

      Download:
      https://github.com/noHero123/silverf....zip?raw=truee

      or use https://github.com/noHero123/silverfish/trunk/HrtBddy for svn checkout

      Install instructions:
      Load the rar-file and copy the Silverfish-folder into the CustomDecks-folder <<<<<<<<<< OK

      If everything works well, you should show the two new custom decks in you dropdown list :

      -2014-07-11-08_38_40-eva-884-726-835-teamviewer-licence-gratuite-seulement-pour-lutilisat-png <<<<<<<<<< OK

      Then you can choose one of the two behaviors (Rush for rush-decks, Control for board-control decks)
      in your Hearthbuddy.

      Control will focus on clearing the board
      Rush will focus on attacking the enemy directly


      Note : This custom deck works for Hearthbuddy versions >= .82 <<<<<<<<<< NOT OK my hearstone Version is 0.2.445.97

      Source:
      https://github.com/noHero123/silverfish (the repo after the rewrite) <<<<<<<<<< I do not understand what's the point, and when I need to use
      https://github.com/noHero123/HRCustomClasses (for Hearthbuddy release, look at HrtBddy folder) <<<<<<<<<< I do not understand what's the point, and when I need to use,and where I need to install

      could you explain in more detail please? ty
       
    12. obtkamer

      obtkamer New Member

      Joined:
      May 27, 2014
      Messages:
      261
      Likes Received:
      4
      Trophy Points:
      0
      Note : This custom deck works for Hearthbuddy versions >= .82 <<<<<<<<<< NOT OK my hearstone Version is 0.2.445.97

      its ok, you installed version .97 :D

      so select the silverfish_contol ai and start the bot!

      the two links for source are only for developers, that want to change the ai.
       
    13. azarielrdm

      azarielrdm Member

      Joined:
      Apr 13, 2014
      Messages:
      64
      Likes Received:
      0
      Trophy Points:
      6
    14. clarkgaybeul

      clarkgaybeul New Member

      Joined:
      Jan 10, 2012
      Messages:
      181
      Likes Received:
      0
      Trophy Points:
      0
      thanks :)
       
    15. dokbishop

      dokbishop New Member

      Joined:
      Jun 10, 2012
      Messages:
      14
      Likes Received:
      0
      Trophy Points:
      0
      I followed the instructions on the first post, I am having a bit of an issue, the control and rush options never show up, and to make things worse, if i force start the bot using 1 of the 2 scrips, the bot goes crazy with warlock decks and proceeds to lifetap like crazy

      ive reinstalled the bot a few times, still no dice.
       
    16. Endus

      Endus Community Developer

      Joined:
      Jul 9, 2012
      Messages:
      458
      Likes Received:
      6
      Trophy Points:
      18
      Warsong Commander - The card has an aura that makes your low cost minions gain charge after they're played. However, the bot ends the turn before attacking with the minion (it checks too fast and sees no actions left to perform because it takes a second for the minion to gain charge).

      Dunno if that can be resolved with an AI change or not. Probably already been reported but thought I'd throw it in just in case. :)

      EDIT: I went digging through my logs and I believe I found the play it happened. It's a long one, but the main thing to note is that the enemy hero was open to attack (as can be seen by the Warsong Commander attacking Garrosh in the first calculation) yet the Murlock Tidecaller was played and never used to attack him (I was watching and it ended the turn right after playing him). The Murloc has "rdy:False" at the end of the log even though the Warsong Commander was giving it charge.

      Code:
      #######################################################################
      start calculations, current time: 14:48:47:4508 V113.3 rush 3000 face 15 ets 20 simEnemy2Turn ents 20
      #######################################################################
      mana 9/9
      emana 9
      own secretsCount: 0
      enemy secretsCount: 0 ;
      player:
      0 0 0 1
      ownhero:
      warrior 21 30 0 False False 4 True 0 False 0 0
      weapon: 0 0 unknown
      ability: True CS2_102
      osecrets: 
      enemyhero:
      warrior 13 30 0 False False 36
      weapon: 0 0 unknown
      ability: true CS2_102
      fatigue: 17 0 18 0
      OwnMinions:
      warsongcommander EX1_084 zp:1 e:30 A:2 H:2 mH:3 rdy:True natt:0
      harvestgolem EX1_556 zp:2 e:6 A:2 H:2 mH:3 rdy:True natt:0 chrg(1)
      EnemyMinions:
      spitefulsmith CS2_221 zp:1 e:41 A:4 H:5 mH:6 rdy:False ex ptt
      crueltaskmaster EX1_603 zp:2 e:47 A:2 H:1 mH:2 rdy:False ex ptt
      Own Handcards: 
      pos 1 cairnebloodhoof 6 entity 9 EX1_110
      pos 2 murloctidecaller 1 entity 22 EX1_509
      Enemy cards: 4
      ownDiedMinions: 
      enemyDiedMinions: 
      og: 675,1;502,2;171,1;298,1;389,2;206,2;433,2;284,1;758,1;626,1;104,1;
      eg: 291,1;209,2;869,1;105,1;421,1;298,1;756,1;
      recalc-check###########
      mana changed 9 -100 9 8 9 8
      Leathal-check###########
      ailoop
      deep 0 len 4 dones 1
      cut to len 4
      ailoop
      deep 1 len 9 dones 2
      cut to len 6
      ailoop
      deep 2 len 10 dones 3
      cut to len 7
      ailoop
      deep 3 len 10 dones 4
      cut to len 7
      ailoop
      deep 4 len 8 dones 5
      cut to len 6
      ailoop
      deep 5 len 6 dones 6
      cut to len 6
      -------------------------------------
      value of best board 20
      missing dmg to lethal 8
      attacker: 30 enemy: 36
      
      play id 22 pos 2
      
      attacker: 22 enemy: 36
      
      attacker: 6 enemy: 36
      
      useability 
      
      calculated 0.0760043
      no lethal, do something random######
      ailoop
      deep 0 len 7 dones 1
      cut to len 7
      ailoop
      deep 1 len 34 dones 2
      cut to len 26
      ailoop
      deep 2 len 105 dones 3
      cut to len 64
      ailoop
      deep 3 len 205 dones 4
      cut to len 108
      ailoop
      deep 4 len 271 dones 5
      cut to len 125
      ailoop
      deep 5 len 233 dones 6
      cut to len 88
      ailoop
      deep 6 len 94 dones 7
      cut to len 31
      ailoop
      deep 7 len 8 dones 8
      cut to len 8
      -------------------------------------
      value of best board -8
      attacker: 30 enemy: 36
      
      attacker: 6 enemy: 41
      
      play id 22 pos 1
      
      play id 9 pos 2
      
      attacker: 22 enemy: 41
      
      attacker: 1000 enemy: 41
      
      useability 
      
      calculated 0.1290074
      attacker: 30 enemy: 36
      
      minion attack: Warsong Commander target: Garrosh Hellscream
      #######################################################################
      #######################################################################
      start calculations, current time: 14:48:51:2611 V113.3 rush 3000 face 15 ets 20 simEnemy2Turn ents 20
      #######################################################################
      mana 9/9
      emana 9
      own secretsCount: 0
      enemy secretsCount: 0 ;
      player:
      0 0 0 1
      ownhero:
      warrior 21 30 0 False False 4 True 0 False 0 0
      weapon: 0 0 unknown
      ability: True CS2_102
      osecrets: 
      enemyhero:
      warrior 11 30 0 False False 36
      weapon: 0 0 unknown
      ability: true CS2_102
      fatigue: 17 0 18 0
      OwnMinions:
      warsongcommander EX1_084 zp:1 e:30 A:2 H:2 mH:3 rdy:False natt:1 ex
      harvestgolem EX1_556 zp:2 e:6 A:2 H:2 mH:3 rdy:True natt:0 chrg(1)
      EnemyMinions:
      spitefulsmith CS2_221 zp:1 e:41 A:4 H:5 mH:6 rdy:False ex ptt
      crueltaskmaster EX1_603 zp:2 e:47 A:2 H:1 mH:2 rdy:False ex ptt
      Own Handcards: 
      pos 1 cairnebloodhoof 6 entity 9 EX1_110
      pos 2 murloctidecaller 1 entity 22 EX1_509
      Enemy cards: 4
      ownDiedMinions: 
      enemyDiedMinions: 
      og: 675,1;502,2;171,1;298,1;389,2;206,2;433,2;284,1;758,1;626,1;104,1;
      eg: 291,1;209,2;869,1;105,1;421,1;298,1;756,1;
      recalc-check###########
      noRecalcNeeded!!!-----------------------------------
      nmgsim-
      nmgsime-
      attacker: 6 enemy: 41
      
      minion attack: Harvest Golem target: Spiteful Smith
      #######################################################################
      #######################################################################
      start calculations, current time: 14:48:54:8893 V113.3 rush 3000 face 15 ets 20 simEnemy2Turn ents 20
      #######################################################################
      mana 9/9
      emana 9
      own secretsCount: 0
      enemy secretsCount: 0 ;
      player:
      0 0 0 1
      ownhero:
      warrior 21 30 0 False False 4 True 0 False 0 0
      weapon: 0 0 unknown
      ability: True CS2_102
      osecrets: 
      enemyhero:
      warrior 11 30 0 False False 36
      weapon: 0 0 unknown
      ability: true CS2_102
      fatigue: 17 0 18 0
      OwnMinions:
      warsongcommander EX1_084 zp:1 e:30 A:2 H:2 mH:3 rdy:False natt:1 ex
      EnemyMinions:
      spitefulsmith CS2_221 zp:1 e:41 A:4 H:3 mH:6 rdy:False ex ptt
      crueltaskmaster EX1_603 zp:2 e:47 A:2 H:1 mH:2 rdy:False ex ptt
      Own Handcards: 
      pos 1 cairnebloodhoof 6 entity 9 EX1_110
      pos 2 murloctidecaller 1 entity 22 EX1_509
      Enemy cards: 4
      ownDiedMinions: EX1_556,6;
      enemyDiedMinions: 
      og: 675,1;502,2;171,1;298,1;389,2;206,2;433,2;284,1;758,1;626,1;104,1;
      eg: 291,1;209,2;869,1;105,1;421,1;298,1;756,1;
      recalc-check###########
      minions count or hand changed
      Leathal-check###########
      ailoop
      deep 0 len 3 dones 1
      cut to len 3
      ailoop
      deep 1 len 5 dones 2
      cut to len 4
      ailoop
      deep 2 len 5 dones 3
      cut to len 4
      ailoop
      deep 3 len 4 dones 4
      cut to len 4
      -------------------------------------
      value of best board 11
      missing dmg to lethal 10
      play id 22 pos 2
      
      attacker: 22 enemy: 36
      
      useability 
      
      calculated 0.0520029
      no lethal, do something random######
      ailoop
      deep 0 len 4 dones 1
      cut to len 4
      ailoop
      deep 1 len 11 dones 2
      cut to len 9
      ailoop
      deep 2 len 22 dones 3
      cut to len 12
      ailoop
      deep 3 len 17 dones 4
      cut to len 8
      ailoop
      deep 4 len 5 dones 5
      cut to len 5
      -------------------------------------
      value of best board -27
      play id 9 pos 2
      
      play id 22 pos 2
      
      attacker: 22 enemy: 36
      
      useability 
      
      calculated 0.0630036
      play id 9 pos 2
      
      play: Cairne Bloodhoof choice: 0
      should place minion right of your first minion (1 1) 
      #######################################################################
      #######################################################################
      start calculations, current time: 14:48:59:1735 V113.3 rush 3000 face 15 ets 20 simEnemy2Turn ents 20
      #######################################################################
      mana 3/9
      emana 9
      own secretsCount: 0
      enemy secretsCount: 0 ;
      player:
      1 1 0 1
      ownhero:
      warrior 21 30 0 False False 4 True 0 False 0 0
      weapon: 0 0 unknown
      ability: True CS2_102
      osecrets: 
      enemyhero:
      warrior 11 30 0 False False 36
      weapon: 0 0 unknown
      ability: true CS2_102
      fatigue: 17 0 18 0
      OwnMinions:
      warsongcommander EX1_084 zp:1 e:30 A:2 H:2 mH:3 rdy:False natt:1 ex
      damagedgolem skele21 zp:2 e:79 A:2 H:1 mH:1 rdy:True natt:0 ptt chrg(1)
      cairnebloodhoof EX1_110 zp:3 e:9 A:4 H:5 mH:5 rdy:False natt:0 ex ptt
      EnemyMinions:
      spitefulsmith CS2_221 zp:1 e:41 A:4 H:3 mH:6 rdy:False ex ptt
      crueltaskmaster EX1_603 zp:2 e:47 A:2 H:1 mH:2 rdy:False ex ptt
      Own Handcards: 
      pos 1 murloctidecaller 1 entity 22 EX1_509
      Enemy cards: 4
      ownDiedMinions: EX1_556,6;
      enemyDiedMinions: 
      og: 675,1;502,2;171,1;298,1;389,2;206,2;433,2;284,1;758,1;626,1;104,1;
      eg: 291,1;209,2;869,1;105,1;421,1;298,1;756,1;
      recalc-check###########
      minions count or hand changed
      Leathal-check###########
      ailoop
      deep 0 len 4 dones 1
      cut to len 4
      ailoop
      deep 1 len 8 dones 2
      cut to len 5
      ailoop
      deep 2 len 7 dones 3
      cut to len 5
      ailoop
      deep 3 len 6 dones 4
      cut to len 5
      ailoop
      deep 4 len 5 dones 5
      cut to len 5
      -------------------------------------
      value of best board 34
      missing dmg to lethal 8
      play id 22 pos 3
      
      useability 
      
      attacker: 79 enemy: 36
      
      attacker: 22 enemy: 36
      
      calculated 0.0610035
      no lethal, do something random######
      ailoop
      deep 0 len 6 dones 1
      cut to len 6
      ailoop
      deep 1 len 16 dones 2
      cut to len 9
      ailoop
      deep 2 len 20 dones 3
      cut to len 14
      ailoop
      deep 3 len 20 dones 4
      cut to len 12
      ailoop
      deep 4 len 5 dones 5
      cut to len 5
      -------------------------------------
      value of best board -8
      attacker: 79 enemy: 41
      
      useability 
      
      play id 22 pos 2
      
      attacker: 22 enemy: 41
      
      calculated 0.0670038
      attacker: 79 enemy: 41
      
      minion attack: Damaged Golem target: Spiteful Smith
      #######################################################################
      #######################################################################
      start calculations, current time: 14:49:02:9317 V113.3 rush 3000 face 15 ets 20 simEnemy2Turn ents 20
      #######################################################################
      mana 3/9
      emana 9
      own secretsCount: 0
      enemy secretsCount: 0 ;
      player:
      1 1 0 1
      ownhero:
      warrior 21 30 0 False False 4 True 0 False 0 0
      weapon: 0 0 unknown
      ability: True CS2_102
      osecrets: 
      enemyhero:
      warrior 11 30 0 False False 36
      weapon: 0 0 unknown
      ability: true CS2_102
      fatigue: 17 0 18 0
      OwnMinions:
      warsongcommander EX1_084 zp:1 e:30 A:2 H:2 mH:3 rdy:False natt:1 ex
      cairnebloodhoof EX1_110 zp:2 e:9 A:4 H:5 mH:5 rdy:False natt:0 ex ptt
      EnemyMinions:
      spitefulsmith CS2_221 zp:1 e:41 A:4 H:1 mH:6 rdy:False ex ptt
      crueltaskmaster EX1_603 zp:2 e:47 A:2 H:1 mH:2 rdy:False ex ptt
      Own Handcards: 
      pos 1 murloctidecaller 1 entity 22 EX1_509
      Enemy cards: 4
      ownDiedMinions: EX1_556,6;skele21,79;
      enemyDiedMinions: 
      og: 675,1;502,2;171,1;298,1;389,2;206,2;433,2;284,1;758,1;626,1;104,1;
      eg: 291,1;209,2;869,1;105,1;421,1;298,1;756,1;
      recalc-check###########
      noRecalcNeeded!!!-----------------------------------
      nmgsim-
      nmgsime-
      useability 
      
      use ablitiy: Armor Up! target nothing
      #######################################################################
      #######################################################################
      start calculations, current time: 14:49:07:0140 V113.3 rush 3000 face 15 ets 20 simEnemy2Turn ents 20
      #######################################################################
      mana 1/9
      emana 9
      own secretsCount: 0
      enemy secretsCount: 0 ;
      player:
      1 1 0 1
      ownhero:
      warrior 21 30 2 False False 4 True 0 False 0 0
      weapon: 0 0 unknown
      ability: False CS2_102
      osecrets: 
      enemyhero:
      warrior 11 30 0 False False 36
      weapon: 0 0 unknown
      ability: true CS2_102
      fatigue: 17 0 18 0
      OwnMinions:
      warsongcommander EX1_084 zp:1 e:30 A:2 H:2 mH:3 rdy:False natt:1 ex
      cairnebloodhoof EX1_110 zp:2 e:9 A:4 H:5 mH:5 rdy:False natt:0 ex ptt
      EnemyMinions:
      spitefulsmith CS2_221 zp:1 e:41 A:4 H:1 mH:6 rdy:False ex ptt
      crueltaskmaster EX1_603 zp:2 e:47 A:2 H:1 mH:2 rdy:False ex ptt
      Own Handcards: 
      pos 1 murloctidecaller 1 entity 22 EX1_509
      Enemy cards: 4
      ownDiedMinions: EX1_556,6;skele21,79;
      enemyDiedMinions: 
      og: 675,1;502,2;171,1;298,1;389,2;206,2;433,2;284,1;758,1;626,1;104,1;
      eg: 291,1;209,2;869,1;105,1;421,1;298,1;756,1;
      recalc-check###########
      noRecalcNeeded!!!-----------------------------------
      nmgsim-
      nmgsime-
      play id 22 pos 2
      
      play: Murloc Tidecaller choice: 0
      should place minion right of your first minion (1 2) 
      #######################################################################
      #######################################################################
      start calculations, current time: 14:49:11:1092 V113.3 rush 3000 face 15 ets 20 simEnemy2Turn ents 20
      #######################################################################
      mana 0/9
      emana 9
      own secretsCount: 0
      enemy secretsCount: 0 ;
      player:
      2 2 0 1
      ownhero:
      warrior 21 30 2 False False 4 True 0 False 0 0
      weapon: 0 0 unknown
      ability: False CS2_102
      osecrets: 
      enemyhero:
      warrior 11 30 0 False False 36
      weapon: 0 0 unknown
      ability: true CS2_102
      fatigue: 17 0 18 0
      OwnMinions:
      warsongcommander EX1_084 zp:1 e:30 A:2 H:2 mH:3 rdy:False natt:1 ex
      murloctidecaller EX1_509 zp:2 e:22 A:1 H:2 mH:2 rdy:False natt:0 ptt
      cairnebloodhoof EX1_110 zp:3 e:9 A:4 H:5 mH:5 rdy:False natt:0 ex ptt
      EnemyMinions:
      spitefulsmith CS2_221 zp:1 e:41 A:4 H:1 mH:6 rdy:False ex ptt
      crueltaskmaster EX1_603 zp:2 e:47 A:2 H:1 mH:2 rdy:False ex ptt
      Own Handcards: 
      Enemy cards: 4
      ownDiedMinions: EX1_556,6;skele21,79;
      enemyDiedMinions: 
      og: 675,1;502,2;171,1;298,1;389,2;206,2;433,2;284,1;758,1;626,1;104,1;
      eg: 291,1;209,2;869,1;105,1;421,1;298,1;756,1;
      recalc-check###########
      ownminions changed
      Leathal-check###########
      ailoop
      deep 0 len 1 dones 1
      cut to len 1
      -------------------------------------
      value of best board 25
      missing dmg to lethal 11
      calculated 0.0130007
      no lethal, do something random######
      ailoop
      deep 0 len 1 dones 1
      cut to len 1
      -------------------------------------
      value of best board -25
      calculated 0.0120007
      #######################################################################
       
      Last edited: Oct 17, 2014
    17. obtkamer

      obtkamer New Member

      Joined:
      May 27, 2014
      Messages:
      261
      Likes Received:
      4
      Trophy Points:
      0
      @azarielrdm this setting:
      int twotsamount = 200; // number of boards where the next turn is simulated
      is to low in your cs-file.
      change it to 1000.

      @Endus jeah, your digging was correct! the ai got the wrong data (buffing was to slow) so it recalculated the move and ended the turn. (orginally it wanted to attack with the murloc)
       
    18. obtkamer

      obtkamer New Member

      Joined:
      May 27, 2014
      Messages:
      261
      Likes Received:
      4
      Trophy Points:
      0
      update v113.4:
      - added lots of changes from Giswald (dont be mad, i didnt like the whole autogenerated comments :) )
      - lots of fixes (like: fixed near-death calculations, faceless, use of coin at start, ...)
      - added a setting to change the impact of the second-turn simulation (default is 50, a value of 0 will ignore the calculations made in second turn, a value of 100 will ignore the first round simulation. formula: value of board = 0.5 * value of board from first turn simulation + 0.5 * value of board from second turn simulation) (in hearthbuddy its the line int alpha = 50; that musst be changed in the .cs file)
       
    19. FaveN

      FaveN Member

      Joined:
      Jun 1, 2014
      Messages:
      220
      Likes Received:
      1
      Trophy Points:
      18
      The svn link seems like broken is there a new one or am i doing something wrong?

      EDIT: I think i also found a bug if you could take a look into the logs and mabye tell me if iam doing something wrong or the "action" is just bugged in the current version that would be nice.

      Setup: Newest Version of the AI, Rush-mode

      View attachment Bot 3392 2014-10-17 17.18.txt
       
      Last edited: Oct 17, 2014
    20. obtkamer

      obtkamer New Member

      Joined:
      May 27, 2014
      Messages:
      261
      Likes Received:
      4
      Trophy Points:
      0
      @FaveN can you post this: ...\CustomDecks\Silverfish\UltimateLogs\UILogg_2014-10-17_17-26-01.txt ?
       

    Share This Page