Jump to content

Droidz

Administrators
  • Posts

    12430
  • Joined

  • Last visited

Reputation Activity

  1. Like
    Droidz got a reaction from frostfire in WRobot 1.0.9   
    WRobot version 1.0.9 now available, changelog here.

    I now works on easy system for create quests profiles (system similar at fight class creator).


  2. Like
    Droidz got a reaction from Seumas in Working Great   
    I have added option "BlackList zone where I am dead" and "Wait if resurrection sickness" in general settings. Wait the next wrobot update.
  3. Like
    Droidz got a reaction from fragik in How to create Quest profile   
    Quest profile

    Quest profile contain two files:
    Quests.cs > C# code - What the bot should do for completed the objectives of the quest, one class per quest. (I recommend for edit this file to use visual studio and add for reference wManager.dll at the project, this file)
    Profile.xml > Xml code – In this file is defined:
    The order of quest step (sample: quest1>PickUp ; quest2>PickUp ; quest2>Pulse ; quest2>TurnIn ; …) List of Npc quest giver (starts and ends quests list id) List of Npc (vendor, repair, mailbox) (You can use editor (You can found it in “Profile creator helper”) or block note) Useful tools:
    Select product « Quester », Click on button “Start”, new window appear, click on button “Profile creator helper”.

    Quest Tools
    Return entry id and position of your current target (text formatted to c# syntax for Quest.cs). Return your position (text formatted to c# syntax for Quest.cs). Return game objects information (game object is Mailbox, chest, mine, herb, …), entry id and position of all objects loaded in wow memory (position order by player distance) (replace “GameObject Name” by object name (case sensitive)) (text formatted to c# syntax for Quest.cs). Return unit information (uint is player, pet, creature, Npc, …), entry id and position of all unit loaded in wow memory (position order by player distance) (replace “Creature Name” by unit name (case sensitive)) (text formatted to c# syntax for Quest.cs). Create base quest class (information extracted of wowhead, it is recommended to manually check if they are correct) (replace “Quest ID” by your quest entry id”) (text formatted to c# syntax for Quest.cs). Create Npc quest giver, prefilled PickUp, TurnIn quests and position (information extracted of wowhead, it is recommended to manually check if they are correct) (replace “Npc ID” by your unit entry id”) (text formatted to xml syntax for Profile.xml). Return information about your current quests, this return quest entry id, stat of objectives 1, 2, 3, 4 and time left. Convert Zygor guide to WRobot quest profile (it don’t convert all, this can help you to gain time because you need to fix errors and bad information manually) (you can found guide in “ZygorGuidesViewer\Guides\Leveling”) (copy text of guide in textbox (14) for convert it) (return xml and C# code). Quest Profile Editor (for Profile.xml). This extract all quests classes name of c# (Quests.cs) file. Open Windows Notepad. Open Windows Calculator. Open Development tools (very useful tools for extract wow memory information). Textbox where are returned values. To get entry id of a unit, quest or object go to wowhead, on this URL wowhead.com/quest=26378 entry id of this quest is 26378.
    Download this file for get positions of NPC (extract it in wrobot folder): http://download.wrobot.eu/wrobot/Data_creature.csv.zip



    Profile.xml
    For edit this file you can use “Profile Editor” (9) or notepad.

    QuestFile:
    Path to c# file.

    QuestsSorted:

    Action of quests (WRobot reading this list in order)NameClass: The C# class name of the quest selected (case sensitive) (class name is in Quests.cs).
    Actions:
    · Pulse: Execute objective of the quest.
    · TurnIn: Return to Npc for complete the quest.
    · PickUp: Go to Npc for accept the quest.
    · PulseAllInOne: Execute PickUp > Pulse > TurnIn.

    NpcQuest:
    List of Npc and Game Object quest giver. Don’t forget to complete PickUpQuests and TurnInQuests (list of quest id), you can use Quest Tools (6) for gain time.

    Npc:
    List of mailbox, Npc vendor, repair…
    I recommend to edit existing quest profile to better understand.


    Quest.cs
    For edit Quest.cs you need base know of c#.net and POO. You need also Visual Studio 2010 (or 2012).

    Editor:
    You can use notepad, but I recommend:
    · Open Visual Studio
    · Create new project Class Library.
    · Add reference at your project wManager.dll and robotManager.dll.
    · When you create project with visual studio a .cs file is created, remove all text of it (Quest.cs don’t use namespace).

    Quest.cs don’t use namespace, you need one class by quest (it is possible to use two classes per quest if necessary). I use quest name for naming class (no compulsory), don't forget to use public class and inheritance of Quest.....Class.


    Quest simple, without objective, just pickup, turnin:
    public class ReportToGoldshire : QuestClass // inheritance of QuestClass { public ReportToGoldshire() { QuestId.Add (54); // Add quest id } } Quest type kills or get items find on creature:public sealed class BeatingThemBack : QuestGrinderClass // Inheritance of QuestGrinderClass { public BeatingThemBack () { QuestId.Add (28757); // Add quest id Step.AddRange(new[] { 6, 0, 0, 0 }); // Objective required count, for this quest he has only one objective to kills 6 creatures, if quest need 10 items replace 6 by 10 HotSpots.Add(new Vector3(-8885.293f, -62.18237f, 85.49203f)); // Position where you can found creature at kill HotSpots.Add(new Vector3(-8850.301f, -94.07894f, 83.14889f)); // Position where you can found creature at kill EntryTarget.Add(49871); // Entry id of creature at kill } } Quest type gatherer for pick up items:public sealed class ABundleofTrouble : QuestGathererClass // Inheritance of QuestGathererClass { public ABundleofTrouble() { QuestId.Add(5545); // Add quest id Step.AddRange(new[] { 8, 0, 0, 0 }); // Objective required count EntryIdObjects.Add(176793); // Entry id of game objects at gather HotSpots.Add (new Vector3(-9364, -1274, 60)); // Position where you can found game objects HotSpots.Add (new Vector3(-9494, -1464, 60)); // Position where you can found game objects } } Quest type use item on GameObjects/Unit:public sealed class ExtinguishingHope : QuestUseItemOnClass // Inheritance of QuestUseItemOnClass { public ExtinguishingHope() { QuestId.Add(26391); // Add quest id Step.AddRange(new[] { 8, 0, 0, 0 }); // Objective required count HotSpots.Add(new Vector3(-8921, -354, 73)); // Position where you can found game objects, creatures HotSpots.Add(new Vector3(-9037, -314, 73)); // Position where you can found game objects, creatures ItemId = 58362; // Entry id of item at use Range = 5 ; // Range of item EntryIdTarget.Add(42940); // Entry id of game objects or creatures/npc whose you need use item on it } }  For quest type use spell on GameObjects/Unit replace inheritance class QuestUseSpellOnClass by QuestUseSpellOnClass and ItemId by SpellId
     Quest type interact with Npc:
    public sealed class FearNoEvil : QuestInteractWithClass { public FearNoEvil() { QuestId.Add (28813); // Add quest id Step.AddRange(new[] { 4, 0, 0, 0 });// Objective required count EntryIdTarget.Add(50047); // Entry id of creature/npc at interact with GossipOptionNpcInteractWith = 0; // This options is only if npc has menu HotSpots.Add(new Vector3(-8781, -105, 83)); HotSpots.Add(new Vector3(-8783, -187, 82)); } }  Override, Add condition for get if character can get this quest:
    public class ReportToGoldshire : QuestClass // inheritance of QuestClass { public ReportToGoldshire() { QuestId.Add (54); // Add quest id } public override bool CanConditions()// Override method CanConditions { if (ObjectManager.Me.WowClass == WoWClass.Monk) { return false; } if (ObjectManager.Me.Level > 5) { return false; } if (ObjectManager.Me.WowRace != WoWRace.Human) { return false; } return true; } } If the character is an monk, or level is bigger than 5 or not human this quest is skip
    Override PickUp for accep quest of item:public sealed class TheCollector : QuestClass { public TheCollector() { QuestId.AddRange(new[] { 123 }); Step.AddRange(new[] { 0, 0, 0, 0 }); } public override bool PickUp() // Override method PickUp() { ItemsManager.UseItem(ItemsManager.GetNameById(1307)); Quest.AcceptQuest(); return true; } } Quest without objective number count and with special objective:public sealed class TheJasperlodeMineQuest : QuestClass { public TheJasperlodeMineQuest() { QuestId.AddRange(new[] { 76 }); Step.AddRange(new[] { 0, 0, 0, 0 }); } private bool _step1; public override bool Pulse() // Override Pulse, special objective (need to Explore the Jasperlode Mine) { if (!_step1 && GoToTask.ToPosition(new Vector3(-9097, -565, 61))) // Go to Jasperlode Mine { Thread.Sleep(3000); _step1 = true; // character is at Jasperlode Mine, objective complete } return true; } public override bool IsComplete() // Override iscomplete for add _step1 { if (IsCompleted()) // If quest already turnin return true; if (!HasQuest()) // If character not have this quest return false; return _step1; // Return _step1 } } Multi Quest in one class:public sealed class BeatingThemBackQuest : QuestGrinderClass { public BeatingThemBackQuest() { QuestId.AddRange(new[] { 28757, 28762, 28763, 28764, 28765, 28766, 28767, 31139, 28763 }); Step.AddRange(new[] { 6, 0, 0, 0 }); HotSpots.Add(new Vector3(-8885.293f, -62.18237f, 85.49203f)); HotSpots.Add(new Vector3(-8850.301f, -94.07894f, 83.14889f)); EntryTarget.Add(49871); } }Wow have created 9 quests with same objective, one per wow class, when wrobot check if you have quest, he search if your character have one of quests of the class.
  4. Like
    Droidz reacted to Minerals in [fighting class]how do i use trinkets and life spirits?   
    This works great for all sorts of things!  Thanks!  One thing I'm using it for is to a fire "Master Healing Potion" when needed:
     
    Add Spell Name:  RunMacroText("/use item:76097")
     
    Add Condition: Health Percent (set to your preference -- I've got mine at 20%)
     
    Add LUA Script: 
         LUA Script:  count = GetItemCount(76097) ; if count > 0 then vRet = 1 else vRet = 0 end 
         Return Value Research: 1
         Return Value var:  vRet
  5. Like
    Droidz got a reaction from redshirt1 in Melee Range Issues Re: NPCs w/Large Hit Boxes   
    Hi, I say here when problem is fixed (the last update contains only new system for create quests profiles and fix for path generator).
  6. Like
    Droidz got a reaction from AezploW in [Installation] How to for Beginners (with screenshots)   
    Topic here: 
  7. Like
    Droidz got a reaction from AezploW in [Installation] How to for Beginners (with screenshots)   
    If you want help please create new topic in this forum.
  8. Like
    Droidz got a reaction from AezploW in [Installation] How to for Beginners (with screenshots)   
    Hello,
     
    Do you launch wow in 32 bit?
     
    Please create new topic here and share your log.
  9. Like
    Droidz got a reaction from AezploW in [Installation] How to for Beginners (with screenshots)   
    Do you have lanched wow in 32 bit mode? 
  10. Like
    Droidz got a reaction from Seumas in Couple of questions   
    Hello,   Edit path is not recommander (you can remove some location if this causing stuck bot but edit way is no easy).   For the mailbox you need only to add it in profile (you can load profile with profile creator) (you don't need to add path to mailbox). (if the mailbox is far you need to edit search distance (npc) in general settings).
  11. Like
    Droidz reacted to loves2spooge in Working Great   
    This program is fantastic. Never gets locked up, haven't had hardly any issues recently :)
    Good fun
     
  12. Like
    Droidz got a reaction from loves2spooge in How do i make plugins work?   
    Hello,   Extract and copy downloaded plugin in "Plugins" folder.   Launch WRobot, in "General settings", tab "Plugins" select your plugin and click on button "Activate/Desactivate selected Plugin" (Plugin activated if green, red if desactivated).
  13. Like
    Droidz got a reaction from loves2spooge in TRIAL using Invalid Key Problem   
    Hello,
     
    Put trial when wrobot ask license key (if you have buy key, you can found your license here).
  14. Like
    Droidz reacted to Minerals in Target management   
    Figured out part of the problem.  
     
    I am using [fall0ut] PvE Combat Rogue v22.xml as my rogue profile and part of the problem stems from Stealth and Shadowstep.  Since both can be used outside of combat, every time you target something--friendly or not--stealth kicks in and if Shadowstep is off cooldown--boom--you're behind 'em.  My fix for it is to add a target checking LUA script to both of those spells to determine if the target is friendly or not.
     
    Added to Stealth spell "LUA Script" 
    LUA Script: retV = UnitIsEnemy("player","target")
    Return Value Search: 1
    Return Value Var: retV
     
    Now it doesn't go into stealth unless the target is "unfriendly."  However, if for some reason you manually went into Stealth with a friendly target--boom!--say hello to their backsides.  So....
     
    Added to Shadowstep:
    Have Target = True
    Add "LUA Script" 
    LUA Script: retV = UnitIsEnemy("player","target")
    Return Value Search: 1
    Return Value Var: retV
     
    No more out-of-control Shadowstepping.
     
    If there's an easier way to control this, please feel free to post.
  15. Like
    Droidz reacted to Raphy in Fighting problem [Drood]   
    Merci !
    Je vais essayer tout ça, je te tiens au courant ;)
  16. Like
    Droidz reacted to Minerals in Target management   
    I'll give it a try.  I also noticed that it seems to be fight class profile related also.  I don't seem to have the same problems with my hunter and paladin fight profiles as I do with the rogue one.  That's anecdotal, though, since I haven't done any real testing.  I'll play around with it and see what I can figure out.  Thanks.
  17. Like
    Droidz reacted to loves2spooge in Use hearthstone   
    Both of those ideas are really good. That would really cool, so no way to tell bot when it finishes after XX minutes to hearth then close? Darn.
     
    Cool idea. I really like the hearth when stuck but understand why that could be an issue.
  18. Like
    Droidz reacted to loves2spooge in Pick-Pocketing   
    I have added a FightClass to help w/ the pickpocketing
     

     
    Thanks
  19. Like
    Droidz reacted to AudreyH in inteligent pet battles   
    Hi,
     
    we are working on a customizable battle pet addon
  20. Like
    Droidz reacted to gamalielchosen in Fishing Schools Issue   
    Okay. Seems to be working right now.
     
    The problem was that when it couldn't reach the school, he would fly the highest point and stop.
     
    I think was an error in the profile I was using.
     
    gc
  21. Like
    Droidz reacted to Bumblebee in Comment créer un profil de quête?   
    Bonsoir,
     
    J'ai re-transcris le tutoriel proposé par Droidz en français, je le joint donc en pdf.
     
    Le tutoriel à été traduit par moi même, administateur de la communauté française du bot http://mmorobot.eu ! 
     
     
    Tutoriel quester wrobot.pdf
  22. Like
    Droidz reacted to brairis in movement issue   
    thanks heaps that fixed it
  23. Like
    Droidz reacted to acko2013 in Few bugs that could be fixed   
    Oh thank you. Looking forward to it!
  24. Like
    Droidz got a reaction from brairis in movement issue   
    Hello,
     
    You need to use fightclass.
     
    Look this tuto:
     
    http://youtu.be/Z3Nej3dxQKY?t=1m29s
  25. Like
    Droidz reacted to Ohren in Fishing Schools Issue   
    I had that flying to the top of the map issue earlier, but I just left the fisher bot going on my secondary account, and it filled up my bags while I was at work, no issues.
×
×
  • Create New...