update v113.9: -fixed secret check - fixed windfury @sugar it does "stupid" plays sometime, because there are to many possibilities, just to make the result of the second turn simulation better . (ai has only a limited amount of board-simulation for the second-turn-simulation, so less cards will result in deeper analysis of the board) but i forbid to use the windfury on enemys now.
Sunfury Protector is placed in the corner instead the middle to give taunt for both minions Code: ####################################################################### start calculations, current time: 14:32:51:0942 V113.8 control 3000 face 15 ets 40 ets2 20 ents 20 ####################################################################### mana 2/10 emana 10 own secretsCount: 0 enemy secretsCount: 0 ; player: 1 2 0 1 ownhero: pala 30 30 0 False False 4 True 0 False 0 0 weapon: 0 0 unknown ability: True CS2_101 osecrets: enemyhero: warrior 11 30 1 False False 36 weapon: 2 1 battleaxe ability: true CS2_102 fatigue: 14 0 15 0 OwnMinions: aldorpeacekeeper EX1_382 zp:1 e:13 A:4 H:4 mH:4 rdy:False natt:1 ex stormwindchampion CS2_222 zp:2 e:30 A:6 H:6 mH:6 rdy:False natt:0 ex ptt gadgetzanauctioneer EX1_095 zp:3 e:35 A:9 H:8 mH:9 rdy:True natt:0 EnemyMinions: arathiweaponsmith EX1_398 zp:1 e:50 A:3 H:2 mH:3 rdy:True ex wargolem CS2_186 zp:2 e:56 A:1 H:7 mH:7 rdy:False ex ptt Own Handcards: pos 1 lordofthearena 6 entity 8 CS2_162 pos 2 razorfenhunter 3 entity 15 CS2_196 pos 3 sunfuryprotector 2 entity 25 EX1_058 Enemy cards: 3 ownDiedMinions: enemyDiedMinions: og: 34,1;136,1;782,1;70,2;59,1;249,1;510,1;766,1;747,1; eg: 411,1;558,1;298,1;45,1;109,1;136,1;831,1;337,1;232,1;822,1; recalc-check########### noRecalcNeeded!!!----------------------------------- nmgsim- nmgsime- play id 25 pos 1 play: Sunfury Protector choice: 0 should place minion left of your first minion (0 3) ####################################################################### ####################################################################### start calculations, current time: 14:32:56:4746 V113.8 control 3000 face 15 ets 40 ets2 20 ents 20 ####################################################################### mana 0/10 emana 10 own secretsCount: 0 enemy secretsCount: 0 ; player: 2 3 0 1 ownhero: pala 30 30 0 False False 4 True 0 False 0 0 weapon: 0 0 unknown ability: True CS2_101 osecrets: enemyhero: warrior 11 30 1 False False 36 weapon: 2 1 battleaxe ability: true CS2_102 fatigue: 14 0 15 0 OwnMinions: sunfuryprotector EX1_058 zp:1 e:25 A:3 H:4 mH:4 rdy:False natt:0 ex ptt aldorpeacekeeper EX1_382 zp:2 e:13 A:4 H:4 mH:4 rdy:False natt:1 ex tnt stormwindchampion CS2_222 zp:3 e:30 A:6 H:6 mH:6 rdy:False natt:0 ex ptt gadgetzanauctioneer EX1_095 zp:4 e:35 A:9 H:8 mH:9 rdy:True natt:0 EnemyMinions: arathiweaponsmith EX1_398 zp:1 e:50 A:3 H:2 mH:3 rdy:True ex wargolem CS2_186 zp:2 e:56 A:1 H:7 mH:7 rdy:False ex ptt Own Handcards: pos 1 lordofthearena 6 entity 8 CS2_162 pos 2 razorfenhunter 3 entity 15 CS2_196 Enemy cards: 3 ownDiedMinions: enemyDiedMinions: og: 34,1;136,1;782,1;70,2;59,1;249,1;510,1;766,1;747,1; eg: 411,1;558,1;298,1;45,1;109,1;136,1;831,1;337,1;232,1;822,1; recalc-check########### noRecalcNeeded!!!----------------------------------- nmgsim- nmgsime- attacker: 35 enemy: 36 minion attack: Gadgetzan Auctioneer target: Garrosh Hellscream ####################################################################### ####################################################################### start calculations, current time: 14:33:01:3848 V113.8 control 3000 face 15 ets 40 ets2 20 ents 20 ####################################################################### mana 0/10 emana 10 own secretsCount: 0 enemy secretsCount: 0 ; player: 2 3 0 1 ownhero: pala 30 30 0 False False 4 True 0 False 0 0 weapon: 0 0 unknown ability: True CS2_101 osecrets: enemyhero: warrior 3 30 0 False False 36 weapon: 2 1 battleaxe ability: true CS2_102 fatigue: 14 0 15 0 OwnMinions: sunfuryprotector EX1_058 zp:1 e:25 A:3 H:4 mH:4 rdy:False natt:0 ex ptt aldorpeacekeeper EX1_382 zp:2 e:13 A:4 H:4 mH:4 rdy:False natt:1 ex tnt stormwindchampion CS2_222 zp:3 e:30 A:6 H:6 mH:6 rdy:False natt:0 ex ptt gadgetzanauctioneer EX1_095 zp:4 e:35 A:9 H:8 mH:9 rdy:False natt:1 ex EnemyMinions: arathiweaponsmith EX1_398 zp:1 e:50 A:3 H:2 mH:3 rdy:True ex wargolem CS2_186 zp:2 e:56 A:1 H:7 mH:7 rdy:False ex ptt Own Handcards: pos 1 lordofthearena 6 entity 8 CS2_162 pos 2 razorfenhunter 3 entity 15 CS2_196 Enemy cards: 3 ownDiedMinions: enemyDiedMinions: og: 34,1;136,1;782,1;70,2;59,1;249,1;510,1;766,1;747,1; eg: 411,1;558,1;298,1;45,1;109,1;136,1;831,1;337,1;232,1;822,1; recalc-check########### noRecalcNeeded!!!----------------------------------- Mind Control Tech is used whenever it's available, instead of waiting for the opponent to have at least 4 cards, or when neccessary Code: ####################################################################### start calculations, current time: 03:40:33:3497 V113.8 control 3000 face 15 ets 40 ets2 20 ents 20 ####################################################################### mana 3/3 emana 3 own secretsCount: 0 enemy secretsCount: 0 ; player: 0 0 0 1 ownhero: pala 29 30 0 False False 4 True 0 False 0 0 weapon: 0 0 unknown ability: True CS2_101 osecrets: enemyhero: hunter 30 30 0 False False 36 weapon: 0 0 unknown ability: true DS1h_292 fatigue: 23 0 24 0 OwnMinions: silverhandrecruit CS2_101t zp:1 e:69 A:1 H:1 mH:1 rdy:True natt:0 EnemyMinions: hauntedcreeper FP1_002 zp:1 e:41 A:1 H:2 mH:2 rdy:True ex rivercrocolisk CS2_120 zp:2 e:60 A:2 H:3 mH:3 rdy:False ex ptt Own Handcards: pos 1 mindcontroltech 3 entity 21 EX1_085 pos 2 holylight 2 entity 19 CS2_089 pos 3 equality 2 entity 10 EX1_619 pos 4 aldorpeacekeeper 3 entity 23 EX1_382 pos 5 thecoin 0 entity 68 GAME_005 pos 6 consecration 4 entity 13 CS2_093 pos 7 humility 1 entity 32 EX1_360 pos 8 humility 1 entity 24 EX1_360 Enemy cards: 4 ownDiedMinions: enemyDiedMinions: og: eg: recalc-check########### mana changed 3 -100 3 2 3 2 Leathal-check########### ailoop deep 0 len 8 dones 1 cut to len 8 ailoop deep 1 len 41 dones 2 cut to len 22 ailoop deep 2 len 74 dones 3 cut to len 28 ailoop deep 3 len 63 dones 4 cut to len 21 ailoop deep 4 len 29 dones 5 cut to len 11 ailoop deep 5 len 6 dones 6 cut to len 6 ------------------------------------- value of best board 23 missing dmg to lethal 29 attacker: 69 enemy: 36 useability calculated 0,4980285 no lethal, do something random###### ailoop deep 0 len 13 dones 1 cut to len 13 ailoop deep 1 len 89 dones 2 cut to len 51 ailoop deep 2 len 206 dones 3 cut to len 82 ailoop deep 3 len 222 dones 4 cut to len 77 ailoop deep 4 len 80 dones 5 cut to len 24 ailoop deep 5 len 6 dones 6 cut to len 6 ------------------------------------- value of best board -22 play id 21 pos 2 attacker: 69 enemy: 36 calculated 0,6240357 play id 21 pos 2 play: Mind Control Tech choice: 0 should place minion right of your first minion (1 1) ####################################################################### ####################################################################### start calculations, current time: 03:40:46:1294 V113.8 control 3000 face 15 ets 40 ets2 20 ents 20 ####################################################################### mana 0/3 emana 3 own secretsCount: 0 enemy secretsCount: 0 ; player: 1 1 0 1 ownhero: pala 29 30 0 False False 4 True 0 False 0 0 weapon: 0 0 unknown ability: True CS2_101 osecrets: enemyhero: hunter 30 30 0 False False 36 weapon: 0 0 unknown ability: true DS1h_292 fatigue: 23 0 24 0 OwnMinions: mindcontroltech EX1_085 zp:1 e:21 A:3 H:3 mH:3 rdy:False natt:0 ex ptt silverhandrecruit CS2_101t zp:2 e:69 A:1 H:1 mH:1 rdy:True natt:0 EnemyMinions: hauntedcreeper FP1_002 zp:1 e:41 A:1 H:2 mH:2 rdy:True ex rivercrocolisk CS2_120 zp:2 e:60 A:2 H:3 mH:3 rdy:False ex ptt Own Handcards: pos 1 holylight 2 entity 19 CS2_089 pos 2 equality 2 entity 10 EX1_619 pos 3 aldorpeacekeeper 3 entity 23 EX1_382 pos 4 thecoin 0 entity 68 GAME_005 pos 5 consecration 4 entity 13 CS2_093 pos 6 humility 1 entity 32 EX1_360 pos 7 humility 1 entity 24 EX1_360 Enemy cards: 4 ownDiedMinions: enemyDiedMinions: og: eg: recalc-check########### ownminions changed Leathal-check########### ailoop deep 0 len 3 dones 1 cut to len 3 ailoop deep 1 len 6 dones 2 cut to len 5 ailoop deep 2 len 7 dones 3 cut to len 5 ailoop deep 3 len 4 dones 4 cut to len 4 ------------------------------------- value of best board 32 missing dmg to lethal 29 attacker: 69 enemy: 36 calculated 0,2330133 no lethal, do something random###### ailoop deep 0 len 5 dones 1 cut to len 5 ailoop deep 1 len 10 dones 2 cut to len 7 ailoop deep 2 len 15 dones 3 cut to len 9 ailoop deep 3 len 4 dones 4 cut to len 4 ------------------------------------- value of best board -22 attacker: 69 enemy: 36 calculated 0,2340134 attacker: 69 enemy: 36 minion attack: Silver Hand Recruit target: Rexxar
i just deleted the silver.exe's in the hearth-crawler versions (cause i will not update them anymore). im not allowed to post links to the exe, but you might find one on my github-page
Hey obtkamer, when there's a new update for silverfish do we just delete our existing silverfish files in hearthbuddy and redownload from the github link?
anyone else problems with Paladin? HB stopps after the first Game and when try to use "The Coin" And Paladin Weapon cant played. Maybe i do something wrong, with Hunter/Priest/Warrior no Problem till now.
I changed few of these number but calculation speed almost the same ? // 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 = 3000; // numer of boards which are taken to the next deep-lvl int twotsamount = 0; // number of boards where the next turn is simulated bool enemySecondTurnSim = false; // if he simulates the next players-turn, he also simulates the enemys respons bool playaround = false; //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 = false; // playing arround enemys secrets int alpha = 50; // weight of the second turn in calculation (0<= alpha <= 100) Settings.Instance.simulatePlacement = false; // set this true, and ai will simulate all placements, whether you have a alpha/flametongue/argus //use it only with useExternalProcess = true !!!! ----------------------------- which number related to = Boards calculated each depth level .? which number related to = Childs board kept for next depth level search .? which number related to = Boards kept for enemy turn simulation .?
I was also wondering how you can increase the "thinking time" of the bot, like make him consider more options and all that, because I don't want to mess up the settings?
hi just a log showing the miss use of mind control tech played with no enemy cards on table can this be fixed to 4 thx alot
"this.useExternalProcess = false" Change this true and download "silver.exe" and run it when running your bot. This is my configuration =========================================== //using System.Linq; namespace Silverfish { public class Control : ICustomDeck { private int dirtyTargetSource = -1; private int stopAfterWins = 30; private int concedeLvl = 20; // the rank, till you want to concede private int dirtytarget = -1; private int dirtychoice = -1; private string choiceCardId = ""; DateTime starttime = DateTime.Now; Silverfish sf; bool enemyConcede = false; public bool learnmode = false; public bool printlearnmode = true; bool useExternalProcess = true; public bool passiveWaiting = false; Behavior behave = new BehaviorControl();//change this to new BehaviorRush() for rush mode //crawlerstuff bool isgoingtoconcede = false; int wins = 0; int loses = 0; public Control() { bool concede = false; bool writeToSingleFile = false; // 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 = 7000; // numer of boards which are taken to the next deep-lvl int twotsamount = 256; // 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 = true; // use silver.exe for calculations a lot faster than turning it off (true = recomended) int amountBoardsInEnemyTurnSim = 20; int amountBoardsInEnemyTurnSimSecondStepp = 200; int amountBoardsInEnemySecondTurnSim = 256; int nextturnsimDeep = 6; int nextturnsimMaxWidth = 10; int nexttunsimMaxBoards = 20; bool secrets = false; // playing arround enemys secrets int alpha = 50; // weight of the second turn in calculation (0<= alpha <= 100) Settings.Instance.simulatePlacement = false; // set this true, and ai will simulate all placements, whether you have a alpha/flametongue/argus //use it only with useExternalProcess = true !!!! //########################################################### ===========================================================================================
which number related to = Boards calculated each depth level .? which number related to = Childs board kept for next depth level search .? which number related to = Boards kept for enemy turn simulation .?
Hey~ My config was changed after posting it. Don't ask it my private message. Anyway it is better Settings.Instance.simulatePlacement = true Bot recalcualte at every action, much better than calculate once and place all.
@obtkamer Do you know why, when I select Silverfish.Rush option, silver.exe doesn't calculate moves? With Silverfish.Control it works flawlessly