Matenia
-
Posts
2222 -
Joined
-
Last visited
Reputation Activity
-
Matenia reacted to Apexx in Authenticate Your Intellectual Property
I stumbled across a website the other day, while looking for an alternative to Rocketr to process payments, and validate plugins, fight classes, etc.
when I found, cryptlex (Powerful software licensing API).
Quick Start
Using LexActivator with C#
After working with the code a bit, I wanted to share a demo project, along with a demo product online, as well as license keys if anyone would like to test it out for themselves.
This project may have bugs and may not work 100%. I am hoping if other programmers check out the code they can offer ideas, comments, and even
constructive criticism using this method.
There is a "WRobot" directory in the attached zip file that stores the files required to run the LexActivator C# wrapper as well as the plugin and the product.dat file.
Extract the files into their appropriate directory.
VirusTotal
CryptlexAuthenticator.zip
-
Matenia got a reaction from Floood0 in Pathfinder does not work with buildings
It uses a pathfinding server, so there are no client side meshes.
If you don't disable pathing and you're on the real trial, it will path find correctly.
-
Matenia got a reaction from Pudge in Bot ignoring complete condition
GoToTask is blocking, it will not stop walking unless you also pass a breaking condition to the "whileCondition" parameter.
Or use normal MovementManager.Go which is not blocking - but if you have a complete condition, it will just call MovementManager.Go over and over until the condition is fulfilled.
This is tick-based vs blocking.
-
Matenia got a reaction from Pudge in IsValid and != null
IsValid checks if it still exists in objectmanager. You never need it, unless you store a unit over a long period of time.
Because when you move 100 yards from the point of unit acquire, it might have disappeared from the objectmanager and not been updated either.
-
Matenia got a reaction from Strijder in Force sell item without force2town
Do not explicitly set ForceToTown back to false. It's not a blocking call and after the vendor run was successful, the ToTown state sets it back itself.
-
Matenia got a reaction from Bambo in Banned with no reason
Plus you don't even have a wrobot license, how on earth did you end up here?
-
Matenia got a reaction from Stresse in Fightclass Framework for 2.4.3/3.3.5a and more
If you've seen my 1.12 fightclass framework, this is basically the much enhanced version.
It should work for WoW 2.4.3 and 3.3.5a, possibly many more expansions. The only thing you would have to do is adjust the way combatlog events are parsed, if paramters have changed in your expansion. Everything else should be handled by wRobot.
Below you can find the GitHub repository. It also contains a very simple enhancement shaman fightclass as an example that you could change to fit your own needs.
This is for developers only. If you're a regular user, I recommend just buying my fightclasses. They are, in my opinion, fairly priced.
Features:
- checks with server if a spell was successful
- support for different types of spells
- no more double casts of any sort (heals, debuffs, damage)
- possibility to ignore server responses
- easy offtarget handling
- performant caching and rotation handling
- possibility to use as a healing framework
- support for wanding
- multilanguage support
- dispel by debuff type
https://github.com/Schaka/wRobotFightclassFrameworkEnhanced
@Droidz would be nice if you could sticky/pin this thread
-
Matenia got a reaction from Pudge in Conditions.IsAttackedAndCannotIgnore
Sometimes it returns true if you can ignore the mobs attacking you, for example if you're on mount with the correct options or you're supposed to ignore pulls while traveling or if Conditions.ForceIgnoreIsAttacked is activated.
I recommend you just decompile the binaries and see for yourself. Even with the code being obfuscated, you can usually see these simple things.
-
Matenia got a reaction from 79135 in endless.gg ?
Then why did you bother commenting on a thread that's specifically in regards to anti-cheat on a very specific TBC server?
Could it possibly be because most of your posts are to make yourself sound more important and knowledgable while contributing nothing to the topic at hand?
I've said this many times, but often your answers are so incomplete or off-topic that they do more damage than they help anybody. This was just another case. So as long as you keep doing that, I'll happily correct you publically so people can actually find an answer to their question. I genuinely don't understand your need to push your post count into oblivion and make yourself seem soooo important at any chance you can get.
-
Matenia got a reaction from Ordush in endless.gg ?
Smokie, your input is basically entirely incorrect. The warden module that let's you execute arbitrary Lua code on the client doesn't work in 2.4.3.
So everything you said is true for wotlk (but by far not the only way they're detecting hacks and bots) and has been known for years. Still doesn't apply here at all and you're just making yourself look like a fool to anyone who actually has a little understanding on the matter.
-
Matenia got a reaction from Ordush in endless.gg ?
Then why did you bother commenting on a thread that's specifically in regards to anti-cheat on a very specific TBC server?
Could it possibly be because most of your posts are to make yourself sound more important and knowledgable while contributing nothing to the topic at hand?
I've said this many times, but often your answers are so incomplete or off-topic that they do more damage than they help anybody. This was just another case. So as long as you keep doing that, I'll happily correct you publically so people can actually find an answer to their question. I genuinely don't understand your need to push your post count into oblivion and make yourself seem soooo important at any chance you can get.
-
Matenia got a reaction from Marsbar in endless.gg ?
Then why did you bother commenting on a thread that's specifically in regards to anti-cheat on a very specific TBC server?
Could it possibly be because most of your posts are to make yourself sound more important and knowledgable while contributing nothing to the topic at hand?
I've said this many times, but often your answers are so incomplete or off-topic that they do more damage than they help anybody. This was just another case. So as long as you keep doing that, I'll happily correct you publically so people can actually find an answer to their question. I genuinely don't understand your need to push your post count into oblivion and make yourself seem soooo important at any chance you can get.
-
Matenia got a reaction from jefferson454 in endless.gg ?
Then why did you bother commenting on a thread that's specifically in regards to anti-cheat on a very specific TBC server?
Could it possibly be because most of your posts are to make yourself sound more important and knowledgable while contributing nothing to the topic at hand?
I've said this many times, but often your answers are so incomplete or off-topic that they do more damage than they help anybody. This was just another case. So as long as you keep doing that, I'll happily correct you publically so people can actually find an answer to their question. I genuinely don't understand your need to push your post count into oblivion and make yourself seem soooo important at any chance you can get.
-
Matenia got a reaction from scsfl in Forwarding lua events in C#
Don't create a frame locally and you'll find you can actually access globally. It's Lua 101.
-
Matenia got a reaction from scsfl in Forwarding lua events in C#
Pro tip: There are no events being skipped.
If you look at my framework it works perfectly.
If you're running patch 6.x or higher, you need your own combatlog parser. Create a lua frame that subscribes to the event, get the payload, store it in a table and periodically empty the table and read the contents "line by line".
-
Matenia got a reaction from Pudge in wManagerSetting.CurrentSetting.PathFinderFromServer
It will simply create a straight "path" without meshes if you disable that option.
-
Matenia got a reaction from Pudge in Protection from SpellManager.CastSpellBy && LuaDoString (or what?)
If they don't check your IP (seems you're proxying) they might check your GetTime() (Lua) result because it is unique to your computer. You can modify this function by hooking it and adding a random offset. Search the forums.
-
Matenia got a reaction from TheSmokie in World explore lua problem
Did you just link him to a thread where the answer was his own?
-
Matenia got a reaction from Zan in World explore lua problem
Did you just link him to a thread where the answer was his own?
-
Matenia got a reaction from Pudge in Protection from SpellManager.CastSpellBy && LuaDoString (or what?)
They probably disconnected you, because you didn't have their MPQs.
You can probably add a custom MPQ that's loaded at the very beginning that just loads FrameXML or something that copies CastSpellByName
originalCastSpellByName = CastSpellByName -- later in wrobot use this code: originalCastSpellByName("Frostbolt") Maybe that will work. Otherwise - weird. THey definitely heavily modify the UI with their MPQs
-
Matenia got a reaction from TheSmokie in Is there a way to blacklist an NPC by ID as opposed to current target?
Add the entry 23534 to the blacklist editor under entryid (name doesn't matter, but feel free to add it).
You can also open HMP's settings and add it to the trainer blacklist there (again, gotta add 23534)
-
Matenia got a reaction from TheSmokie in Fightclass Framework for 2.4.3/3.3.5a and more
There will be no updates for people who don't even own a wRobot license. Me telling you what to do to fix it was already generous. It's an incredibly easy fix in only 2 methods.
-
Matenia got a reaction from TheSmokie in Fightclass Framework for 2.4.3/3.3.5a and more
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); }); }
-
Matenia got a reaction from Kamogli in Fightclass Framework for 2.4.3/3.3.5a and more
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); }); }
-
Matenia got a reaction from scsfl in Fightclass Framework for 2.4.3/3.3.5a and more
If you've seen my 1.12 fightclass framework, this is basically the much enhanced version.
It should work for WoW 2.4.3 and 3.3.5a, possibly many more expansions. The only thing you would have to do is adjust the way combatlog events are parsed, if paramters have changed in your expansion. Everything else should be handled by wRobot.
Below you can find the GitHub repository. It also contains a very simple enhancement shaman fightclass as an example that you could change to fit your own needs.
This is for developers only. If you're a regular user, I recommend just buying my fightclasses. They are, in my opinion, fairly priced.
Features:
- checks with server if a spell was successful
- support for different types of spells
- no more double casts of any sort (heals, debuffs, damage)
- possibility to ignore server responses
- easy offtarget handling
- performant caching and rotation handling
- possibility to use as a healing framework
- support for wanding
- multilanguage support
- dispel by debuff type
https://github.com/Schaka/wRobotFightclassFrameworkEnhanced
@Droidz would be nice if you could sticky/pin this thread