[QUOTE=MeepDarknessM;45682376]-snipe read wrong at first
Also, most skids don't even know what next is.[/QUOTE]
The ones who make cheats do. Next isn't much different from pairs in how many people know it.
[quote]
And so what if I use two? If I don't use two, then someone could just bypass one function. What's the difference?[/QUOTE]
Using two results in the redundant code which is exactly what I ridiculed in my first post about it.
People who bypass one function can just as easily bypass the other. Besides, overriding just one of those functions can most likely already cripple your anticheat. Even if people could override only one of these functions, they would still break your anticheat as easily as without this measure.
It truly does absolutely nothing to make the code more secure, except perhaps security by obscurity because of your code quality, haha!
[QUOTE=Phoenixf129;45682237]I'm afraid if I post popcorn.gif I will be banned :v:
Well he did state in the title "The reason why I am called a skid"... so you all know what you came here for.[/QUOTE]
I think the name of the thread was about the only thing he did correctly.
If I copy the code and change the variable names, could I release Exho Anti Cheat?
Better yet, I'll put it on Coderhire!
[QUOTE=MeepDarknessM;45682315]lmao, I am not a beginner. Stop being a self-righteous retard who thinks they know everything. You obviously don't know what i've coded and why I coded what I posted here how I did. You are not helping anyone by posting stuff like that.[/QUOTE]
You're right, he doesn't know everything. He did however take lightrp and transformed it into his own gamemode successfully creating the most popular gamemode in garry's mod's existence. So that might give him a little bit of a headstart on you. You're receiving harsh criticism for a reason. We may be a bunch of dicks here at facepunch but only when there is a reason. Instead of telling everyone they are wrong, you might want to fight fire with water and respond with kind logic - because that is exactly what you will get back.
Everyone is giving you reasons for why you are wrong, do you need to see the failure with your own eyes to believe it?
[QUOTE=LauScript;45682780]You're right, he doesn't know everything. He did however take lightrp and transformed it into his own gamemode successfully creating the most popular gamemode in garry's mod's existence. So that might give him a little bit of a headstart on you. You're receiving harsh criticism for a reason. We may be a bunch of dicks here at facepunch but only when there is a reason. Instead of telling everyone they are wrong, you might want to fight fire with water and respond with kind logic - because that is exactly what you will get back.
Everyone is giving you reasons for why you are wrong, do you need to see the failure with your own eyes to believe it?[/QUOTE]
Popularity != Quality
[lua]
function ac.IsEqual(f1, f2)
DebugPrint();
return f1 == f2 and tostring(f1) == tostring(f2) and _G.tostring(f1) == _G.tostring(f2) and _G.tostring(f1) == tostring(f2) and _G.tostring(f2) == tostring(f1);
end
[/lua]
In what case would any of these checks be false?
[editline]13th August 2014[/editline]
Unless you decide to overwrite tostring
[QUOTE=Chessnut;45683531][lua]
function ac.IsEqual(f1, f2)
DebugPrint();
return f1 == f2 and tostring(f1) == tostring(f2) and _G.tostring(f1) == _G.tostring(f2) and _G.tostring(f1) == tostring(f2) and _G.tostring(f2) == tostring(f1);
end
[/lua]
In what case would any of these checks be false?
[editline]13th August 2014[/editline]
Unless you decide to overwrite tostring[/QUOTE]
Never. At all.
The only thing it might do is waste performance.
It's like writing
[lua]
return a == b and a == b and b == a
[/lua]
[QUOTE=StonedPenguin;45683103]Popularity != Quality[/QUOTE]
Whoops forgot to hit the post button.
While this is true, my point is still valid. And believe me, i'm not neccessarily a darkrp fan
[QUOTE=Chessnut;45683531][lua]
function ac.IsEqual(f1, f2)
DebugPrint();
return f1 == f2 and tostring(f1) == tostring(f2) and _G.tostring(f1) == _G.tostring(f2) and _G.tostring(f1) == tostring(f2) and _G.tostring(f2) == tostring(f1);
end
[/lua]
In what case would any of these checks be false?
[editline]13th August 2014[/editline]
Unless you decide to overwrite tostring[/QUOTE]
See, if people override tostring blahblahblah c+p coding is best coding.
[QUOTE=Chessnut;45683531][lua]
function ac.IsEqual(f1, f2)
DebugPrint();
return f1 == f2 and tostring(f1) == tostring(f2) and _G.tostring(f1) == _G.tostring(f2) and _G.tostring(f1) == tostring(f2) and _G.tostring(f2) == tostring(f1);
end
[/lua]
In what case would any of these checks be false?
[editline]13th August 2014[/editline]
Unless you decide to overwrite tostring[/QUOTE]
case a) overwrite a function
case b) overwrite tostring
[editline]14th August 2014[/editline]
[QUOTE=HumbleTH;45683851]See, if people override tostring blahblahblah c+p coding is best coding.[/QUOTE]
Just so you know, I was the second (*looks at Willox*) documented to think of detouring tostring in hacks. I did it in my glua hack for a while and bypassed leyac for a couple months.
[QUOTE=MeepDarknessM;45684135]
Just so you know, I was the second (*looks at Willox*) documented to think of detouring tostring in hacks. I did it in my glua hack for a while and bypassed leyac for a couple months.[/QUOTE]
At which point in your story did you document yourself entering psychosis?
Just kidding, but seriously, if you could point me in the direction of the gmod keeper of archives that'd be great because i'm interested in this documentation.
[editline]14th August 2014[/editline]
I can't stop imagining a dwarf sitting in a cave located in garry's basement with a huge book now. What have you done to me.
This thread is getting boring, someone bring up religion and how they are better then others please.
[QUOTE=sam6420;45685075]Why are there 3 pages on a troll thread? Did I come late orwat?[/QUOTE]
I have a feeling this is going to get closed soon, enjoy it while it lasts.
[QUOTE=MeepDarknessM;45684135]case a) overwrite a function
case b) overwrite tostring
[editline]14th August 2014[/editline]
Just so you know, I was the second (*looks at Willox*) documented to think of detouring tostring in hacks. I did it in my glua hack for a while and bypassed leyac for a couple months.[/QUOTE]
Are you fucking retarded? People did that in GMod12.
[img]http://4st.me/elNbu.png[/img]
[url]http://steamcommunity.com/id/peeMssenkraDpeeM/[/url]
Get wrecked.
[QUOTE=MeepDarknessM;45684135]
[QUOTE=Chessnut;45683531][lua]
function ac.IsEqual(f1, f2)
DebugPrint();
return f1 == f2 and tostring(f1) == tostring(f2) and _G.tostring(f1) == _G.tostring(f2) and _G.tostring(f1) == tostring(f2) and _G.tostring(f2) == tostring(f1);
end
[/lua]
In what case would any of these checks be false?
[editline]13th August 2014[/editline]
Unless you decide to overwrite tostring[/QUOTE]
case a) overwrite a function
[highlight]case b) overwrite tostring[/highlight]
[/QUOTE]
Here's some [i]true[/i] irony guys.
By using your [i]ac.IsEqual[/i] function, you have created [u]the exact[/u] exploit you just claimed to avoid. You can fuck up [i]ac.IsEqual[/i] [b]by overriding tostring[/b].
When [i]f1[/i] and [i]f2[/i] are equal you can make [i]ac.IsEqual[/i] return any value to your liking.
[lua]
-- His function, for reference
function ac.IsEqual(f1, f2)
DebugPrint();
return f1 == f2 and tostring(f1) == tostring(f2) and _G.tostring(f1) == _G.tostring(f2) and _G.tostring(f1) == tostring(f2) and _G.tostring(f2) == tostring(f1);
end
-- How to exploit it:
local _tostring = tostring
local lastSeen
function tostring(x)
-- if trace isn't from meep then return _tostring(x) end, whatever
if x == lastSeen and IFeelLikeIt then -- Substitute IFeelLikeIt with a more useful condition
return _tostring(x) .. "not equal"
end
lastSeen = x
return _tostring(x)
end
print(ac.IsEqual(3, 3)) -- output: true
IFeelLikeIt = true
print(ac.IsEqual(3, 3)) -- output: false[/lua]
hahahaha
[QUOTE=MeepDarknessM;45684135]case a) overwrite a function
case b) overwrite tostring
[editline]14th August 2014[/editline]
Just so you know, I was the second (*looks at Willox*) documented to think of detouring tostring in hacks. I did it in my glua hack for a while and bypassed leyac for a couple months.[/QUOTE]
You claimed to me you were undetected and I believed you, but after cracking your hack I tried it myself and triggered some detections that were there since LeyAC stopped being blacklist based, aka around 1 month after leyac release.
Your pasting skills suck too badly for overwriting stuff properly, even the fact that you use loading priority doesn't help - causing your great overwrites to break gamemodes like stronghold, zs, just by using them.
Overwriting tostring is as useful as overwriting nothing, because the memory addresses are dynamic aka - they change.
Only thing where it would be useful are the few builtin functions.
[QUOTE=Reyjr43;45685815][t]http://4st.me/elNbu.png[/t][/QUOTE]
Apparently valve's servers don't like people forcing seeds. :v:
[QUOTE=MeepDarknessM;45687931]Apparently valve's servers don't like people forcing seeds. :v:[/QUOTE]
So are you going to make up another excuse for your tostring failure or just keep giving people dumb ratings and avoid replying to it because you don't know how to script?
Because i'm sure you must have an explanation you can fumble for somewhere and you already know we want to hear it.
[QUOTE=LauScript;45687981]So are you going to make up another excuse for your tostring failure or just keep giving people dumb ratings and avoid replying to it because you don't know how to script?
Because i'm sure you must have an explanation you can fumble for somewhere and you already know we want to hear it.[/QUOTE]
if it doesn't equal once, then it should equal again. so if it returns false ever, it should return false every other time. you guys need to read my code better before criticizing me.
[QUOTE=MeepDarknessM;45688777]if it doesn't equal once, then it should equal again. so if it returns false ever, it should return false every other time. you guys need to read my code better before criticizing me.[/QUOTE]
Did you completely disregard fptje's post or were you unable to understand?
[QUOTE=LauScript;45688803]Did you completely disregard fptje's post or were you unable to understand?[/QUOTE]
-snip
I only ever check for if not equal. So it doesn't matter.
[QUOTE=MeepDarknessM;45688974]-snip
I only ever check for if not equal. So it doesn't matter.[/QUOTE]
Well, he answered it, it's obvious he wasn't able to understand :v:
Oh, and yeah, you can make that return true and false...so...you're still wrong, but that comes as no surprise. You can alter f1 and f2 on the first call and make them your own variables then parse them, you know that, right?
[QUOTE=Reyjr43;45689121]Well, he answered it, it's obvious he wasn't able to understand :v:
Oh, and yeah, you can make that return true and false...so...you're still wrong, but that comes as no surprise.[/QUOTE]
really? so if someone loads after autorun they can bypass the tostring i localized before autorun? makes sense
[QUOTE=MeepDarknessM;45689157]really? so if someone loads after autorun they can bypass the tostring i localized before autorun? makes sense[/QUOTE]
Because putting it IN the autorun folder makes it load BEFORE autorun, good fucking job jackass.
You look up tostring in the global table, so if anyone were to overwrite the normal function they'd render your shit useless.
[QUOTE=Reyjr43;45689176]Because putting it IN the autorun folder makes it load BEFORE autorun, good fucking job jackass.[/QUOTE]
it's not even in the autorun folder you nerd
[QUOTE=MeepDarknessM;45689182]it's not even in the autorun folder you nerd[/QUOTE]
Including it at autorun doesn't make it load before autorun either.
EDIT: Oh, nevermind, you stole Ley's method. GG, 1:1
[QUOTE=Reyjr43;45689192]Including it at autorun doesn't make it load before autorun either.[/QUOTE]
it's not even included in the autorun folder you nerd. You obviously didn't read any of my anticheat.
[QUOTE=MeepDarknessM;45689197]it's not even included in the autorun folder you nerd. You obviously didn't read any of my anticheat.[/QUOTE]
You stole LeyAC's "before" autorun method anyway, 1:1 GJ kiddo, you can C+P.
You just magically found out that you can AddCSLua the file yourself along with the new init and load faster than autorun, you're very smart to have found that out by stealing it from Ley...I mean...finding it out yourself.
[QUOTE=Reyjr43;45689192]EDIT: Oh, nevermind, you stole Ley's method. GG, 1:1[/QUOTE]
"stole ley's method"
hex did it way before him, so that's one point wrong. second, I didn't steal anyone's method. I did what any anticheat maker with common sense would do.
[QUOTE=MeepDarknessM;45689212]"stole ley's method"
hex did it way before him, so that's one point wrong. second, I didn't steal anyone's method. I did what any anticheat maker with common sense would do.[/QUOTE]
You're right, HeX did it in GMod12 with a module, but since somewhere in GMod13 you've been able to do it, but I haven't seen anyone else but Ley do it except for you, who just magically "found it out" with your pro IDA skills that copy and paste the error directly, because the error explains itself, just like how copying your new init.lua file explained itself, I'm guessing you found that out in IDA :v:
EDIT: Oh yeah, and you must've found out the EXACT same method as Ley, right, because after all it IS 1:1 copy+paste...I mean...coded 1:1 just because great minds think exactly alike.
Sorry, you need to Log In to post a reply to this thread.