Skip to content

Instantly share code, notes, and snippets.

@konsolas
Last active July 7, 2021 12:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save konsolas/400c9678e0264fab8d04d84780ec4c63 to your computer and use it in GitHub Desktop.
Save konsolas/400c9678e0264fab8d04d84780ec4c63 to your computer and use it in GitHub Desktop.
#### 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 commands 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:
# - Reducing teleports or setbacks:
# -> Fly and Speed are the main checks which set back for movement.
# -> Change fly.min_vl to a high value so players need to have a higher VL (see above) before being teleported.
# -> Do the same for speed.min_vl.
# - Improving hit detection:
# -> Hitbox sometimes cancels hits if a player is laggy.
# -> You can increase hitbox.move_compensation and/or max_reach to reduce reach violations for laggy players.
# -> You can increase hitbox.lenience to relax how directly the attacker needs to look at their target.
# -> You can increase hitbox.min_vl so players need to have a higher VL (see above) before having hits cancelled.
# -> For hardcore PVP servers, the killaura check could affect PVP because it very slightly changes entity hitboxes.
# -> You may need to set killaura.enabled -> false if this is a problem for your players.
# - Changing kicks:
# -> Kicks are caused by a threshold action tied to an /aackick command.
# -> You can remove the threshold action with an /aackick 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 configurable commands will replace {player}, {ping}, {tps}, {world} and {server} with their in-game values.
# You can run multiple commands on a single threshold by creating 2 (or more) entries with the same key:
# thresholds:
# 10:
# - "broadcast {player} was kicked for cheating"
# - "kick {player} cheating"
#
# Be sure to check language.yml for configuration regarding messages, staff chat, etc.
# Hitbox forces players to look at entities they want to attack.
hitbox:
# Do you want to enable the hitbox check?
enabled: true
# How much should AAC expand hitboxes by?
lenience: 0.65
# Should AAC cancel illegal hits?
cancel: true
# How far should a player be able to reach?
# This value is added to the target entity hitbox size before being checked.
max_reach: 3.5
# How much should AAC compensate for the movement of the target?
# This only affects reach, not hitbox lenience.
move_compensation: 6.0
# How many violations before AAC starts cancelling hits?
min_vl: 4
# Number of ticks before AAC starts reducing violations
reduce_delay: 60
# Map of violation levels to commands:
thresholds:
10: "aacstaffnotify {player} in {world} is attacking suspiciously (Hitbox) (ping = {ping}, tps = {tps})"
25:
- "aacstaffnotify {player} kicked for killaura (Hitbox) (ping = {ping}, tps = {tps})"
- "aackick {player} Attacking suspiciously"
# Criticals prevents players from getting critical hits when it's not possible.
criticals:
# Do you want to enable the criticals check?
enabled: true
# Should a hit be cancelled if it is a critical and the player is on the ground?
cancel_false_hit: true
# How many ticks should AAC enforce between jumps?
jump_delay: 5
# Map of violation levels to commands:
thresholds:
10:
- "aacstaffnotify {player} kicked for criticals hacking (Criticals) (ping = {ping}, tps = {tps})"
- "aackick {player} Illegal movement"
# Fastbow prevents players from shooting their bow too quickly.
fastbow:
# Do you want to enable the fastbow check?
enabled: true
# How much lag compensation should AAC perform when checking for fastbow?
lenience_ms: 130
# How long should AAC block bow usage after a player is detected for fastbow? (set to 0 to disable)
block_ticks: 100
# How much VL does a player need before AAC starts blocking shots?
min_vl: 8
# Map of violation levels to commands:
thresholds:
5: "aacstaffnotify {player} in {world} seems to be shooting arrows too quickly (ping = {ping}, tps = {tps})"
25:
- "aacstaffnotify {player} kicked for shooting arrows too quickly (FastBow) (ping = {ping}, tps = {tps})"
- "aackick {player} Shooting too quickly"
# FightSpeed prevents players from attacking too quickly.
fightspeed:
# Do you want to enable the fightspeed check?
enabled: true
# How many times should a player be able to attack per second?
max_hit: 15
# How many times should a player be allowed to swing their arm per second?
max_swing: 35
# Should fightspeed check for consistent click speed?
consistent_check: true
# How close together do hit speed measurements need to be for a violation?
consistent_threshold: 25
# Map of violation levels to commands:
thresholds:
10: "aacstaffnotify {player} in {world} might be using an autoclicker (ping = {ping}, tps = {tps})"
30:
- "aacstaffnotify {player} kicked for suspicious click speed (FightSpeed) (ping = {ping}, tps = {tps})"
- "aackick {player} Suspicious click speed"
# Fly prevents players in survival mode from flying.
fly:
# Do you want to enable the fly check?
enabled: true
# How strongly should AAC enforce fall speeds? (smaller values are more accurate)
tolerance: 0.015
e_tolerance: 0.015
# How quickly should AAC increase the violation level for larger movements?
vl_multiplier: 6.0
# How many violations before AAC starts teleporting a player down? (needs teleport: true)
min_vl: 28
# How long should a player have to respond to velocity given by the server?
vel_ticks: 30
# Teleport the player down if detected?
teleport: true
# Check for invalid abilities packets?
abilities: true
# How many ticks should AAC wait before reducing a player's violation level?
reduce_delay: 20
# Should AAC reset a player's pitch to 0 after a detection?
reset_pitch: false
# Map of violation levels to commands:
thresholds:
150: "aacstaffnotify {player} in {world} might be trying to fly (ping = {ping}, tps = {tps})"
300: "aacstaffnotify {player} in {world} is probably trying to fly (ping = {ping}, tps = {tps}"
450:
- "aacstaffnotify {player} kicked for trying to fly (Fly) (ping = {ping}, tps = {tps})"
- "aackick {player} Flying"
# Elytra prevents players from moving incorrectly while using the Elytra (1.9+)
elytra:
# Do you want to enable the Elytra check?
enabled: true
# How strongly should AAC enforce elytra movement?
tolerance: 0.025
# How quickly should players be able to move after using a firework rocket?
rocket_tolerance: 3.0
# Should AAC teleport players?
teleport: true
# How many violations before AAC starts teleporting a player down? (needs teleport: true)
min_vl: 32
thresholds:
100: "aacstaffnotify {player} in {world} might be cheating with an elytra (ping = {ping}, tps = {tps})"
250: "aacstaffnotify {player} in {world} is probably cheating with an elytra (ping = {ping}, tps = {tps})"
400:
- "aacstaffnotify {player} kicked for trying to cheat with an elytra (ping = {ping}, tps = {tps})"
- "aackick {player} Unusual elytra movement"
# Vehicles prevents players from exploiting vehicle movement to move too quickly
vehicles:
# Do you want to enable the Vehicles check?
enabled: true
# How strongly should AAC enforce vehicle movement?
tolerance: 0.015
# How quickly should AAC increase the violation level for larger movements?
vl_multiplier: 6.0
# Should AAC teleport players out of their vehicles?
teleport: true
# How many violations before AAC kicks a player off their vehicle?
min_vl: 32
thresholds:
50: "aacstaffnotify {player} in {world} might be cheating with a vehicle (ping = {ping}, tps = {tps})"
150: "aacstaffnotify {player} in {world} is probably cheating with an vehicle (ping = {ping}, tps = {tps})"
300:
- "aacstaffnotify {player} kicked for trying to cheat with an elytra (ping = {ping}, tps = {tps})"
- "aackick {player} Unusual vehicle movement"
# Speed prevents players in survival mode from moving too quickly.
speed:
# Do you want to enable the speed check?
enabled: true
# How strongly should AAC enforce movement speeds?
threshold: 0.005
# How long should a player have to respond to velocity given by the server?
vel_ticks: 30
# How quickly should AAC increase the violation level for larger movements?
vl_multiplier: 6.0
# How many times should a player be allowed to toggle sneak in a second?
max_sneak_toggles: 15
# How many times should a player be allowed to toggle use-item in a second?
max_use_toggles: 35
# How many violations before a player will start being teleported?
min_vl: 36
# How many ticks should AAC wait before reducing a player's violation level?
reduce_delay: 20
# Specific configuration options which control how the check works:
item_scalar: 0.5
sneak_scalar: 0.63
soul_sand_scalar: 0.7
check_sprint_direction: true
check_slowness_effect: true
check_cobwebs: true
strict_velocity_checking: true
# Map of violation levels to commands:
thresholds:
100: "aacmessage {player} It looks like you might be glitching, please tap sneak and block with your sword"
250: "aacstaffnotify {player} in {world} seems to be moving too quickly (ping = {ping}, tps = {tps})"
500:
- "aacstaffnotify {player} kicked for moving too quickly (Speed) (ping = {ping}, tps = {tps})"
- "aackick {player} Unexpected movement"
# Derp stops some forms of derp cheats.
derp:
# Do you want to enable the derp check?
enabled: true
# Map of violation levels to commands:
thresholds:
1:
- "aacstaffnotify {player} kicked for sending an illegal position (Derp) (ping = {ping}, tps = {tps})"
- "aackick {player} Illegal position"
# Old check for anti-velocity and anti-knockback, see velocity check for current check.
knockback:
# Legacy configuration options. Not recommended.
enabled: false
tick_delay: 9
add_ping: true
max_ping: 500
min_knockback_dist: 0.01
min_knockback_time: 2
thresholds: {}
# NoSwing ensures that players swing their arm when attacking or mining.
noswing:
# Do you want to enable the noswing check?
enabled: true
# Map of violation levels to commands:
thresholds:
20: "aacstaffnotify {player} in {world} is not swinging their arm (ping = {ping}, tps = {tps})"
40:
- "aacstaffnotify {player} kicked for not swinging their arm (NoSwing) (ping = {ping}, tps = {tps})"
- "aackick {player} Not swinging arm"
# Regen directly stops players from healing too quickly.
regen:
# Do you want to enable the regen check?
enabled: true
# Should AAC cancel regeneration if it happens too quickly?
cancel_regen: true
# What delay should AAC force between regeneration?
min_regen_delay: 3600
# What delay should AAC force if the player is fully satiated?
min_satiated_delay: 450
# Map of violation levels to commands:
thresholds:
10: "aacstaffnotify {player} in {world} is trying to regain health too quickly (ping = {ping}, tps = {tps})"
20:
- "aacstaffnotify {player} kicked for healing too quickly (Regen) (ping = {ping}, tps = {tps})"
- "aackick {player} Regenerating health too quickly"
# Killaura detects combat cheats which give an unfair advantage.
killaura:
# Do you want to enable the killaura check?
enabled: true
# Should AAC cancel impossible hits?
cancel_hit: true
# How many violations before hits start being cancelled?
min_vl: 30
# How much should AAC increase the violation level for each detection method?
modules:
natural: 2
round: 4
split: 9
sporadic: 4
stable: 3
switch: 2
angle: 0
click: 4
miss: 3
tick: 6
yaw: 2
normal: 1
action: 5
look: 8
timing: 5
accel: 3
accuracy: 10
pattern: 6
# Map of violation levels to commands:
thresholds:
30: "aacstaffnotify {player} in {world} might be using killaura (ping = {ping}, tps = {tps})"
75:
- "aacstaffnotify {player} kicked for killaura hacking (Killaura - Normal) (ping = {ping}, tps = {tps})"
- "aackick {player} Killaura"
# NoFall ensures players take fall damage.
nofall:
# Do you want to enable the NoFall check?
enabled: true
# What downward velocity is needed to check for nofall?
required_velocity: -0.2
# Should AAC check for attempts to reduce fall damage (as opposed to avoiding fall damage)?
check_reduce_attempts: true
# Should AAC deal fall damage to players?
deal_damage: true
# Map of violation levels to commands:
thresholds:
10: "aacstaffnotify {player} in {world} might be trying to avoid fall damage (ping = {ping}, tps = {tps})"
30:
- "aacstaffnotify {player} kicked for trying to avoid fall damage (NoFall) (ping = {ping}, tps = {tps})"
- "aackick {player} Suspicious activity midair"
# Jesus stops people from walking on water.
jesus:
# Do you want to enable the Jesus check?
enabled: true
# Should Jesus teleport players?
teleport: true
# Map of violation levels to commands:
thresholds:
15: "aacstaffnotify {player} in {world} is trying to walk on water (ping = {ping}, tps = {tps})"
30:
- "aacstaffnotify {player} kicked for walking on water (Jesus) (ping = {ping}, tps = {tps})"
- "aackick {player} Walking on water?"
# Phase stops people glitching through blocks.
phase:
# Do you want to enable the Phase check?
enabled: true
# Which blocks should be exempt from phase checking?
# Items are included in this list due to potential ViaVersion/cross version compatibility problems with 1.8
# Should be entered exactly as seen on the Spigot Material enum.
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
- "WATER_LILY"
# Moving pistons
- "PISTON_MOVING_PIECE"
# Map of violation levels to commands:
thresholds:
40: "aacstaffnotify {player} in {world} might be trying to phase into blocks (ping = {ping}, tps = {tps})"
80: "aacmessage {player} Please disconnect and log back in if you are stuck inside a block"
# FastUse stops players using items too quickly.
fastuse:
# Do you want to enable the FastUse check?
enabled: true
# What delay should AAC enforce for eating an item? (ms)
ms_to_use: 1200
# Map of violation levels to commands:
thresholds:
2: "aacstaffnotify {player} in {world} is trying to consume items too quickly (ping = {ping}, tps = {tps})"
5:
- "aacstaffnotify {player} kicked consuming items too quickly (FastUse) (ping = {ping}, tps = {tps})"
- "aackick {player} Using items too quickly"
# FastBreak stops players from breaking blocks too quickly.
fastbreak:
# Do you want to enable the fastbreak check?
enabled: true
# How many ticks should fastbreak count as lag, and ignore?
let_ticks: 2
# Should AAC cancel an illegal block break?
cancel_break: true
# Should AAC check for a break delay? (i.e. between block breaks)
check_delay: true
# How many violations before AAC starts cancelling block breaks?
cancel_vl: 1
# Map of violation levels to commands:
thresholds:
10: "aacstaffnotify {player} in {world} seems to be breaking blocks too quickly (ping = {ping}, tps = {tps})"
15:
- "aacstaffnotify {player} kicked for mining too quickly (ping = {ping}, tps = {tps})"
- "aackick {player} Mining too quickly"
# FastPlace stops players from placing blocks too quickly.
fastplace:
# Do you want to enable the fastplace check?
enabled: true
# How many blocks should a player be allowed to place in one second?
max_place_per_second: 10
# Should AAC cancel an illegal block place?
cancel_place: true
# How many violations before AAC starts cancelling block placements?
cancel_vl: 4
# Map of violation levels to commands:
thresholds:
15: "aacstaffnotify {player} in {world} is placing blocks too quickly (ping = {ping}, tps = {tps})"
30:
- "aacstaffnotify {player} kicked for placing blocks too quickly (ping = {ping}, tps = {tps})"
- "aackick {player} Placing blocks too quickly"
# Nuker stops players in creative mode from breaking too many blocks at once.
nuker:
# Do you want to enable the nuker check?
enabled: true
# How many blocks should a player be able to break in 1 second: vl if greater than this value
max_breaks_per_second: 40
# The violation will only be recorded if it divides by this number (reduces spam)
vl_divisor: 41
# Map of violation levels to commands:
thresholds:
5:
- "aacstaffnotify {player} in {world} kicked for creative-mode nuker (ping = {ping}, tps = {tps})"
- "aackick {player} Nuker"
# Interact stops players interacting in impossible situations, like when they're dead or behind a wall.
interact:
# Do you want to enable the impossibleinteract check?
enabled: true
# Detect interacting with liquids?
cancel_liquids: true
# Detect ghosthand to interact with blocks?
cancel_ghost_block: true
# Detect block placements in suspicious circumstances?
cancel_suspicious_block: true
# Detect interacting whilst dead?
cancel_dead: true
# Detect hitting whilst using an item?
cancel_item_attack: true
# Detect hitting through walls?
cancel_ghost_attack: true
# Violation before AAC starts cancelling interact when detecting ghosthand
cancel_vl_interact: 5
cancel_vl_place: 5
cancel_vl_break: 0
# Map of violation levels to commands:
thresholds:
20: "aacstaffnotify {player} in {world} is interacting suspiciously (ping = {ping}, tps = {tps})"
40:
- "aacstaffnotify {player} kicked for interacting suspiciously (ping = {ping}, tps = {tps})"
- "aackick {player} Interacting suspiciously"
# Velocity makes sure that players take proper knockback.
velocity:
# Do you want to enable the velocity check
enabled: true
# How many ticks should AAC check a player for? Higher values compensate for higher ping.
check_length: 30
# What is the maximum distance AAC should teleport a detected player?
# If this is zero, the detected player will not be teleported at all
max_tp_dist: 3.0
# Should AAC use the velocity setback system?
# This forcibly gives players the correct velocity by teleporting them in the direction of their velocity.
# If this is set to false, the setbacks used will be the same as fly/speed.
use_velocity_setbacks: true
# Should AAC check for midair direction changes?
check_direction: true
# How many violations before AAC starts teleporting players who ignore velocity?
min_vl: 10
# How much should AAC increase a player's violation level by on detection?
# This is additionally increased based on the size of the velocity violation.
vl_normal: 2
# If a player seems frozen (e.g. changing resource packs/lagging), how much should AAC increase their violation level?
# 0 by default to prevent false positives with changing resource packs
vl_no_packet: 0
# Map of violation levels to commands:
thresholds:
10: "aacstaffnotify {player} in {world} seems to be ignoring velocity (ping = {ping}, tps = {tps})"
30:
- "aacstaffnotify {player} kicked for not taking knockback (Velocity) (ping = {ping}, tps = {tps})"
- "aackick {player} Not taking knockback"
# Spam prevents players from spamming the server chat.
spam:
# Do you want to enable the spam check?
enabled: true
# What words should not be covered by the anti-spam check?
# messages less than 3 letters are already ignored
whitelist:
- "lol"
- "hello"
- "okay"
# How many messages should a player be able to send in 10 seconds
message_limit: 4
# How fast can a player send messages (ticks)
chat_speed: 10
# Map of violation levels to commands:
thresholds:
10: "aacstaffnotify {player} in {world} is spamming the chat"
15: "aackick {player} Stop spamming, you sad person"
# Parameters for AAC's packet level movement check system. It is required for nearly all checks.
# Monitors movement rate and illegal movement positions.
move:
# This must be enabled to use any movement check in AAC, and is also required for some world and combat checks.
# Do not disable, or most of AAC will stop working.
enabled: true
# How much lag should AAC compensate for? (ticks)
min_balance: -80
# How many extra packets should a player be allowed to send?
cancel_threshold: 10
# What balance should AAC set the player to when the connection seems normal?
reset_level: -1
# How high should the internal packet balance be allowed to get?
balance_cap: 15
# At what tick interval should AAC reduce 1 VL from the player?
decay: 15
# Should AAC deal fall damage to players who fail the move check?
# This doesn't affect fall damage which is set by other checks (e.g. speed, fly).
deal_fall: true
# What teleport offset should AAC accept from players?
tp_accept_threshold: 0.5
# Map of violation levels to commands:
thresholds:
250: "aacstaffnotify {player} in {world} seems to be sending illegal movement information (ping = {ping}, tps = {tps})"
1000:
- "aacstaffnotify {player} kicked for sending illegal movement information (ping = {ping}, tps = {tps})"
- "aackick {player} Sending unusual movement packets"
### General things
# How many times must a player be kicked before he is banned (-1 for no autoban)
# The kick command used must be /aackick for this to work.
# Disabled by default.
ban_threshold: -1
# What command should be executed when a player is banned (only applies for /aackick)
ban_command: "aacban {player}"
# How long after a player is kicked should he be allowed to log in (ticks)
kick_ticks: 120
# Should AAC log events to a file?
log_file: true
# Should /aackick broadcast a message?
aackick_broadcast: false
# Should AAC disable/enable checks dynamically? IF YOU HAVE PWP DISABLE
usetps: true
# Enable verbose logging? This splits log output and pipes some to administrators. Not recommended for normal use.
#verbose: false
#log_console: false
@TheZeme
Copy link

TheZeme commented Jul 7, 2021

good

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment