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!

Simcraft Implemented, a Raidbot Derivate with Integrated Combat

Does this not work with the training dummies in your garrison? For some reason my 1h fury warrior just sits there and auto attacks.
 
Anyone been using this since the big ban-wave? I know Enyo was the cause of a ban before the big wave hit and didn't know if this one was still safe to use since I liked this one much better than Enyo.
 
I noticed that for some reason, this bot is not loading anymore when I start up HonorBuddy. I keep getting this error:
Code:
Compiler Error: e:\Program Files (x86)\Honorbuddy\Bots\simpl\trunk\Caching.cs(12,24) : error CS0234: The type or namespace name 'RuntimeBinder' does not exist in the namespace 'Microsoft.CSharp' (are you missing an assembly reference?)
Is anyone else getting this problem? I can't seem to find any help online on how to fix the issue.
 
I've managed to get it working. This missing reference of Microsoft.CSharp in users code compilation forces me to do a dirty tricks.

How-to:
Install slightly modified RecompileOTron bot and run it. You should have Simcraft Impl installed too! It will compile the "Simcraft Impl" assembly with the missing reference and load it.
After that Simcraft Impl runs just fine.

P.S. also, I must say that Simcraft Impl`s code is pure jewel. Thank you.
 

Attachments

I've managed to get it working. This missing reference of Microsoft.CSharp in users code compilation forces me to do a dirty tricks.

How-to:
Install slightly modified RecompileOTron bot and run it. You should have Simcraft Impl installed too! It will compile the "Simcraft Impl" assembly with the missing reference and load it.
After that Simcraft Impl runs just fine.

P.S. also, I must say that Simcraft Impl`s code is pure jewel. Thanks you.

You're the man! one issue I noticed, though was that since youre running Simpl through the RecompileOTron bot, I was not able to access the Bot config for Simpl. I also was not able to get it to run after stopping the bot then restarting. I had to completely shut down HB then start it back up. Any suggestions on how to correct these issues?

EDIT: the error when I restart the Bot once I have stopped it is the following:
Code:
RecompileOTron[0.1]: Error: 0) An assembly with the same identity 'Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' has already been imported. Try removing one of the duplicate references.
 
You're the man! one issue I noticed, though was that since youre running Simpl through the RecompileOTron bot, I was not able to access the Bot config for Simpl. I also was not able to get it to run after stopping the bot then restarting. I had to completely shut down HB then start it back up. Any suggestions on how to correct these issues?

EDIT: the error when I restart the Bot once I have stopped it is the following:
Code:
RecompileOTron[0.1]: Error: 0) An assembly with the same identity 'Microsoft.CSharp, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' has already been imported. Try removing one of the duplicate references.

Thank you for your time, I did not get this defects while was using it. I going to fix it ASAP. Thank you.
 
Thank you for your time, I did not get this defects while was using it. I going to fix it ASAP. Thank you.

You did not get the error that I listed? What about the issue with the Simpl bot configuration? I would like to be able to access that so I can set up my keybinds for AoE and CD usage, etc. Is there a workaround for that? What about editing the actual Simpl code so that it imports the Microsoft.CSharp assembly like you got the RecompileOTron bot to do? No rush, since atm I'm using a custom CR I made for my main, but I'm just spitballing ideas that maybe could be fixed to get this awesome Botbase up and running again!! Thank you
 
Just for anyone else that might be wanting to fix this to work, aash PM'd me and sent me a link to an edited "SimcraftTop.cs" that has the line
Code:
//!CompilerOption:AddRef:Microsoft.CSharp.dll
at the very top of the file. It enables the BotBase to compile correctly and works perfectly as it used to!
 
I have gotten the bot to compile with RecompileOTron, but when it goes to load profiles I get a null error and nothing is listed, anyone been able to get it to work?
 
Don't use RecompileOTron. Instead try the fix i listed HERE.

Thanks, got it working like that and compiled, but still getting an error on the profile selector :( I have tinkered around and its def something to do with the profile selector

In the HB window:
Code:
<12:14 AM>:Loading configuration
<12:14 AM>:Failed to load configuration, creating default configuration.
Changing current profile to Empty Profile
<00:14>:Compiling Action Lists


and
Code:
ee the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentNullException: Value cannot be null.
Parameter name: key
   at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
   at System.Collections.Generic.Dictionary`2.ContainsKey(TKey key)
   at Simcraft.APL.AplAction.ParseAction() in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\APL\AplAction.cs:line 156
   at Simcraft.APL.ActionPrioriyList.FromString(String s) in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\APL\ActionPrioriyList.cs:line 76
   at Simcraft.SimcraftImpl.GenerateApls(String folder) in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\SimcraftTop.cs:line 365
   at Simcraft.ProfileSelector.OnShown(EventArgs e) in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\ProfileSelector.cs:line 31
   at System.Windows.Forms.Form.CallShownEvent()
   at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
   at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
   at System.Windows.Forms.Control.InvokeMarshaledCallbacks()

Any ideas on how to get it to read the profiles i have in the \Simcraft Profiles folder?
 
Thanks, got it working like that and compiled, but still getting an error on the profile selector :( I have tinkered around and its def something to do with the profile selector

In the HB window:
Code:
<12:14 AM>:Loading configuration
<12:14 AM>:Failed to load configuration, creating default configuration.
Changing current profile to Empty Profile
<00:14>:Compiling Action Lists


and
Code:
ee the end of this message for details on invoking 
just-in-time (JIT) debugging instead of this dialog box.

************** Exception Text **************
System.ArgumentNullException: Value cannot be null.
Parameter name: key
   at System.Collections.Generic.Dictionary`2.FindEntry(TKey key)
   at System.Collections.Generic.Dictionary`2.ContainsKey(TKey key)
   at Simcraft.APL.AplAction.ParseAction() in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\APL\AplAction.cs:line 156
   at Simcraft.APL.ActionPrioriyList.FromString(String s) in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\APL\ActionPrioriyList.cs:line 76
   at Simcraft.SimcraftImpl.GenerateApls(String folder) in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\SimcraftTop.cs:line 365
   at Simcraft.ProfileSelector.OnShown(EventArgs e) in c:\Users\Owner\Desktop\Buddies\Alpha\Bots\Simcraft\ProfileSelector.cs:line 31
   at System.Windows.Forms.Form.CallShownEvent()
   at System.Windows.Forms.Control.InvokeMarshaledCallbackDo(ThreadMethodEntry tme)
   at System.Windows.Forms.Control.InvokeMarshaledCallbackHelper(Object obj)
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx)
   at System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)
   at System.Windows.Forms.Control.InvokeMarshaledCallback(ThreadMethodEntry tme)
   at System.Windows.Forms.Control.InvokeMarshaledCallbacks()

Any ideas on how to get it to read the profiles i have in the \Simcraft Profiles folder?

It might be an issue with your SIMC file. Have you tried using one from one of the past pages? Most of the time you have to edit the default SIMC files a little bit since some of the actions/conditions aren't supported.
 
if tried even using the ones on the front page zip :/ its a 1h Frost dk one if that helps. Idk if you have one that loads that you can attach just for me to trouble shoot off of
 
if tried even using the ones on the front page zip :/ its a 1h Frost dk one if that helps. Idk if you have one that loads that you can attach just for me to trouble shoot off of
im using the following for my hunter (dont have a dk yet)
PHP:
hunter="captainsubtext_BM"
level=100
race=
role=attack
position=ranged_back
talents=0001333
spec=beast_mastery
summon_pet=spirit_beast

#https://www.thebuddyforum.com/honorbuddy-forum/botbases/204041-simcraft-implemented-raidbot-derivate-integrated-combat-post1913703.html#post1913703

hotkeys+=/hotkey_barrage,none,Z

actions+=/mend_pet,if=(pet.health.pct<=50)&!pet.buff.mend_pet.up
actions+=/spirit_mend,if=(health.pct<=50)

actions+=/tranquilizing_shot,if=debuff.savage_howl.up
actions+=/tranquilizing_shot,if=debuff.reactive_earth_shield.up
actions+=/tranquilizing_shot,if=debuff.cauterizing_bolt.up
actions+=/tranquilizing_shot,if=debuff.earthen_barrier.up

actions+=/cobra_shot,if=(buff.steady_focus.down&prev_gcd.cobra_shot)&talent.steady_focus.enabled

actions+=/focus_fire,five_stacks=1
actions+=/stampede,if=(buff.bloodlust.up|buff.focus_fire.up)&cooldowns_enabled
#actions+=/use_item,name=YOUR_TRINKET_HERE,if=cooldowns_enabled
actions+=/focus_fire,if=buff.focus_fire.down&(((cooldown.bestial_wrath.remains<gcd)&buff.frenzy.up)|(buff.stampede.up&buff.frenzy.up)|(buff.bestial_wrath.up&buff.frenzy.up))
actions+=/bestial_wrath,if=(focus>30)&buff.bestial_wrath.down
actions+=/dire_beast


actions+=/call_action_list,name=single,if=(active_enemies=1)|!aoe_enabled
actions+=/call_action_list,name=aoe,if=active_enemies>1&aoe_enabled

actions.single+=/kill_command
actions.single+=/a_murder_of_crows
actions.single+=/kill_shot,if=(target.health.pct<=20)
actions.single+=/barrage,if=hotkey_barrage
#actions.single+=/barrage
actions.single+=/cobra_shot,if=(buff.steady_focus.down)&((14+cast_regen)<=focus.deficit)&talent.steady_focus.enabled
actions.single+=/arcane_shot,if=(buff.thrill_of_the_hunt.react&focus>35)|buff.bestial_wrath.up
actions.single+=/arcane_shot,if=(focus>=70)
#actions.single+=/aspect_of_the_cheetah,if=(buff.aspect_of_the_cheetah.down)&moving
actions.single+=/cobra_shot

actions.aoe+=/multishot,if=(active_enemies>2)&(pet.buff.beast_cleave.down)
actions.aoe+=/barrage,if=hotkey_barrage
#actions.aoe+=/barrage
actions.aoe+=/cobra_shot,if=(buff.steady_focus.down)&((14+cast_regen)<=focus.deficit)&talent.steady_focus.enabled
actions.aoe+=/explosive_trap
actions.aoe+=/kill_command
actions.aoe+=/multishot,if=(active_enemies=2)&(pet.buff.beast_cleave.down)
actions.aoe+=/a_murder_of_crows
actions.aoe+=/kill_shot,if=(target.health.pct<=20)
actions.aoe+=/kill_shot,cycle_targets=1,max_cycle_targets=3,if=(target.health.pct<=20)
actions.aoe+=/arcane_shot,if=(buff.thrill_of_the_hunt.react&focus>35)|buff.bestial_wrath.up
actions.aoe+=/arcane_shot,if=(focus>=70)
#actions.aoe+=/aspect_of_the_cheetah,if=(buff.aspect_of_the_cheetah.down)&moving
actions.aoe+=/cobra_shot

#trinket1=YOUR_TRINKET_HERE,id=XXXXXX
 
Hey I'm trying to adapt the botbase to the current "Warrior_Fury_2h_T18N.simc" profile.

So i have written this
Code:
 public class SpellTargetsProxy : DynamicObject
        {
            ProxyCacheEntry cache = new ProxyCacheEntry();
            public dynamic glyph;

            public SpellTargetsProxy()
            {
                glyph = new GlyphProxy(() => StyxWoW.Me.ToUnit());
                cache["whirlwind"].SetRetrievalDelegate(() => glyph.wind_and_thunder.enabled ? UnfriendlyUnitsNearMe(12f).count() : UnfriendlyUnitsNearMe(8f).count());
                cache["bladestorm_mh"].SetRetrievalDelegate(() => UnfriendlyUnitsNearMe(8f).count());
                
            }

            public override bool TryGetMember(GetMemberBinder binder, out object result)
            {
                result = cache[binder.Name].GetValue();
                return true;
            }
        }

to handle "spell_targets.whirlwind" and "spell_targets.bladestorm_mh"

EDIT: corrected the code .count() was missing -.-
 
Last edited:
Hey I'm trying to adapt the botbase to the current "Warrior_Fury_2h_T18N.simc" profile.
Does anyone have a good overview over thiv project, cause i'm really overstrained at the moment.

I've always just substituted "spell_targets.*" with "active_enemies" and it has worked fine, although it doesn't check the range.

I cant seem to find that class anywhere in my botbase. Is it a new class you created? and if so, where did you put it?
 
yes its a new one. it takes the spells range into account.

I put it in "SimcraftProxies.cs" and also added
Code:
spell_targets = new SpellTargetsProxy();
to "SimcraftTop.cs".
 
Last edited:
How ot use this for a sub rogue? is the main post good to go or do i need to figure out how and what to tweak?
 
How ot use this for a sub rogue? is the main post good to go or do i need to figure out how and what to tweak?

According to the github repo, this does not work with sub rogues. I believe it has a large part to do with the "pool_energy" action not being implemented. Combat works pretty flawlessly, and I assume assassination does as well. You can probably customize a Sub routine with some tweaking though. Probably have a call action to a list on the bottom of the file that doesnt execute any abilities or something like that. It would be sort of ghetto-rigging a pool_energy command.
 
Back
Top