Last active
June 27, 2020 12:29
-
-
Save konsolas/b283c1abcad3fa214d1788769c7c2db1 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#### AAC Config (Generated by AAC ~VERSION) | |
# | |
# Hey there, | |
# Welcome to AAC's configuration file. | |
# I've commented the entire thing heavily so every option is easy to understand. | |
# If you want a simple place to start, feel free to check out the "Common changes" section below. | |
# Feel free to read through the descriptions of checks and options and change them to suit your server. | |
# I hope that AAC will perform well and live up to your expectations. | |
# ~ konsolas | |
# | |
# How violations work: | |
# - When a player fails a check in AAC, it generates a "violation" which describes what went wrong, and what was | |
# expected. | |
# - Details about this violation, along with player data, server tps, etc. are saved to a log file in plugins/AAC/logs, | |
# with a millisecond-precision timestamp. | |
# - The check then generates a number based on options in this config and the details of what happened. If the | |
# violation was more severe, the check will generate a bigger number. | |
# - This number is added onto a player's "violation level", or "VL". A player's VL also decays over time when they | |
# play without failing checks in AAC. A player has a separate VL for each check. | |
# | |
# How mitigation works: | |
# - Many checks in AAC can not only detect a cheater, but also mitigate their actions. | |
# - For example, AAC can teleport a flying player down, restore blocks broken too quickly, block attacks which are | |
# suspicious, and temporarily block bow use, to name a few. | |
# - Mitigation can be disabled by setting "mitigation.enabled" to false. AAC will continue checking, and will also | |
# continue performing threshold actions, but the check will stop influencing the player's gameplay. | |
# - Mitigation can be configured to only start after a certain VL is reached. This is set by the "min_vl" option, and | |
# is useful to prevent random lag from significantly affecting gameplay. | |
# | |
# How decay works: | |
# - The decay option in every check allows you to decide how fast violations should go down for each check. | |
# - The "interval" option is the time in ticks between VL reductions. | |
# - The "delay" option is the time in ticks that AAC waits after a violation before starting to reduce the VL. | |
# - The "amount" option is the amount that AAC reduces the VL after each interval passes. | |
# | |
# How thresholds work: | |
# - Each check has a section labelled "thresholds". This consists of a list of "threshold actions", each of which is a | |
# number paired with a command or list of commands. | |
# - When a player's VL (see above) for a check goes above the number, or "threshold" for a threshold action, the | |
# threshold action is triggered and the command is executed. | |
# - The command won't be executed again until the player's VL decays below that number, and then rises above it again. | |
# - If there are multiple commands in the same threshold action, they are all executed in the order they appear. | |
# | |
# Common changes: | |
# - Changing messages: | |
# -> All messages sent by AAC are part of a threshold action (see above) tied to an "aac notify" command. | |
# -> You can localise these messages by changing the relevant command. | |
# - Reducing teleports or setbacks: | |
# -> Move and Timer are the main checks which set back for movement. | |
# -> Change move.mitigation.min_vl or timer.mitigation.min_vl to a higher value, or increase the decay. | |
# -> By default, Move employs "strict" and "direction" checking. | |
# -> "strict" checking permits AAC to check if players move too slowly. | |
# -> "direction" checking permits AAC to compare a movement with the direction the player is facing. | |
# -> These can be disabled for specific scenarios, e.g. only on elytras, or only in water. | |
# -> Timer can be affected by severe network lag. | |
# -> You can increase timer.max_extra, but cheaters will be able to fake lag (e.g. with Blink) for longer. | |
# - Improving hit detection: | |
# -> Hitbox sometimes cancels hits if a player is laggy. | |
# -> You can increase hitbox.max_reach to reduce reach violations for laggy players. | |
# -> You can increase hitbox.mitigation.min_vl so players are less likely to have their hits cancelled. | |
# -> You can also disable mitigation for Killaura and Hitbox to stop AAC from blocking hits entirely. | |
# - Changing kicks: | |
# -> Kicks are caused by a threshold action tied to a /kick command. | |
# -> You can remove the threshold action with a /kick command for a check to disable kicking. | |
# -> You can increase the threshold for the threshold action to make kicking more lenient. | |
# -> You can reduce the threshold for the threshold action to make kicking more strict. | |
# - Other: | |
# -> Look in the logs for a timestamp that matches a problem that you've experienced. | |
# -> Find out which check was failed. | |
# -> Locate that check in this config file. | |
# -> Look for a relevant option, and change it as described by the comment. | |
# -> If you can't solve the issue, please check out the issue tracker or discord server for support. | |
# | |
# The "Move" check: | |
# - As of AAC 4, Fly, Speed, Elytra and Vehicles have all been merged together into Move. | |
# - Detection is performed by comparing a player's movement with simulations of a legitimate client's movement: | |
# -> Move is able to detect some cheats which don't appear movement related at first: | |
# -> Many killauras will fail Move if "direction" and "strict" are turned on, as a result of silent aim. | |
# -> Velocity reduction cheats may fail move. (the Velocity check will still detect 0 velocity) | |
# -> Move uses a robust setback system which aims to correct movement rather than block it entirely. | |
# | |
# The configurable commands will replace %aac_player%, %aac_ping%, %aac_tps% and %aac_world% with their in-game values. | |
# If PlaceholderAPI is installed, you will additionally have access to every placeholder that it has registered. | |
# You can run multiple commands on a single threshold by creating 2 (or more) entries with the same key: | |
# thresholds: | |
# 10: | |
# - "broadcast %aac_player% was kicked for cheating" | |
# - "kick %aac_player% cheating" | |
# | |
# The configuration file follows: | |
# Criticals stops players from performing critical hits whilst on the ground | |
criticals: | |
enabled: true | |
# Should AAC detect clients that perform minijumps to get critical hits? | |
check_minijump: true | |
# Control how the violation level decays over time | |
decay: | |
interval: 100 | |
delay: 100 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 1 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
2: "aac notify %aac_player% getting impossible critical hits (%aac_ping%ms, %aac_tps%TPS)" | |
5: | |
- "aac notify %aac_player% was kicked for getting impossible critical hits (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for Criticals" | |
- "kick %aac_player% Illegal client modifications" | |
# FastBow stops players from shooting arrows too quickly | |
fastbow: | |
enabled: true | |
# How lenient should AAC be when measuring bow drawback times? (milliseconds) | |
lenience: 200 | |
# Control how the violation level decays over time | |
decay: | |
interval: 100 | |
delay: 100 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 5 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
3: "aac notify %aac_player% shooting arrows too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
10: | |
- "aac notify %aac_player% was kicked for shooting arrows too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for FastBow" | |
- "kick %aac_player% Illegal client modifications" | |
# FastUse stops players from consuming items too quickly | |
fastuse: | |
enabled: true | |
# How long should AAC require item consumption to take? (milliseconds) | |
min_consumption_time: 1200 | |
# Control how the violation level decays over time | |
decay: | |
interval: 100 | |
delay: 100 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 5 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
3: "aac notify %aac_player% consuming items too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
10: | |
- "aac notify %aac_player% was kicked for consuming items too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for FastUse" | |
- "kick %aac_player% Illegal client modifications" | |
# FightSpeed stops players from attacking too quickly | |
fightspeed: | |
enabled: true | |
# How many hits per second should AAC limit players to? | |
max_hit: 15 | |
# How many swings per second should AAC limit players to? | |
max_swing: 40 | |
# Control how the violation level decays over time | |
decay: | |
interval: 50 | |
delay: 100 | |
amount: 1 | |
# FightSpeed does not support mitigation | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
15: "aac notify %aac_player% attacking too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
30: | |
- "aac notify %aac_player% was kicked for attacking too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for FightSpeed" | |
- "kick %aac_player% Illegal client modifications" | |
# Hitbox forces players to look at entities that they want to attack | |
hitbox: | |
enabled: true | |
# How much more lenient should AAC be when a player is attacking a mob? (blocks) | |
mob_lenience: 0.65 | |
# How many ticks of network latency should AAC compensate for? | |
buffer_size: 12 | |
# How lenient should AAC be when checking players | |
lenience: 0.1 | |
# What should AAC limit a player's attack reach to? (blocks) | |
max_reach: 3.0 | |
# Should AAC check if a player is attacking through a wall? | |
check_walls: true | |
# Control how the violation level decays over time | |
decay: | |
interval: 50 | |
delay: 20 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 10 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
10: "aac notify %aac_player% attacking out of their line of sight (%aac_ping%ms, %aac_tps%TPS)" | |
25: | |
- "aac notify %aac_player% was kicked for attacking out of their line of sight (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for Hitbox" | |
- "kick %aac_player% Illegal client modifications" | |
# Killaura detects modifications that create an unfair advantage in combat | |
killaura: | |
enabled: true | |
# AAC has a few different methods of detecting Killaura. | |
# How much should the violation level be increased for each of these methods? | |
# The module which caused the detection can be seen in verbose and also in logs. | |
# Ax modules detect aimbot/aimassist, Bx modules detect killaura, Cx modules detect autoclickers. | |
modules: | |
A1: 10 | |
A2: 10 | |
A3: 10 | |
A4: 10 | |
A5: 10 | |
A6: 45 | |
B1: 10 | |
B2: 0 | |
B3: 10 | |
B4: 10 | |
B5: 10 | |
B6: 6 | |
B7: 10 | |
C1: 5 | |
C2: 5 | |
C3: 5 | |
C4: 5 | |
C5: 5 | |
D1: 10 | |
# Control how the violation level decays over time | |
decay: | |
interval: 5 | |
delay: 10 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 100 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
50: "aac notify %aac_player% is exhibiting suspicious combat patterns (%aac_ping%ms, %aac_tps%TPS)" | |
100: "aac notify %aac_player% is exhibiting very suspicious combat patterns (%aac_ping%ms, %aac_tps%TPS)" | |
150: | |
- "aac notify %aac_player% was kicked for suspicious combat patterns (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for Killaura" | |
- "kick %aac_player% Illegal client modifications" | |
# Regen stops players from regenerating health too quickly | |
regen: | |
enabled: true | |
# What delay should AAC enforce between regeneration attempts? (milliseconds) | |
min_regen_delay: 3600 | |
# Players can regenerate faster on MC 1.9+ if they are fully satiated. | |
# What delay should AAC enforce if this is the case? (milliseconds) | |
min_satiated_delay: 450 | |
# Control how the violation level decays over time | |
decay: | |
interval: 20 | |
delay: 100 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 1 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
2: "aac notify %aac_player% is regenerating health too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
# Derp detects illegal rotations sent by players | |
derp: | |
enabled: true | |
# Control how the violation level decays over time | |
decay: | |
interval: 20 | |
delay: 20 | |
amount: 1 | |
# Derp does not support mitigation | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
1: | |
- "aac notify %aac_player% was kicked for impossible head rotations (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for Derp" | |
- "kick %aac_player% Illegal client modifications" | |
# Move controls player movement | |
move: | |
enabled: true | |
# Should AAC check players asynchronously? This option reduces load on the main server thread by around 40% | |
async: false | |
# What's the maximum amount that a single violation should be able to add to a player's VL? | |
# VL added is proportional to the (distance between the expected and actual movement)^2 | |
# This value must be greater than min_vl, or you will allow 10-block teleports | |
max_vl_increment: 500 | |
# How many simulations should AAC carry forward from the previous movement? (maximum) | |
# This limit exists to limit the performance impact of the move check. | |
simulation_limit: 3 | |
# Control how AAC checks movements in general. | |
normal: | |
# How lenient should AAC be when checking? | |
tolerance: 0.001 | |
# How lenient should AAC be when a player (on a 1.9+ client) is being pushed by another entity? | |
bumping: 0.1 | |
# How much should a move violation of this type contribute to a player's overall VL? | |
weight: 1.0 | |
# Control how AAC checks movements in water. | |
water: | |
# How lenient should AAC be when checking? | |
tolerance: 0.001 | |
# How fast should players be able to move with riptide? | |
riptide_speed: 4.2 | |
# How much should AAC allow flowing water to accelerate a player? | |
flowing: 0.1 | |
# How much should AAC allow bubble columns to accelerate a player? | |
bubble_column: 1.8 | |
# How lenient should AAC be when a player is around boats | |
boat: 0.6 | |
# How much should a move violation of this type contribute to a player's overall VL? | |
weight: 1.0 | |
# Control how AAC checks movements while using the elytra. | |
elytra: | |
# How lenient should AAC be when checking? | |
tolerance: 0.001 | |
# How quickly should players be able to travel when rocket boosting with an elytra? | |
rocket_speed: 2.0 | |
# How much should a move violation of this type contribute to a player's overall VL? | |
weight: 0.6 | |
# Control how AAC checks movements when on a vehicle | |
vehicle: | |
# How lenient should AAC be when checking? | |
tolerance: 0.001 | |
# How much should a move violation of this type contribute to a player's overall VL? | |
weight: 0.2 | |
# Control how AAC checks skipped movements. | |
skipped: | |
# How lenient should AAC be when checking? | |
tolerance: 0.03 | |
# How long must a movement be for AAC to use timer checking? | |
min_length: 0.1 | |
# Control how AAC checks movement when velocity is applied | |
velocity: | |
# Should AAC check for anti-velocity (Move will still check for velocity reduction with this turned off) | |
# Players which don't move at all will not be checked, as this is indistinguishable from lag | |
enabled: true | |
# How long should AAC wait for a player to send the correct velocity? (ticks) | |
wait_ticks: 12 | |
# Should AAC check players who remain entirely stationary? | |
check_stationary: true | |
# How much should AAC add to a player's VL if they ignore velocity? | |
vl_increment: 100 | |
# Control how the violation level decays over time | |
decay: | |
interval: 1 | |
delay: 20 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 250 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
500: "aac notify %aac_player% appears to be moving incorrectly (%aac_ping%ms, %aac_tps%TPS)" | |
20000: | |
- "aac notify %aac_player% kicked for invalid movement (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 0 %aac_player% Kicked for Move" # Default config does not increase banVL if a player is kicked for Move. | |
- "kick %aac_player% Illegal client modifications" | |
# NoFall stops players from avoiding fall damage | |
nofall: | |
enabled: true | |
# Control how the violation level decays over time | |
decay: | |
interval: 25 | |
delay: 50 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 0 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
10: "aac notify %aac_player% might be trying to avoid fall damage (%aac_ping%ms, %aac_tps%TPS)" | |
50: | |
- "aac notify %aac_player% kicked for avoiding fall damage (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for NoFall" | |
- "kick %aac_player% Illegal client modifications" | |
# Phase stops players from moving through solid walls | |
phase: | |
enabled: true | |
# Which blocks should AAC treat as air? This can be used to allow cross-version compatibility. | |
exclude: | |
# Incorrect hitboxes on 1.8 servers | |
- "ANVIL" | |
- "CHEST" | |
- "ENDER_CHEST" | |
- "TRAPPED_CHEST" | |
- "SOIL" | |
# Entity hitboxes | |
- "AIR" | |
- "STATIONARY_WATER" | |
- "WATER" | |
- "STATIONARY_LAVA" | |
- "LAVA" | |
# Protocol hack hitboxes | |
- "IRON_FENCE" | |
- "WATER_LILY" | |
- "LILY_PAD" | |
- "GRASS_PATH" | |
# Moving pistons | |
- "PISTON_MOVING_PIECE" | |
# How lenient should AAC be when checking? | |
tolerance: 0.0000001 | |
# Control how the violation level decays over time | |
decay: | |
interval: 10 | |
delay: 20 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 0 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
50: "aac notify %aac_player% might be trying to phase through walls (%aac_ping%ms, %aac_tps%TPS)" | |
# Timer stops players from performing actions too quickly by speeding up time | |
timer: | |
enabled: true | |
# How much lag should AAC compensate for when checking? (ticks) | |
min_balance: -20 | |
# How many extra packets should AAC limit a player to? | |
max_extra: 10 | |
# Control how the violation level decays over time | |
decay: | |
interval: 20 | |
delay: 20 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 5 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
100: "aac notify %aac_player% is trying to speed up time (%aac_ping%ms, %aac_tps%TPS)" | |
# BadPackets checks for invalid packets | |
badpackets: | |
enabled: true | |
# Should AAC check for player ability packets | |
check_abilities: true | |
# How many times should a player be allowed to toggle use item in one second? | |
max_use_toggle: 15 | |
# How many times should a player be allowed to toggle sneak in one second? | |
max_sneak_toggle: 10 | |
# Control how the violation level decays over time | |
decay: | |
interval: 20 | |
delay: 20 | |
amount: 1 | |
# BadPackets does not support mitigation | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
50: "aac notify %aac_player% is sending invalid packets (%aac_ping%ms, %aac_tps%TPS)" | |
100: | |
- "aac notify %aac_player% was kicked for sending invalid packets (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for BadPackets" | |
- "kick %aac_player% Illegal client modifications" | |
# FastBreak stops players from breaking blocks too quickly | |
fastbreak: | |
enabled: true | |
# Should AAC check for a delay between successive block break attempts? | |
check_delay: true | |
# How lenient should AAC be when checking? (ticks) | |
tolerance: 2 | |
# Control how the violation level decays over time | |
decay: | |
interval: 20 | |
delay: 20 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 5 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
5: "aac notify %aac_player% is breaking blocks too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
20: | |
- "aac notify %aac_player% was kicked for breaking blocks too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for FastBreak" | |
- "kick %aac_player% Illegal client modifications" | |
# FastPlace stops players from placing blocks too quickly | |
fastplace: | |
enabled: true | |
# What delay should AAC enforce between block placements? (ms) | |
min_delay: 100 | |
# Control how the violation level decays over time | |
decay: | |
interval: 20 | |
delay: 20 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 5 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
5: "aac notify %aac_player% is placing blocks too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
20: | |
- "aac notify %aac_player% was kicked for placing blocks too quickly (%aac_ping%ms, %aac_tps%TPS)" | |
- "aac banvl 1 %aac_player% Kicked for FastPlace" | |
- "kick %aac_player% Illegal client modifications" | |
# Interact detects a number of impossible actions that a hacked client could perform. | |
interact: | |
enabled: true | |
# Interaction module weights | |
module: | |
dead: 10 | |
liquids: 10 | |
item_attack: 10 | |
block_break: 6 | |
block_place: 2 | |
open_chest: 0 | |
spawn_egg: 6 | |
redstone: 3 # doors, levers, fences, repeaters, etc. | |
# Maximum difference (degrees) between the player's direction and the direction to the block for an interaction | |
# to be accepted. | |
max_angle_diff: 90 | |
# Control how the violation level decays over time | |
decay: | |
interval: 20 | |
delay: 20 | |
amount: 1 | |
# Control how AAC mitigates a cheater's actions | |
mitigation: | |
enabled: true | |
min_vl: 5 | |
# Control actions taken upon reaching certain violation levels | |
thresholds: | |
10: "aac notify %aac_player% is interacting suspiciously" | |
# How much should AAC slow players down after they are detected? | |
# Values closer to 0 slow down movement cheats more but also reduce the effectiveness of the velocity check. | |
# Negative values will send movement cheats in the opposite direction, but will render the velocity check unusable. | |
move_vl_slowdown: 0.8 | |
# How far should AAC move players when they are teleported to prevent them from clipping into a block? | |
max_clip_adjust: 0.1 | |
# Should AAC remove blocks placed when a player is being teleported by movement checks? | |
revert_blocks: true | |
# How long should AAC remember piston extensions for the purposes of movement checking? (ms) | |
piston_wait_time: 600 | |
# Should AAC use a log file? | |
log_file: true | |
compress_old_log_files: true | |
# Should AAC log events to the console? | |
log_console: false | |
# AAC can enforce a minimum delay for players before they are allowed rejoin your server after leaving (ms) | |
relog_protection: 0 | |
relog_message: "Please wait before rejoining the server" | |
# AAC implements a basic form of staff chat. You can enable it by setting a prefix, such as "@", here. | |
staff_chat_prefix: "" | |
staff_chat_format: "&7[&6AAC&7] &2[{sender}] &r" # & used for colour codes |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment