From a1357a5c4703d6d1b7076fd26184d31bf3eb3a41 Mon Sep 17 00:00:00 2001 From: xGinko Date: Wed, 14 Aug 2024 09:21:39 +0200 Subject: [PATCH] add allay dupe prevention --- .../modules/dupepreventions/AllayDupe.java | 41 + .../src/main/resources/config.yml | 2273 ----------------- .../modules/dupepreventions/AllayDupe.java | 41 + .../src/main/resources/config.yml | 2056 --------------- .../kotlin/me.xginko.aef.wrapper.gradle.kts | 2 +- 5 files changed, 83 insertions(+), 4330 deletions(-) create mode 100755 AnarchyExploitFixesFolia/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java delete mode 100644 AnarchyExploitFixesFolia/src/main/resources/config.yml create mode 100755 AnarchyExploitFixesLegacy/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java delete mode 100644 AnarchyExploitFixesLegacy/src/main/resources/config.yml diff --git a/AnarchyExploitFixesFolia/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java b/AnarchyExploitFixesFolia/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java new file mode 100755 index 000000000..b97f7a3e4 --- /dev/null +++ b/AnarchyExploitFixesFolia/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java @@ -0,0 +1,41 @@ +package me.xginko.aef.modules.dupepreventions; + +import com.cryptomorin.xseries.XEntityType; +import me.xginko.aef.modules.AEFModule; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.HandlerList; +import org.bukkit.event.Listener; +import org.bukkit.event.vehicle.VehicleEnterEvent; + +public class AllayDupe extends AEFModule implements Listener { + + public AllayDupe() { + super("dupe-preventions.allay-dupe"); + config.addComment(configPath, """ + Will prevent allays from entering vehicles to prevent a duplication exploit + confirmed working in 1.19.4."""); + } + + @Override + public void enable() { + plugin.getServer().getPluginManager().registerEvents(this, plugin); + } + + @Override + public boolean shouldEnable() { + return config.getBoolean(configPath, false); + } + + @Override + public void disable() { + HandlerList.unregisterAll(this); + } + + @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) + private void onVehicleEnter(VehicleEnterEvent event) { + if (event.getEntered().getType() == XEntityType.ALLAY.get()) { + event.setCancelled(true); + } + } +} diff --git a/AnarchyExploitFixesFolia/src/main/resources/config.yml b/AnarchyExploitFixesFolia/src/main/resources/config.yml deleted file mode 100644 index 622889ecd..000000000 --- a/AnarchyExploitFixesFolia/src/main/resources/config.yml +++ /dev/null @@ -1,2273 +0,0 @@ -plugin-version: 2.7.2 -server-version: '1.21-127-4e6a2a1 (MC: 1.21)' - -############## -# Language # -############## -language: - # The default language that will be used if auto-language is set to 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: - # The time in ticks (1 sec = 20 ticks) a checked tps will be cached - # by the plugin. - max-tps-check-interval-in-ticks: 20 - # In case packet modules are causing trouble, you can disable them here. - disable-all-packet-listeners: 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 format: https://docs.advntr.dev/minimessage/format.html. - format: 'SERVER: %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 - -################### -# Miscellaneous # -################### -misc: - join-leave-messages: - # If you want to hide yourself or someone else when logging - # into the game, use these permissions: - # aef.silentJoin, aef.silentLeave - enable: true - # If set to true, players will see join/leave messages by default - # and enter /toggleconnectionmsgs to disable them. - # If set to false will work the other way around. - connection-messages-on-by-default: true - show-in-console: false - first-join-messages: - # Configure message in lang folder. - # You can hide yourself and other players using the permission: - # aef.silentJoin - 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! - auto-bed: - # Re-enables SPIGOT-5988, also known as 'auto-bed' - # From Minecraft version 1.16 (≈June 2020) to version 1.17.1(≈October 2021) - # there was a bug (SPIGOT-5988) which did not reset the respawn point of the - # player after death, if his bed was blocked with a shulker. - # After dying a second time, the player will be back at his bed again. - # This bug persisted from the Spigot server to Paper and all its forks until - # October 2021, after which it was fixed by the Spigot development team. - # Attempts by players to reach out to Spigot to allow them to disable the patch - # that fixes the SPIGOT-5988 bug have failed. - # Demonstration of how the patch works: - # https://www.youtube.com/watch?v=3y5SbQXzMss - enable: 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: aef.bypass.commandwhitelist - enable: false - # Will show logs when a command was denied. - log: false - # Enable only if you have problems with the default commandwhitelist. - # Otherwise not recommended to use. - use-packets: 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 - # Add all subcommands you DON'T want your players to be able - # to access. Case sensitive! - 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. - # Recommended to use in combination with command whitelist. - enable: true - -############ -# Elytra # -############ -elytra: - # NOTE: Set nocheatplus horizontal elytra settings to 500 or higher. - elytra-speed: - # Time in ticks that a chunk has to have been inhabited to count as old chunk. - # Note that the time is incremented once per tick per player within mob spawning - # distance of a chunk. - old-chunk-inhabited-ticks: 200 - # The period in millis players will be checked to determine their speed. - # If you have lagging players with consistent high ping, you can increase this number. - check-period-millis: 500 - # If set to false, will only calculate 2-Dimensional speed without taking height - # changes into consideration. - calculate-3D-speed: false - # 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 - packet-elytra-fly: - # Patches the future/rusherhack/kamiblue 2b2t elytra fly exploit. - patch-packet-elytra-fly: 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 may trigger false positives when players are jumping and - # sprinting with elytra equipped, so recommended to play around - # with the values. - max-elytra-opens-per-time: 25 - # Time in seconds a elytra open count will be remembered by the plugin. - time-in-seconds: 8 - # Configure message in lang folder. - notify-player-to-disable-packetfly: true - # If enabled, player will be kicked with a message instead of - # getting their elytra dropped. - kick-instead-of-remove-elytra: false - -################## -# Chunk Limits # -################## -chunk-limits: - entity-limits: - 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, - # it just deletes whatever happens to get over the limit during - # counting. - enable: false - log-removals: true - max-dropped-items-per-chunk: 200 - # The delay in ticks the plugin will wait after an item in a chunk - # has dropped before the check logic will run. - # This improves performance as there will be no check for each single - # item entity that spawns. - post-item-drop-check-delay-ticks: 60 - # The period in ticks in which all loaded chunks should be regularly - # checked. Keep in mind: A lower number provides more accuracy but is - # also worse for performance. - check-period-in-ticks: 1200 - # Runs item check when a chunk is loaded. - check-on-chunk-load: true - whitelist-specific-item-types: false - # Check the paper api for correct Material enums: - # https://jd.papermc.io/paper/1.20.6/org/bukkit/Material.html - # Make sure your minecraft version is matching as well. - 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 - tile-entity-limit: - # Limit the amount of tile entities in a chunk to prevent lag. - enable: false - log-removals: true - max-tile-entities-per-chunk: 100 - check-period-in-ticks: 20 - 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 - whitelist: - enable: false - professions: - - NONE - - NITWIT - - SHEPHERD - - FISHERMAN - - BUTCHER - - CARTOGRAPHER - - LEATHERWORKER - - FLETCHER - - MASON - - FARMER - - ARMORER - - TOOLSMITH - - WEAPONSMITH - - CLERIC - - LIBRARIAN - non-living-limit: - # Limit the amount of non living entities in a chunk to prevent lag. - # Ignores dropped items. - enable: false - log-removals: true - max-non-living-per-chunk: 100 - check-period-in-ticks: 20 - custom-limit: - # Limit specific entity types per chunk. - enable: false - log-removals: true - # Check all loaded 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. - # 1 second = 20 ticks. - 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 there - # might be a scenario where this turns out to be useful. - forceload-entities: false - # Check the paper api for correct EntityType enums: - # https://jd.papermc.io/paper/1.20.6/org/bukkit/entity/EntityType.html - # Make sure your minecraft version is matching as well. - limited-types: - ALLAY: 20 - ARROW: 20 - AXOLOTL: 10 - BAT: 3 - BEE: 15 - BLAZE: 10 - CAT: 10 - CAVE_SPIDER: 10 - CHICKEN: 10 - COD: 6 - COW: 10 - CREEPER: 10 - DOLPHIN: 4 - DONKEY: 10 - DROWNED: 10 - ENDERMAN: 10 - ENDERMITE: 3 - EVOKER: 15 - FIREBALL: 5 - FOX: 10 - FROG: 20 - GLOW_SQUID: 20 - GOAT: 10 - GUARDIAN: 20 - HOGLIN: 10 - HORSE: 10 - HUSK: 10 - IRON_GOLEM: 15 - LLAMA: 10 - MAGMA_CUBE: 10 - MOOSHROOM: 10 - MULE: 10 - OCELOT: 3 - PANDA: 5 - PARROT: 10 - PHANTOM: 10 - PIG: 10 - PIGLIN: 25 - PIGLIN_BRUTE: 10 - PILLAGER: 15 - POLAR_BEAR: 5 - PUFFERFISH: 3 - RABBIT: 5 - RAVAGER: 15 - SALMON: 6 - SHEEP: 10 - SILVERFISH: 3 - SKELETON: 10 - SKELETON_HORSE: 10 - SLIME: 10 - SMALL_FIREBALL: 5 - SNOWBALL: 5 - SPIDER: 10 - SQUID: 20 - STRAY: 10 - STRIDER: 3 - TADPOLE: 20 - TRADER_LLAMA: 10 - TROPICAL_FISH: 6 - TURTLE: 20 - VEX: 15 - VINDICATOR: 15 - WANDERING_TRADER: 10 - WITCH: 15 - WITHER: 16 - WITHER_SKELETON: 10 - WITHER_SKULL: 10 - WOLF: 10 - ZOGLIN: 10 - ZOMBIE: 10 - ZOMBIE_HORSE: 10 - ZOMBIE_VILLAGER: 25 - ZOMBIFIED_PIGLIN: 20 - vehicle-limit: - # Limit the amount of vehicles to prevent some lag machines. - # ex. dispenser that spawns a lot of boats into a single location - # then hitting it, causing all boats to explode in every direction. - enable: false - log-removals: false - max-vehicles-per-chunk: 25 - # 200 ticks = 10 seconds. - check-period-in-ticks: 400 - falling-block-limit: - # Prevent players from placing massive sand chunks, then collapsing - # them to kill the server. - enable: true - log: false - # Removes any falling block if there is more than x blocks actively - # falling in a chunk. - max-falling-gravity-blocks-per-chunk: 60 - # Delay in ticks until the same chunk can be checked again. - # Prevents overchecking, because physics events can be called many - # times in a short time for the same chunk. - chunk-check-delay-in-ticks: 20 - block-limit: - enable: false - # Attempt to prevent ChunkBan / Client FPS Lag - max-blocks-per-chunk: - ACACIA_HANGING_SIGN: 8 - ACACIA_SIGN: 8 - ACACIA_WALL_HANGING_SIGN: 8 - ACACIA_WALL_SIGN: 8 - BAMBOO_HANGING_SIGN: 8 - BAMBOO_SIGN: 8 - BAMBOO_WALL_HANGING_SIGN: 8 - BAMBOO_WALL_SIGN: 8 - BEACON: 32 - BIRCH_HANGING_SIGN: 8 - BIRCH_SIGN: 8 - BIRCH_WALL_HANGING_SIGN: 8 - BIRCH_WALL_SIGN: 8 - BLACK_BANNER: 12 - BLACK_WALL_BANNER: 12 - BLUE_BANNER: 12 - BLUE_WALL_BANNER: 12 - BROWN_BANNER: 12 - BROWN_WALL_BANNER: 12 - CHEST: 500 - CREEPER_HEAD: 16 - CREEPER_WALL_HEAD: 16 - CRIMSON_HANGING_SIGN: 8 - CRIMSON_SIGN: 8 - CRIMSON_WALL_HANGING_SIGN: 8 - CRIMSON_WALL_SIGN: 8 - CYAN_BANNER: 12 - CYAN_WALL_BANNER: 12 - DARK_OAK_HANGING_SIGN: 8 - DARK_OAK_SIGN: 8 - DARK_OAK_WALL_HANGING_SIGN: 8 - DARK_OAK_WALL_SIGN: 8 - DISPENSER: 100 - DRAGON_HEAD: 16 - DRAGON_WALL_HEAD: 16 - ENCHANTING_TABLE: 16 - ENDER_CHEST: 64 - GLOWSTONE: 5000 - GRAY_BANNER: 12 - GRAY_WALL_BANNER: 12 - GREEN_BANNER: 12 - GREEN_WALL_BANNER: 12 - JUNGLE_HANGING_SIGN: 8 - JUNGLE_SIGN: 8 - JUNGLE_WALL_HANGING_SIGN: 8 - JUNGLE_WALL_SIGN: 8 - LIGHT_BLUE_BANNER: 12 - LIGHT_BLUE_WALL_BANNER: 12 - LIGHT_GRAY_BANNER: 12 - LIGHT_GRAY_WALL_BANNER: 12 - LIME_BANNER: 12 - LIME_WALL_BANNER: 12 - MAGENTA_BANNER: 12 - MAGENTA_WALL_BANNER: 12 - MANGROVE_HANGING_SIGN: 8 - MANGROVE_SIGN: 8 - MANGROVE_WALL_HANGING_SIGN: 8 - MANGROVE_WALL_SIGN: 8 - MOVING_PISTON: 32 - OAK_HANGING_SIGN: 8 - OAK_SIGN: 8 - OAK_WALL_HANGING_SIGN: 8 - OAK_WALL_SIGN: 8 - ORANGE_BANNER: 12 - ORANGE_WALL_BANNER: 12 - PIGLIN_HEAD: 16 - PIGLIN_WALL_HEAD: 16 - PINK_BANNER: 12 - PINK_WALL_BANNER: 12 - PISTON: 32 - PISTON_HEAD: 32 - PLAYER_HEAD: 16 - PLAYER_WALL_HEAD: 16 - PURPLE_BANNER: 12 - PURPLE_WALL_BANNER: 12 - RED_BANNER: 12 - RED_WALL_BANNER: 12 - SLIME_BLOCK: 128 - SPRUCE_HANGING_SIGN: 8 - SPRUCE_SIGN: 8 - SPRUCE_WALL_HANGING_SIGN: 8 - SPRUCE_WALL_SIGN: 8 - STICKY_PISTON: 32 - TRAPPED_CHEST: 200 - WARPED_HANGING_SIGN: 8 - WARPED_SIGN: 8 - WARPED_WALL_HANGING_SIGN: 8 - WARPED_WALL_SIGN: 8 - YELLOW_BANNER: 12 - YELLOW_WALL_BANNER: 12 - ZOMBIE_HEAD: 16 - ZOMBIE_WALL_HEAD: 16 - minecart-limit: - # Limit the amount of minecarts to prevent lag caused by collisions. - enable: false - log-removals: false - max-minecarts-per-chunk: 25 - check-period-in-ticks: 400 - exp-bottle-limit: - # Prevent players from crashing the server or other players by - # creating a ton of THROWN_EXP_BOTTLE entities, then loading - # them at once. - # Does not limit the EXP_ORBS, just the bottle entities. - enable: true - log: false - max-exp-bottle-per-chunk: 25 - # 20 ticks = 1 second - check-period-in-ticks: 800 - -##################### -# Lag Preventions # -##################### -lag-preventions: - keep-stash-chunks-loaded: - # Idea by 3b3t admin kumori (Soft1k) - # Improves lag generated by large stash chunks constantly loading and - # unloading by setting them force loaded. This might cause increased ram - # usage, so keep an eye out for that. - enable: false - log: false - # How many container blocks have to be in a chunk for it to be seen - # as a stash chunk to keep force loaded. - container-block-threshold: 50 - # The minimum time in ticks a chunk has to have been inhabited to be checked. - min-chunk-inhabited-time-ticks: 1000 - # The time in minutes a stash chunks will be kept force loaded before - # setting it back to normal. - keep-loaded-minutes: 120 - # Set to false if you want to check more blocks than just tile entities. - # Makes the overall speed of the module faster if set to true. - only-check-tile-entities: true - container-types: - - CHISELED_BOOKSHELF - - DECORATED_POT - - CHEST - - FURNACE - - JUKEBOX - - SHULKER_BOX - - WHITE_SHULKER_BOX - - ORANGE_SHULKER_BOX - - MAGENTA_SHULKER_BOX - - LIGHT_BLUE_SHULKER_BOX - - YELLOW_SHULKER_BOX - - LIME_SHULKER_BOX - - PINK_SHULKER_BOX - - GRAY_SHULKER_BOX - - LIGHT_GRAY_SHULKER_BOX - - CYAN_SHULKER_BOX - - PURPLE_SHULKER_BOX - - BLUE_SHULKER_BOX - - BROWN_SHULKER_BOX - - GREEN_SHULKER_BOX - - RED_SHULKER_BOX - - BLACK_SHULKER_BOX - - HOPPER - - DISPENSER - - DROPPER - - LECTERN - - TRAPPED_CHEST - - CRAFTER - - BREWING_STAND - - BARREL - - SMOKER - - BLAST_FURNACE - # Radiuses around spawn in chunks (not blocks) that should not be checked. - # Worlds not on this list are exempt from all checking. - worlds: - world: 100 - world_the_end: 100 - world_nether: 100 - disable-item-drops-during-large-stash-explosions: - # Explodes containers without dropping items after a certain amount - # of exploded containers per chunk. - enable: false - log: false - # How many container blocks in a chunk can be blown up until items - # no longer drop from them. - min-explosions-before-drops-disable: 6 - # The time in seconds to wait after an explosion for another one to happen. - # If no explosion happens within x seconds after the first one, the count resets to 0. - time-in-seconds: 3 - container-types: - - CHISELED_BOOKSHELF - - DECORATED_POT - - CHEST - - FURNACE - - JUKEBOX - - HOPPER - - DISPENSER - - DROPPER - - LECTERN - - TRAPPED_CHEST - - CRAFTER - - BREWING_STAND - - BARREL - - SMOKER - - BLAST_FURNACE - 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 - entity-age-limits: - custom-limits: - # Kill certain entities after a custom amount of ticks lived. - enable: false - log-removals: false - # Check all loaded chunks every x ticks. - check-period-in-ticks: 1200 - # When a chunk is loaded, entities inside of it are not necessarily - # loaded as well. Force loading is worse for performance, but there - # might be a scenario where this turns out to be useful. - forceload-entities: false - # Check the paper api for correct EntityType enums: - # https://jd.papermc.io/paper/1.20/org/bukkit/entity/EntityType.html - # Make sure your minecraft version is matching as well. - limited-types: - ARROW: 120 - FALLING_BLOCK: 160 - SNOWBALL: 100 - SPECTRAL_ARROW: 120 - WITHER_SKULL: 100 - projectile-limit: - # Patches any lag exploit that abuses spawning a ton of projectile entities - # (ex. Snowball exploit).Skips over the following entities: ENDER_PEARL, FISHING_HOOK, WITHER_SKULL - # and ENDER_SIGNAL. You can configure those separately in the custom entity age - # limit section. - enable: false - # (20 ticks = 1 second) Will not touch Ender Pearls - max-alive-time-ticks: 300 - # How frequently we should check all projectiles for their alive time - check-period-seconds: 20 - prevent-flooding-machines: - # Will prevent pistons from pushing waterlogged blocks. - # Stops players from using waterlogged blocks and piston flying - # machines to generate large walls of water that generate lag - # due to the fluid physics. - enable: false - delete-waterlogged-blocks: true - anti-shulker-drops: - # Disables shulkers dropping stored items when blown up. - # This helps fix client- and serverside lag when done often and fast. - enable: false - regional-activity: - block-spread: - # Limits blocks spreading or forming based on world conditions within a - # configurable radius and timeframe to help reduce lag by cancelling burst - # activity hotspots. - # - # Examples: - # - # - Snow forming due to a snow storm. - # - Ice forming in a snowy Biome like Taiga or Tundra. - # - Obsidian / Cobblestone forming due to contact with water. - # - Concrete forming due to mixing of concrete powder and water. - # - Mushrooms spreading. - # - Fire spreading. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times a block can form or spread within the configured - # timeframe before activity will be put on cooldown. - block-form-event-limit: 800 - entity-spawn: - # Limits entity spawning activity within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A creature gets spawned naturally, by spawner or other reasons. - # - An entity gets spawned naturally, by spawner or other reasons. - # This does not include tile entities. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of entity spawns within configured timeframe. - spawn-event-limit: 6000 - entity-targeting: - # Limits entities targeting other entities within a configurable radius - # and timeframe to help reduce lag by cancelling burst activity hotspots. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 14.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times an entity can target another entity within the - # configured timeframe before the area will be put on cooldown. - entity-target-event-limit: 8000 - distance-limit: - 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: - SKELETON: 6.0 - WITHER: 8.0 - WITHER_SKELETON: 8.0 - ZOMBIE: 6.0 - ZOMBIE_VILLAGER: 10.0 - ZOMBIFIED_PIGLIN: 8.0 - entity-pathfinding: - # Limits entities deciding to pathfind to a specific location - # within a configurable radius and timeframe to help reduce lag - # by cancelling burst activity hotspots. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 14.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times an entity can decide to start moving - # towards a location within the configured timeframe before the - # area will be put on cooldown. - entity-pathfind-event-limit: 4000 - distance-limit: - global-limit: - enable: false - # The max distance no mob pathfinding should exceed. - # You always want this to be higher than your highest max distance - # for a specific mob. - max-target-distance: 20.0 - custom-limits: - enable: true - entities: - SKELETON: 6.0 - WITHER: 8.0 - WITHER_SKELETON: 8.0 - ZOMBIE: 6.0 - ZOMBIE_VILLAGER: 10.0 - ZOMBIFIED_PIGLIN: 8.0 - sculk-bloom: - # Limits sculk blooming within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - An entity was killed and dropped experience within an 8-block - # radius of a SculkCatalyst. - # - A plugin used SculkCatalyst.bloom(Block, int) - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of sculk bloom events within the configured timeframe. - sculk-bloom-limit: 300 - liquid-spread: - # Limits liquid spreading within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A lava block spreading by flowing. - # - A water block spreading by flowing. - # - (optional) A dragon egg is teleporting from one position to another. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 12.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 100.0 - # Maximum number of times liquids are allowed to spread within the configured - # timeframe before they will be put on cooldown. - liquid-spread-event-limit: 2400 - ignore-dragon-egg: true - redstone: - # Limits redstone activity within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A redstone current changes. - # - A redstone block gets powered on. - # - A redstone block gets powered off. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of redstone events within configured timeframe. - redstone-event-limit: 6000 - noteblocks: - # Limits noteblocks being played within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A noteblock is being played through player interaction. - # - A noteblock is being played through a redstone current. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times a noteblock can be played within the configured - # timeframe before they will be put on cooldown. - noteblock-play-limit: 2800 - explosions: - # Limits explosions within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A block exploding. - # - An entity exploding. - # - An entity making the decision to explode. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of explode events within the configured timeframe - # before the region will be put on cooldown. - explode-event-limit: 500 - pistons: - # Limits piston movement within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A piston extends. - # - A piston retracts. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of piston extend and/or retracts within the - # configured timeframe. - piston-movement-limit: 1000 - block-physics: - # Limits block physics within a configurable radius and timeframe - # to help reduce lag by cancelling burst activity hotspots. - # - # Note: - # - # The event used for this check (BlockPhysicsEvent) is a high frequency event, - # it may be called thousands of times per a second on a busy server. - # Where possible the event may also only be called for the "root" block of - # physics updates in order to limit event spam. - # Physics updates that cause other blocks to change their state may not result - # in an event for each of those blocks (usually adjacent). - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times a physics check can be performed within the configured - # timeframe before they will be put on cooldown. - block-physics-event-limit: 256000 - sculk-sensor: - # Limits sculk activity within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A redstone current changes for a sculk sensor. - # - A physics check is being performed for a sculk sensor. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of sculk events within configured timeframe. - sculk-event-limit: 800 - sculk-blocks: - - SCULK_SENSOR - - SCULK_SHRIEKER - - CALIBRATED_SCULK_SENSOR - -############# -# Patches # -############# -patches: - anti-book-ban: - enable: false - # If set to false, will use UTF-8. - # Charset to use to encode the result of NBTCompound#toString into - # a sequence of bytes. The length of that sequence is then used to - # get the approximate Byte-size of an ItemStack. - # Use the /aef bytesize command to get a better understanding. - use-UTF-16: false - max-book-size: 56000 - # 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: 56000 - max-inventory-size: 2050000 - # 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 - pearl-phase: - # Attempts to patch a pearl phasing exploit by cancelling the teleport - # if the pearl is thrown at or near a specific block. - # At the time of the creation of this module, this is an issue with NoCheatPlus. - enable: false - # How many blocks around the teleport location should be searched - # for potential glitch blocks if the teleport location isn't one itself. - search-radius: 2 - maximum-distance-to-cancel-teleport: 3.0 - glitchy-materials: - - ACACIA_PRESSURE_PLATE - - ACACIA_SLAB - - ACACIA_TRAPDOOR - - ANDESITE_SLAB - - BAMBOO_MOSAIC_SLAB - - BAMBOO_PRESSURE_PLATE - - BAMBOO_SLAB - - BAMBOO_TRAPDOOR - - BIRCH_PRESSURE_PLATE - - BIRCH_SLAB - - BIRCH_TRAPDOOR - - BLACKSTONE_SLAB - - BRICK_SLAB - - CALIBRATED_SCULK_SENSOR - - CHERRY_PRESSURE_PLATE - - CHERRY_SLAB - - CHERRY_TRAPDOOR - - COBBLED_DEEPSLATE_SLAB - - COBBLESTONE_SLAB - - COBWEB - - COPPER_TRAPDOOR - - CRIMSON_PRESSURE_PLATE - - CRIMSON_SLAB - - CRIMSON_TRAPDOOR - - CUT_COPPER_SLAB - - CUT_RED_SANDSTONE_SLAB - - CUT_SANDSTONE_SLAB - - DARK_OAK_PRESSURE_PLATE - - DARK_OAK_SLAB - - DARK_OAK_TRAPDOOR - - DARK_PRISMARINE_SLAB - - DEEPSLATE_BRICK_SLAB - - DEEPSLATE_TILE_SLAB - - DIORITE_SLAB - - END_STONE_BRICK_SLAB - - EXPOSED_COPPER_TRAPDOOR - - EXPOSED_CUT_COPPER_SLAB - - GRANITE_SLAB - - HEAVY_WEIGHTED_PRESSURE_PLATE - - IRON_TRAPDOOR - - JUNGLE_PRESSURE_PLATE - - JUNGLE_SLAB - - JUNGLE_TRAPDOOR - - LIGHT_WEIGHTED_PRESSURE_PLATE - - MANGROVE_PRESSURE_PLATE - - MANGROVE_SLAB - - MANGROVE_TRAPDOOR - - MOSSY_COBBLESTONE_SLAB - - MOSSY_STONE_BRICK_SLAB - - MUD_BRICK_SLAB - - NETHER_BRICK_SLAB - - OAK_PRESSURE_PLATE - - OAK_SLAB - - OAK_TRAPDOOR - - OXIDIZED_COPPER_TRAPDOOR - - OXIDIZED_CUT_COPPER_SLAB - - PETRIFIED_OAK_SLAB - - POLISHED_ANDESITE_SLAB - - POLISHED_BLACKSTONE_BRICK_SLAB - - POLISHED_BLACKSTONE_PRESSURE_PLATE - - POLISHED_BLACKSTONE_SLAB - - POLISHED_DEEPSLATE_SLAB - - POLISHED_DIORITE_SLAB - - POLISHED_GRANITE_SLAB - - POLISHED_TUFF_SLAB - - POWDER_SNOW - - PRISMARINE_BRICK_SLAB - - PRISMARINE_SLAB - - PURPUR_SLAB - - QUARTZ_SLAB - - RED_NETHER_BRICK_SLAB - - RED_SANDSTONE_SLAB - - SANDSTONE_SLAB - - SCULK_SENSOR - - SCULK_SHRIEKER - - SMOOTH_QUARTZ_SLAB - - SMOOTH_RED_SANDSTONE_SLAB - - SMOOTH_SANDSTONE_SLAB - - SMOOTH_STONE_SLAB - - SPRUCE_PRESSURE_PLATE - - SPRUCE_SLAB - - SPRUCE_TRAPDOOR - - STONE_BRICK_SLAB - - STONE_PRESSURE_PLATE - - STONE_SLAB - - TUFF_BRICK_SLAB - - TUFF_SLAB - - WARPED_PRESSURE_PLATE - - WARPED_SLAB - - WARPED_TRAPDOOR - - WAXED_COPPER_TRAPDOOR - - WAXED_CUT_COPPER_SLAB - - WAXED_EXPOSED_COPPER_TRAPDOOR - - WAXED_EXPOSED_CUT_COPPER_SLAB - - WAXED_OXIDIZED_COPPER_TRAPDOOR - - WAXED_OXIDIZED_CUT_COPPER_SLAB - - WAXED_WEATHERED_COPPER_TRAPDOOR - - WAXED_WEATHERED_CUT_COPPER_SLAB - - WEATHERED_COPPER_TRAPDOOR - - WEATHERED_CUT_COPPER_SLAB - prevent-command-sign: - # Patch signs that have run_command NBT tags attached, allowing the - # to run a command with operator permissions on click. - # Recommended to enable if you had a rogue admin or backdoor incident. - enable: true - 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 - prevent-teleport-coordinate-exploit: - # Patches coordinate exploit for teleportation commands such as /tpa, - # /home AS WELL as respawn exploits. - # 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 - # Removes entities or players if they are invalid, dead or not located - # within a ticking chunk. Not sure if this works. - experimental-godmode-patch: false - tab-complete-crash-patch: - # Patches two lag exploits and an instant server shutdown exploit that - # works by sending a malicious TabComplete packet that triggers a - # StackOverflowError inside the TagParser class. - enable: true - log: false - kick-player: false - remove-beehive-coordinates: - # Patches an exploit that allows players to obtain another player's - # coordinates by trading them for Beehives or Beenests. - # If the traded item contains any bees, the stored bee's NBT data can - # then be read from the item. - # This data includes, but is not limited to: - # - XYZ coordinates of where the bee has its hive - # - XYZ of the bee's last coordinates before entering it's hive - # - XYZ coordinates of where the bee last visited a flower - # - XYZ coordinates of where the bee was first spawned into existence - # - UID of the world the bee was first spawned into existence - enable: true - # The NBT tags to filter from the item. These are the Keys that hold - # the position data. You may add more tags you want removed here. - tags: - - Pos - - HivePos - - FlowerPos - - Paper.Origin - - Paper.OriginWorld - - WorldUUIDMost - - WorldUUIDLeast - window-click-crash-patch: - # Patches a variety of different lag and crash methods that work - # by sending invalid Window Click packets, causing the server to - # dump error logs until it runs out of memory. - enable: true - log: false - kick-player: false - map-cursor-lag-patch: - # Patches the famous stacked map cursor lag that causes both - # client and server crashes. - enable: false - inventory-lag: - # Checks if a player is requesting unusual amounts of traffic from the server - # using ItemStacks. - # If a player exceeds the limit, they will be put on a cooldown, during which - # they will be very limited in terms of ItemStack or Inventory interactions. - enable: false - # For debug purposes. Don't leave enabled for too long as it is very spammy. - log: false - # Whether to immediately close any open inventory of the player on limit exceed - # Note: Closing has to be scheduled so it will take a bit if the server is heavily - # lagging. - close-open-inventory: true - # The time in millis in which to check if the player exceeded the limit. - # Needs to be at least as long as your lockout duration millis. - byte-data-keep-time-millis: 30000 - rate-limit: - # The limit in bytes the server has sent the server in the form of ItemStacks, - # before the player will be put on a rate-limit. - # Should always be lower than your lockout bytesize limit. - bytesize-limit: 8000000 - # The time in millis in which a player is allowed to open x amounts of windows - # but not more. - timeframe-millis: 2500 - # The amount of windows that can be opened during the timeframe-millis. - max-window-opens-per-timeframe: 2 - lockout: - # The upper limit in bytes a player is allowed to request from the server - # within the configured timeframe before he will be put on cooldown. - # During the cooldown, he will not be able to open any inventory screens - # or interact with items. - bytesize-limit: 24000000 - # The time in milliseconds the player will have to wait before - # being able to open an inventory again after he exceeded the limit. - duration-millis: 15000 - check-packets: - - SET_SLOT - - WINDOW_ITEMS - sequence-crash-patch: - # Patches a variety of lag/crash exploits that involves sending packets - # with invalid sequences. - enable: true - log: false - kick-player: false - sign-lag: - # Patches a lag exploit that involves sending specific oversized - # sign edit packets. - enable: true - # How many ticks a player needs to wait to be able to send - # another sign update packet (renaming or writing). - packet-delay-in-ticks: 10 - # Vanilla limit is 384 characters per line, which can be too much. - line-character-limit: 80 - # General char limit for all lines combined. - total-char-limit: 384 - log: false - kick-player: false - beehive-crash-patch: - # Patches a server crash exploit exclusive to Purpur servers. - # This exploit works due to PurpurClient having a feature that - # lets clients request stored data of a clicked beehive from - # the server. The server does not check how far the clicked - # beehive is away from the client enabling a malicious sender - # to load chunks very fast at far away locations by telling - # the server it clicked a beehive there. - enable: false - channel: purpur:beehive_c2s - max-distance: 24 - log: false - kick-player: false - -############## -# 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 - nbt: - ban-custom-tags: - # Bypass permission: aef.bypass.illegal.nbt.custom - # Deletes items that have one or more of the configured tags. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - # The exact, case sensitive value of the nbt tag. - tags: - - dmg - item-whitelist-enabled: false - use-as-blacklist-instead: false - whitelisted-items: - - GOLDEN_APPLE - impossibly-stored-items: - # Bypass permission: aef.bypass.illegal.nbt.storeditems - # Prevents usage of or deletes storage items that have been pre-filled - # with items using NBT tags. These can only be created by players with - # creative access. - # Most commonly dispensers, droppers and chests containing kit shulkers - # are created but there are more combinations possible. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # The exact name of the nbt tag that signals items are stored inside. - tag: BlockEntityTag - check-stored-items: false - storage-types: - - BARREL - - BLAST_FURNACE - - BREWING_STAND - - CHEST - - CHISELED_BOOKSHELF - - CRAFTER - - DECORATED_POT - - DISPENSER - - DROPPER - - FURNACE - - HOPPER - - JUKEBOX - - LECTERN - - SMOKER - - TRAPPED_CHEST - command-items: - # Bypass permission: aef.bypass.illegal.nbt.commanditem - # Deletes items with commands in their NBT data that run as operator. - # These can only be created by players with creative access. - # Most common items are books, since it allows storing multiple commands. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - enchantments: - inapplicable-enchants: - # Bypass permission: aef.bypass.illegal.enchants.inapplicable - # Reverts or prevents usage of ItemStacks with Enchantments that - # cannot be applied to that ItemStack in vanilla survival minecraft. - # Examples: A helmet with sharpness or a block of stone with fortune. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - item-whitelist-enabled: true - use-as-blacklist-instead: false - whitelisted-items: - - GOLDEN_APPLE - higher-enchants: - # Bypass permission: aef.bypass.illegal.enchants.higher - # Reverts or prevents usage of ItemStacks with Enchantments higher - # than the natural, in vanilla survival obtainable level (aka 32ks / 255s). - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - only-specific-enchants: false - specific-enchants: - - DIG_SPEED - item-whitelist-enabled: true - use-as-blacklist-instead: false - whitelisted-items: - - GOLDEN_APPLE - incompatible-enchants: - # Bypass permission: aef.bypass.illegal.enchants.incompatible - # Reverts or prevents usage of ItemStacks with Enchantments that - # cannot coexist in vanilla survival minecraft. - # Examples: A bow with mending and infinity or armor with every - # protection enchantment. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - item-whitelist-enabled: true - use-as-blacklist-instead: false - whitelisted-items: - - BOW - attribute-modifiers: - # Bypass permission: aef.bypass.illegal.attributes - # Prevents usage of or reverts items with any attribute modifiers - # or item flags. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - item-whitelist-enabled: false - use-as-blacklist-instead: true - check-stored-items: false - whitelisted-items: - - TOTEM_OF_UNDYING - ban-player-heads: - # Bypass permission: aef.bypass.illegal.playerhead - # Deletes or prevents usage of player heads. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # Will delete shulker/bundle if they contain any player heads. - check-stored-items: false - ban-specific-materials: - # Bypass permission: aef.bypass.illegal.bannedmaterial - # Prevents usage of or deletes items with material that you do not want - # your players to be able to use. - # Useful if your players have blocks that shouldn't be obtainable in survival. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - 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 - potions: - # Bypass permission: aef.bypass.illegal.potions - # Prevents usage of or reverts items with any attribute modifiers - # or item flags. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - ban-spawn-eggs: - # Bypass permission: aef.bypass.illegal.spawnegg - # Deletes or prevents usage of spawn eggs. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # If remove-spawn-eggs is set to true Will delete shulker/bundle - # should they contain any spawneggs. - check-stored-items: false - whitelisted-items: - - VILLAGER_SPAWN_EGG - banned-item-names: - # Bypass permission: aef.bypass.illegal.bannedname - # Resets an item's name (or deletes the item) if it matches one of - # the configured regexes. - # Regexes can be complex. Use a tool like https://regex101.com/ or - # ChatGPT for good results. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # Will delete the item instead of resetting the name. - delete-item: false - regex: - - (?i)illegalstring - whitelisted-items: - - DIRT - illegally-stacked-items: - # Bypass permission: aef.bypass.illegal.overstacked - # Prevents usage of or reverts items with a higher or lower - # stack size than their vanilla limit. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - item-whitelist-enabled: false - use-as-blacklist-instead: true - check-stored-items: false - whitelisted-items: - - TOTEM_OF_UNDYING - revert-unbreakables: - # Bypass permission: aef.bypass.illegal.unbreakable - # Deletes and prevents usage of unbreakable items. - # This can be anything from items with illegal damage attributes to - # Metadata/NBT tags. - # Note: Due to the limitations of the API, we can only fully prevent - # usage of these items by deleting them. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - item-whitelist-enabled: false - use-as-blacklist-instead: false - # Will delete shulkers and bundles if they contain unbreakables. - check-stored-items: false - whitelisted-items: - - DIAMOND_CHESTPLATE - -###################### -# Dupe Preventions # -###################### -dupe-preventions: - # Prevent any possible dupes involving chested entities by making - # it impossible to put a chest on them. - # Only do this if you have reason to believe a dupe like that exists - # on your server. - prevent-chests-on-living-entities: false - # Closes open inventories of all entities that are in a chunk - # that will be unloaded. - close-entity-inventories-on-chunk-unload: false - # Prevents entities that can carry chests from using portals to - # block some common dupe tactics. - # CAUTION: Will remove chests and their contents from a chested - # entity if it touches a portal on Folia! - prevent-chested-living-entities-in-portals: false - # Closes open inventories of entities that disappeared when the - # player riding it disconnects. - close-entity-inventories-on-player-disconnect: false - -################# -# Preventions # -################# -preventions: - withers: - disable-wither-spawning-at-spawn: - # Disables spawning withers near a configurable radius around - # spawn. Helps if players are generating endless amounts of withers - # to lag the server. - enable: false - inform-players: true - worlds: - world: 5000 - world_the_end: 5000 - world_nether: 5000 - remove-flying-wither-skulls: - # 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: false - # 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 - periodically-remove-all-flying-skulls: - # Enable if a lot of wither skulls at spawn are causing lag. - enable: false - check-period-in-ticks: 80 - # 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 wither skulls - # spawning but weakens withers. - enable: false - # Cooldown until another skull can 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 - portals: - prevent-specific-types: - # Configure entities here that you suspect might be used in a dupe - # with portals. - # CAUTION: Will kill the entity on folia due to broken portal event. - # There is sadly no other efficient way. - enable: true - # Defaults prevent common lag methods. - entities: - - DROPPED_ITEM - - FIREWORK - - PRIMED_TNT - - THROWN_EXP_BOTTLE - - EXPERIENCE_ORB - - ARMOR_STAND - # Only enable if you must. Does not affect players. - # CAUTION: Will kill the entity on folia due to broken portal event. - prevent-all-entities-in-portals: false - prevent-destroying-end-portals: - enable: true - show-logs: true - end: - bedrock-protection-radius-blocks: 8 - # Add block locations that should be protected as well. - # Format: ::: - # If you don't want to use this, just configure an empty list: - # pillar-blocks: [] - pillar-blocks: - - world_the_end:143:140:-50 - - world_the_end:112:90:-90 - prevent-portal-traps: - # Teleports a player back to the original location if they have been - # standing 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 - permanent-block-breaking: - by-placing-piston-on-retract: - enable: true - whitelisted-worlds: - - example_world_name - 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-growing-structures: - # Prevents removal of permanent blocks by growing structures - # like mushrooms into them. - enable: true - prevent-opped-players: - # Useful if you suspect a backdoor has happened. - enable: false - log: false - whitelisted-players: - - Notch - prevent-nether-roof: - # Prevent players from going above the nether roof. - enable: true - safely-teleport-players: true - anti-bed-trap: - # Resets a players bed respawn they die too many times within - # a certain timeframe. - enable: 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 - log: false - prevent-non-survival-players: - # Checks if player is in survival and if not, puts him back into survival. - # Useful if you had a backdoor incident. - enable: false - log: false - whitelisted-players: - - Notch - -############ -# Combat # -############ -combat: - silent-swap-delay: - enable: false - # The delay in millis a player cant swap hotbar items after placing - # a block, clicking a block (for example to place a crystal) or - # damaging an entity. (50 ms = 1 tick) - min-swap-delay-millis: 40 - prevent-bow-bomb: - enable: false - # Fully pulled bow is ~9-10. 15 is default just to be safe. - max-bow-squared-velocity: 15 - portal-god-mode-patch: - # Prevents an exploit that allows players to stand in nether portals and not - # take damage indefinitely by just never sending a TeleportConfirm packet to - # the server. - # A similar method is used for the chorus tp exploit, which is not covered - # by this module. - enable: false - # If the player stays inside the nether portal for this time without teleporting, - # the portal will be broken, making the player inside vulnerable again. - # Nether portal teleports normally happen within ~3s after enter, so 5s (100ticks) - # should be a safe value. - break-portal-delay-ticks: 100 - crystal-aura: - piston-aura-delay: - # Rate-limits pistons that extend into crystals. - enable: false - piston-extend-delay-in-ticks: 40 - regular-delay: - enable: false - # Can help with desync but recommended to leave off unless you have issues. - update-inventory-on-cancel: false - global: - enable: false - # 1 tick = 50 ms - place-delay-millis: 0 - break-delay-millis: 200 - main-hand: - enable: false - # 1 tick = 50 ms - place-delay-millis: 0 - break-delay-millis: 200 - off-hand: - enable: false - # 1 tick = 50 ms - place-delay-millis: 0 - break-delay-millis: 200 - 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. - allow-slabs-in-burrow: true - ignored-materials: - - 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 - - AIR - - DIRT - - DIRT_PATH - - SAND - - GRAVEL - multi-task-patch: - enable: false - piston-push: - # Disables pistons from extending if it would push certain configured entities. - # This can be used to prevent players from pushing other players out of burrows, by - # configuring PLAYER, or to disable piston-crystal by adding ENDER_CRYSTAL to the list. - enable: false - piston-push-blocked-entities: - - PLAYER - anchor-aura-delay: - enable: false - # Can help with desync but recommended to leave off unless you have issues. - update-inventory-on-cancel: false - global: - enable: false - # 1 tick = 50 ms - place-delay-millis: 400 - break-delay-millis: 0 - main-hand: - enable: false - # 1 tick = 50 ms - place-delay-millis: 400 - break-delay-millis: 0 - off-hand: - enable: false - # 1 tick = 50 ms - place-delay-millis: 400 - break-delay-millis: 0 - bed-aura-delay: - enable: false - # Can help with desync but recommended to leave off unless you have issues. - update-inventory-on-cancel: false - global: - enable: false - # 1 tick = 50 ms - place-delay-millis: 250 - break-delay-millis: 0 - main-hand: - enable: false - # 1 tick = 50 ms - place-delay-millis: 250 - break-delay-millis: 0 - off-hand: - enable: false - # 1 tick = 50 ms - place-delay-millis: 250 - break-delay-millis: 0 - -############# -# Bedrock # -############# -bedrock: - fill-in-bedrock: - overworld-floor: - periodically-check-and-fill: - # Only checks loaded chunks. - enable: false - check-period-in-seconds: 10 - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - # Pauses the task during low tps to avoid lag. - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - fill-on-chunkload: - enable: false - # Recommended to leave off. Only useful if world generation is broken. - also-check-new-chunks: false - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - nether-ceiling: - periodically-check-and-fill: - # Only checks loaded chunks. - enable: false - check-period-in-seconds: 10 - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - fill-on-chunkload: - enable: false - # Recommended to leave off. Only useful if world generation is broken. - also-check-new-chunks: false - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - nether-floor: - periodically-check-and-fill: - # Only checks loaded chunks. - enable: false - check-period-in-seconds: 10 - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - fill-on-chunkload: - enable: false - # Recommended to leave off. Only useful if world generation is broken. - also-check-new-chunks: false - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - prevent-going-below-bedrock-floor: - # Prevents players from going below the bedrock floor. - enable: true - # Whether to make player leave their vehicle. - leave-vehicle: true - # Whether to close the player's elytra if they were flying. - stop-elytra: true - # Teleport player on top of that bedrock - teleport: true - # 1.0 = Half a heart of damage every time you move. Set 0 to disable - damage-when-moving: 8.0 - # Whether the bedrock hole should be filled or not. - fill-bedrock-hole: true - exempted-worlds: - - world_the_end - - skyblock_world - filler-material: BEDROCK diff --git a/AnarchyExploitFixesLegacy/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java b/AnarchyExploitFixesLegacy/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java new file mode 100755 index 000000000..ebcfbfa4a --- /dev/null +++ b/AnarchyExploitFixesLegacy/src/main/java/me/xginko/aef/modules/dupepreventions/AllayDupe.java @@ -0,0 +1,41 @@ +package me.xginko.aef.modules.dupepreventions; + +import com.cryptomorin.xseries.XEntityType; +import me.xginko.aef.modules.AEFModule; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.HandlerList; +import org.bukkit.event.Listener; +import org.bukkit.event.vehicle.VehicleEnterEvent; + +public class AllayDupe extends AEFModule implements Listener { + + public AllayDupe() { + super("dupe-preventions.allay-dupe"); + config.addComment(configPath, + "Will prevent allays from entering vehicles to prevent a duplication exploit\n" + + "confirmed working in 1.19.4."); + } + + @Override + public void enable() { + plugin.getServer().getPluginManager().registerEvents(this, plugin); + } + + @Override + public boolean shouldEnable() { + return config.getBoolean(configPath, false); + } + + @Override + public void disable() { + HandlerList.unregisterAll(this); + } + + @EventHandler(priority = EventPriority.HIGHEST, ignoreCancelled = true) + private void onVehicleEnter(VehicleEnterEvent event) { + if (event.getEntered().getType() == XEntityType.ALLAY.get()) { + event.setCancelled(true); + } + } +} diff --git a/AnarchyExploitFixesLegacy/src/main/resources/config.yml b/AnarchyExploitFixesLegacy/src/main/resources/config.yml deleted file mode 100644 index e4da420d9..000000000 --- a/AnarchyExploitFixesLegacy/src/main/resources/config.yml +++ /dev/null @@ -1,2056 +0,0 @@ -plugin-version: 2.7.2 -server-version: 'git-Paper-1620 (MC: 1.12.2)' - -############## -# 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: - # The time in ticks (1 sec = 20 ticks) a checked tps will be cached - # by the plugin. - max-tps-check-interval-in-ticks: 20 - # In case packet modules are causing trouble, you can disable them here. - disable-all-packet-listeners: false - # The Y-level at which the nether ceiling generates the last layer - # of bedrock on your server. - nether-ceiling-y: 127 - # If you see this config option, AEF is unable to get the minimum height - # of your worlds from the API. - # Please enter them here manually for each world you're currently using. - # Use the exact same name as your world folder. - world-min-heights: - world: 0 - world_the_end: 0 - world_nether: 0 - # A server restart is required when changing a command's enable status! - commands: - say: - enable: false - format: '&7Server: &6%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 - -################### -# Miscellaneous # -################### -misc: - join-leave-messages: - # If you want to hide yourself or someone else when logging - # into the game, use these permissions: - # aef.silentJoin, aef.silentLeave - enable: true - # If set to true, players will see join/leave messages by default - # and enter /toggleconnectionmsgs to disable them. - # If set to false will work the other way around. - connection-messages-on-by-default: true - show-in-console: false - first-join-messages: - # Configure message in lang folder. - # You can hide yourself and other players using the permission: - # aef.silentJoin - 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! - -########## -# 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: aef.bypass.commandwhitelist - enable: true - # Will show logs when a command was denied. - log: false - # Recommended to use when on 1.12. Otherwise only use if you're having issues. - use-packets: true - # 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 - # Add all subcommands you DON'T want your players to be able - # to access. Case sensitive! - 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. - # Recommended to use in combination with command whitelist. - enable: true - -############ -# Elytra # -############ -elytra: - # NOTE: Set nocheatplus horizontal elytra settings to 500 or higher. - elytra-speed: - # Time in ticks that a chunk has to have been inhabited to count as old chunk. - # Note that the time is incremented once per tick per player within mob spawning - # distance of a chunk. - old-chunk-inhabited-ticks: 200 - # The period in millis players will be checked to determine their speed. - # If you have lagging players with consistent high ping, you can increase this number. - check-period-millis: 500 - # 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 - packet-elytra-fly: - # Patches the future/rusherhack/kamiblue 2b2t elytra fly exploit - patch-packet-elytra-fly: 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 may trigger false positives when players are jumping and - # sprinting with elytra equipped, so recommended to play around - # with the values. - max-glide-toggles-per-time: 25 - # Time in seconds a elytra open count will be remembered by the plugin. - time-in-seconds: 8 - # Configure message in lang folder. - notify-player-to-disable-packetfly: true - # If enabled, player will be kicked with a message instead of - # getting their elytra dropped. - kick-instead-of-remove-elytra: false - -################## -# Chunk Limits # -################## -chunk-limits: - entity-limits: - 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, - # it just deletes whatever happens to get over the limit during - # counting. - enable: false - log-removals: true - max-dropped-items-per-chunk: 200 - # The delay in ticks the plugin will wait after an item in a chunk - # has dropped before the check logic will run. - # This improves performance as there will be no check for each single - # item entity that spawns. - post-item-drop-check-delay: 60 - # The period in ticks in which all loaded chunks should be regularly - # checked. Keep in mind: A lower number provides more accuracy but is - # also worse for performance. - check-period-in-ticks: 800 - # Runs item check when a chunk is loaded. - check-on-chunk-load: true - whitelist-specific-item-types: false - # Check the paper api for correct Material enums: - # https://jd.papermc.io/paper/1.20.6/org/bukkit/Material.html - # Make sure your minecraft version is matching as well. - whitelisted-types: - - BLACK_SHULKER_BOX - - BLUE_SHULKER_BOX - - BROWN_SHULKER_BOX - - CYAN_SHULKER_BOX - - GRAY_SHULKER_BOX - - GREEN_SHULKER_BOX - - LIGHT_BLUE_SHULKER_BOX - - LIME_SHULKER_BOX - - MAGENTA_SHULKER_BOX - - ORANGE_SHULKER_BOX - - PINK_SHULKER_BOX - - PURPLE_SHULKER_BOX - - RED_SHULKER_BOX - - SILVER_SHULKER_BOX - - WHITE_SHULKER_BOX - - YELLOW_SHULKER_BOX - tile-entity-limit: - # Limit the amount of tile entities in a chunk to prevent lag. - enable: false - log-removals: true - max-tile-entities-per-chunk: 100 - check-period-in-ticks: 20 - 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: - - NITWIT - - BUTCHER - - FARMER - - LIBRARIAN - whitelist: - enable: false - professions: - - NITWIT - - BUTCHER - - FARMER - - LIBRARIAN - non-living-limit: - # Limit the amount of non living entities in a chunk to prevent lag. - # Ignores dropped items. - enable: false - log-removals: true - max-non-living-per-chunk: 100 - # 20 ticks = 1 second - check-period-in-ticks: 20 - custom-limit: - # Limit specific entity types per chunk. - enable: false - log-removals: true - # Check all loaded chunks every x ticks. - check-period-in-ticks: 1200 - # Check the paper api for correct EntityType enums: - # https://jd.papermc.io/paper/1.20/org/bukkit/entity/EntityType.html - # Make sure your minecraft version is matching as well. - limited-types: - BAT: 3 - BLAZE: 10 - CAVE_SPIDER: 10 - CHICKEN: 10 - COW: 10 - CREEPER: 10 - DONKEY: 10 - ENDERMAN: 10 - ENDERMITE: 3 - EVOKER: 15 - GUARDIAN: 20 - HORSE: 10 - HUSK: 10 - IRON_GOLEM: 15 - LLAMA: 10 - MAGMA_CUBE: 10 - MULE: 10 - MUSHROOM_COW: 10 - OCELOT: 3 - PARROT: 10 - PIG: 10 - POLAR_BEAR: 5 - RABBIT: 5 - SHEEP: 10 - SILVERFISH: 3 - SKELETON: 10 - SKELETON_HORSE: 10 - SLIME: 10 - SPIDER: 10 - SQUID: 20 - STRAY: 10 - VEX: 15 - VINDICATOR: 15 - WITCH: 15 - WITHER: 16 - WITHER_SKELETON: 10 - WITHER_SKULL: 10 - WOLF: 10 - ZOMBIE: 10 - ZOMBIE_HORSE: 10 - ZOMBIE_VILLAGER: 25 - vehicle-limit: - # Limit the amount of vehicles to prevent some lag machines. - # ex. dispenser that spawns a lot of boats into a single location - # then hitting it, causing all boats to explode in every direction. - enable: false - log-removals: false - max-vehicles-per-chunk: 25 - # 200 ticks = 10 seconds. - check-period-in-ticks: 400 - falling-block-limit: - # Prevent players from placing massive sand chunks, then collapsing - # them to kill the server. - enable: true - log: false - # Removes any falling block if there is more than x blocks actively - # falling in a chunk. - max-falling-gravity-blocks-per-chunk: 60 - # Delay in ticks until the same chunk can be checked again. - # Prevents overchecking, because physics events can be called many - # times in a short time for the same chunk. - chunk-check-delay-in-ticks: 20 - block-limit: - enable: false - # Attempt to prevent ChunkBan / Client FPS Lag - max-blocks-per-chunk: - BANNER: 12 - BEACON: 32 - CHEST: 500 - DISPENSER: 100 - ENCHANTMENT_TABLE: 16 - ENDER_CHEST: 64 - GLOWSTONE: 5000 - PISTON_BASE: 32 - PISTON_EXTENSION: 32 - PISTON_MOVING_PIECE: 32 - PISTON_STICKY_BASE: 32 - SIGN: 8 - SIGN_POST: 8 - SKULL_ITEM: 16 - SLIME_BLOCK: 128 - TRAPPED_CHEST: 200 - WALL_BANNER: 12 - WALL_SIGN: 8 - minecart-limit: - # Limit the amount of minecarts to prevent lag caused by collisions. - enable: false - log-removals: false - max-minecarts-per-chunk: 25 - # 200 ticks = 10 seconds. - check-period-in-ticks: 400 - exp-bottle-limit: - # Prevent players from crashing the server or other players by - # creating a ton of THROWN_EXP_BOTTLE entities, then loading - # them at once. - # Does not limit the EXP_ORBS, just the bottle entities. - 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 - -##################### -# Lag Preventions # -##################### -lag-preventions: - keep-stash-chunks-loaded: - # Idea by 3b3t admin kumori (Soft1k) - # Improves lag generated by large stash chunks constantly loading and - # unloading by setting them force loaded. This might cause increased ram - # usage, so keep an eye out for that. - # Only works on 1.15+. Will not enable on unsupported versions. - enable: false - log: false - # How many container blocks have to be in a chunk for it to be seen - # as a stash chunk to keep force loaded. - container-block-threshold: 50 - # The time in minutes a stash chunks will be kept force loaded before - # setting it back to normal. - keep-loaded-minutes: 120 - # Set to false if you want to check more blocks than just tile entities. - # Makes the overall speed of the module faster if set to true. - only-check-tile-entities: true - container-types: - - DISPENSER - - CHEST - - FURNACE - - BEACON - - TRAPPED_CHEST - - HOPPER - - DROPPER - - WHITE_SHULKER_BOX - - ORANGE_SHULKER_BOX - - MAGENTA_SHULKER_BOX - - LIGHT_BLUE_SHULKER_BOX - - YELLOW_SHULKER_BOX - - LIME_SHULKER_BOX - - PINK_SHULKER_BOX - - GRAY_SHULKER_BOX - - SILVER_SHULKER_BOX - - CYAN_SHULKER_BOX - - PURPLE_SHULKER_BOX - - BLUE_SHULKER_BOX - - BROWN_SHULKER_BOX - - GREEN_SHULKER_BOX - - RED_SHULKER_BOX - - BLACK_SHULKER_BOX - - BREWING_STAND_ITEM - # Radiuses around spawn in chunks (not blocks) that should not be checked. - # Worlds not on this list are exempt from all checking. - worlds: - world: 100 - world_the_end: 100 - world_nether: 100 - disable-item-drops-during-large-stash-explosions: - # Explodes containers without dropping items after a certain amount - # of exploded containers per chunk. - enable: false - log: false - # How many container blocks in a chunk can be blown up until items - # no longer drop from them. - min-explosions-before-drops-disable: 6 - # The time in seconds to wait after an explosion for another one to happen. - # If no explosion happens within x seconds after the first one, the count - # resets to 0. - time-in-seconds: 3 - container-types: - - DISPENSER - - CHEST - - FURNACE - - BEACON - - TRAPPED_CHEST - - HOPPER - - DROPPER - - BREWING_STAND_ITEM - 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 - entity-age-limits: - custom-limits: - # Kill certain entities after a custom amount of ticks lived. - enable: false - log-removals: false - # Check all loaded chunks every x ticks. - check-period-in-ticks: 1200 - # Check the paper api for correct EntityType enums: - # https://jd.papermc.io/paper/1.20/org/bukkit/entity/EntityType.html - # Make sure your minecraft version is matching as well. - limited-types: - ARROW: 120 - FALLING_BLOCK: 160 - SNOWBALL: 100 - SPECTRAL_ARROW: 120 - WITHER_SKULL: 100 - projectile-limit: - # Patches any lag exploit that abuses spawning a ton of projectile entities - # (ex. Snowball exploit).Skips over the following entities: ENDER_PEARL, FISHING_HOOK, WITHER_SKULL - # and ENDER_SIGNAL. You can configure those separately in the custom entity age - # limit section. - enable: false - # (20 ticks = 1 second) Will not touch Ender Pearls - max-alive-time-ticks: 300 - # How frequently we should check all projectiles for their alive time - check-period-seconds: 20 - prevent-flooding-machines: - # Will prevent pistons from pushing waterlogged blocks. - enable: false - delete-waterlogged-blocks: true - anti-shulker-drops: - # Disables shulkers dropping stored items when blown up. - # This helps fix client- and serverside lag when done often and fast. - enable: false - regional-activity: - block-spread: - # Limits blocks spreading or forming based on world conditions within a - # configurable radius and timeframe to help reduce lag by cancelling burst - # activity hotspots. - # - # Examples: - # - # - Snow forming due to a snow storm. - # - Ice forming in a snowy Biome like Taiga or Tundra. - # - Obsidian / Cobblestone forming due to contact with water. - # - Concrete forming due to mixing of concrete powder and water. - # - Mushrooms spreading. - # - Fire spreading. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times a block can form or spread within the configured - # timeframe before activity will be put on cooldown. - block-form-event-limit: 800 - creature-spawn: - # Limits entity spawning activity within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A creature gets spawned naturally, by spawner or other reasons. - # - An entity gets spawned naturally, by spawner or other reasons. - # This does not include tile entities. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of entity spawns within configured timeframe. - spawn-event-limit: 6000 - entity-targeting: - # Limits entities targeting other entities within a configurable radius - # and timeframe to help reduce lag by cancelling burst activity hotspots. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 14.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times an entity can target another entity within the - # configured timeframe before the area will be put on cooldown. - entity-target-event-limit: 8000 - distance-limit: - 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: - SKELETON: 6.0 - WITHER: 8.0 - WITHER_SKELETON: 8.0 - ZOMBIE: 6.0 - ZOMBIE_VILLAGER: 10.0 - entity-pathfinding: - # Limits entities deciding to pathfind to a specific location - # within a configurable radius and timeframe to help reduce lag - # by cancelling burst activity hotspots. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 14.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times an entity can decide to start moving - # towards a location within the configured timeframe before the - # area will be put on cooldown. - entity-pathfind-event-limit: 4000 - distance-limit: - global-limit: - enable: false - # The max distance no mob pathfinding should exceed. - # You always want this to be higher than your highest max distance - # for a specific mob. - max-target-distance: 20.0 - custom-limits: - enable: true - entities: - SKELETON: 6.0 - WITHER: 8.0 - WITHER_SKELETON: 8.0 - ZOMBIE: 6.0 - ZOMBIE_VILLAGER: 10.0 - liquid-spread: - # Limits liquid spreading within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A lava block spreading by flowing. - # - A water block spreading by flowing. - # - (optional) A dragon egg is teleporting from one position to another. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 12.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 100.0 - # Maximum number of times liquids are allowed to spread within the configured - # timeframe before they will be put on cooldown. - liquid-spread-event-limit: 2400 - ignore-dragon-egg: true - redstone: - # Limits redstone activity within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A redstone current changes. - # - A redstone block gets powered on. - # - A redstone block gets powered off. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of redstone events within configured timeframe. - redstone-event-limit: 6000 - noteblocks: - # Limits noteblocks being played within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A noteblock is being played through player interaction. - # - A noteblock is being played through a redstone current. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times a noteblock can be played within the configured - # timeframe before they will be put on cooldown. - noteblock-play-limit: 2800 - explosions: - # Limits explosions within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A block exploding. - # - An entity exploding. - # - An entity making the decision to explode. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of explode events within the configured timeframe - # before the region will be put on cooldown. - explode-event-limit: 500 - pistons: - # Limits piston movement within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A piston extends. - # - A piston retracts. - enable: false - log: false - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 6000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 10000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of piston extend and/or retracts within the - # configured timeframe. - piston-movement-limit: 1000 - block-physics: - # Limits block physics within a configurable radius and timeframe - # to help reduce lag by cancelling burst activity hotspots. - # - # Note: - # - # The event used for this check (BlockPhysicsEvent) is a high frequency event, - # it may be called thousands of times per a second on a busy server. - # Where possible the event may also only be called for the "root" block of - # physics updates in order to limit event spam. - # Physics updates that cause other blocks to change their state may not result - # in an event for each of those blocks (usually adjacent). - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of times a physics check can be performed within the configured - # timeframe before they will be put on cooldown. - block-physics-event-limit: 256000 - sculk-sensor: - # Limits sculk activity within a configurable radius and timeframe - # to help reduce lag by cancelling high activity hotspots. - # - # Examples: - # - # - A redstone current changes for a sculk sensor. - # - A physics check is being performed for a sculk sensor. - enable: false - log: true - # The radius in blocks in which activity will be grouped together and measured. - check-radius-blocks: 1500.0 - # The time in milliseconds all related activity will be blocked if it exceeded - # the configured limit. - pause-time-millis: 18000 - # The time in milliseconds before a region and its data will be expired - # if no activity has been detected. - # For proper functionality, needs to be at least as long as your pause time. - data-keep-time-millis: 20000 - # The TPS at which to cancel the physics entirely. - pause-TPS: 10.0 - # The MSPT at which to cancel the physics entirely. - pause-MSPT: 120.0 - # Maximum number of sculk events within configured timeframe. - sculk-event-limit: 800 - sculk-blocks: [] - -############# -# Patches # -############# -patches: - prevent-end-gateway-crash: - # Prevents a crash exploit involving boats and end gateways: - # https://www.youtube.com/watch?v=c5nVBQeYo-I - enable: true - log: true - prevent-redstone-on-trapdoor-crash: - # prevents a powerful crash exploit present in 1.13 - 1.19.3 - enable: false - log: true - max-trapdoor-activations-by-redstone-per-time: 10 - # 1 sec = 20 ticks - time-in-ticks: 30 - # Patches the cow duplication exploit that allows duping cows using shears. - # Only affects lower versions - cow-dupe-patch: false - anti-book-ban: - enable: true - # If set to false, will use UTF-8. - # Charset to use to encode the result of NBTCompound#toString into - # a sequence of bytes. The length of that sequence is then used to - # get the approximate Byte-size of an ItemStack. - # Use the /aef bytesize command to get a better understanding. - use-UTF-16: false - max-book-size: 8000 - # 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 - pearl-phase: - # Attempts to patch a pearl phasing exploit by cancelling the teleport - # if the pearl is thrown at or near a specific block. - # At the time of the creation of this module, this is an issue with NoCheatPlus. - enable: false - # How many blocks around the teleport location should be searched - # for potential glitch blocks if the teleport location isn't one itself. - search-radius: 2 - maximum-distance-to-cancel-teleport: 3.0 - glitchy-materials: - - GOLD_PLATE - - IRON_PLATE - - IRON_TRAPDOOR - - PURPUR_SLAB - - STEP - - STONE_PLATE - - STONE_SLAB2 - - TRAP_DOOR - - WEB - - WOOD_PLATE - - WOOD_STEP - prevent-command-sign: - # Patch signs that have run_command NBT tags attached, allowing the - # to run a command with operator permissions on click. - # Recommended to enable if you had a rogue admin or backdoor incident. - enable: false - prevent-multiple-enderdragons: - enable: false - log: true - prevent-fast-world-teleport-crash: - # Prevents crash methods that involve very fast teleporting - # between different worlds in a short time. - enable: true - # Time in milliseconds until an entity can teleport to - # another world again. - teleport-delay-millis: 1000 - log: false - prevent-teleport-coordinate-exploit: - # Patches coordinate exploit for teleportation commands such as /tpa, - # /home AS WELL as respawn exploits. - # This is done by vanishing the player for x ticks before teleporting. - enable: true - min-distance-to-vanish-player: 100 - teleport-vanish-time-in-ticks: 10 - # Removes entities or players if they are invalid, dead or not located - # within a ticking chunk. Not sure if this works. - experimental-godmode-patch: false - prevent-dispenser-crash: - # Prevents dispensers from crashing the server when dispensing - # items out of bounds: https://www.youtube.com/watch?v=XL17P87O6xA - enable: true - log: false - tab-complete-crash-patch: - # Patches two lag exploits and an instant server shutdown exploit that - # works by sending a malicious TabComplete packet that triggers a - # StackOverflowError inside the TagParser class. - enable: true - log: false - kick-player: false - remove-beehive-coordinates: - # Patches an exploit that allows players to obtain another player's - # coordinates by trading them for Beehives or Beenests. - # If the traded item contains any bees, the stored bee's NBT data can - # then be read from the item. - # This data includes, but is not limited to: - # - XYZ coordinates of where the bee has its hive - # - XYZ of the bee's last coordinates before entering it's hive - # - XYZ coordinates of where the bee last visited a flower - # - XYZ coordinates of where the bee was first spawned into existence - # - UID of the world the bee was first spawned into existence - enable: true - # The NBT tags to filter from the item. These are the Keys that hold - # the position data. You may add more tags you want removed here. - tags: - - Pos - - HivePos - - FlowerPos - - Paper.Origin - - Paper.OriginWorld - - WorldUUIDMost - - WorldUUIDLeast - window-click-crash-patch: - # Patches a variety of different lag and crash methods that work - # by sending invalid Window Click packets, causing the server to - # dump error logs until it runs out of memory. - enable: true - log: true - kick-player: false - map-cursor-lag-patch: - # Patches the famous stacked map cursor lag that causes both - # client and server crashes. - enable: true - prevent-nocom-coordinate-exploit: - # Prevents the abusable mechanic used by the infamous "No Comment" - # coordinate exploit, where the server responds to requests that are - # far outside of the sending player's reach, therefore either crashing - # or revealing positions loaded by other players. - # More info on NoCom: https://www.youtube.com/watch?v=elqAh3GWRpA - # This is still useful to keep enabled even if your version is not - # affected by the NoCom vulnerability. - enable: true - max-distance: 24 - log: false - kick-player: false - inventory-lag: - # Checks if a player is requesting unusual amounts of traffic from the server - # using ItemStacks. - # If a player exceeds the limit, they will be put on a cooldown, during which - # they will be very limited in terms of ItemStack or Inventory interactions. - enable: false - # For debug purposes. Don't leave enabled for too long as it is very spammy. - log: false - # Whether to immediately close any open inventory of the player on limit exceed - # Note: Closing has to be scheduled so it will take a bit if the server is heavily - # lagging. - close-open-inventory: true - # The time in millis in which to check if the player exceeded the limit. - # Needs to be at least as long as your lockout duration millis. - byte-data-keep-time-millis: 30000 - rate-limit: - # The limit in bytes the server has sent the server in the form of ItemStacks, - # before the player will be put on a rate-limit. - # Should always be lower than your lockout bytesize limit. - bytesize-limit: 8000000 - # The time in millis in which a player is allowed to open x amounts of windows - # but not more. - timeframe-millis: 2500 - # The amount of windows that can be opened during the timeframe-millis. - max-window-opens-per-timeframe: 2 - lockout: - # The upper limit in bytes a player is allowed to request from the server - # within the configured timeframe before he will be put on cooldown. - # During the cooldown, he will not be able to open any inventory screens - # or interact with items. - bytesize-limit: 24000000 - # The time in milliseconds the player will have to wait before - # being able to open an inventory again after he exceeded the limit. - duration-millis: 15000 - check-packets: - - SET_SLOT - - WINDOW_ITEMS - lectern-crash-patch: - # Patches an instant server crash exploit that involves sending - # an invalid Window Click packet while taking a book out of a Lectern. - enable: true - log: false - kick-player: false - sequence-crash-patch: - # Patches a variety of lag/crash exploits that involves sending packets - # with invalid sequences. - enable: true - log: false - kick-player: false - sign-lag: - # Patches a lag exploit that involves sending specific oversized - # sign edit packets. - enable: true - # How many ticks a player needs to wait to be able to send - # another sign update packet (renaming or writing). - packet-delay-in-ticks: 10 - # Vanilla limit is 384 characters per line, which is too much. - line-character-limit: 80 - # General char limit for all lines combined. - total-char-limit: 384 - log: false - kick-player: false - beehive-crash-patch: - # Patches a server crash exploit exclusive to Purpur servers. - # This exploit works due to PurpurClient having a feature that - # lets clients request stored data of a clicked beehive from - # the server. The server does not check how far the clicked - # beehive is away from the client enabling a malicious sender - # to load chunks very fast at far away locations by telling - # the server it clicked a beehive there. - enable: true - channel: purpur:beehive_c2s - max-distance: 24 - log: false - kick-player: false - prevent-crafting-recipe-lag-exploit: - # Prevent lag or crash caused by flooding the server with - # crafting recipe book requests. This can even be done by hand on - # servers with low specs. Only affects versions < 1.16 - enable: true - # How many ticks a player needs to wait to be able to use - # the crafting recipe book again - crafting-recipe-delay-in-ticks: 5 - log: false - kick-player: false - -############## -# Illegals # -############## -illegals: - remove-placed-blocks: - on-chunkload: - # Remove illegally placed blocks on chunkload. - enable: false - blocks-to-remove: - - COMMAND_CHAIN - - COMMAND - - COMMAND_MINECART - - COMMAND_REPEATING - - BEDROCK - - BARRIER - exempted-worlds: - - exampleworld1 - - exampleworld2 - pause-on-low-TPS: true - pause-TPS: 14.0 - periodically: - enable: false - blocks-to-remove: - - COMMAND_CHAIN - - COMMAND - - COMMAND_MINECART - - COMMAND_REPEATING - - BEDROCK - - BARRIER - exempted-worlds: - - exampleworld1 - - exampleworld2 - check-period-in-seconds: 10 - pause-on-low-TPS: true - pause-TPS: 14.0 - remove-unnatural-spawners-on-chunkload: - enable: false - pause-on-low-TPS: true - 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 - nbt: - ban-custom-tags: - # Bypass permission: aef.bypass.illegal.nbt.custom - # Deletes items that have one or more of the configured tags. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - # The exact, case sensitive value of the nbt tag. - tags: - - dmg - item-whitelist-enabled: false - use-as-blacklist-instead: false - whitelisted-items: - - GOLDEN_APPLE - impossibly-stored-items: - # Bypass permission: aef.bypass.illegal.nbt.storeditems - # Prevents usage of or deletes storage items that have been pre-filled - # with items using NBT tags. These can only be created by players with - # creative access. - # Most commonly dispensers, droppers and chests containing kit shulkers - # are created but there are more combinations possible. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # The exact name of the nbt tag that signals items are stored inside. - tag: BlockEntityTag - check-stored-items: false - storage-types: - - BEACON - - BREWING_STAND_ITEM - - CHEST - - DISPENSER - - DROPPER - - FURNACE - - HOPPER - - TRAPPED_CHEST - command-items: - # Bypass permission: aef.bypass.illegal.nbt.commanditem - # Deletes items with commands in their NBT data that run as operator. - # These can only be created by players with creative access. - # Most common items are books, since it allows storing multiple commands. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - enchantments: - inapplicable-enchants: - # Bypass permission: aef.bypass.illegal.enchants.inapplicable - # Reverts or prevents usage of ItemStacks with Enchantments that - # cannot be applied to that ItemStack in vanilla survival minecraft. - # Examples: A helmet with sharpness or a block of stone with fortune. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - item-whitelist-enabled: true - use-as-blacklist-instead: false - whitelisted-items: - - GOLDEN_APPLE - higher-enchants: - # Bypass permission: aef.bypass.illegal.enchants.higher - # Reverts or prevents usage of ItemStacks with Enchantments higher - # than the natural, in vanilla survival obtainable level (aka 32ks / 255s). - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - only-specific-enchants: false - specific-enchants: - - DIG_SPEED - item-whitelist-enabled: true - use-as-blacklist-instead: false - whitelisted-items: - - GOLDEN_APPLE - incompatible-enchants: - # Bypass permission: aef.bypass.illegal.enchants.incompatible - # Reverts or prevents usage of ItemStacks with Enchantments that - # cannot coexist in vanilla survival minecraft. - # Examples: A bow with mending and infinity or armor with every - # protection enchantment. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - item-whitelist-enabled: true - use-as-blacklist-instead: false - whitelisted-items: - - BOW - ban-player-heads: - # Bypass permission: aef.bypass.illegal.playerhead - # Deletes or prevents usage of player heads. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # Will delete shulker/bundle if they contain any player heads. - check-stored-items: false - ban-specific-materials: - # Bypass permission: aef.bypass.illegal.bannedmaterial - # Prevents usage of or deletes items with material that you do not want - # your players to be able to use. - # Useful if your players have blocks that shouldn't be obtainable in survival. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - banned-materials: - - COMMAND_CHAIN - - COMMAND - - COMMAND_MINECART - - COMMAND_REPEATING - - BEDROCK - - BARRIER - - STRUCTURE_BLOCK - - STRUCTURE_VOID - - ENDER_PORTAL_FRAME - - ENDER_PORTAL - - PORTAL - potions: - # Bypass permission: aef.bypass.illegal.potions - # Prevents usage of or reverts items with any attribute modifiers - # or item flags. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - ban-spawn-eggs: - # Bypass permission: aef.bypass.illegal.spawnegg - # Deletes or prevents usage of spawn eggs. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # If remove-spawn-eggs is set to true Will delete shulker/bundle - # should they contain any spawneggs. - check-stored-items: false - whitelisted-items: - - MONSTER_EGG - data-values: - custom-data-values: - # 1.12 Only. Bypass permission: aef.bypass.illegal.data.custom - # Deletes items with configured illegal MaterialData values. - # Use '/aef datavalue' ingame while holding an item to add the - # specific value here. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - data-values: - - SuperIllegalItem(0) - item-whitelist-enabled: false - use-as-blacklist-instead: false - whitelisted-items: - - GOLDEN_APPLE - illegal-golden-apples: - # 1.12 Only. Bypass permission: aef.bypass.illegal.data.apple - # Deletes apples with illegal MaterialData values. Will use the - # API to determine what a natural value looks like. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - check-stored-items: false - banned-item-names: - # Bypass permission: aef.bypass.illegal.bannedname - # Resets an item's name (or deletes the item) if it matches one of - # the configured regexes. - # Regexes can be complex. Use a tool like https://regex101.com/ or - # ChatGPT for good results. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - # Will delete the item instead of resetting the name. - delete-item: false - regex: - - (?i)illegalstring - whitelisted-items: - - DIRT - illegally-stacked-items: - # Bypass permission: aef.bypass.illegal.overstacked - # Prevents usage of or reverts items with a higher or lower - # stack size than their vanilla limit. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - item-whitelist-enabled: false - use-as-blacklist-instead: true - check-stored-items: false - whitelisted-items: - - TOTEM - revert-unbreakables: - # Bypass permission: aef.bypass.illegal.unbreakable - # Deletes and prevents usage of unbreakable items. - # This can be anything from items with illegal damage attributes to - # Metadata/NBT tags. - # Note: Due to the limitations of the API, we can only fully prevent - # usage of these items by deleting them. - enable: false - # Available options: - # STRICT - Deletes or reverts illegals even on chest open - # ACTION_ON_USE - Deletes or reverts illegals when interacted with - # PREVENT_USE_ONLY - Only prevents usage of illegals if possible - handling: PREVENT_USE_ONLY - # Enable this if you have problems with the plugin removing items from chest guis. - gui-plugins-supported: false - # Prevents Hopper32k mechanic of placing a shulker containing illegals on top - # of a hopper, then using the illegal out of the hopper's inventory. - # WARNING: Hooks into InventoryMoveItemEvent, which can become VERY resource - # intense as the event fires in high frequencies as soon as players start using - # farms or item sorters. Recommended to leave off if not necessary. - prevent-hopper32k-mechanic: false - check-on-chunkload: - # WARNING: CHECKING ON CHUNKLOAD IS NOT RECOMMENDED AS IT IS VERY RESOURCE INTENSE. - # BE VERY SURE YOU ACTUALLY NEED THIS. - # Iterates over all blocks in a chunk when it is loaded and checks any inventories - # for illegals. If a container with illegals is found, the container will be REMOVED. - enable: false - # If set to true, immediately replaces the container with air. Otherwise, will try - # to handle items separately. - remove-container: false - # The time in milliseconds to wait before performing another check, - # if a check was positive. Helps with lag resulting from repeatedly - # checking illegals. - check-rate-limit-millis: 3000 - item-whitelist-enabled: false - use-as-blacklist-instead: false - # Will delete shulkers and bundles if they contain unbreakables. - check-stored-items: false - # Make sure to keep enabled on 1.16+, otherwise netherite tools - # will mistakenly be set to max durability, due to some bug in paper. - skip-zero-durability: true - whitelisted-items: - - DIAMOND_CHESTPLATE - -###################### -# Dupe Preventions # -###################### -dupe-preventions: - # Prevent any possible dupes involving chested entities by making - # it impossible to put a chest on them. - # Only do this if you have reason to believe a dupe like that exists - # on your server. - prevent-chests-on-living-entities: false - # Closes open inventories of all entities that are in a chunk - # that will be unloaded. - close-entity-inventories-on-chunk-unload: false - # Prevents entities that can carry chests from using portals to - # block some common dupe tactics. - # CAUTION: Will remove chests and their contents from a chested - # entity if it touches a portal on Folia! - prevent-chested-living-entities-in-portals: false - # Patches a dupe that involves pushing a chestable entity - # with low hp into an end portal, duplicating its inventory - # content on death - prevent-end-portal-dupe: false - # Closes open inventories of entities that disappeared when the - # player riding it disconnects. - close-entity-inventories-on-player-disconnect: false - -################# -# Preventions # -################# -preventions: - withers: - disable-wither-spawning-at-spawn: - # Disables spawning withers near a configurable radius around - # spawn. Helps if players are generating endless amounts of withers - # to lag the server. - enable: false - inform-players: true - worlds: - world: 5000 - world_the_end: 5000 - world_nether: 5000 - remove-flying-wither-skulls: - # 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 - # 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 - periodically-remove-all-flying-skulls: - # Enable if a lot of wither skulls at spawn are causing lag. - enable: false - check-period-in-ticks: 80 - # 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 wither skulls - # 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 - portals: - prevent-specific-types: - # Configure entities here that you suspect might be used in a dupe - # with portals. - # CAUTION: Will kill the entity on folia due to broken portal event. - # There is sadly no other efficient way. - enable: true - # Defaults prevent common lag methods. - entities: - - DROPPED_ITEM - - FIREWORK - - PRIMED_TNT - - THROWN_EXP_BOTTLE - - EXPERIENCE_ORB - - ARMOR_STAND - # Only enable if you must. Does not affect players. - prevent-all-entities-in-portals: false - prevent-destroying-end-portals: - enable: true - log: true - end: - bedrock-protection-radius-blocks: 8 - # Add block locations that should be protected as well. - # Format: ::: - # If you don't want to use this, just configure an empty list: - # pillar-blocks: [] - pillar-blocks: - - world_the_end:143:140:-50 - - world_the_end:112:90:-90 - prevent-portal-traps: - # Teleports a player back to the original location if they have been - # standing 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 - permanent-block-breaking: - by-placing-piston-on-retract: - enable: true - whitelisted-worlds: - - example_world_name - by-exploding-pistons: - enable: true - whitelisted-worlds: - - example_world_name - by-growing-structures: - # Prevents removal of permanent blocks by growing structures - # like mushrooms into them. - enable: true - prevent-map-reset-spam: - # Puts a cooldown on creating maps so players cant reset - # map arts that easily. - # Only needed on versions below 1.12 and lower. - # Bypass permission: aef.bypass.mapspam - enable: false - # Sends a message to players telling them how many maps - # they can create per time - notify-players: true - cooldown-time-in-minutes: 60 - max-amount-of-maps-per-time: 4 - prevent-ambient-fish-spawns: - # Prevent certain fish types from spawning in newer versions to combat lag. - enable: false - fish-types-to-prevent: - - COD - - SALMON - - PUFFERFISH - - TROPICAL_FISH - prevent-opped-players: - # Useful if you suspect a backdoor has happened. - enable: false - log: true - whitelisted-players: - - Notch - prevent-nether-roof: - # Prevent players from going above the nether roof. - enable: true - safely-teleport-players: true - anti-bed-trap: - # Resets a players bed respawn they die 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 - max-distance-from-bed: 6.0 - prevent-non-survival-players: - # Checks if player is in survival and if not, puts him back into survival. - # Useful if you had a backdoor incident. - enable: false - log: true - whitelisted-players: - - Notch - -############ -# Combat # -############ -combat: - anchor-aura-delay: - enable: false - # 1 tick = 50 ms - break-delay-millis: 0 - # 1 tick = 50 ms - place-delay-millis: 400 - # Can help with desync but recommended to leave off unless you have issues. - update-inventory-on-cancel: false - silent-swap-delay: - enable: false - # The delay in millis a player cant swap hotbar items after placing - # a block, clicking a block (for example to place a crystal) or - # damaging an entity. (50 ms = 1 tick) - min-swap-delay-millis: 40 - prevent-bow-bomb: - enable: false - # Fully pulled bow is ~9-10. 15 is default just to be safe. - max-bow-squared-velocity: 15 - portal-god-mode-patch: - # Prevents an exploit that allows players to stand in nether portals and not - # take damage indefinitely by just never sending a TeleportConfirm packet to - # the server. - # A similar method is used for the chorus tp exploit, which is not covered - # by this module. - enable: false - # If the player stays inside the nether portal for this time without teleporting, - # the portal will be broken, making the player inside vulnerable again. - # Nether portal teleports normally happen within ~3s after enter, so 5s (100ticks) - # should be a safe value. - break-portal-delay-ticks: 100 - crystal-aura: - piston-aura-delay: - # Rate-limits pistons that extend into crystals - enable: false - piston-extend-delay-in-ticks: 40 - regular-delay: - enable: false - # 1 tick = 50 ms - break-delay-millis: 200 - # 1 tick = 50 ms - place-delay-millis: 0 - # Can help with desync but recommended to leave off unless you have issues. - update-inventory-on-cancel: false - 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. - allow-slabs-in-burrow: true - ignored-materials: - - BLACK_SHULKER_BOX - - BLUE_SHULKER_BOX - - BROWN_SHULKER_BOX - - CYAN_SHULKER_BOX - - GRAY_SHULKER_BOX - - GREEN_SHULKER_BOX - - LIGHT_BLUE_SHULKER_BOX - - SILVER_SHULKER_BOX - - LIME_SHULKER_BOX - - MAGENTA_SHULKER_BOX - - ORANGE_SHULKER_BOX - - PINK_SHULKER_BOX - - PURPLE_SHULKER_BOX - - RED_SHULKER_BOX - - PURPLE_SHULKER_BOX - - WHITE_SHULKER_BOX - - YELLOW_SHULKER_BOX - - AIR - - DIRT - - GRASS_PATH - - SAND - - GRAVEL - multi-task-patch: - enable: false - piston-push: - # Disables pistons from extending if it would push certain configured entities. - # This can be used to prevent players from pushing other players out of burrows, by - # configuring PLAYER, or to disable piston-crystal by adding ENDER_CRYSTAL to the list. - enable: false - piston-push-blocked-entities: - - PLAYER - bed-aura-delay: - enable: false - # 1 tick = 50 ms - break-delay-millis: 0 - # 1 tick = 50 ms - place-delay-millis: 250 - # Can help with desync but recommended to leave off unless you have issues. - update-inventory-on-cancel: false - -############# -# Bedrock # -############# -bedrock: - fill-in-bedrock: - overworld-floor: - periodically-check-and-fill: - # only checks loaded chunks - enable: false - check-period-in-seconds: 10 - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - fill-on-chunkload: - enable: false - # Recommended to leave off. Only useful if world generation is broken. - also-check-new-chunks: false - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - nether-ceiling: - periodically-check-and-fill: - # Only checks loaded chunks. - enable: false - check-period-in-seconds: 10 - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - fill-on-chunkload: - enable: false - # Recommended to leave off. Only useful if world generation is broken. - also-check-new-chunks: false - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - # Pauses the task during low tps to avoid adding to the lag. - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - nether-floor: - periodically-check-and-fill: - # Only checks loaded chunks. - enable: false - check-period-in-seconds: 10 - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - fill-on-chunkload: - enable: false - # Recommended to leave off. Only useful if world generation is broken. - also-check-new-chunks: false - # Uses the exact name of the world's folder in your server directory. - exempted-worlds: - - exampleworld - - exampleworld2 - pause-on-low-tps: true - # The TPS at which bedrock filling will pause to avoid adding to the lag. - pause-tps: 16.0 - prevent-going-below-bedrock-floor: - # Prevents players from going below the bedrock floor. - enable: true - # Eject player from the vehicle - eject-player: true - # Disables a player's elytra flight - stop-elytra: true - # Teleport player on top of that bedrock - teleport: true - # 1.0 = Half a heart of damage every time you move. Set 0 to disable - damage-when-moving: 8.0 - # Whether the bedrock hole should be filled or not - fill-bedrock-hole: true - exempted-worlds: - - world_the_end - - skyblock_world - filler-material: BEDROCK diff --git a/build-logic/src/main/kotlin/me.xginko.aef.wrapper.gradle.kts b/build-logic/src/main/kotlin/me.xginko.aef.wrapper.gradle.kts index a1b288030..9920f4f2c 100755 --- a/build-logic/src/main/kotlin/me.xginko.aef.wrapper.gradle.kts +++ b/build-logic/src/main/kotlin/me.xginko.aef.wrapper.gradle.kts @@ -4,7 +4,7 @@ plugins { } group = "me.xginko" -version = "2.7.2" +version = "2.7.3-SNAPSHOT" description = "Prevent many exploits that affect anarchy servers." var url: String? = "github.com/xGinko/AnarchyExploitFixes"