Changelog
[2.5.7] - Ranged/Melee Switching Overhaul
Full source available at github.com/Khotyz/BuffMobs
🗡️ Ranged/Melee Switching — Fixed & Reworked
The ranged/melee switching system has been completely overhauled. Skeletons, Strays, Piglins, and Pillagers will now properly switch to a melee weapon when you get close, fight you in melee, and switch back to their ranged weapon when you back away.
What was broken:
- Mobs would enter melee mode but never actually attack
- The goal injection system silently failed on startup, meaning the melee AI was never active
- Switching back to ranged mode sometimes gave the mob the wrong weapon
What changed:
- Rebuilt the AI goal injection using reliable reflection — the system now logs clearly on startup whether it initialized successfully or not
- Melee mode now correctly sets the player as the mob's target and drives them toward you
- Switching back to ranged mode always restores the mob's original weapon (bow or crossbow) correctly
- Wither Skeletons removed from the ranged mob list — they are melee-only by nature and were causing erratic behavior
- The cleanup on mob unload now also removes the injected melee goal, preventing ghost AI goals from persisting
⚔️ Weapon Progression — Fixed
Melee weapon tiers (Stone → Iron → Diamond → Netherite) are now unlocked based on the actual world day, regardless of whether Day Scaling is enabled in the config. Previously, weapon tiers were calculated from the day scaling multiplier, which meant all tiers above Stone Sword were locked forever when Day Scaling was turned off.
🔧 Other Improvements
- Enchantment level progression now also uses real world days instead of the scaling multiplier
- Enchantment count scaling thresholds adjusted to be relative to the configured day interval, making them consistent across different scaling setups
Files
buffmobs-2.5.7.jar(85.55 KiB) Primary Download
External resources
Featured versions
See allProject members

Khotyz
Owner
Technical information
License
MIT
Client side
optional
Server side
required
Project ID

