AnarchyExploitFixes is a Paper plugin attempting to fix all major exploits affecting anarchistic Minecraft servers. It is designed for high configurability and performance.
Contact
Join the Discord:
Servers using AnarchyExploitFixes:
(Add your server in a pull request)
constantiam.net (70-80), 5b5t.org (50-150), 6b6t.org (50-150), openanarchy.org (40-150), endcrystal.me (10-50), 6g6s.org (10-50), scfanarchy.ggs.gg (0-3), 22b22t.tk (8-40), 2b2t.com.ar (10-50), f3f5.org (5-24), alacity.net (20-50), oldmate.sydney (5-20), play.basedmc.club (5-16), 2b2t.pl (5-15), mc.zedanarchy.org (5-15)
Downloads
Downloads can be obtained from the modrinth page or the actions tab.
Requirements
- PacketEvents - To be able to prevent packet exploits. Without it, the plugin cannot enable.
Building from source
First, clone this repository.
Then run the following command in the root directory:
./gradlew clean build
Notice
Please note that some exploits have already been patched by LPX AntiPacketExploit and Panilla, meaning they are most likely not included. It is recommended to use those alongside AEF to patch the majority of exploits.
Commands
These commands can only be executed from console or by opped players.
- /aef reload - Reload the config
- /aef bytesize mainhand/inventory (player) - Show bytesize of a held item or inventory
- /aef datavalue - (1.12 Relevant) Get the data value for the item you're holding to add it to the remove list
- /aef elytra - See who is flying on an elytra.
- /aef geared - See how many players have armor or are new.
- /aef lag - artificially lag the server for testing. Every time you run the command the server freezes for 1 second by default, add milliseconds to the end of the command for custom time.
- /aef version - Plugin version.
Features
This list does not include all features, check the config for all features!
All features listed here can be disabled or enabled in the config.
- Prevent NoCom exploit. - Prevent the 'NoCom' coordinate exploit
- Prevent a new lag exploit where fireworks can bring tps down to single digits.
- Prevent BowBomb exploit. - Prevent an exploit where bows can instantly kill a player.
- Prevent Burrow hack - Where you step inside a block so crystals can't do any damage.
- Prevent BoatFly exploit - Prevent the Futureclient / Rusherhack BoatFly exploit.
- Prevent Book-ban - All characters still work! The size of each page is just limited to 255 bytes (customizable). This allows to fill the whole page with latin characters. Characters that use more bytes such as Chinese may be limited in length.
- Prevent unbreakable Packet elytra fly.
- Prevent PacketFly exploit.
- Prevent end gateway crash exploit. - https://www.youtube.com/watch?v=c5nVBQeYo-I
- Patch end portal dupe. - https://www.youtube.com/watch?v=n-fN6txZNgc
- Prevent Y256 dispenser crash exploit. - https://www.youtube.com/watch?v=XL17P87O6xA
- Anti-Illegal system:
- Remove/revert illegal items: banned items, overstacked items, higher enchanted items, items with illegal datavalues, incompatible enchanted items (eg Silk Touch & Fortune on the same item), inapplicable enchanted items (unenchantables), Spawneggs and unbreakable items and all shulkers containing them.
- Remove illegal blocks that have been placed in the world. Supports removal of non-natural spawners too!
- Limit speed of snowballs to prevent clientside lag.
- Limit crafting table autorecipe speed to prevent a lag exploit.
- Prevent all coordinate exploits related to teleporting by vanishing a player right before they are teleported.
- Prevent destroying end portal frames.
- Prevent multiple end dragons from being created.
- Prevent portal traps - Teleport a player back to the original portal if they're trapped for too long.
- Automatically fill in the bedrock floor/roof if the bedrock has been broken.
- Prevent players from going below the bedrock floor by teleporting them up. - Useful so people can't elytra fly below the world.
- Remove wither heads automatically to prevent lag. - Removes on chunk load, unload or after a customizable alive time
- Option to disable wither spawning at spawn. - Disabled by default.
- Prevent chunk ban exploit. - Checks how much of each block is in a chunk.
- Prevent chat spam. - Delay between messages, Max messages per a certain time, separate link delay, character limit, and more!
- Prevent god mode exploit. - Prevent most godmode exploits, please note, there could still be bypasses.
- Prevent invalid names. - Disallow login from players with invalid characters/too long of a name.
- Prevent command signs. - Prevent players from right-clicking signs that have been placed with a command attached. For example, from a backdoor.
- Limit falling blocks per chunk to prevent lag.
- Limit exp bottles per chunk to prevent lag.
- Prevent projectiles from going through portals, shooting projectiles through portals can get them stuck in the same place on the other side, once they are loaded the server can crash.
- Prevent too many vehicles (eg. minecarts, boats) in chunks.
- Prevent bed-traps. - Disabled by default. Teleports players back to original location when they have been standing in a portal for too long.
- Prevent nether roof access. - Disabled by default.
- Prevent placing blocks on nether roof
- Option to disable chests on donkeys. - This is unlike IllegalStack's, no items will drop if the chest is broken. Useful to prevent many dupe exploits, Disabled by default.
- Option to prevent donkeys from going through portals. - Useful to prevent many dupe exploits, disabled by default.
- Option to mask all kick messages. - Change every kick message to "You have lost connection to the server", or whichever you specify. Disabled by default.
- Option to enable first join message. - Disabled by default.
- Command whitelist - Useful for only allowing commands that you want to be allowed, so players can't find your plugins. Disabled by default.
- Elytra speed limits for old and new chunks, and bursting settings for when tps is high.
- Elytra action bar to show players the speed they are going and speed limit.
- Rate-limit levers - Disabled by default. Prevent lag by spamming levers.
- Options to disable certain game features at specific TPS. Redstone, Elytra, Explosions, Falling Blocks.
- Bedrock Filler - Option to automatically fill overworld bedrock floor, nether bedrock floor and nether bedrock ceiling.
Stars over time
All Versions
+ Add Version- Updated to work with 1.21.6 - 1.21.8
- Improvements to performance costs for a variety of modules
- NBT-API is no longer shaded by AEF. This means better performance and less waiting for an update when a new mc release is out.
- Added anti bundle crash
- Added anti illegal DataComponent items module
- Added update notifications. **AEF will never auto-update** but it will remind you to update starting with this release!
- Added experimental patch for servers that want to protect against a rumored map tracking exploit. (patches.disable-map-player-tracking)
- Fixed beehive coordinate filters for servers that use new DataComponent instead of NBT
- Many more things not listed here
## Contributions
- Update README.md by @Pman3 in https://github.com/xGinko/AnarchyExploitFixes/pull/267
- updated serverlist in readme by @cattyngmd in https://github.com/xGinko/AnarchyExploitFixes/pull/270
- add aetheria.cc to server list by @RealFascinated in https://github.com/xGinko/AnarchyExploitFixes/pull/281
- Update README.md by @Localacct21 in https://github.com/xGinko/AnarchyExploitFixes/pull/283
- Revert "Add my server ORICHILL, please" by @TheFaik in https://github.com/xGinko/AnarchyExploitFixes/pull/298
- Update README.md by @10builders10tools in https://github.com/xGinko/AnarchyExploitFixes/pull/299
- Add my server by @tak-gamingYT in https://github.com/xGinko/AnarchyExploitFixes/pull/300
- Update README.md by @10builders10tools in https://github.com/xGinko/AnarchyExploitFixes/pull/301
- Update README.md by @konsheng in https://github.com/xGinko/AnarchyExploitFixes/pull/302
- NoBundleDrops by @Leleawa in https://github.com/xGinko/AnarchyExploitFixes/pull/285
- Full Changelog**: https://github.com/xGinko/AnarchyExploitFixes/compare/2.7.11...2.7.12
- Updated to work with 1.21.6 - 1.21.8
- Improvements to performance costs for a variety of modules
- NBT-API is no longer shaded by AEF. This means better performance and less waiting for an update when a new mc release is out.
- Added anti bundle crash
- Added anti illegal DataComponent items module
- Added update notifications. **AEF will never auto-update** but it will remind you to update starting with this release!
- Added experimental patch for servers that want to protect against a rumored map tracking exploit. (patches.disable-map-player-tracking)
- Fixed beehive coordinate filters for servers that use new DataComponent instead of NBT
- Many more things not listed here
## Contributions
- Update README.md by @Pman3 in https://github.com/xGinko/AnarchyExploitFixes/pull/267
- updated serverlist in readme by @cattyngmd in https://github.com/xGinko/AnarchyExploitFixes/pull/270
- add aetheria.cc to server list by @RealFascinated in https://github.com/xGinko/AnarchyExploitFixes/pull/281
- Update README.md by @Localacct21 in https://github.com/xGinko/AnarchyExploitFixes/pull/283
- Revert "Add my server ORICHILL, please" by @TheFaik in https://github.com/xGinko/AnarchyExploitFixes/pull/298
- Update README.md by @10builders10tools in https://github.com/xGinko/AnarchyExploitFixes/pull/299
- Add my server by @tak-gamingYT in https://github.com/xGinko/AnarchyExploitFixes/pull/300
- Update README.md by @10builders10tools in https://github.com/xGinko/AnarchyExploitFixes/pull/301
- Update README.md by @konsheng in https://github.com/xGinko/AnarchyExploitFixes/pull/302
- NoBundleDrops by @Leleawa in https://github.com/xGinko/AnarchyExploitFixes/pull/285
- Full Changelog**: https://github.com/xGinko/AnarchyExploitFixes/compare/2.7.11...2.7.12
- Fixed and improved elytra-speed (#263, #264) thanks to [@PsychoHashMap](https://github.com/PsychoHashMap)
- Improved Trident Dupe patch to work on everything that can be duped with the same mechanic
- Improved anti-backdoor features (illegal-gamemode and illegal-permissions) and their strictness
- Added back a more configurable version of command anti-spam
- Fixed aef bytesize command not being usable
- Fixed wither summoning at spawn not working (#261)
- Fixed an error that would throw when LuckPerms and Citizens were installed alongside AEF (#265)
- Improved memory footprint by using more lazy initialization
- Fixed and improved elytra-speed (#263, #264) thanks to [@PsychoHashMap](https://github.com/PsychoHashMap)
- Improved Trident Dupe patch to work on everything that can be duped with the same mechanic
- Improved anti-backdoor features (illegal-gamemode and illegal-permissions) and their strictness
- Added back a more configurable version of command anti-spam
- Fixed aef bytesize command not being usable
- Fixed wither summoning at spawn not working (#261)
- Fixed an error that would throw when LuckPerms and Citizens were installed alongside AEF (#265)
- Improved memory footprint by using more lazy initialization
- Patch for the new [TridentDupe](https://github.com/Killetx/TridentDupe), which is present in 1.13 up to 1.21.4
- Fix /aef bytesize command
- Patch for the new [TridentDupe](https://github.com/Killetx/TridentDupe), which is present in 1.13 up to 1.21.4
- Fix /aef bytesize command
- Slightly improved performance impact of illegal item checks
- Improved accuracy of entity chunk limits
- Slightly improved performance impact of illegal item checks
- Improved accuracy of entity chunk limits
- Added experimental patch against a remote item pickup exploit
- Added illegal firework check
- Reworked language handling (improves speed slightly)
- Added experimental patch against a remote item pickup exploit
- Added illegal firework check
- Reworked language handling (improves speed slightly)
- Fix keep-stash-chunks-loaded module throwing a NullPointerException when disabled and reloaded
- Improve comment in disable-entity-spawns
- Fix keep-stash-chunks-loaded module throwing a NullPointerException when disabled and reloaded
- Improve comment in disable-entity-spawns
- Fixed broken aura delay modules
- Added configurable carpet/rail/tnt dupe prevention (Papers patch is recommended if you want to prevent them all)
- Fixed broken aura delay modules
- Added configurable carpet/rail/tnt dupe prevention (Papers patch is recommended if you want to prevent them all)
- Improved compatibility with PlugmanX or ServerUtil reloading
- Command config can now apply in some cases through a reload. (Server restart is still recommended)
- Improved compatibility with PlugmanX or ServerUtil reloading
- Command config can now apply in some cases through a reload. (Server restart is still recommended)
- Added Version support up until 1.21.4 (#247)
- Added patch for the 1.20.6-1.21 book dupe
- Added patch for a new exploit that allows sending huge messages, creating lag on some servers
- Fix functionality for some packet modules
- Fix AntiBedTrap not working properly (#244)
- Added ability to hook into luckperms to fix #237
- Reworked
preventsions.prevent-opped-playersto a more configurablepreventions.illegal-permissions - Reworked
preventions.prevent-non-survival-playersto a more configurablereventions.illegal-gamemode - Added more configurability to all
regional-activitymodules. You can now configure custom type limits per module - Reworked legacy module
disable-fishinto a more genericlag-preventions.disable-entity-spawnsfor both plugin types. - Reworked all modules accessing chunks to check if a chunk is out of bounds to fix the "plugin is getting faraway chunk issue"
- Reworked
chunk-limits.exp-bottle-limitintochunk-limits.projectile-limitsince its a projectile issue and could reappear - Improved functionality of all modules handling illegal items. (Fixes having to drop something multiple times until aef removed ALL illegal enchants. It now cleans it entirely on the first interaction if handling is set to ACTION or STRICT. Also fixes items getting stuck if players try to drop them with specific plugin settings.)
- Improved plugin enable logic and added more specific logging messages so users are more pushed into using the correct plugin jar
- Plugin now only saves default translations if the lang folder does not exist. This means you can delete language files you do not want without them reappearing on reload.
- Reworked config to always include the enable: true/false option for a module. **This will cause warnings on config update but should be fine after a reload.**
More fixed issues in this release: #248 #243
- Reminder to always backup your configs before you update!**
- Added Version support up until 1.21.4 (#247)
- Added patch for the 1.20.6-1.21 book dupe
- Added patch for a new exploit that allows sending huge messages, creating lag on some servers
- Fix functionality for some packet modules
- Fix AntiBedTrap not working properly (#244)
- Added ability to hook into luckperms to fix #237
- Reworked
preventsions.prevent-opped-playersto a more configurablepreventions.illegal-permissions - Reworked
preventions.prevent-non-survival-playersto a more configurablereventions.illegal-gamemode - Added more configurability to all
regional-activitymodules. You can now configure custom type limits per module - Reworked legacy module
disable-fishinto a more genericlag-preventions.disable-entity-spawnsfor both plugin types. - Reworked all modules accessing chunks to check if a chunk is out of bounds to fix the "plugin is getting faraway chunk issue"
- Reworked
chunk-limits.exp-bottle-limitintochunk-limits.projectile-limitsince its a projectile issue and could reappear - Improved functionality of all modules handling illegal items. (Fixes having to drop something multiple times until aef removed ALL illegal enchants. It now cleans it entirely on the first interaction if handling is set to ACTION or STRICT. Also fixes items getting stuck if players try to drop them with specific plugin settings.)
- Improved plugin enable logic and added more specific logging messages so users are more pushed into using the correct plugin jar
- Plugin now only saves default translations if the lang folder does not exist. This means you can delete language files you do not want without them reappearing on reload.
- Reworked config to always include the enable: true/false option for a module. **This will cause warnings on config update but should be fine after a reload.**
More fixed issues in this release: #248 #243
- Reminder to always backup your configs before you update!**
- Added 1.21.1 compatibility (#232)
- Made map-cursor-lag-patch work on 1.12.2
- Replaced low-tps-physics modules with regional-activity modules. Any sort of activity that has the potential to lag or kill the server when happening at high frequencies can now be individually managed and configured. The base concept for this was suggested by @xKumorio (3b3t.org): Any time an activity is happening for the first time, the plugin will check in a radius around it for more activity of the same kind. If it exceeds a certain count within the configured timeframe, all activity in that radius (region) will be cancelled.
lag-preventions.regional-activity section.- Added a module against lag generated by forcing the server to send large ItemStacks. (Ex. fill chest with books, spam open chest). This is especially a problem with older game versions. Previous modules that were basically a worse attempt at fixing this issue have been removed in favor of this one. Basically works like an anti-spam that starts taking action once the player is exceeding a certain byte-size of requested data within a timeframe. Players will first be rate-limited and if they keep requesting data, locked out from requesting more for a configurable time.
- Replaced all deprecated NBT-API calls with the new ones. This makes AEF handling NBT more reliable.
- Added an illegal item module against illegal potion effects
- Added an illegal item module against illegal item attributes
- Fully reworked configurations for Crystal Aura, Anchor Aura and Bed Aura: You can now set place and break cooldowns per Hand on the Folia jar!
- Added a patch against MultiTask
- Rewrote the patch against SilentSwitch
- Improved the burrow patch slightly for more configurability
- Added a patch against PortalGodMode (#157)
- Improved compatibility with lower game versions by using reflections for TPS and MSPT. This also improved compatibility with unsupported older versions.
- Improved world height configuration and detection for Legacy users
- Fixed AEF being unable to detect player respawns on Folia
- Code optimizations and performance improvements
- Fixed a bug where elytra-speed would spontaneously detect higher speeds near new chunks
- Fixed Legacy jar not enabling on 1.19+
- Added setting for speed check period in ticks for elytra-speed
- Fixed a few rogue config options
- Improved speed of keep-stash-chunks-loaded
- Added misc module to re-create SPIGOT-5988, also known as auto-bed (Thanks to @xKumorio)
to travel to spawn and back without using pearls or multiple accounts.
### Download notes:
For Paper 1.20 - 1.21 and Folia, use the **-Folia.jar**
For Paper 1.12.2 - 1.19.4, use the **-Legacy.jar**
- Added support for handling packets across all minecraft versions by switching to [PacketEvents](https://modrinth.com/plugin/packetevents)!
- You will need the latest packetevents jar installed to run the new release.
- Added support for 1.20.5 - 1.21
- Added kick and logging options to all packet modules.
- Added patches for purpur beehive_c2s crash, invalid sequence crash and sign lag.
- Added protection against more tab-completion lag/crash methods.
- Fixed and improved CommandWhitelist TabComplete filter for all versions from 1.12.2 - latest
- Fixed and improved Beehive coordinate patch.
- Rewrote all illegal item modules. WARNING: THE ENTIRE ILLEGALS CONFIG SECTION WILL BE RESET!
Deleting/Reverting them will have to be re-enabled if desired.
Additionally, each illegal item check now offers their own bypass permission.
- Improved detection of elytra-speed. This should fix a few bypasses.
- Improved accuracy of old/new chunk detection for legacy users.
- Improved the plugin's ability to read stored Items from an ItemStack (ex. Bundle, Shulker)
- Improved Command Sign patch.
- The state of /toggleconnectionmsgs now properly persists throughout restarts!
- Improved calculation of item bytesize. The values will most likely still need to be tweaked
- Improved performance of certain repeating operations by implementing packetevenpppcaches.
- Fixed and improved the ant-book-ban module. It is advised to let the plugin regenerate
- Improved the /aef lag command on folia
- Added ukraninian translation by (@F3F5)
- Added modules to help combat lag caused by large dupe stashes being loaded or destroyed.
- Added a module that implements a cooldown to inventory holder interactions (lag-preventions.prevent-inventory-open-spam)
- Added a patch against a pearl phase exploit involving cobwebs and similar blocks.
- Added ability to set max alive ticks for custom entitytypes.
- Made Map Cursor lag patch available for 1.16+ servers.
- Various improvements to logging with better readability in mind.
- Improved and reworked all comments within the plugin's config.yml
- Large amounts of internal code refactoring and shuffling for better performance and readability.
- Reduced jar filesize from ~20MB to just over 5MB.
## IMPORTANT! PLEASE READ:
- This release comes with drastic changes to the config.yml. Make sure to back up your config before updating!**
### Download notes:
For Paper 1.20 - 1.21 and Folia, use the **-Folia.jar**
For Paper 1.12.2 - 1.19.4, use the **-Legacy.jar**
- Fixed
java.lang.IllegalStateException: Accessing entity state off owning region's threadin Folia/Kaiiju 1.20.4 (#192, #180)
- Fixed lang files not generating on windows (#178, #189), credit goes to @F3F5 for providing the necessary information
- Improved TagParser crash check.
- Changed how AEF checks for TPS on Folia. This could positively affect performance.
- Folia builds can now understand &-codes to a limited degree.
Edit: reuploaded folia build due to a mistake with chatcolor translation.
- Download notes:**
For Paper 1.12.2 - 1.19.4, use the **Legacy jar**