-
Posts
12579 -
Joined
-
Last visited
Content Type
Forums
Articles
Bug Tracker
Downloads
Store
Everything posted by Droidz
-
No WRobot doesn't have an API for that. You must use Lua code, it is not possible to have a value return from Lua (to the bot) when character is not in game, which makes things more complicated. It's poorly documented, you have to read the game's interface code to find the functions to use https://github.com/tomrus88/BlizzardInterfaceCode/tree/bb430dbf9511eae926219d9548398f58b0012497
-
Here : You don't have to put a space in 'Action Parameter', use the name as it appears when you click on the drop-down menu.
-
Archeology Digsites Bot Stops Wirkung after First digsite
Droidz replied to Heinzfischer's topic in Archaeologist assistance
Hello, if it's not done try to install this file https://wrobot.eu/files/file/276-seus-journey-to-the-center-of-the-earth-pandaria-archaeology-100-complete/ -
-
Can you target Training Dummy and share here result of "Target info" (in "dev... tools", you can found it tab tools). Same for Lazy Peon. If you can also share your log and profile (or bugged quests xml code). On UseScriptOn, you must use Lua code, and not Lua macro, but in any case, maybe they block RunMacroText. Try to use the Lua code : TargetUnit("Training Dummy") or RunMacroText("/target Training Dummy") I found a sample for your second quest. https://github.com/droidzfr/WRobot_Packages/blob/fccc740c611b6447361d401c2aa35bb401d6f638/Old paid files/enraged/001053_Horde[01-12]Vanilla(Durotar).xml#L2498
-
I am not sure to understand all. But you can get current questlog on this window : https://youtu.be/NitpaJkOQeg?t=40 (button "current quests memory info")
-
Hello, quest profile editor has tools to get current questlog, id is not in the result of it ?
-
My Bot doesn't using exact NPC's from my proflie
Droidz replied to botok's topic in General assistance
Hello, in advanced general settings you have the option to use only NPC of your profile (and not all NPCs of your NPCDB. If you want to activate it with a code, you can run : wManager.wManagerSetting.CurrentSetting.AcceptOnlyProfileNpc = true; -
Hello, I replied here https://wrobot.eu/forums/topic/15097-elevators-in-serpentshine-cavern/#comment-67987
-
Hello, by default WRobot blacklists the dummies. Try to disable this option : wManager.wManagerSetting.CurrentSetting.BlackListTrainingDummy = false;
-
Hello, give me the position and continent of the elevator, I'll add it.
-
Hi, public static bool CheckArea(float x, float y, float z, int range) { if (!ObjectManager.GetObjectWoWUnit().Any(u => u.Type != WoWObjectType.Player && u.IsAlive && u.IsAttackable && u.Position.DistanceTo(new Vector3(x, y, z)) < range)) return true; return false; } The code is in the profile "Script" element.
-
Good morning, In your log there is no error, just a warning because you are using Wow addons (and they often cause problems with the bot, especially on vanilla and tbc). Try to disable all addons. And share again your log if your issue is not solved.
-
What you are asking is possible but you will need knowledge of C#, Lua and the bot API. But, the bot shouldn't go somewhere you didn't ask it to go. Rather than using 'Automaton' use the Grinder product https://www.youtube.com/watch?v=fA0xHUmZLnI (you will be able to have more control over what the bot should or should not do).
-
When I look your screenshot, most repairmen seem to be limited to the Alliance faction. Cleared all entries to start on a good base. Target a 'repair' type NPC in game, in 'NPC DB' for 'type' select 'Repair' and click the 'Add...' button (with 'Name' empty). Then go close to the mailbox, in 'NPC DB' for 'type' also select 'Mailbox', in 'Name' enter the name of the mailbox (usually 'Mailbox') and click on the 'Add... '. In the advanced settings of the bot you can activate the sending of mail and choose what to send to whom.
-
I'm sorry, I can't help you. Maybe try to contact him to find out if he agrees to share his code.
-
Good morning, To detect teleportation there is an option in the advanced settings of WRobot. To detect zones there is nothing by default, there are several ways to do it up, but you have to know how to program (c#).
-
Hello, It's this plugin https://wrobot.eu/files/file/1385-free-operator-multiboxing-multiboxing-assistance-plugin/ ?
-
Hello, look https://wrobot.eu/files/file/414-multi-pull/ I added an option to be able to attack mobs already in combat : using System; using System.ComponentModel; using System.Configuration; using System.Collections.Generic; using System.IO; using System.Linq; using robotManager.Helpful; using wManager; using wManager.Plugin; using wManager.Wow.Helpers; using wManager.Wow.ObjectManager; public class Main : IPlugin { private bool _isLaunched; public void Initialize() { _isLaunched = true; MultiPullSettings.Load(); wManager.Events.FightEvents.OnFightLoop += FightEventsOnOnFightLoop; Logging.Write("[MultiPull2] Started."); } public void Dispose() { try { wManager.Events.FightEvents.OnFightLoop -= FightEventsOnOnFightLoop; } catch {} _isLaunched = false; Logging.Write("[MultiPull2] Stoped."); } public void Settings() { MultiPullSettings.Load(); MultiPullSettings.CurrentSetting.ToForm(); MultiPullSettings.CurrentSetting.Save(); Logging.Write("[MultiPull2] Settings saved."); } private void FightEventsOnOnFightLoop(WoWUnit woWUnit, CancelEventArgs cancelable) { if (_isLaunched && Conditions.InGameAndConnectedAndAliveAndProductStartedNotInPause && Fight.InFight && ObjectManager.Target.IsValid && ObjectManager.Target.IsTargetingMeOrMyPetOrPartyMember && ObjectManager.Me.HealthPercent >= MultiPullSettings.CurrentSetting.MinHealth && ObjectManager.GetNumberAttackPlayer() < MultiPullSettings.CurrentSetting.MobMax) { var mobs = new List<WoWUnit>(); if (MultiPullSettings.CurrentSetting.AllFactions) { mobs.AddRange(ObjectManager.GetWoWUnitAttackables(MultiPullSettings.CurrentSetting.PullRange)); } else { mobs.AddRange(ObjectManager.GetWoWUnitByEntry(MultiPullSettings.CurrentSetting.MobsList)); } var listGuidUnitAttackPlayer = ObjectManager.GetUnitAttackPlayer().Select(m => m.Guid).ToArray(); for (int i = mobs.Count - 1; i >= 0; i--) { if (!mobs[i].IsValid || !mobs[i].IsAlive || ((MultiPullSettings.CurrentSetting.CanAttackMobInCombat && mobs[i].IsTargetingMeOrMyPet) || (!MultiPullSettings.CurrentSetting.CanAttackMobInCombat && mobs[i].Target.IsNotZero())) || listGuidUnitAttackPlayer.Contains(mobs[i].Guid) || mobs[i].Guid == ObjectManager.Pet.Guid || MultiPullSettings.CurrentSetting.BListMobs.Contains(mobs[i].Entry) || mobs[i].GetDistance > MultiPullSettings.CurrentSetting.PullRange || wManagerSetting.IsBlackListedAllConditions(mobs[i]) || mobs[i].Level < MultiPullSettings.CurrentSetting.MinTargetLevel || mobs[i].Level > MultiPullSettings.CurrentSetting.MaxTargetLevel ) { mobs.RemoveAt(i); } } var unit = ObjectManager.GetNearestWoWUnit(mobs); if (unit.IsValid) { Logging.WriteDebug(string.Format("[MultiPull2] Pull {0} (distance: {1}).", unit.Name, unit.GetDistance)); if (ObjectManager.Target.IsValid) Lua.LuaDoString("ClearTarget();"); cancelable.Cancel = true; var m = Fight.StartFight(unit.Guid, false); //if (m.IsNotZero()) wManagerSetting.AddBlackList(m, 1000 * 50); } } } } public class MultiPullSettings : Settings { public MultiPullSettings() { MobMax = 3; PullRange = 35; MinHealth = 65; MinTargetLevel = 2; MaxTargetLevel = 110; AllFactions = true; MobsList = new List<int>(); BListMobs = new List<int>(); } public static MultiPullSettings CurrentSetting { get; set; } public bool Save() { try { return Save(AdviserFilePathAndName("MultiPull", ObjectManager.Me.Name + "." + Usefuls.RealmName)); } catch (Exception e) { Logging.WriteError("MultiPullSettings > Save(): " + e); return false; } } public static bool Load() { try { if (File.Exists(AdviserFilePathAndName("MultiPull", ObjectManager.Me.Name + "." + Usefuls.RealmName))) { CurrentSetting = Load<MultiPullSettings>(AdviserFilePathAndName("MultiPull", ObjectManager.Me.Name + "." + Usefuls.RealmName)); return true; } CurrentSetting = new MultiPullSettings(); } catch (Exception e) { Logging.WriteError("MultiPullSettings > Load(): " + e); } return false; } [Setting] [Category("Settings")] [DisplayName("Max Mobs")] [Description("Max number of mobs to fight at the same Time")] public int MobMax { get; set; } [Setting] [Category("Settings")] [DisplayName("Range")] [Description("Range for Pull")] public int PullRange { get; set; } [Setting] [Category("Settings")] [DisplayName("Min health")] [Description("Stop pulling if health smaller than %")] public int MinHealth { get; set; } [Setting] [Category("Settings")] [DisplayName("Min target level")] [Description("Minimum target level")] public int MinTargetLevel { get; set; } [Setting] [Category("Settings")] [DisplayName("Max target level")] [Description("Maximum target level")] public int MaxTargetLevel { get; set; } [Setting] [Category("Settings")] [DisplayName("Pulls all mobs")] [Description("Pulls all mobs type")] public bool AllFactions { get; set; } [Setting] [Category("Settings")] [DisplayName("Mobs list")] [Description("List of mobs at pull (to use this list don't forget to deactivate option 'Pulls all mobs') (you can found entry id of mobs in tab 'Tools' with 'Dev tools')")] public List<int> MobsList { get; set; } [Setting] [Category("Settings")] [DisplayName("Blacklist mobs")] [Description("List of mobs at ignore (you can found entry id of mobs in tab 'Tools' with 'Dev tools')")] public List<int> BListMobs { get; set; } [Setting] [Category("Settings")] [DisplayName("Can attack mob already in combat")] [Description("Can attack mob already in combat")] public bool CanAttackMobInCombat { get; set; } = true; } (no tested)
-
I think I found it, you have activated the FoodIsSpell option
-
Hello, You must use the .cs file (or compile your .cs file into a dll file, renaming it is not enough).
-
Hi, try to use this plugin : public class Main : wManager.Plugin.IPlugin { public void Initialize() { wManager.Wow.Helpers.Usefuls.ForceIsFlyableArea = true; } public void Dispose() { } public void Settings() { } } (and leaves in land mount the name of the flying mount)