What's new
  • Visit Rebornbuddy
  • Visit Panda Profiles
  • Visit LLamamMagic
  • Visit Resources
  • Visit Downloads
  • Visit Portal
RebornBuddy Forums

Register a free account today to become a member! Once signed in, you'll be able to participate on this site by adding your own topics and posts, as well as connect with other members through your own private inbox!

Hearthbuddy's Deck aka Silverfish AI aka Ultimate Ai

obtkamer

New Member
Joined
May 27, 2014
Messages
261
some updates:
-fixed crash with youthful brewmaster and mimironshead
-silverfish can now read settings from an settings.txt file can be found here: https://github.com/noHero123/silverf...r/settings.txt
-somewhere on my github-page you might find a silverfish.exe.config file which speeds up silver.exe (for developers: gcServer is used instead of the default one)
-some other fixes/tweaks

to install ai: follow instructions.txt in https://github.com/noHero123/silverfish/tree/master/HrtBddy


update v113.3:
https://www.thebuddyforum.com/heart...custom-deck-silverfish-ai-28.html#post1667060

update v112.4
- some tweaks with aoe-spells
- some other bugs

update v111.4
-some fixed (like better mana handling, give token-minions less value etc, full graveyard in log)

update v111.3:
- the use of the external process is turned off atm (next turn calculations are also turned off, to compensate the speedloss)
- silver.exe is deleted from hrtbuddy-svn-folder + zip
- some fixes

update v111:
- fixed some bugs
- added Enemy's response to your second turn simulation (default on (because of the next point))
- added external process (is used at default) will make the calculations more than 10 times faster!
YOU HAVE TO START IT MANUALLY (just start the Silver.exe in the CustomDecks\Silverfish\Data -folder and DONT CLOSE IT)
(i cant start external programms with the .cs-versions (atm))

update alpha 15:
- fixed bonus for killing minions that spawn other minions on death
- raised the value of every card from 1 to 5 (fixed the wasting of cards, whether they will buff a minion on your side )
- will not simulate the second turn, whether the enemy has lethal on that board

update alpha14:
- fixed board-comparison (will fix multiple use of the hero-power in one turn and other stuff)

update alpha13:
-tweaked multiturn simulation (new default value is 256) and the amount of calculated second turn-boards is halved every recalculation :D

update alpha12:
-changed two turn simulation: it will now only simulate the 2. turn of the 500(default) best boards. change the number by editing the .cs file:
change the number in the line:
Ai.Instance.setTwoTurnSimulation(false, 500);
(dont set it to high!!!!, set it to 0 to turn the second turn simulation off)

update alpha11:
-fixed shadow word pain
-fixed traps

update v110alpha10:
- rewrote a very big part of the ai

update v97:
- should not waste upgrade
- tweaked soulpriest
- lethal detection tweaks
- should not ignore bloodmage anymore
- tweaked mukla
- tweaked knifejuggler
- tweaked placing
- fixed manacalculations

update v94:
- fixed hero-power usage
- new option in advanced settings:
set the minimum probability for using the play-around-aoe-spells-feature:
simulation uses the enemy aoe-spells only, if the probability to have this aoe-spell in hand is higher, than the given border (a value from 0-100) (default 40)
-fixed placement with 4 minions

update v93:
fixed 2 turn simulation

update v92 (delete the old files):
- fixed weblord + spectral knight (did this a week ago, but was overwritten due to the new database ;_;)
- should fix ancestral spirit
- fixed windfury
- fixed sylvanas
- fixed buffing spells (and target nothing)
- fixed iceblock detection
- fixed blessing of might
- fixed discard penalty

update v91:
-should work like charme

update v81:
-some fixes due to last update
-very small enemy-turn-sim-speedup
-will draw cards whether enemy has lethal

update v80:
-enemy turn simulation is a lil bit faster
-fixed stealth-issues
-little tweak in control-board-evaluation

update v79:
-some tweaks for warrior

update v77:
- updated _mulligan rules:
- you will not attack with an sword of justice.
- warrior should attack first, then armor up
- should not spawn mobs, that spawn another mobs, whether these "kids" have no place on field
- fixed return to hand (enemy draws now a card ;D (so ai knows that destroying > return to hand))


https://github.com/noHero123/silverfish/blob/master/HrtBddy/Silverfish/Silverfish.zip?raw=truee
 
Last edited:
How do I compile the external process without the huge Program.cs that combines all the files?

I want to modify UAI but I don't want to restart hearthbuddy every time I make a change.
 
update v115.0:
-support for all (playable) BRM-cards! (like nax i dont support BRM-campain-cards)
-countless fixes and changes :D
-dont forget the updated carddb.txt file

to developers:
-easier way to compile the external process (not the hole data in one file anymore: it uses same file-structure like the project on github):
create a project out of the programm.cs file, add the ai + cards-folders to that project and it should compile!

hrtbuddy will not support all new cards-fully, because its missing data i need for simulation.

if you want to use my version:
-take the silverfish_HB.cs file from https://github.com/noHero123/silverfish/tree/master/HrtBddy
and copy it to your Hrtbuddy/Routines/defaultRoutine - folder (and replace the old one)
- take the ai+cards folder from https://github.com/noHero123/silverfish
and copy it to your Hrtbuddy/Routines/defaultRoutine/Silverfish - folder (and replace the old ones)
(didnt test it but it should work)

mfg
botmaker
 
nice thanks obtkamer I'll test this. I'm somewhat confused though. I thought the old silverfish is built into hearthbuddy now. Is this some sort of "new silverfish"?
 
nice thanks obtkamer I'll test this. I'm somewhat confused though. I thought the old silverfish is built into hearthbuddy now. Is this some sort of "new silverfish"?

hrtbuddy has his own copy/version of silverfish, with some changes that i dont wrote (like some fixes i wasnt aware). i'm only fixing stuff, if you guys post correct bugreports (with uailoggs included).
 
Ich nehm ma an du bist deutscher ^^ (wegen dem ueberladung in deinem script)

ich checks nich ich hab die 3 files kopiert aber hb gibt mir fehlermeldungen (compiler error) für die defaultroutine.cs , silverfish.cs usw

Compiler Error: d:\zeug\Hearthstone\Routines\DefaultRoutine\DefaultRoutine.cs(1103,27) : warning CS1998: In dieser Async-Method fehlen die 'await'-Operatoren, weshalb sie synchron ausgeführt wird. Sie sollten die Verwendung des 'await'-Operators oder von 'await Task.Run(...)' in Betracht ziehen, um auf nicht blockierende API-Aufrufe zu warten bzw. CPU-gebundene Aufgaben auf einem Hintergrundthread auszuführen.

als beispiel

glaub bin einfach zu blöd ^^

ok think i understand. this version is just for developers ?
 
Last edited:
@Muslix send ne a pn with the whole errorlog please :D (you can do it in german, but i would prefer writing english in this thread, because its an english forum ;P)
 
After following the instruction that you gave out, when I clicked start the bot, it showed: [NullRoutine] The NullRoutine should not be used. Please choose a different routine and Start the bot again.
 
Naxxramas, Heroic, Kel'Thuzad.

[GameplayScene_MAIN_ACTION] Waiting for our turn to fully start/end.
[GameplayScene_MAIN_ACTION_Friendly] Waiting to be in this state longer.
calculating stuff... 11:05:52.3348
[Tick] Exception during execution:Buddy.Coroutines.CoroutineUnhandledExcep tion: Exception was thrown by coroutine ---> System.NullReferenceException: 並未將物件參考設定為物件的執行個體。
於 HREngine.Bots.Playfield.minionGetDamageOrHeal(Mini on m, Int32 dmgOrHeal, Boolean dontDmgLoss) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ Playfield.cs: 行 4670
於 HREngine.Bots.Sim_NAX15_02H.onCardPlay(Playfield p, Boolean ownplay, Minion target, Int32 choice) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\car ds\Sim_NAX15_02H.cs: 行 23
於 HREngine.Bots.Playfield.playHeroPower(Minion target, Int32 penality, Boolean ownturn) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ Playfield.cs: 行 2562
於 HREngine.Bots.Playfield.doAction(Action aa) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ Playfield.cs: 行 2158
於 HREngine.Bots.EnemyTurnSimulator.simulateEnemysTur n(Playfield rootfield, Boolean simulateTwoTurns, Boolean playaround, Boolean print, Int32 pprob, Int32 pprob2) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ EnemyTurnSimulator.cs: 行 87
於 HREngine.Bots.MiniSimulator.startEnemyTurnSim(Play field p, Boolean simulateTwoTurns, Boolean print) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ MiniSimulator.cs: 行 103
於 HREngine.Bots.MiniSimulator.doallmoves(Playfield playf, Boolean isLethalCheck) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ MiniSimulator.cs: 行 228
於 HREngine.Bots.Ai.doallmoves(Boolean test, Boolean isLethalCheck) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ Ai.cs: 行 123
於 HREngine.Bots.Ai.dosomethingclever(Behavior bbase) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\Silverfish\ai\ Ai.cs: 行 310
於 HREngine.Bots.Silverfish.updateEverything(Behavior botbase, Boolean runExtern, Boolean passiveWait) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\silverfish_HB. cs: 行 215
於 HREngine.Bots.DefaultRoutine.<OurTurnLogic>d__1c.M oveNext() 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\DefaultRoutine .cs: 行 749
--- 先前擲回例外狀況之位置中的堆疊追蹤結尾 ---
於 System.Runtime.CompilerServices.TaskAwaiter.ThrowF orNonSuccess(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Handle NonSuccessAndDebuggerNotification(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.GetRes ult()
於 HREngine.Bots.DefaultRoutine.<Logic>d__3.MoveNext( ) 於 c:\Users\RockyChan\Downloads\Hearthbuddy 0.3.904.146\Routines\DefaultRoutine\DefaultRoutine .cs: 行 488
--- 先前擲回例外狀況之位置中的堆疊追蹤結尾 ---
於 System.Runtime.CompilerServices.TaskAwaiter.ThrowF orNonSuccess(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Handle NonSuccessAndDebuggerNotification(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Valida teEnd(Task task)
於 Triton.Bot.Logic.Bots.DefaultBot.DefaultBot.Œ.Mo veNext()
--- 先前擲回例外狀況之位置中的堆疊追蹤結尾 ---
於 System.Runtime.CompilerServices.TaskAwaiter.ThrowF orNonSuccess(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Handle NonSuccessAndDebuggerNotification(Task task)
於 Triton.Bot.Logic.Bots.DefaultBot.DefaultBot.‚Œ.Mo veNext()
--- 先前擲回例外狀況之位置中的堆疊追蹤結尾 ---
於 System.Runtime.CompilerServices.TaskAwaiter.ThrowF orNonSuccess(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Handle NonSuccessAndDebuggerNotification(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Valida teEnd(Task task)
於 Triton.Bot.Logic.Bots.DefaultBot.DefaultBot.Œ.Mo veNext()
--- 先前擲回例外狀況之位置中的堆疊追蹤結尾 ---
於 System.Runtime.CompilerServices.TaskAwaiter.ThrowF orNonSuccess(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Handle NonSuccessAndDebuggerNotification(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Valida teEnd(Task task)
於 Triton.Bot.Logic.Bots.DefaultBot.DefaultBot.‘‹.Mo veNext()
--- 先前擲回例外狀況之位置中的堆疊追蹤結尾 ---
於 System.Runtime.CompilerServices.TaskAwaiter.ThrowF orNonSuccess(Task task)
於 System.Runtime.CompilerServices.TaskAwaiter.Handle NonSuccessAndDebuggerNotification(Task task)
於 Buddy.Coroutines.Coroutine.’”.Ž›.MoveNext()
--- 內部例外狀況堆疊追蹤的結尾 ---
於 Buddy.Coroutines.Coroutine.›(Boolean ›)
於 Buddy.Coroutines.Coroutine.Resume(Boolean ›)
於 Buddy.Coroutines.Coroutine.Resume()
於 Triton.Bot.Logic.Bots.DefaultBot.DefaultBot.Tick()
於 Triton.Bot.BotManager.Tick(IBot )

end turn




Please fix, thanks.

I can provide teamviewer ID and password to let the admin investigate my computer if needed.
Other AI can fight with them normally, only this boss will show error.
Naxxramas (Heroic), Kel'Thuzad.

I was using Priest Cards when this error showed.
The deck was here: [Perfect!] Vernitrax'''s Heroic Kel'''Thuzad Budget Priest - Hearthstone Decks
 
i updated the silverfish_HB.cs-file, it should compile now.
(you have to delete the ai and cards-folder before copying my ai and card-folder-files.
 
Back
Top