- Improve | Better compatibility with Paper 26.1
- Fix | Solved "IllegalArgumentException: data (class [I) should be class java.lang.Void" when spawning particles on Paper 26.1+
- Fix | Fixed block scanning and region methods not handling negative Y on MC 1.18+
- New | Compatible with Minecraft 26.1
- New | Added
Projectile_Launchscan trigger — scans splash/lingering potions and tipped arrows when thrown. Configurable insettings.ymlunderScan.Projectile_Launch- New | Added per-player scan cooldown to prevent lag from high-frequency events. Configurable in
settings.ymlunderScan.Cooldown(default: 5 seconds)- Fix |
then nerfnow properly works withcheck enchant not-applicable— removes enchantments that cannot apply to the item- Fix | Solved
\nin commands kicking players on Minecraft 26.1
- Fix | Solved "NoSuchMethodError: 'java.lang.String net.kyori.adventure.text.minimessage.MiniMessage.stripTags(java.lang.String)'" on servers with older MiniMessage
- Improve | Improved internal crash reporting — only report errors on the latest plugin version
- Improve | Menu titles are no longer truncated to 30 characters on 1.9+
- Fix | Solved "ParsingExceptionImpl: Legacy formatting codes have been detected in a MiniMessage string" crash when text contains domain-like patterns combined with legacy color codes
- Fix | No longer auto-report ClassNotFoundException for Citizens and DiscordSRV plugin hooks as crash reports. Now shown as a warning message instead
- Improve | Replace Sentry error reporting with a self-hosted crash reporter. The
Sentrykey in settings.yml is nowError_Auto_Reporting- Fix | Solved paginated commands (e.g. /protect logs) showing mixed output with other Foundation-based plugins when used together
- New | Added
ignore componentoperator for scan rules. Whitelist components thatcheck illegal componentsandthen strip-componentsshould skip. Example:ignore component enchantments|repair_cost|custom_name|lore. See Wiki > Rules page.- New | Support any data component name dynamically with
check illegalandthen strip-. Use dashes instead of underscores, e.g.check illegal attack-range,then strip-blocks-attacks. All 75+ Minecraft data components now supported.- Fix | Fixed
then strip-componentsnot actually removing non-vanilla components from items (catch-all strip body was empty).
- New | Added 10 component check operators to detect hacked item components (1.21+). Each compares the item against a fresh vanilla version of the same material:
check hide-tooltip— items with hidden tooltip displaycheck illegal food— non-food items given a food componentcheck illegal consumable— items with custom consumable effects (potion effects on eat, teleport, etc.)check illegal equippable— items equippable in wrong slots (e.g. pickaxe as helmet)check illegal rarity— items with non-vanilla raritycheck illegal death-protection— items with hacked death protection effectscheck illegal damage-resistant— items with non-vanilla damage resistancecheck illegal tool— items with non-vanilla tool componentcheck enchantment-glint-override— items with forced glint overridecheck illegal components— catch-all: any component the vanilla item doesn't have- New | Added 10 matching strip operators to remove illegal components:
then strip-hide-tooltip,then strip-food,then strip-consumable,then strip-equippable,then strip-rarity,then strip-death-protection,then strip-damage-resistant,then strip-tool,then strip-enchantment-glintthen strip-components— strips ALL non-vanilla components at once- Improve | Vanilla component keys are cached per material for fast repeated checks during scans
- Improve | Added commented-out example rules in
rules/main.rsfor all new component operators. See docs for full documentation.
