Fix exploits on a Minecraft Anarchy Server
- ProtocolLib - This is for preventing packet exploits, if it's not present these exploits will not be prevented, and you will get a warning message.
If you wish to have a prebuilt BETA jar with the latest code, click Actions at the top of the page, click the latest build, and download the artifact.
git clone https://github.com/moom0o/AnarchyExploitFixes.git
Run ./gradlew clean build
Add your server in a pull request
constantiam.net (70-80), 5b5t.org (50-150), 6b6t.org (50-150), openanarchy.org (40-150), endcrystal.me (10-50), 6g6s.org (10-50), play.mcvpg.org (20-60), scfanarchy.ggs.gg (0-3), aetheranarchy.net (1-8), 22b22t.tk (8-40), 2b2t.com.ar (10-50), f3f5.org (5-24), alacity.net (5-20), oldmate.sydney (5-20), play.basedmc.club (5-16), 2b2t.pl (5-15), mc.zedanarchy.org (5-15)
These commands can only be executed from console or by opped players.
- /aef reload - Reload the config
- /aef datavalue - (1.12 Relevant) Get the data value for the item you're holding to add it to the remove list
- /aef elytra - See who is flying on an elytra.
- /aef geared - See how many players have armor or are new.
- /aef lag - artificially lag the server for testing. Every time you run the command the server freezes for 1 second by default, add milliseconds to the end of the command for custom time.
- /aef version - Plugin version.
You can send donations via KoFi: https://ko-fi.com/xginko
You can send bitcoin to 3DJan1GpSkhiWHYec55xKhchZC8NeC829S
You can send Monero to 49aXC8ZatrK4MrQXeSpUGsYk5HKLpeuhTZKMW8MtXuXxhNob8rQQBrkRj471Zv4ZNoCu6teYwsMy42HznLp6grCt1AUDCrW
You can also send gift cards, contact me on Discord.
Need to let us know of any exploits in private? Contact us on discord: moo#0529
, xginko
or email [email protected]
Please note that some exploits have already been patched by LPX AntiPacketExploit, ArkFlame ExploitFixer or Panilla, meaning they are most likely not included in AEF. I recommend using those alongside AEF to patch the majority of exploits.
This list does not include all features, check the config for all features!
All features listed here can be disabled or enabled in the config.
- Prevent NoCom exploit. - Prevent the 'NoCom' coordinate exploit
- Prevent a new lag exploit where fireworks can bring tps down to single digits.
- Prevent BowBomb exploit. - Prevent an exploit where bows can instantly kill a player.
- Prevent Burrow hack - Where you step inside a block so crystals can't do any damage.
- Prevent BoatFly exploit - Prevent the Futureclient / Rusherhack BoatFly exploit.
- Prevent Book-ban - All characters still work! The size of each page is just limited to 255 bytes (customizable). This allows to fill the whole page with latin characters. Characters that use more bytes such as Chinese may be limited in length.
- Prevent unbreakable Packet elytra fly.
- Prevent PacketFly exploit.
- Prevent end gateway crash exploit. - https://www.youtube.com/watch?v=c5nVBQeYo-I
- Patch end portal dupe. - https://www.youtube.com/watch?v=n-fN6txZNgc
- Prevent Y256 dispenser crash exploit. - https://www.youtube.com/watch?v=XL17P87O6xA
- Anti-Illegal system:
- Remove/revert illegal items: banned items, overstacked items, higher enchanted items, items with illegal datavalues, incompatible enchanted items (eg Silk Touch & Fortune on the same item), inapplicable enchanted items (unenchantables), Spawneggs and unbreakable items and all shulkers containing them.
- Remove illegal blocks that have been placed in the world. Supports removal of non-natural spawners too!
- Limit speed of snowballs to prevent clientside lag.
- Limit crafting table autorecipe speed to prevent a lag exploit.
- Prevent all coordinate exploits related to teleporting by vanishing a player right before they are teleported.
- Prevent destroying end portal frames.
- Prevent multiple end dragons from being created.
- Prevent portal traps - Teleport a player back to the original portal if they're trapped for too long.
- Automatically fill in the bedrock floor/roof if the bedrock has been broken.
- Prevent players from going below the bedrock floor by teleporting them up. - Useful so people can't elytra fly below the world.
- Remove wither heads automatically to prevent lag. - Removes on chunk load, unload or after a customizable alive time
- Option to disable wither spawning at spawn. - Disabled by default.
- Prevent chunk ban exploit. - Checks how much of each block is in a chunk.
- Prevent chat spam. - Delay between messages, Max messages per a certain time, separate link delay, character limit, and more!
- Prevent god mode exploit. - Prevent most godmode exploits, please note, there could still be bypasses.
- Prevent invalid names. - Disallow login from players with invalid characters/too long of a name.
- Prevent command signs. - Prevent players from right-clicking signs that have been placed with a command attached. For example, from a backdoor.
- Limit falling blocks per chunk to prevent lag.
- Limit exp bottles per chunk to prevent lag.
- Prevent projectiles from going through portals, shooting projectiles through portals can get them stuck in the same place on the other side, once they are loaded the server can crash.
- Prevent too many vehicles (eg. minecarts, boats) in chunks.
- Prevent bed-traps. - Disabled by default. Teleports players back to original location when they have been standing in a portal for too long.
- Prevent nether roof access. - Disabled by default.
- Prevent placing blocks on nether roof
- Option to disable chests on donkeys. - This is unlike IllegalStack's, no items will drop if the chest is broken. Useful to prevent many dupe exploits, Disabled by default.
- Option to prevent donkeys from going through portals. - Useful to prevent many dupe exploits, disabled by default.
- Option to mask all kick messages. - Change every kick message to "You have lost connection to the server", or whichever you specify. Disabled by default.
- Option to enable first join message. - Disabled by default.
- Command whitelist - Useful for only allowing commands that you want to be allowed, so players can't find your plugins. Disabled by default.
- Elytra speed limits for old and new chunks, and bursting settings for when tps is high.
- Elytra action bar to show players the speed they are going and speed limit.
- Rate-limit levers - Disabled by default. Prevent lag by spamming levers.
- Options to disable certain game features at specific TPS. Redstone, Elytra, Explosions, Falling Blocks.
- Bedrock Filler - Option to automatically fill overworld bedrock floor, nether bedrock floor and nether bedrock ceiling.
Missing config options will now automatically add themselves with every update without the config resetting.
This config was created on a 1.20.1 Folia server, default entries will vary based on server type and version.
config.yml
config-version: 1.0
##############
# Language #
##############
language:
# The default language that will be used if auto-language is false or no matching language file was found.
default-language: en_us
# If set to true, will display messages based on client language
auto-language: true
#############
# General #
#############
general:
# How long a checked tps is cached to save resources in ticks (1 sec = 20 ticks)
max-tps-check-interval-in-ticks: 20
# Use only if you are having problems with ProtocolLib when starting the plugin.
disable-all-ProtocolLib: false
# The Y-level at which the nether ceiling generates the last layer of bedrock on your server.
nether-ceiling-y: 127
# A server restart is required when changing a command's enable status!
commands:
say:
enable: false
# Uses MiniMessage formatting.
format: '<gray>SERVER: <gold>%message%'
help:
# Help command that shows a small command overview for players.
enable: false
toggleconnectionmsgs:
# If you don't use join leave/messages, you can set this to false.
enable: true
#############
# Patches #
#############
patches:
anti-book-ban:
enable: true
# If set to false, will use UTF-8.
# Charset to use to encode the result of ItemMeta#toString into a sequence of bytes.
# The length of that sequence is then used to get the approximate Byte-size of an ItemStack.
use-UTF-16: false
max-book-size: 9000
# Kicks players when they try to create a book bigger than the limit.
kick-on-too-large-book-edit: true
max-author-chars: 32
max-title-chars: 32
max-pages: 100
max-item-size: 8260
max-inventory-size: 50674
# How long in ticks a dropped item's size should be cached after checking.
dropped-items-size-cache-ticks: 120
# How long in ticks a player's inventory size should be cached after checking.
player-inventory-size-cache-ticks: 20
map-cursor-lag-patch:
# Patches 2b2t stacked map cursor lag that causes both client and server crashes.
enable: false
# Will have the side effect of players being unable to dye signs.
prevent-command-sign: false
# Removes entities or players if they are "invalid". Not sure if this works.
experimental-godmode-patch: false
prevent-teleport-coordinate-exploit:
# Patches coordinate exploit for teleportation commands such as /tpa, /home AS WELL as respawn exploits
# such as finding location from bed respawn point.
# This is done by vanishing the player for x ticks before teleporting.
enable: false
min-distance-to-vanish-player: 100
teleport-vanish-time-in-ticks: 10
remove-beehive-coordinates:
log: false
beehive-types-to-check:
- BEEHIVE
- BEE_NEST
# Patches a coordinate exploit by looking at Beehive NBT data using hacked clients.
enable: true
crash-exploits:
prevent-fast-world-teleport-crash:
# Prevents crash methods that involve very fast teleporting between different worlds in a short time.
enable: false
# Time in milliseconds until an entity can teleport to another world again.
teleport-delay-millis: 1000
log: false
boatfly-patch:
log: true
max-entity-packets-per-10s: 15
kick-player-if-boatflying: false
# Patches Futureclient / Rusherhack boat fly exploit.
enable: false
window-click-crash-patch:
# Patches Container click / Window click crash exploit.
enable: true
tag-parser-crash-patch:
# Patches TagParser crash exploit.
enable: true
#################
# Preventions #
#################
preventions:
anti-bed-trap:
# Resets Bed Respawn when a player dies too many times within a certain timeframe.
enable: false
log: false
# Amount of times player can die until he is determined as bed-trapped.
max-deaths-per-time: 7
# Time until death counter will be reset again
time-in-seconds: 5
prevent-nether-roof:
# Prevent players from going above the nether roof.
enable: true
safely-teleport-players: true
prevent-non-survival-players:
# Checks if player is in survival and puts him back into survival if not, Useful if you had a backdoor incident.
enable: false
log: true
whitelisted-players:
- Notch
prevent-opped-players:
# Useful if you suspect a backdoor has happened.
enable: false
log: true
whitelisted-players:
- Notch
permanent-block-breaking:
by-exploding-pistons:
enable: true
whitelisted-worlds:
- example_world_name
# If enabled, will only protect portals and end gateways
only-for-portals-and-gateways: false
by-placing-piston-on-retract:
enable: true
whitelisted-worlds:
- example_world_name
by-growing-structures:
# Prevents removal of permanent blocks by growing structures like mushrooms into them.
enable: true
portals:
prevent-destroying-end-portals:
enable: true
log: true
end:
bedrock-protection-radius-blocks: 8
# Add block locations that should be protected as well.
# Format: <worldname>:<x>:<y>:<z>
# If you don't want to use this, just configure an empty list using: pillar-blocks: []
pillar-blocks:
- world_the_end:143:140:-50
- world_the_end:112:90:-90
# CAUTION: Will kill the entity on folia due to broken portal event. There is sadly no other efficient way.
# Only enable if you must. Does not affect players.
prevent-all-entities-in-portals: false
prevent-portal-traps:
# Teleports a player back to the original location if they stand in a portal for too long.
enable: false
wait-time-until-tp-back-in-seconds: 10
# Prevents a lag exploit. Might disable some chunk loader designs.
prevent-projectiles-in-portals: false
prevent-specific-types:
enable: true
# CAUTION: Will kill the entity on folia due to broken portal event. There is sadly no other efficient way.
# Defaults prevent common lag methods.
entities:
- DROPPED_ITEM
- FIREWORK
- PRIMED_TNT
- THROWN_EXP_BOTTLE
- EXPERIENCE_ORB
- ARMOR_STAND
withers:
# Prevents wither skulls from being shot.
disable-withers-from-shooting-skulls: false
rate-limit-wither-skulls:
# This can help combat lag caused by a ton of witherskulls spawning but weakens withers.
enable: false
# Cooldown until another skull will be shot at a player
player-target-cooldown-in-ticks: 20
# Cooldown until another skull can be shot at anything else other than a player
other-target-cooldown-in-ticks: 40
# Cooldown when wither has no target
no-target-cooldown-in-ticks: 100
remove-flying-wither-skulls:
remove-all-flying-skulls: false
# Enable if a lot of wither skulls at spawn are causing lag.
periodically-remove-all-flying-skulls:
check-period-in-ticks: 80
if-lived-longer-than-x-ticks:
# Remove wither skulls that have been flying for too long to prevent them from causing lag.
enable: true
# 200 Ticks = 10 Seconds
max-age-in-ticks: 200
# The delay in ticks until all skulls are checked for their alive time again.
check-period-in-ticks: 40
# Removes wither skulls when the chunk gets loaded. Use if you have a ton of them at spawn and they are causing lag.
on-chunk-load: true
# Removes wither skulls when the chunk gets unloaded. Use if you have a ton of them at spawn and they are causing lag.
on-chunk-unload: true
disable-wither-spawning-at-spawn:
# Only enable if you must.
enable: false
inform-players: true
worlds:
world: 5000
world_the_end: 5000
world_nether: 5000
#####################
# Lag Preventions #
#####################
lag-preventions:
prevent-lever-spam:
# Rate Limit levers to prevent a lag exploit.
enable: false
show-actionbar: true
kick-player: false
max-lever-usages-per-time: 15
lever-time-in-ticks: 40
prevent-snowball-exploit:
# Patches a lag exploit.
enable: false
# (20 ticks = 1 second) Will not touch Ender Pearls
projectiles-max-alive-time-in-ticks: 300
# How frequently we should check for all projectile's alive time
check-period-in-seconds: 20
prevent-falling-block-stasis-exploit:
# Patches a lag exploit using falling blocks and glitched piston heads: https://www.youtube.com/watch?v=y2CjPlvtj58
enable: true
log: false
# (20 ticks = 1 second)
falling-blocks-max-alive-time-in-ticks: 300
# How frequently we should check for all projectile's alive time
check-period-in-seconds: 12
prevent-inventory-action-lag:
# Prevent lag generated by players quickly moving big items back and forth between inventories.
# Uses cached counters that auto-reset after the configurable time in milliseconds.
enable: false
log: true
# The amount of time in milliseconds an entry is kept after writing.
cache-time-millis: 2000
# Use correct enums from: https://jd.papermc.io/paper/1.20/org/bukkit/event/inventory/InventoryAction.html.
# Format is: InventoryClickAction: AllowedClicksPerTime
click-action-limits:
COLLECT_TO_CURSOR: 15
HOTBAR_SWAP: 30
MOVE_TO_OTHER_INVENTORY: 8
prevent-liquid-update-lag:
enable: false
# amount of liquid source blocks * sides it can spread to * block spread length
max-liquid-events-in-same-chunk-per-time: 1200
# Record time after first liquid spread.
# When this time runs out, the spread counter resets
time-in-ticks: 100
# Very spammy, use for testing/debugging only
log: false
pathfinding-limits:
enable: false
# Only meant for debug.
log: false
global-limit:
enable: false
# The max distance no mob pathfinding should exceed.
# You want this to be higher than your highest max distance for a specific mob.
max-target-distance: 20.0
custom-limits:
enable: true
entities:
WITHER: 8.0
ZOMBIE_VILLAGER: 10.0
ZOMBIE: 6.0
ZOMBIFIED_PIGLIN: 8.0
SKELETON: 6.0
WITHER_SKELETON: 8.0
prevent-flooding-machines:
enable: false
delete-waterlogged-blocks: true
target-distance-limits:
enable: false
log: false
global-limit:
enable: false
# The max distance no target should exceed.
# You want this to be higher than your highest max distance for a specific mob.
max-target-distance: 20.0
custom-limits:
enable: true
entities:
WITHER: 8.0
ZOMBIE_VILLAGER: 10.0
ZOMBIE: 6.0
ZOMBIFIED_PIGLIN: 8.0
SKELETON: 6.0
WITHER_SKELETON: 8.0
disable-physics-during-low-tps:
explosions:
# Disable explosions during low tps to combat lag.
enable: false
disable-TPS: 14.0
log: false
block-physics:
# Stop block physics (like falling blocks) when the TPS gets below a certain value.
enable: false
disable-TPS: 16.0
log: false
liquid-spread:
enable: false
disable-TPS: 16.0
log: false
melting-blocks:
enable: false
disable-TPS: 16.0
log: false
redstone:
# Disable redstone during low TPS to prevent some lag machines.
enable: false
disable-TPS: 16.0
log: false
noteblocks:
# Some lag machines use noteblocks to work around redstone limitations.
enable: false
disable-TPS: 16.0
log: false
fire-spread:
enable: false
disable-TPS: 14.0
log: false
grass-spread:
enable: false
disable-TPS: 14.0
log: false
leave-decay:
enable: false
disable-TPS: 14.0
log: false
######################
# Dupe Preventions #
######################
dupe-preventions:
# CAUTION: Will remove chests and their contents from a chested entity if it touches a portal on Folia!
# Prevents entities that can carry chests from using portals.
prevent-chested-living-entities-in-portals: true
# Prevents a dupe exploit involving donkeys.
prevent-chests-on-living-entities: false
# Closes open inventories of entities that disappeared when the player riding it disconnected.
close-entity-inventories-on-player-disconnect: false
# Closes open inventories of all entities that are in a chunk that will be unloaded.
close-entity-inventories-on-chunk-unload: false
# Patches https://www.youtube.com/watch?v=RLvErqzeK3Y
prevent-end-portal-dupe: true
############
# Combat #
############
combat:
prevent-burrow:
enable: false
# 1.0 = Half a heart of damage every time you move.
damage-when-moving: 1.0
teleport-above-block: true
# Prevent burrow even if there is a block above the block they are burrowing in.
# Please note this may allow creating an "elevator", players will keep teleporting up until they hit air
prevent-if-block-above-burrow: false
break-anvil-instead-of-teleport: true
# Needs to be enabled to prevent a bug where players are teleported above a slab when the slab is underwater, only happens in newer versions.
allow-slabs-in-burrow: true
crystal-aura:
regular-delay:
enable: false
# Can help with desync in some cases but recommended to leave off unless needed.
update-inventory-on-cancel: false
# Set to -1 to disable.
break-delay-in-ticks: 4
place-delay-in-ticks: -1
piston-aura-delay:
# Rate-limits pistons that extend into crystals
enable: false
piston-extend-delay-in-ticks: 40
hotbar-switch-delay:
enable: false
# Delay between switching from an end crystal to other items in hotbar
delay-in-ticks: 2
# Only delay when switched to specific materials
only-delay-specific-materials: true
delayed-specific-materials:
- BOW
- DIAMOND_SWORD
- DIAMOND_AXE
- TRIDENT
- GOLDEN_SWORD
- GOLDEN_AXE
- IRON_SWORD
- IRON_AXE
- STONE_SWORD
- STONE_AXE
- WOODEN_SWORD
- WOODEN_AXE
- BLACK_BED
- BLUE_BED
- BROWN_BED
- CYAN_BED
- GRAY_BED
- GREEN_BED
- LIGHT_BLUE_BED
- LIGHT_GRAY_BED
- LIME_BED
- MAGENTA_BED
- ORANGE_BED
- PINK_BED
- PURPLE_BED
- RED_BED
- WHITE_BED
- YELLOW_BED
- CROSSBOW
- NETHERITE_SWORD
- NETHERITE_AXE
anchor-aura-delay:
enable: false
# Can help with desync in some cases but recommended to leave off unless needed.
update-inventory-on-cancel: false
place-delay-in-ticks: 8
break-delay-in-ticks: -1
bed-aura-delay:
enable: false
# Set to -1 to disable.
break-delay-in-ticks: 5
place-delay-in-ticks: -1
prevent-bow-bomb:
enable: false
# Fully pulled bow is ~9-10. 15 is default just to be safe.
max-bow-squared-velocity: 15
##############
# Illegals #
##############
illegals:
remove-placed-blocks:
on-chunkload:
# Remove illegally placed blocks on chunkload.
enable: false
# Enter PLAYER_HEAD here if you want to remove placed playerheads.
blocks-to-remove:
- PLAYER_HEAD
- CHAIN_COMMAND_BLOCK
- COMMAND_BLOCK
- COMMAND_BLOCK_MINECART
- REPEATING_COMMAND_BLOCK
- BEDROCK
- BARRIER
exempted-worlds:
- exampleworld1
- exampleworld2
pause-on-low-TPS: false
pause-TPS: 14.0
periodically:
enable: false
# Enter PLAYER_HEAD here if you want to remove placed playerheads.
blocks-to-remove:
- PLAYER_HEAD
- CHAIN_COMMAND_BLOCK
- COMMAND_BLOCK
- COMMAND_BLOCK_MINECART
- REPEATING_COMMAND_BLOCK
- BEDROCK
- BARRIER
exempted-worlds:
- exampleworld1
- exampleworld2
check-period-in-seconds: 10
pause-on-low-TPS: false
pause-TPS: 14.0
remove-unnatural-spawners-on-chunkload:
enable: false
pause-on-low-TPS: false
pause-TPS: 14.0
# You can add or remove as much world names here as you want.
natural-spawner-types-per-world:
world:
- SKELETON
- ZOMBIE
- SILVERFISH
- SPIDER
- CAVE_SPIDER
world_the_end:
- SKELETON
- SPIDER
world_nether:
- BLAZE
- MAGMA_CUBE
remove-specific-item-names:
# Resets an item's name if configured in the config.
enable: false
color-insensitive-item-names:
- Super Insane Mega Sussy Item
color-sensitive-item-names:
- <bold><aqua>PvP KIT V2
revert-overstacked-items:
# Revert illegally high stacked items.
enable: false
item-whitelist-enabled: false
use-as-blacklist-instead: true
whitelisted-items:
- TOTEM_OF_UNDYING
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: false
delete-shulker-if-contains-overstacked: false
bundles-cant-unbundle-if-contains-overstacked: false
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
revert-unbreakables:
enable: false
item-whitelist-enabled: false
use-as-blacklist-instead: false
whitelisted-items:
- DIAMOND_CHESTPLATE
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: true
delete-shulker-if-contains-unbreakable: false
bundles-cant-unbundle-if-contains-unbreakable: true
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
ban-specific-materials:
enable: false
delete-illegals: false
check-stored-items: false
banned-materials:
- CHAIN_COMMAND_BLOCK
- COMMAND_BLOCK
- COMMAND_BLOCK_MINECART
- REPEATING_COMMAND_BLOCK
- BEDROCK
- BARRIER
- STRUCTURE_BLOCK
- STRUCTURE_VOID
- END_PORTAL_FRAME
- END_PORTAL
- NETHER_PORTAL
- LIGHT
enchantments:
revert-incompatible-enchants:
# Reverts items like Armor with all Protection enchantments.
enable: true
item-whitelist-enabled: true
use-as-blacklist-instead: false
whitelisted-items:
- BOW
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
revert-higher-enchants:
# Reverts 32ks / 255s
enable: true
item-whitelist-enabled: true
use-as-blacklist-instead: false
whitelisted-items:
- GOLDEN_APPLE
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: true
delete-shulker-if-contains-higher-enchant: false
bundles-cant-unbundle-if-contains-higher-enchant: true
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
revert-specific-higher-enchants:
enable: false
enchantments:
- DIG_SPEED
item-whitelist-enabled: true
use-as-blacklist-instead: false
whitelisted-items:
- GOLDEN_APPLE
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: true
delete-shulker-if-contains-specific-higher-enchanted: false
bundles-cant-unbundle-if-contains-higher-enchant: true
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
revert-inapplicable-enchants:
enable: true
item-whitelist-enabled: true
use-as-blacklist-instead: false
whitelisted-items:
- GOLDEN_APPLE
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: false
delete-shulker-if-contains-inapplicable-enchant: false
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
nbt:
revert-illegal-damage-modifiers:
# Reverts 32ks / 255s that have been created using nbt tags instead of illegal enchants.
enable: false
# The exact name of the damage nbt tag
tag: dmg
log: false
item-whitelist-enabled: false
use-as-blacklist-instead: false
whitelisted-items:
- GOLDEN_APPLE
# Deletes the item instead of clearing the tag
delete-item-instead: false
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: true
delete-shulker-if-contains-damage-modifier: false
bundles-cant-unbundle-if-contains-damage-modifier: true
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
revert-impossibly-stored-items:
enable: false
# The exact name of the nbt tag that signals items are stored inside.
tag: BlockEntityTag
# Deletes the item instead of clearing data
delete-item-instead: false
log: false
delete-shulker-if-contains-storage-items: false
materials-to-check:
- CHEST
- TRAPPED_CHEST
- DISPENSER
- DROPPER
player-heads:
remove-items:
# This deletes playerheads with and without owners
enable: false
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: false
delete-shulker-if-contains-player-head: false
periodically-check-player-inventories:
enable: false
check-period-in-ticks: 20
prevent-placing: false
spawn-eggs:
# Also prevents them from being used in combination with dispensers.
prevent-using: false
remove-spawn-eggs:
enable: false
delete-shulker-if-contains-spawn-egg: false
# Prevents Hopper32k mechanic of placing a shulker containing illegals on top of a hopper and using the illegal
# out of the hoppers inventory.
# WARNING: Hooks into InventoryMoveItemEvent, which can become resource intense. Enable only if you need to.
prevent-hopper32k-mechanic: false
##################
# Chunk Limits #
##################
chunk-limits:
block-limit:
enable: false
# Attempt to prevent ChunkBan / Client FPS Lag
max-blocks-per-chunk:
ZOMBIE_WALL_HEAD: 16
CREEPER_HEAD: 16
PIGLIN_HEAD: 16
ACACIA_HANGING_SIGN: 8
JUNGLE_WALL_HANGING_SIGN: 8
BIRCH_WALL_HANGING_SIGN: 8
ACACIA_WALL_SIGN: 8
BLACK_BANNER: 12
GREEN_WALL_BANNER: 12
MAGENTA_BANNER: 12
DRAGON_HEAD: 16
BIRCH_WALL_SIGN: 8
PURPLE_WALL_BANNER: 12
SPRUCE_WALL_HANGING_SIGN: 8
PINK_BANNER: 12
TRAPPED_CHEST: 200
CRIMSON_HANGING_SIGN: 8
PISTON_HEAD: 32
PLAYER_WALL_HEAD: 16
CRIMSON_WALL_SIGN: 8
ENDER_CHEST: 64
BLACK_WALL_BANNER: 12
ENCHANTING_TABLE: 16
BIRCH_SIGN: 8
BAMBOO_WALL_HANGING_SIGN: 8
BIRCH_HANGING_SIGN: 8
SPRUCE_HANGING_SIGN: 8
PINK_WALL_BANNER: 12
OAK_WALL_HANGING_SIGN: 8
WARPED_WALL_HANGING_SIGN: 8
STICKY_PISTON: 32
OAK_WALL_SIGN: 8
BROWN_BANNER: 12
RED_BANNER: 12
ZOMBIE_HEAD: 16
BLUE_WALL_BANNER: 12
ACACIA_WALL_HANGING_SIGN: 8
GREEN_BANNER: 12
LIGHT_GRAY_BANNER: 12
CHEST: 500
SPRUCE_SIGN: 8
MANGROVE_SIGN: 8
GRAY_WALL_BANNER: 12
LIME_BANNER: 12
SLIME_BLOCK: 128
PLAYER_HEAD: 16
JUNGLE_SIGN: 8
WARPED_HANGING_SIGN: 8
PIGLIN_WALL_HEAD: 16
CREEPER_WALL_HEAD: 16
BLUE_BANNER: 12
BAMBOO_WALL_SIGN: 8
OAK_HANGING_SIGN: 8
LIGHT_BLUE_BANNER: 12
DRAGON_WALL_HEAD: 16
CYAN_WALL_BANNER: 12
ACACIA_SIGN: 8
OAK_SIGN: 8
BEACON: 32
BAMBOO_HANGING_SIGN: 8
DARK_OAK_SIGN: 8
LIGHT_GRAY_WALL_BANNER: 12
YELLOW_WALL_BANNER: 12
MAGENTA_WALL_BANNER: 12
ORANGE_WALL_BANNER: 12
BAMBOO_SIGN: 8
DARK_OAK_HANGING_SIGN: 8
PISTON: 32
DARK_OAK_WALL_SIGN: 8
GLOWSTONE: 5000
MANGROVE_HANGING_SIGN: 8
YELLOW_BANNER: 12
BROWN_WALL_BANNER: 12
CRIMSON_WALL_HANGING_SIGN: 8
MANGROVE_WALL_HANGING_SIGN: 8
ORANGE_BANNER: 12
PURPLE_BANNER: 12
MOVING_PISTON: 32
DISPENSER: 100
RED_WALL_BANNER: 12
GRAY_BANNER: 12
CYAN_BANNER: 12
SPRUCE_WALL_SIGN: 8
CRIMSON_SIGN: 8
LIGHT_BLUE_WALL_BANNER: 12
WARPED_SIGN: 8
LIME_WALL_BANNER: 12
DARK_OAK_WALL_HANGING_SIGN: 8
JUNGLE_HANGING_SIGN: 8
MANGROVE_WALL_SIGN: 8
JUNGLE_WALL_SIGN: 8
WARPED_WALL_SIGN: 8
entity-limits:
custom-limit:
# Limit specific entity types per chunk.
enable: false
log-removals: true
# Check all chunks every x ticks.
check-period-in-ticks: 1200
chunk-age-skip:
enable: true
# How long a chunk has to have been inhabited for it to be checked
min-age-in-ticks: 800
# When a chunk is loaded, entities inside of it are not necessarily loaded as well.
# Force loading is worse for performance but could help in some scenarios.
forceload-entities: false
# Google EntityType Spigot for the correct names. They have to match your minecraft version.
limited-types:
MAGMA_CUBE: 10
SILVERFISH: 3
MULE: 10
FROG: 20
HOGLIN: 10
HUSK: 10
SHEEP: 10
VEX: 15
VINDICATOR: 15
PILLAGER: 15
PIGLIN_BRUTE: 10
POLAR_BEAR: 5
TURTLE: 20
TRADER_LLAMA: 10
SLIME: 10
CAVE_SPIDER: 10
DROWNED: 10
EVOKER: 15
SQUID: 20
HORSE: 10
PARROT: 10
ENDERMITE: 3
FOX: 10
AXOLOTL: 10
STRAY: 10
ZOMBIE: 10
CAT: 10
SALMON: 6
GOAT: 10
RABBIT: 5
DONKEY: 10
STRIDER: 3
PANDA: 5
OCELOT: 3
ENDERMAN: 10
ZOMBIE_VILLAGER: 25
LLAMA: 10
WITCH: 15
TROPICAL_FISH: 6
SPIDER: 10
ALLAY: 20
SKELETON: 10
WITHER_SKELETON: 10
WITHER: 16
CREEPER: 10
MUSHROOM_COW: 10
CHICKEN: 10
ZOMBIFIED_PIGLIN: 10
COD: 6
ZOMBIE_HORSE: 10
WITHER_SKULL: 10
RAVAGER: 15
GLOW_SQUID: 20
PUFFERFISH: 3
GUARDIAN: 20
BEE: 15
PHANTOM: 10
BLAZE: 10
SKELETON_HORSE: 10
COW: 10
PIGLIN: 25
WANDERING_TRADER: 10
PIG: 10
ZOGLIN: 10
BAT: 3
DOLPHIN: 4
TADPOLE: 20
WOLF: 10
IRON_GOLEM: 15
non-living-limit:
# Limit the amount of non living entities in a chunk to prevent lag (does not affect items).
enable: false
log-removals: true
max-non-living-per-chunk: 100
# 20 ticks = 1 second
check-period-in-ticks: 20
dropped-item-limit:
# Limit the amount of dropped items in a chunk to combat lag.
# Be aware this does not prioritize items by value or anything, just whatever gets over the counter.
enable: false
log-removals: true
max-dropped-items-per-chunk: 200
# 20 ticks = 1 second
check-period-in-ticks: 800
whitelist-specific-item-types: false
# You need to use correct Material enums for your minecraft version here.
whitelisted-types:
- BLACK_SHULKER_BOX
- BLUE_SHULKER_BOX
- BROWN_SHULKER_BOX
- CYAN_SHULKER_BOX
- GRAY_SHULKER_BOX
- GREEN_SHULKER_BOX
- LIGHT_BLUE_SHULKER_BOX
- LIGHT_GRAY_SHULKER_BOX
- LIME_SHULKER_BOX
- MAGENTA_SHULKER_BOX
- ORANGE_SHULKER_BOX
- PINK_SHULKER_BOX
- PURPLE_SHULKER_BOX
- RED_SHULKER_BOX
- SHULKER_BOX
- WHITE_SHULKER_BOX
- YELLOW_SHULKER_BOX
villager-limit:
enable: false
max-villagers-per-chunk: 25
log-removals: false
# check all chunks every x ticks.
check-period-in-ticks: 600
# Professions that are in the top of the list are going to be scheduled for removal first.
removal-priority:
- NONE
- NITWIT
- SHEPHERD
- FISHERMAN
- BUTCHER
- CARTOGRAPHER
- LEATHERWORKER
- FLETCHER
- MASON
- FARMER
- ARMORER
- TOOLSMITH
- WEAPONSMITH
- CLERIC
- LIBRARIAN
exp-bottle-limit:
# Prevent having a shitton of exp bottles in one chunk then loading it to kill the server.
enable: true
log: false
# Max in a chunk, doesn't limit the actual xp orbs.
max-exp-bottle-per-chunk: 25
# 20 ticks = 1 second
check-period-in-ticks: 800
falling-block-limit:
# Prevent players from placing massive sand chunks and killing the server.
enable: true
log: false
# Removes any falling block if there is more than x blocks (actively) falling in a chunk.
max-falling-gravitiy-blocks-per-chunk: 60
# Delay in ticks until the same chunk can be checked again.
# Prevents overchecking, because a physics event can be called multiple times for the same chunk.
chunk-check-delay-in-ticks: 20
minecart-limit:
# Limit the amount of minecarts to prevent lag.
enable: false
log-removals: false
max-minecarts-per-chunk: 25
# 200 ticks = 10 seconds.
check-period-in-ticks: 400
vehicle-limit:
# Limit the amount of vehicles to prevent some lag machines involving boats and a dispenser.
enable: false
log-removals: false
max-vehicles-per-chunk: 25
# 200 ticks = 10 seconds.
check-period-in-ticks: 400
#############
# Bedrock #
#############
bedrock:
fill-in-bedrock:
nether-ceiling:
fill-on-chunkload:
enable: false
# Recommended to leave off. Only useful if world generation is broken for some reason.
also-check-new-chunks: false
pause-on-low-tps: true
# The TPS at which bedrock filling will pause to avoid lag.
pause-tps: 16.0
# Case sensitive!
exempted-worlds:
- exampleworld
- exampleworld2
periodically-check-and-fill:
enable: false
check-period-in-seconds: 10
pause-on-low-tps: true
pause-tps: 16.0
nether-floor:
fill-on-chunkload:
enable: false
also-check-new-chunks: false
pause-on-low-tps: true
pause-tps: 16.0
# Case sensitive!
exempted-worlds:
- exampleworld
- exampleworld2
periodically-check-and-fill:
enable: false
check-period-in-seconds: 10
pause-on-low-tps: true
pause-tps: 16.0
overworld-floor:
fill-on-chunkload:
enable: false
# Recommended to leave off. Only useful if world generation is broken for some reason.
also-check-new-chunks: false
# Pauses the task during low tps to avoid lag.
pause-on-low-tps: true
# The TPS at which bedrock filling will pause.
pause-tps: 16.0
# Case sensitive!
exempted-worlds:
- exampleworld
- exampleworld2
periodically-check-and-fill:
# only checks loaded chunks
enable: false
check-period-in-seconds: 10
pause-on-low-tps: true
pause-tps: 16.0
prevent-going-below-bedrock-floor:
# Prevents players from going below bedrock the bedrock floor.
enable: true
# Teleports the player above the bedrock
teleport: true
# Eject player from the vehicle
eject-player: true
# Disables a player's elytra flight
stop-elytra: true
# Whether the bedrock hole should be filled or not
fill-bedrock-hole: true
exempted-worlds:
- world_the_end
- skyblock_world
filler-material: BEDROCK
############
# Elytra #
############
elytra:
# NOTE: Set nocheatplus horizontal elytra settings to 500 or higher.
elytra-speed:
# If set to false, will only calculate 2-Dimensional speed without taking height changes into consideration.
calculate-3D-speed: true
# Display info in Actionbar while flying.
display-actionbar: true
# Inform flying player if they are in old or new chunks.
display-chunk-info-in-actionbar: true
# Plays XP pickup sound to alert players when theyre going above the limit.
play-sound-when-too-fast: true
sound: ENTITY_EXPERIENCE_ORB_PICKUP
# Recommended to leave false if you dont experience any issues.
teleport-instead-of-canceling-movement: false
Global-Settings:
# Global settings. If nothing else is enabled, this will be used for all environments.
enable: true
# Can be slow with a lot of players. Enable only if needed.
use-bypass-permission: false
deny-elytra-usage: false
speed-old-chunks: 1.81
speed-new-chunks: 1.81
enable-bursting: true
burst-speed-old-chunks: 5.0
burst-speed-old-chunk-TPS: 18.0
burst-speed-new-chunks: 3.12
burst-speed-new-chunk-TPS: 19.0
deny-elytra-on-low-TPS: true
deny-elytra-TPS: 12.0
also-remove-elytra-on-low-TPS: true
At-Spawn:
# Use separate values for players at spawn.
enable: false
# Radius in blocks around 00 that should count as spawn.
radius: 3000
# Can be slow with a lot of players. Enable only if needed.
use-bypass-permission: false
deny-elytra-usage: false
speed-old-chunks: 1.0
speed-new-chunks: 0.8
deny-elytra-on-low-TPS: true
deny-elytra-TPS: 10.0
also-remove-elytra-on-low-TPS: true
Nether-Ceiling:
# Use separate values for players above the nether ceiling.
enable: true
# Can be slow with a lot of players. Enable only if needed.
use-bypass-permission: false
deny-elytra-usage: false
speed-old-chunks: 0.5
speed-new-chunks: 0.5
enable-bursting: true
burst-speed-old-chunks: 1.0
burst-speed-old-chunk-TPS: 18.0
burst-speed-new-chunks: 1.0
burst-speed-new-chunk-TPS: 18.0
deny-elytra-on-low-TPS: true
deny-elytra-TPS: 12.0
also-remove-elytra-on-low-TPS: true
patch-generic-speedhacks:
# Patches speed-limit bypass using generic speedhacks (Timer) by additionally checking player position every x ticks
enable: true
# Lower value means more accuracy but also more overhead.
check-interval-in-ticks: 10
packet-elytra-fly:
# Patches the future/rusherhack/kamiblue 2b2t elytra fly exploit
patch-packet-elytra-fly: false
use-bypass-permission: false
# The fly exploit causes the player to constantly toggle gliding.
# If too many glide toggles occur within a timeframe, they are most likely using PacketFly.
# Still triggers false positives when players are jump sprinting with elytras, so play around with the values.
max-elytra-opens-per-time: 25
# Will only allow players to go about 85km/h.
time-in-seconds: 8
# Configure message in lang folder.
notify-player-to-disable-packetfly: true
# If enabled, player will be kicked instead of dropping their elytra.
kick-instead-of-remove-elytra: false
##########
# Chat #
##########
chat:
command-whitelist:
# This will make it pretty much impossible to find your plugins as only the commands you specify will be able to work.
# Allow bypass using permission: anarchyexploitfixes.commandwhitelistbypass
enable: false
# Will show logs when a command was denied.
log: false
# Enable only if you have problems with the regular commandwhitelist. Otherwise not recommended to use.
use-protocollib: false
# Add all commands you want your players to be able to access (without the '/'). Not case sensitive.
whitelisted-commands:
- help
- vote
- kill
- discord
- togglechat
- toggleconnectionmsgs
- toggletells
- togglewhispering
- toggleprivatemsgs
- ignore
- ignorelist
- ignorehard
- toggledeathmsg
- dmt
- worldstats
- stats
- tps
- msg
- whisper
- w
- m
- t
- pm
- tell
- r
- reply
- last
blacklisted-subcommands:
- help about
- vote List
- vote Best
- vote Total
- worldstats reload
- stats reload
prevent-scanning-server-plugins:
# Prevents hacked clients running .plugins to find out what plugins the server is using
enable: true
###################
# Miscellaneous #
###################
misc:
join-leave-messages:
# If you want to hide yourself or someone else when logging into the game,
# use these permissions: anarchyexploitfixes.silentJoin, anarchyexploitfixes.silentLeave
enable: true
# default mode of /toggleconnectionmsgs
connection-messages-on-by-default: true
show-in-console: false
first-join-messages:
# Configure messages in lang folder.
enable: false
show-in-console: true
kicks:
# Configure mask message in lang folder.
mask-kick-messages: false
prevent-message-kick:
# Cancels the kick for specific kick messages.
enable: false
kick-messages-to-listen-to:
- Kicked for spamming
- Stop spamming!
You can find an optimization guide at the file GUIDE.md
- Auto-updater, because you shouldn't trust me and instead read the code yourself.