Violation Code List

I’m logging violations on my (vanilla) server to use it for generating a statistic that can identify certain glitches and hacks.
If anyone is interested in the live list of violation codes, check it out here: http://bloodisgood.org/rust/violations.php (ignore codes > 900000 as those are custom ones).

We have already identified a couple of hackers and glitchers to check their codes.

Codes of a hacker (high jump, airdrop auto-loot, wood ticker, etc…)

http://hawnutor.org/image/fMydmtT.png

Codes of a glitcher (foundation glitch)

http://hawnutor.org/image/SnDpHke.png

I’m currently trying to collect which codes are unrelated to hacks/glitches, such as walking too fast through doors while they close. If you know a code that happens on a regular basis for regular players, please submit it and the cause.

Missing codes (never occured):
1 - 400, 453, 467, 476, 478, 501 - 503, 506, 508 - 509, 511 - 513, 515 - 516, 518, 521, 524 - 525, 527 - 530, 532 - 534, 536 - 538, 540 - 541, 543 - 544, 546, 548, 550 - 551, 553, 555 - 556, 559 - 561, 563 - 567, 569 - 571, 573, 576, 582, 586, 590 - 591, 600 - 605, 607 - 610, 612 - 616, 619, 621 - 623, 625 - 637, 639 - 642, 644 - 648, 650 - 651, 653 - 655, 657 - 665, 667 - 676, 679 - 682, 684, 686 - 691, 693 - 694, 696, 700, 702 - 704, 706 - 709, 712 - 718, 720 - 721, 723 - 727, 729 - 745, 747 - 749, 751 - 771, 773, 775, 777 - 783, 785 - 795, 800 - 824, 826 - 842, 844 - 854, 856 - 891, 893 - 898, 900 - 985, 987 - 994, 996 - 998, 1000 - 1036, 1038 - 1092, 1095 - 1098, 1100 - 1181, 1183 - 1198, 1200 - 1298, 1300 - 1372, 1374 - 1387, 1389 - 1398, 1400, 1402 - 1474, 1476 - 1498, 1500 - 1763, 1765 - 1798, 1800 - 2073, 2075 - 2099, 2101 - 2795, 2797 - 3895, 3897 - 4198, 4200 - 5698, 5700 - 11797

Unidentified codes:
401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 418, 419, 420, 421, 422, 423, 424, 425, 426, 427, 428, 429, 430, 431, 432, 433, 434, 435, 436, 437, 438, 439, 440, 441, 442, 443, 444, 445, 446, 447, 448, 449, 450, 451, 452, 454, 455, 456, 457, 458, 459, 460, 461, 462, 463, 464, 465, 466, 468, 469, 470, 471, 472, 473, 474, 475, 477, 479, 480, 481, 482, 483, 484, 485, 486, 487, 488, 489, 490, 491, 492, 493, 494, 495, 496, 497, 498, 500, 504, 505, 507, 510, 514, 517, 519, 520, 522, 523, 526, 531, 535, 539, 542, 545, 547, 549, 552, 554, 557, 558, 562, 568, 572, 574, 575, 577, 578, 579, 580, 581, 583, 584, 585, 587, 588, 589, 592, 593, 594, 595, 596, 598, 599, 606, 611, 617, 618, 620, 624, 638, 643, 649, 652, 656, 666, 677, 678, 683, 685, 692, 695, 697, 698, 699, 701, 705, 710, 711, 719, 722, 728, 746, 750, 772, 774, 776, 784, 796, 797, 798, 799, 825, 843, 855, 892, 899, 986, 995, 999, 1037, 1093, 1094, 1099, 1182, 1199, 1299, 1373, 1388, 1399, 1401, 1475, 1499, 1764, 1799, 2074, 2100, 2796, 3896, 4199, 5699, 11798

**Identified codes:
Code ***Cause *Description
**499 ***Normal *This code is most likely glitching through doors that are closing or were closed while walking through them
**597 ***Hack *Occured 3x for only one person, who was hacking. Could be anything.

Potentially legit codes:
These codes were taken from the list of violation codes with at least 5 users having this violation on record. They are most likely to be desynchronisation or other engine glitch violations. Ordered by occurrence count.
499, 599, 498, 496, 497, 699, 598, 449, 492, 488, 486, 491, 408, 411, 481, 799, 402, 405, 427, 429, 489

If any of the identified codes occur on your server, please validate if possible the cause of the code and correct me if you found a discrepancy.
I also suspect codes > 10k less likely to be accidental causes. To identify mode codes, I’m unfortunately lacking the amount of data to make comprehensive statistics, so any information can help.

edit: thanks facepunch, for giving table formatting tools and then drowning it in alcohol and desperate hope

The version of vBulletin that powers Facepunch is held together with alcohol and desperate hope. A full rewrite is one of garry’s long-term projects that he’s been working on for a while. Adding more features to this version is difficult because it’s creaky and fragile.

Updated thread with a list of potentially legit codes.

Work , you will use this for make new unofficial anti-cheat plugin .
It was be good

No, please be aware that these codes are no guarantee of someone cheating. And at this point, the list is so incomplete, you couldn’t make any proper assertions of whether someone is playing legit or cheating when checking their violation codes. This should not be part of an automation, but it can be used to identify potential cheaters before any player sees them and then stalk and observe them.

Rust violation codes are produced by the truth detector and are not as exact as they may be assumed to be. Every few [server] frames (I’m pretty sure it is every few frames), it shoots a raycast between your old position and your new position and checks distance between the two as well. If your distance is over a certain number (this number is preeeetty high to prevent lag problems), your violation number goes up. If there is an object between your position and old position, it moves you back and amps your violation number up.

What exactly is the violation number increased by? Well depends on what is increasing it. If we are testing movement speed, then it will go up using this code: http://puu.sh/ayrYn/6907fb9a48.png
Formula: (newpos - oldpos).magnitude / deltaTime
So with (newpos - oldpos).magnitude, we are getting the distance between the two positions and finding the square root of (xx+yy+z*z) for (newpos - oldpos). Then we divide it by deltaTime to make sure that the number we are getting is accurate even if there is server lag (fail-safe measure, doesn’t always work). We then check if the number we get from the formula is over 20, if so add the number we found to the violation number. This is what can produce a random number - the adding.
What about casting the raycast and stuff? When you move, the system “traces” your movement by shooting a raycast 0.5 meters above your old position towards your new position. If the ray hits anything, then you “moved through an object.” This is our anti-noclip (but also the stupid door glitch). If the ray hits anything, you automatically get 100 onto your violation number: http://puu.sh/aysqG/7a5c5ec88f.png

Basically, these numbers are random and insignificant when looked at individually or even collectively. But if you look at a range instead, things become easier. Simply, the larger the violation the more likely it is a cheat. But I have also seen door kicks and speedhack numbers be near equivalent. It isn’t always the violation # that can kick you, but also the frequency of which the violation number goes up. Hope this helps people understand violations in rust.

Gachl would like to thank you very much for this detailed explaination, the violation codes make a lot more sense now!

I answer for him because he can´t He can’t tell you himself…

Aww sweet! I got a name drop on that random blog post about his ban! :zoid:

Thanks for the great explanation, mistad. I made a wiki entry about this based on that so people can find this more easily.

what can i say, sometimes the bans are legit, sometimes they have a 6 foot pole up their ass. but we love the mods all the same;)

Are you still mad at me Gachl? :v:

I don’t know why you didn’t approve my second comment on your blog, I tried to explain myself better. I’ve been banned for silly things too, but if you look at my history it’s easy to see that if you just use the refugee camp and apologize you’ll usually get unbanned.

Are you going to stick to the Topic or are you here to spam this Thread, which could be important to user etc, Sievers808 ?

cute:)

Please stop posting already, there are more appropriate places if you still must discuss the ban.

Are you serious, Kanlo? I posted about it two days ago and haven’t posted since (not to mention I was talking to Gachl, not you). Why would you bump the thread and continue it if you don’t want to keep talking about it?
I was just trying to make a little joke and be a little friendly, you didn’t have to respond if you didn’t want to.

Anyone know what this code is for thx

kicked for violation 513 and 476

since this is his thread and little project, i’ll just mention it here; gachl requested a perma, so don’t expect him to reply or post further in this thread.