Jump to content

Matenia

Elite user
  • Posts

    2226
  • Joined

  • Last visited

Posts posted by Matenia

  1. I never told you to Google it. I told you to the class is https://wrobot.eu/byme/doc/html/T-wManager.Wow.Bot.States.Resurrect.htm

    You can create a new instance and then call Run on it. But you need to decompile it if you ACTUALLY want to look at the code.

    If you think you can just call "rezz in safe spot pls", it doesn't work like that. I told you from the start, WRobot already does it. That's as good as it will get.

    I promise you, you will not be able to write better code. I've spent days on it myself back in the day.

  2. WRobot already does this. It only kinda-sorta works.

    Long story short, it's extremely difficult, especially because every server and expansion has a different resurrection and aggro radius and you can never fully avoid mobs.

    Especially if they keep moving as you're trying to find a safe spot. It's best to just have a profile that will not put you into spots where you're likely to die in a dead lock or write code that makes you escape from combat, either before dying or so you are then in a safe spot to rezz.

  3. Zero updates? The Wholesome Group keepings pushing new updates to their free products all the damn. There's tons of content out there both free, paid and as sample to build your own with.

    If you're expecting to be spoon fed or not put in any work yourself - this isn't HonorBuddy. There is no HonorBuddy for pservers and nothing like it will ever exist again.
    They made millions of dollars and hired developers full time. I'd be surprised if Droidz had even made a single million in revenue since starting this endeavor almost 10 years ago.

  4. Just wanted to point out that my framework is more for ease of use and built based on old ideas of how WRobot works.

    If you built something more modern, you'd likely build a tick based system that caches important information on every ObjectManager update in your own classes to prevent expensive (Lua or memory read) calls to be executed more often than necessary. It's hard to tell what to cache in the first place too. Making unnecessary calls that you'll never need is equally unperformant.

    However, unless you're looking for to cheat in PvP using a rotation bot, a couple hundred milliseconds between each rotation iteration isn't a huge issue.

  5. Make sure all your vendors have drinks then.

    And then find this:

    if (OutOfFood())
    {
      Logging.WriteDebug("[AutoSelectFoodAndDrink] Out of food, force wRobot to town");
      ToTown.ForceToTown = true;
    }

    and replace with

    if (false)
    {
      Logging.WriteDebug("[AutoSelectFoodAndDrink] Out of food, force wRobot to town");
      ToTown.ForceToTown = true;
    }

    It will now never go to town to buy food. However, the log file above showed it went to town to buy water. If your water is not in this level appropriate list, you're fucked:
    Water at the vendor you're using needs to be the one in the list. You may follow down the code and adjust it to your liking.

    { 0, 159 }, // Refreshing Spring water
    { 5, 159 }, // Refreshing Spring water
    { 10, 1179 }, // Ice Cold Milk
    { 20, 1205 }, // Melon Juice
    { 30, 1708 }, // Sweet Nectar
    { 40, 1645 }, // Moonberry Juice
    { 50, 8766 }, // Morning Glory Dew
    { 61, 28399 }, // Filtered Draenic Water -- make sure this is only used in TBC
    { 65, 27860 }, // Purified Draenic Water
    { 71, 33444 }, // Pungent Seal Whey -- make sure this is only used in WotLK
    { 75, 33444 }, // Pungent Seal Whey
    { 85, 8766 },

     


  6. Read the description. Every vendor (except for Repair) available to your profile NEEDS TO BE A VENDOR WHO SELLS FOOD FOR THIS TO WORK.

    You need to force your bot to only know applicable vendors. It will try to select the appropriate food for your level and in your bags, depending on the situation. The code is right there if you want to modify it. Responsibility of configuring WRobot is on you. If you add vendors that don't sell food, the bot will try to go to the closest vendor over and over and never be able to buy food. It'll just force another ToTown state where it can intercept and buy more food.

    If you only want to use specific food, you need to change the code. That's why I published everything for free.

  7. 2 hours ago, Zer0 said:

    - Detect the moment you need to escape.
    - Cancel the current fight, using cancelable.Cancel = true;
    - Calculate a safe route.
    - Turn an escape flag to true (a simple boolean)
    - Make sure you don't start a new fight during the escape using your flag
    - Turn back the flag to false when your safe condition is met

    For anyone wondering, this is pretty much the preferred method. You could set WRobot's settings to completely ignore fights after calling Fight.StopFight as well. 
    But this is essentially what I use to escape mobs in HMP too. Unfortunately dynamic escape while avoiding new groups of mobs is quite complicated and will probably never be 100% perfect as you need to also make sure you won't just run in circles etc.

    Mostly just came here to say Zer0's approach is the one I found to be working best and most reliably.

×
×
  • Create New...