Jump to content

Matenia

Elite user
  • Posts

    2226
  • Joined

  • Last visited

Posts posted by Matenia

  1. 		public string FullName()
    		{
    			return _rank != null ? ($"{_name}({RotationSpellbook.RankString} {_rank})") : _name;
    		}
    
    		public bool IsKnown()
    		{
    			return RotationSpellbook.IsKnown(_name, _rank ?? 1);
    		}

    Change these lines in RotationSpell. I guess I accidentally messed this up when merging two frameworks.
    If you use Spell.NameInGame instead of _name, it should use the localized name.

     

    if (spell.Spell.Name == "Shoot" && IsAutoRepeating("Shoot"))
    			{
    				return true;
    			}
    
    //IsAutoRepeating should use spell.Name.NameInGame

    As far as I can tell, everything else already uses the localized name. 

     

    There is also one more issue with something not localized (shouldn't matter too much):
     

    // this error is not found through casting or combatlog events because it's caused by the client checking IsSpellInRange when using CastSpellByName
    			// we could technically execute this check ourselves in CombatLogUtil but usually the client-side range check (memory based GetDistance) is enough) and cheaper!
    			// therefore we're listening to error messages and executing this check lazily
    			if (id == "UI_ERROR_MESSAGE" && (args[0] == "Out of range." || args[0] == "You are too far away!"))
    			{
    				RotationSpellVerifier.ClearIfOutOfRange();
    			}

    Also this should probably be reworked or use the non-Lua wRobot option:

    public static bool CastingSpell(this WoWUnit unit, params string[] names)
    		{
    			return RotationCombatUtil.ExecuteActionOnUnit(unit, (luaUnitId) =>
    			{
    				string luaString = $@"
    	            local isCastingSpell = false;
    	    
    	            local name = UnitCastingInfo(""{luaUnitId}"")
    	            if {LuaOrCondition(names, "name")} then
    	                isCastingSpell = true
    	            end
    	            return isCastingSpell;";
    				return Lua.LuaDoString<bool>(luaString);
    			});
    		}

     

  2. 4 hours ago, scsfl said:

    Maybe some problems with spell verification. Wow vanilla.

    Clearly says this isn't for 1.12. Also clearly even references the 1.12 framework. Also, what is it with people using the cracked version of wRobot coming here expecting help?


    That being said, there can always be race conditions when you're technically on gcd from wanding which blocks other spells from being usable.

  3. Dude idk what that code is even supposed to be. This is literally some random code (looks like Lua). It means nothing.
    Also you don't even own a wRobot license. You're not getting any help here.

  4. This isn't related to the bot at all... After level 77, you need to buy Arctic Flying or whatever the skill is called to fly in Northrend.
    Ask those questions in your server's forum or google "how to fly in Northrend wotlk".

  5. Because "people wanting scripts for PvP" isn't actually anything. It's the occasional hardstuck 1800 hoping scripts will make them Gladiator. 
    I've been trying to sell shit for PvP for ages - just to automate the boring honor grind. I sold a total of like 150 fightclasses since 2016. The silent masses buy PvE shit to level. There is no money in it. Whenever someone PMs me, they don't wanna pay 30€/hour, which is already a piss poor rate for freelance software development. 

    People just want free shit, but they can't even be bothered to use the fightclass editor to make an autokicker script.

    Plus it's actually really scummy and you'll just stay hardstuck 1900 instead. Don't bring cheats to competitive environments. Just git gud, shitters.
     

  6. If it was detected, no bot would ever escape and you'd get caught just for using wRotation. Detected means they can detect that the bot attaches to the game and alters the game's state in memory.

    If people use repetitive behavior or are otherwise "easily" recognized as bots, they get caught in reports. I've botted on Warmane for long enough to know it's not detected.
    They have employed "traps" in the past to make some things bots do harder. But wRobot usually worked around those.

  7. Replay packets are mostly just movement and some spell packets. They're incredibly small. Take a look at Nostalrius source for a general idea of how it works. 

     

    I wasn't talking about renting hardware, I was talking about overhead of processing power that saving every little action like player positions (not movement packets) would have. Not to mention you'd never store what is essentially non-relational big data in "another MySQL database". They have 7-8k players at peak time, server ticks are every 50ms and they're trying to keep them that low. Even if you somehow delegated all that logging to a separate thread/connection pool without blocking your map update threads, you'd lose out on a lot of performance that they need for other things. 

    There's a reason character save operations are only executed at certain points and rollbacks can happen. That shit is expensive. 

     

    Tbc client doesn't have decent warden. They simply can't do anything special with it against a bot that covers its tracks. So analysis is the only option. But they're hindered by resources on that one. 

×
×
  • Create New...