[QUOTE=Frozendairy;45754029]I'm sorry that you cannot comprehend a joke, what type of autism do you have?[/QUOTE]
You can't possibly believe we would think you have any sense of logic after all you've posted on this thread
Guys
[QUOTE=Frozendairy;45753940]A hacker is a hacker. [/QUOTE]
humans don't change
never
he proved it
[editline]21st August 2014[/editline]
He is like hex - but more paranoid
Report and move guys
-snip-
[editline]21st August 2014[/editline]
Way to fuck my automerge dude
[QUOTE=LennyPenny;45754090]Guys
humans don't change
never
he proved it
[editline]21st August 2014[/editline]
He is like hex - but more paranoid[/QUOTE]
I don't see as to how he is like Hex, Hex knew how to code and Hex was a Nice guy and thirdly He had common sense etc.
[QUOTE=BigBadWilly;45754311]I don't see as to how he is like Hex, Hex knew how to code and Hex was a Nice guy and thirdly He had common sense etc.[/QUOTE]
He was a nice guy that unbound all your keys and stole files from people's hard drives.
[QUOTE=Frozendairy;45752204]Metaphorical situations make for a good eye opener for narrow minded people as yourselves.[/QUOTE]
says the narrow minded person
[QUOTE=Frozendairy;45753940]You're logic is flawed if you believe that someone can change because they want to join a server.[/QUOTE]
I guess you also think anyone who goes to jail should automatically be given a life sentence regardless of the severity of the crime they committed? Perhaps you're (lol) own logic is flawed?
[QUOTE=Frozendairy;45754029]I'm sorry that you cannot comprehend a joke, what type of autism do you have?[/QUOTE]
Calling someone autistic because of a misunderstood, unobvious joke conveyed through text on a screen says a lot about your social skills.
[QUOTE=Frozendairy;45753940]I've covered this. A hacker is a hacker. That's it. You're logic is flawed if you believe that someone can change because they want to join a server. They should automatically be kicked off of a server and have all of their keys unbinded.
[code]
RunConsoleCommand("unbindall")
print("Go away, you failed.")
RunConsoleCommand("disconnect")
[/code][/QUOTE]
My first Steam account was banned for using "bind mouse1 "+attack;wait;+lookdown;wait;wait;wait;-lookdown"
Am I a hacker? No, I haven't ever used a cheat in any online games because they're unfair. I used the built in system on a closed server and was unjustly banned permanently for it ( orange flashing text on screen after I clicked once and found it didn't even work ). I think I am going to e-mail them and have them remove it since it is a disgusting system that doesn't work and has too many false positives. It happened shortly after VAC came out during the whole "Steaming pile" discussions after Steam was released with a ton of problems.
A false positive is WORSE than a true negative because you're banning innocent people.
But; my admin mod that I'll be releasing soon will cover VAC Ban detection. It'll let the server owner configure how they want to handle it from: Restricting the account ( basic guest access, locks it from , denying the account from joining ( with options ranging from.. if the ban is less than 30 days or so, schedule an interview with the server-owner because they may be a decent person and may be a false positive, or may want a second chance, etc ), Alert the server of VAC Ban status with days since last ban and number of bans on join, etc...
Here's a word of advice.. I've caught people cheating on servers and I've banned people for cheating on servers. Some servers take a strict, zero tolerance, attitude, and others talk to the player and ask them to disable the cheats. I've found that in a lot of situations, banning someone without talking to them will cause more headaches than it is worth. I've also found that when you talk to them, they may deny it at first ( just let them know you witnessed it and have recordings plus other systems in place, and that they ARE caught ), but once they know they are caught and all you ask them to do is respect the rules of the server so that everyone may have an enjoyable time on the server... 99% of the time they apologize and disable them for the rest of their time on the server and actually come back to play ( fairly, I might add )! The odd 1% chance is that they're just out to piss people off...
[QUOTE=Acecool;45755686]My first Steam account was banned for using "bind mouse1 "+attack;wait;+lookdown;wait;wait;wait;-lookdown"
Am I a hacker? No, I used the built in system on a closed server and was banned permanently for it ( orange flashing text on screen after I clicked once and found it didn't even work ). I think I am going to e-mail them and have them remove it since it is a disgusting system that doesn't work and has too many false positives.
A false positive is WORSE than a true negative because you're banning innocent people.[/QUOTE]
that's not something you can get banned for
[QUOTE=Bumrang;45755744]that's not something you can get banned for[/QUOTE]
I'm not saying it is something you can be banned for now-a-days, however, it was when VAC first came out. It was classified as a "No recoil hack" on the screen.
[QUOTE=Acecool;45755764]I'm not saying it is something you can be banned for now-a-days, however, it was when VAC first came out. It was classified as a "No recoil hack" on the screen.[/QUOTE]
I can't seem to find the information over the wave of whiny kids and their TF2-hack.
However if I do remember correct. Steam used to ban for non 3th-party 'ticks' in the old days.
Some special keybinds for example.
[edit]
However a vac that's over 5 years old shouldn't be blacklisted. The person most likely regret what happened or it might even be someones little brother.
If you're going to blacklist vac'ed people .. at least only list recent bans.
[QUOTE=Nak;45755814]I can't seem to find the information over the wave of whiny kids and their TF2-hack.
However if I do remember correct. Steam used to ban for non 3th-party 'ticks' in the old days.
Some special keybinds for example.
[edit]
However a vac that's over 5 years old shouldn't be blacklisted. The person most likely regret what happened or it might even be someones little brother.
If you're going to blacklist vac'ed people .. at least only list recent bans.[/QUOTE]
I used to create pretty sophisticated scripts ( for what we had to work with ) for CS and HL, pushing alias, and binds to the limit. Essentially macros and menus to go next, previous, select ( nested menus too for character selection and move selection ), etc...
All of that came after the ban though, I started making those scripts when I got involved in the modding community to help manage the sites for Triforce Mod, DragonModZ and quite a few others ( made a content management system that I could update my site and have all of the other sites update in real-time. I tried asking around to see if it was possible and everyone I came across told me that it wasn't... but it was. )
Thanks for posting the confirmation regarding the keybinds for those that doubted it was actually a thing early on.
For the OP:
Here is a list of essentially what you can do with the Steam API without a key: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/_utilities/_steam_api/nonkey_api_list.txt[/url]
and with a key: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/_utilities/_steam_api/keyed_api_list.txt[/url]
Here are "cleaned" versions, essentially the URL without the common prefix of : "http://api.steampowered.com/";
No key required: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/_utilities/_steam_api/nonkey_api_list_cleaned.txt[/url]
Key required: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/_utilities/_steam_api/keyed_api_list_cleaned.txt[/url]
Please note, the "key-required" lists do have the non-key required items mixed in.
You can obtain a key here for your server ip ( 1 key per account ): [url]http://steamcommunity.com/dev/apikey[/url]
The URL for detecting vac bans: [code]http://api.steampowered.com/ISteamUser/GetPlayerBans/v0001/?key=%s&steamids=%s&format=json[/code]
And how to use it:
[code]http.Fetch( _url, function( _data )
local _tab = util.JSONToTable( _data );
local _pdata = _tab.players[ 1 ];
if ( _callback ) then
_callback( _pdata.CommunityBanned, _pdata.VACBanned, _pdata.EconomyBan, _pdata.NumberOfVACBans, _pdata.DaysSinceLastBan )
end
end );[/code]
How I use it ( In player_connect game-event ) with _steam being the SteamID of the player and the second argument being _callback:
[code] // Check VAC Bans
STEAM_API:GetBanHistory( _steam, function( _communityban, _vacban, _economyban, _bancount, _dayslastbanned )
MsgC( COLOR_CYAN, "[" .. GAMEMODE.Name .. "]", COLOR_GREEN, "-VACBans: [ \"" .. _name .. "\" " .. _steam .. " ]" );
if ( _bancount > 0 ) then
MsgC( COLOR_RED, "- FOUND - #" .. _bancount .. " bans with last being " .. _dayslastbanned .. " ago!" );
if ( _communityban ) then MsgC( COLOR_RED, " C " ); end
if ( _vacban ) then MsgC( COLOR_RED, " V " ); end
if ( _economyban ) then MsgC( COLOR_RED, " E " ); end
// Here's how to add a "kick" if the ban isn't 30 days old; NOT RECOMMENDED. I'd only recommend output info to server on join, or to admins until the user is cleared as being either a minge or good player
if ( _dayslastbanned < 30 ) then
// RunConsoleCommand( "kickid", _steam );
end
else
MsgC( COLOR_GREEN, " : NONE!" );
end
MsgC( COLOR_GREEN, "\n" );
end );[/code]
This is the full function to get an idea of what it looks like in terms of being called.
[code]//
// Ban History Helper-function as example... Won't work without the basics of this set-up. It will be released in my acecool_devbase in the near future.
//
function STEAM_API:GetBanHistory( _steam, _callback )
// Takes 64 or 32 as input and outputs both 32 and 64 in same order every time
local _steamid, _steamid64 = self:TranslateSteamID( _steam );
// Bots don't get VAC banned...
if ( _steamid == "BOT" ) then return false; end
// STEAM_API.KEY is the API Key, and _steamid64 is the steam id we're looking into, they're string.formatted into the url
local _varargs = { self.KEY, _steamid64 };
// The url to use ( the self.query_url is the url given above ( common prefix )...
local _urlstring = "ISteamUser/GetPlayerBans/v0001/?key=%s&steamids=%s&format=json";
local _url = string.format( self.query_url .. _urlstring, unpack( _varargs ) );
// Posted above, but to show you the context of what it looks like within this function, to see the base function args, etc... Takes the formatted url as input, only using on success callback with _data being the content that is retured
http.Fetch( _url, function( _data )
// Converting the JSON data returned to a useable table
local _tab = util.JSONToTable( _data );
// Referencing the player data table ( this should always exist and report either yay or nay )
local _pdata = _tab.players[ 1 ];
// If a callback function was input, callback with the data in _pdata as arguments
if ( _callback ) then
_callback( _pdata.CommunityBanned, _pdata.VACBanned, _pdata.EconomyBan, _pdata.NumberOfVACBans, _pdata.DaysSinceLastBan )
end
end );
end[/code]
I wouldn't ban permanently for VAC violations as they can be a joke. I output the information to admins, and the check is bypassed for players with a good account standing ( so it is for first-joiners primarily to keep an eye on any potential bad flags, and for users not-quite known )
to do it all you have to do is use the steam api and parse the json - you can get number of vac bans and days
but im not going to give you code because your idea is stupid
edit: i just realized i got ninja'd hard, sorry
gg on spoonfeed btw guys
oh and yes, vac1 used to ban for faulty memory too
watch out uninstall your antiviruses before they openprocess and readprocessmemory
vac was stupid once but now, trust me, it's decent.
wasd
[QUOTE=Acecool;45756191]Spoon feeding[/QUOTE]
Not a single variable without an underscore for a prefix. For some reason it makes it harder to read...
[QUOTE=dingusnin;45757030]Not a single variable without an underscore for a prefix. For some reason it makes it harder to read...[/QUOTE]
I follow my coding standards: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/_tutorial_quizzes/_coding_standards.lua.html[/url]
Essentially locals use _, globals do not unless it is a redirect like __PRINT = __PRINT || print; where they shouldn't be touched. Enumeration and CONSTs are all caps. When I add boolean logic to a variable I use _bIsX, etc...
It may be "hard to read" initially, but being able to tell where a variable is defined by how it is named helps greatly!
honestly i think hungarian notation and all this stuff is bullshit
if it was hard to write it should be hard to understand
if you write it you MUST know what it means
NOT TO MENTION that if you want to change a var then you have to change it all over the code
[QUOTE=Acecool;45757097]I follow my coding standards: [url]https://dl.dropboxusercontent.com/u/26074909/tutoring/_tutorial_quizzes/_coding_standards.lua.html[/url]
Essentially locals use _, globals do not unless it is a redirect like __PRINT = __PRINT || print; where they shouldn't be touched. Enumeration and CONSTs are all caps. When I add boolean logic to a variable I use _bIsX, etc...
It may be "hard to read" initially, but being able to tell where a variable is defined by how it is named helps greatly![/QUOTE]
*vomits* It's not a coding standard if no one else uses it. Locals are locals, only exist in the current scope. why bother with underscore prefix when they are not globals? That's the only time where something you don't want to be touched should have an underscore.
Anyway, I am not here to rant about how everyone codes.
[QUOTE=dingusnin;45757215]*vomits* It's not a coding standard if no one else uses it. Locals are locals, only exist in the current scope. why bother with underscore prefix when they are not globals? That's the only time where something you don't want to be touched should have an underscore.
Anyway, I am not here to rant about how everyone codes.[/QUOTE]
Coding Standard: [url]http://en.wikipedia.org/wiki/Coding_standard[/url]
[quote]Coding conventions are a set of guidelines for a specific programming language that recommend programming style, practices and methods for each aspect of a piece program written in this language. ...[/quote]
[quote]These conventions usually cover file organization, indentation, comments, declarations, statements, white space, naming conventions, programming practices, programming principles, programming rules of thumb, architectural best practices, etc. These are guidelines for software structural quality. Software programmers are highly recommended to follow these guidelines to help improve the readability of their source code and make software maintenance easier. Coding conventions are only applicable to the human maintainers and peer reviewers of a software project. Conventions may be formalized in a documented set of rules that an entire team or company follows, or may be as informal as the habitual coding practices of an individual. Coding conventions are not enforced by compilers. As a result, not following some or all of the rules has no impact on the executable programs created from the source code.[/quote]
More info:
[quote]A coding style is a set of rules that a programmer uses for choosing an expressive form to use in a given situation. Usually these rules are aesthetic, but sometimes there are efficiency issues involved; this section describes a few choices that have non-obvious efficiency consequences.[/quote]
It doesn't matter if no one uses it, or everyone does. It is a coding standard because it is a set of guidelines as to how each aspect of the code should be written.
This is exactly why it is part of my class that I teach, so that people understand what a standard is, why it is used, why it is important to be able to quickly adapt between them as companies may use one for one programming language, and another for a different, or they may use a universal one within the company so that each programmer working on a project can expect to look at the code and easily read and understand it.
[quote]Where coding conventions have been specifically designed to produce high quality code, and have then been formally adopted, they then become coding standards. Specific styles, irrespective of whether they are commonly adopted, do not automatically produce good quality code. It is only if they are designed to produce good quality code that they actually result in good quality code being produced, i.e., they must be very logical in every aspect of their design - every aspect justified and resulting in quality code being produced.
Good procedures, good methodology and good coding standards can be used to drive a project such that the quality is maximized and the overall development time and development and maintenance cost is minimized.[/quote]
[QUOTE=Acecool;45757388]Coding Standard:-snip-[/QUOTE]
Look I'll be blunt here, we don't care that you have to explain your coding convention every time you try to help someone with your underscores filled code.
All it does is just derail the thread , especially if you drop a massive wall of text like this one , so please just post the solution and move on.
As much as I hate to point it out, because I think the way Acecool codes doesn't help anyone at all, [i]his[/i] coding standards aren't only used by him. Take [url=http://puu.sh/b1Mwa/0e31a121c5.txt]Microsoft's CRT initialization[/url] code for example.
Anyway, why bother banning someone that isn't actually cheating? You're just losing players for no reason, especially if they [i]didn't cheat[/i]. What if for example, someone sold their counterstrike VAC banned account that owned garrysmod to someone else? Why should they be banned?
[QUOTE=>>oubliette<<;45757514]As much as I hate to point it out, because I think the way Acecool codes doesn't help anyone at all, [i]his[/i] coding standards aren't only used by him. Take [url=http://puu.sh/b1Mwa/0e31a121c5.txt]Microsoft's CRT initialization[/url] code for example.
Anyway, why bother banning someone that isn't actually cheating? You're just losing players for no reason, especially if they [i]didn't cheat[/i]. What if for example, someone sold their counterstrike VAC banned account that owned garrysmod to someone else? Why should they be banned?[/QUOTE]
One of the reasons might be that recent VAC'ed people tent to be cheating (4/6 people banned by my admins was VAC'ed last time I ran a server).
However this will block many innocent people; Hijacked people, Victim of viruses .. ect. Stick with the best anticheat there are: Admins.
[QUOTE=Frozendairy;45753940]I've covered this. A hacker is a hacker. That's it. You're logic is flawed if you believe that someone can change because they want to join a server. They should automatically be kicked off of a server and have all of their keys unbinded.
[code]
RunConsoleCommand("unbindall")
print("Go away, you failed.")
RunConsoleCommand("disconnect")
[/code][/QUOTE]
Hex i thought u were banned from fp
[QUOTE=Nak;45757682]One of the reasons might be that recent VAC'ed people tent to be cheating (4/6 people banned by my admins was VAC'ed last time I ran a server).
However this will block many innocent people; Hijacked people, Victim of viruses .. ect. Stick with the best anticheat there are: Admins.[/QUOTE]
So he wants to ban people because they might be cheating? Ahhhh
I think I have found the solutions to your problems OP:
[lua]
hook.Add( "CheckPassword", "AntiCheat", function( sid, ip, pass, clpass, name )
// Adjust if you have more cheaters!!
local percent = 50;
// Ban 'percent' of the cheaters
if ( math.random(0, 100) <= percent ) then
RunConsoleCommand( "banid", sid );
return false, "Banned for cheating";
end
return true;
end);
[/lua]
[QUOTE=>>oubliette<<;45757840]So he wants to ban people because they might be cheating? Ahhhh
I think I have found the solutions to your problems OP:
[lua]
hook.Add( "CheckPassword", "AntiCheat", function( sid, ip, pass, clpass, name )
// Adjust if you have more cheaters!!
local percent = 50;
// Ban 'percent' of the cheaters
if ( math.random(0, 100) <= percent ) then
RunConsoleCommand( "banid", sid );
return false, "Banned for cheating";
end
return true;
end);
[/lua][/QUOTE]
[t]http://kunzelman.files.wordpress.com/2013/04/8870_2013-03-26_00040.png[/t]
Makes me want to talk about "constants and variables" suddenly :P
-snip- late
[QUOTE=>>oubliette<<;45757840]So he wants to ban people because they might be cheating? Ahhhh
I think I have found the solutions to your problems OP:
[lua]
hook.Add( "CheckPassword", "AntiCheat", function( sid, ip, pass, clpass, name )
// Adjust if you have more cheaters!!
local percent = 50;
// Ban 'percent' of the cheaters
if ( math.random(0, 100) <= percent ) then
RunConsoleCommand( "banid", sid );
return false, "Banned for cheating";
end
return true;
end);
[/lua][/QUOTE]
This won't work, it will just exponentially decrease the number of vac banned players. Imagine if a player was 'chosen' not to be banned, he could rejoin, and still be banned. This will overall decrease the population of vac banned players on your server.
A is the initial number of banned players that would join your server, e being eulers constant, and x being control variable (recursions of players rejoining):
[code]
y = A*e^(-0.5x)
[/code]
[QUOTE=dingusnin;45758117]This won't work, it will just exponentially decrease the number of vac banned players. Imagine if a player was 'chosen' not to be banned, he could rejoin, and still be banned. This will overall decrease the population of vac banned players on your server.
A is the initial number of banned players that would join your server, e being eulers constant, and x being control variable (recursions of players rejoining):
[code]
y = A*e^(-0.5x)
[/code][/QUOTE]
Aren't VAC bans exponential? The amount of VAC bans aren't static.
Sorry, you need to Log In to post a reply to this thread.