Jump to content

Apexx

Elite user
  • Posts

    332
  • Joined

Posts posted by Apexx

  1. Try this -- In the fight class editor, there is a box under the Name of the fight class with pet options as well. Look for "Custom Code" or "Additional C# Code".. I cannot remember off the top of my head right now..

    Enter:

    internal static bool CanBleed(WoWUnit unit)
    {
    	return unit.CreatureTypeTarget != "Elemental" && unit.CreatureTypeTarget != "Mechanical";
    }

    Then in the selected spell conditions add C# check and type:

    CanBleed(ObjectManager.Target)
  2. Looking back at this thread today and here is a rough method that I came up with:

    public float TargetTimeToDie;
    
    private double damagePerSecond;
    private double targetPreviousHealth;
    private Timer timerDPS = new robotManager.Helpful.Timer(1000);

     

    private void FightEvents_OnFightLoop(WoWUnit unit, System.ComponentModel.CancelEventArgs cancelable)
    {
        if (timerDPS.IsReady)
        {
            if (ObjectManager.Target.Health < targetPreviousHealth)
            {
                //How much damage was done since the last second
                //Helpers.LogDebug($"targetCurrentHealth({ObjectManager.Target.Health}) - previousHealth({previousHealth})");
                damagePerSecond = System.Math.Abs(targetPreviousHealth - ObjectManager.Target.Health);
    
                TargetTimeToDie = (float)System.Math.Round(ObjectManager.Target.Health/ damagePerSecond, 1);
                Helpers.LogDebug($"Target will die in ~{TargetTimeToDie} second(s).");
            }
            targetPreviousHealth = ObjectManager.Target.Health;
        }
    }

     

    Usage (Maybe you do not want to use large cooldowns on the target if they will die in such time. Or do not place totems, etc..):

    if (TargetTimeToDie < 10.0f) return;
  3. Hello,

    1. Click, "Enter Advanced Settings" (Bottom right) of the General Settings for WRobot.
    2. Open the "Looting and Farming Options" tab.
    3. On the right-hand side, there is a list called, "Harvest objects".
    4. Here you enter each object you would like to farm (one object per line).

     

    WRobot_Selective_Object_Farm_Settings.png

  4. You could try:

    RunMacroText('/cast [form: 1] Mangle(Bear Form)')

     

    try
    {
        if (ObjectManager.Me.HaveBuff(bearForm.Ids) && timerMangle.IsReady && ObjectManager.Target.GetDistance <= 5)
        {
            if (SpellManager.GetSpellCooldownTimeLeft(mangle.Id) <= 0)
            {
                await Helpers.RunMacro("/cast [form: 1] Mangle(Bear Form)", timerMangle.IsReady);
                timerMangle = new Timer(SpellManager.GlobalCooldownTimeLeft() + 255 + Usefuls.Latency);
            }
        }
    }
    catch (Exception ex)
    {
        Helpers.LogWrite($"Mangle() Exception error. {ex.Message}.", true);
    }
  5. I only use Fisherbot when I manually fly to pools, land around a nice area, and then use the shortcut keys to pause/unpause the WRobot.
    I refuse to allow WRobot to manually fly, move to any point in the game due to many issues with navigation imo.

    I also make some changes to the Fisherbot settings:

    Quote

    Wait time after loot = 2000 ms
    Wait time before interact = 1000 ms
    Bobber search time = 2000 ms

    I have never had any realy problems with fishing, though.

  6. Hey everyone, I am in need of some big brained math experts to possibly help me translate some information to a C# method. 
    I have here some bits and pieces of the Ovale Spell Priority addon, and I like the idea that used for the Shadow Priest's DoTs to check if the target will die in a certain time?:

    TargetDeadIn(more 6)

    Looking into the Lua files, I find the function inside Condition.lua:

    	TargetDeadIn = function(condition)
    		local deadAt = getTargetDead()
    		if condition[1] == "more" then
    			return 0, addTime(deadAt, -condition[2])
    		else
    			return addTime(deadAt, -condition[2]), nil
    		end
    	end,

    as well as

    local function getTargetDead()
    	local second = math.floor(Ovale.maintenant)
    	if targetGUID~=UnitGUID("target") then
    		lastSaved = nil
    		targetGUID = UnitGUID("target")
    		savedHealth = {}
    	end
    	local newHealth = UnitHealth("target")
    	if UnitHealthMax("target")==1 then
    		return Ovale.maintenant + 10000
    	end
    	if second~=lastSaved and targetGUID then
    		lastSaved = second
    		local mod10 = second % 10
    		local prevHealth = savedHealth[mod10]
    		savedHealth[mod10] = newHealth
    		if prevHealth and prevHealth>newHealth then
    			lastSPD = 10/(prevHealth-newHealth)
    --			print("dps = " .. (1/lastSPD))
    		end
    	end
    	-- Rough estimation
    	return Ovale.maintenant + newHealth * lastSPD
    end

    If you have any input, I would love to see what you have to say, and thanks for reading!

  7. I brought the idea up to @Droidz as well to possibly implement a way to customize key binds to change from one WRobot module to another.
    IE: If I hit Shift+Alt+F to start Fishing Bot. Or maybe Shift+Alt+R to run WRotation bot. It would save a ton of time having to Alt+Tab every time I wanted to make minor changes based on my current needs in-game.

  8. Here's what I use to check attackers in range:

    public static int GetAttackerCountInRange(float yards)
    {
        int EnemyCountInRange = ObjectManager.GetUnitAttackPlayer().Count(t => t.IsAlive && t.IsValid && t.IsAttackable && t.InCombat && t.GetDistance <= yards);
        if (EnemyCountInRange > 0)
            {
                Logging.WriteDebug($"Enemy attacking count = {EnemyCountInRange}");
                return EnemyCountInRange;
            }
        return 0;
    }

     

  9. Hey, I have a few recommendations if you like Wrath 3.3.5...

    1. Warmane - Icecrown (Very packed server with long queue times to login) - 
      Quote

      Icecrown is a Wotlk Private Server and offers 7X XP Rate, and PvP as realm-type. It’s an English speaking server, and  is probably the most popular server for this expansion.

      Icecrown, from Warmane, has a very active and healthy population. It’s usually around 7000-9000 players online. It’s not very often that we see servers with such a high population.

      Shop: Gear, Levels, Gold, Characters. (Pay-2-win).

      With Warmane, it’s often like this: Either you hate it, you love it, or you simply play on it casually. With Warmane’s ream: Icecrown, it’s the same.
      Despite the cashgrab shop, fact is however that Warmane has been up for many years, always been stable, and has a very high population.

      If you’re into playing a server with: server stability, high population, and an active server in general, then Icecrown could definitely be an option for you.

      Icecrown was launched quite a while back, and is still doing well. Icecrown is one among several of Warmane’s wotlk realms.

      You can play Icecrown here:
      https://www.warmane.com/

    2. Warmane - Lordaeron
      Quote

      Lordaeron is a Wotlk Private Server and is Warmane’s answer on a pure blizzlike realm. Lordaeron has 1X XP Rate, and PvP as realm-type. If you’re into pure blizzlike servers, Lordaeron could be a good fit. It’s an English speaking server, and is one the most popular servers for this expansion.

      Lordaeron, made by Warmane, has a healthy population, and there are a lot of groups to do dungeons/raids available. Originally, the RDF was disabled, but since then – Warmane has re-enabled it again.

      If you’re into 1x blizzlike servers (not increased rates), then Lordaeron might be a good fit for you.

      Play Lordaeron here:
      https://www.warmane.com/

    3. Wow-mania
      Quote

      There has been a lot of talk and hype about some legacy wow servers lately... While this may be news to some of you we have been providing a high-quality and high-availability World of Warcraft - Wrath of the Lich King server for over 6 years now. We may not be the biggest but we are certainly the best in quality and the service we offer to our players. No hype, just the plain good old World of Warcraft fun you grew to love.

      We are the most stable and bug-free wotlk private server in the world today, with custom content and a top of the line hardware. WoW-Mania is run by professional developers and technicians to ensure the best all-around gaming experience. Our team is made of dedicated and passionate individuals who professionally create and maintain every single aspect of the game.

      Come join us and relive the glory days of the Wrath of the Lich King expansion. Meet up with old friends or make new ones. We are a truly global community with over 53 different countries represented among our players.

      A vibrant and active community that is proud to call WoW-Mania home...

     

     

  10. I was surfing the forums, and Google for about 20 minutes looking for anything to help me figure this out. I am writing a fight class using C#, and Lua. For the first time I ran into a problem where the combatants I was fighting with were immune to my "Devouring Plague" and was left wasting mana, because each mob was immune to diseases. Is there anything to catch such a thing?

     

    Thank you!

     

    Edit* Mob entity: https://wotlkdb.com/?npc=32400
    There's no real information regarding immunizes.

  11. 8 hours ago, Droidz said:

    If anyone has time to try with this file: robotManager.dll (move and replace file in the "Bin" folder and ignore the update request when the bot starts). This file will log when WRobot presses a key, with several log files I could have been a better idea of what is happening with Wotlk (do not use 'Use lua to move' option)

    Working on it now. Thanks!

×
×
  • Create New...