Commit Graph

1835 Commits

Author SHA1 Message Date
ff2b335af4 Handle Paper world-layout migration for region data
Fixes #5290
2026-06-01 15:56:15 -07:00
dcf0526ac8 update changelog 2026-05-31 10:06:17 -07:00
8e1b6deaa5 Fix melee attack strength scale after Paper fixed attack cooldown bug in 26.1.2
Paper 26.1.2 fixed a bug where the player attack cooldown ticker was not
resetting at the correct point during melee hits. mcMMO relied on the old
(incorrect) order, reading the cooldown during the damage event, which
always returned near-zero after Paper's fix. Attack strength scale is
now back-derived from the raw event damage divided by the player's
GENERIC_ATTACK_DAMAGE attribute value and clamped to [0.0, 1.0].

AttributeMapper now survives test environments where Bukkit registries
are absent (catch Throwable in the registry reflection path).

Fixes #5287.
2026-05-30 21:12:20 -07:00
c838a69e7e Rename underscore test method names to camelCase in WoodcuttingTest; clean up 2.2.053 changelog entries 2026-05-25 10:12:37 -07:00
8ff047d5a1 Fix KnockOnWood XP orbs never spawning on nether tree cap blocks during Tree Feller
Nether_Wart_Block and Warped_Wart_Block both have woodcutting XP in
experience.yml AND are in the treeFellerDestructibleWhiteList. The
drop routing in dropTreeFellerLootFromBlocks used an if/else-if
structure, so blocks with woodcutting XP always took the first branch
and never reached the else-if where the KnockOnWood orb logic lived.

Fix: extract the orb spawning block into a standalone if-check that
runs after the drop routing, so it fires for any isNonWoodPartOfTree
block regardless of whether it also has woodcutting XP.

Fixes #5288
2026-05-25 10:06:19 -07:00
e6c28b6fc8 remove dead locale keys that are not used anywhere 2026-05-14 14:31:21 -07:00
4098e415e3 use correct cow name for shake
fixes #5284
2026-05-14 13:40:02 -07:00
eaf8bffb63 Wire up Verdant Bounty triple drop passive for Herbalism 2026-05-11 18:48:38 -07:00
807b3e2999 Update Changelog.txt for block cracker whitelist fix 2026-05-11 18:24:27 -07:00
366a512b5f Fix incorrect Tricky Trials potion durations via UpgradeManager migration
Warriorrrr's commit (fb6aebcaa) corrected the default potions.yml shipped
with the plugin (splash: 2500->3600, lingering: 3000->900), but existing
server installs still had the old incorrect values.

This adds a one-time UpgradeManager migration (FIX_TRICKY_TRIALS_SPLASH_POTION_DURATIONS)
that auto-patches existing potions.yml on first server startup after updating.
The migration only corrects exact-match bad values; user-customized durations
are intentionally left untouched. Absent potion keys are silently skipped.

- Add UpgradeType.FIX_TRICKY_TRIALS_SPLASH_POTION_DURATIONS
- Implement PotionConfig.fixTrickyTrialsPotionDurations() + patchTrickyTrialsDurations()
- Gate migration in PotionConfig.loadPotions() via shouldUpgrade()
- Add 13 unit tests covering all migration paths in PotionConfigTest
2026-05-11 12:14:15 -07:00
ef6ddf0331 Bump api-version in plugin.yml from 1.13 to 1.20.5 2026-05-08 13:11:22 -07:00
11225a2f55 Fix Minecraft version detection failing on Spigot servers
The old regex required a trailing [-_] after the version digits, which worked
for getBukkitVersion() strings (e.g. '1.21.4-R0.1-SNAPSHOT') but silently
failed on Spigot's Bukkit.getVersion() format ('git-Spigot-12345-abcdef
(MC: 1.21.4)') since '1.21.4)' has no trailing dash or underscore. Version
resolved to 0.0.0, causing Tricky Trials potions (isAtLeast 1.21.0 check)
to be incorrectly skipped on every Spigot server.

MinecraftGameVersionFactory now uses two patterns:
- Primary: extracts from the '(MC: X.Y.Z)' segment that CraftBukkit always
  embeds in Bukkit.getVersion() — handles Spigot, old Paper, and Paper 26+
- Fallback: original regex for strings without '(MC: ...)' such as
  getBukkitVersion()-style strings

Tests updated with @Nested classes covering both paths, including explicit
Spigot format cases and Paper 26+ versioning (26.1.2-60-b4682bf format).
2026-05-07 20:01:38 -07:00
ce021dbe12 Fix Woodcutting/Excavation bonus drops bypassing BlockDropItemEvent
Woodcutting (Harvest Lumber, Clean Cuts) and Excavation treasure drops
previously spawned items directly via world.dropItem(), bypassing
BlockDropItemEvent entirely. This made them invisible to Telekinesis-style
enchant plugins (ExcellentEnchants, EcoEnchants, etc.).

Woodcutting fix: processBonusDropCheck() now calls BlockUtils.markDropsAsBonus()
for normal breaks, routing bonus drops through the existing BlockDropItemEvent
metadata pipeline. Tree Feller retains the direct-spawn path since it sets
blocks to AIR without firing BlockDropItemEvent.

Excavation fix: treasure rolls are now performed inside onBlockDropItemEvent()
via ExcavationManager.rollAndCollectTreasureDrops(). The returned ItemStacks
are spawned and injected into event.getItems(), exposing them to the full
Bukkit event pipeline. GigaDrillBreaker's 3x roll count is preserved. The
old processExcavationBonusesOnBlock(treasure, location) path is kept as a
deprecated fallback for external API callers.
2026-05-07 19:21:32 -07:00
b32c64b5ac Reorder changelog entry for URL bar removal 2026-05-06 18:43:27 -07:00
d4da897a34 Remove Patreon and language links from URL bar 2026-05-06 18:39:03 -07:00
1c88d3619f Add color support for JSON components
Fixes #5179 Fixes #5218
2026-05-06 18:34:02 -07:00
451ec158a5 Add missing key for graceful roll and some unit test coverage 2026-05-03 21:04:14 -07:00
dbae9c6bb8 Fixed a bunch of mob health display bugs
Fixes #5240 Fixes #5127 Fixes #3780 Fixes #5255
2026-05-03 18:18:01 -07:00
bd7ac8c655 fix smelting config bug Fixes #5140 2026-05-03 15:26:35 -07:00
bff2e079e8 update changelog 2026-05-03 13:23:20 -07:00
f6cc7c5a5e Fishing updated to work with offhand and not just main hand only
May address #5226
2026-04-28 13:54:55 -07:00
8602f4797e Use modern APIs for durability handling
May address #5167
2026-04-28 13:21:15 -07:00
cc70269cad update changelog 2026-04-28 13:18:03 -07:00
98ea089a3e fix WG crossbow interaction Fixes #5074 2026-04-27 21:11:51 -07:00
a5236446b4 Change mcMMO behavior around immature crop drops Fixes #5234 2026-04-27 15:59:51 -07:00
e51d72e5fd Fix bug with replanting Fixes #5253 2026-04-27 14:43:02 -07:00
6cb8daf254 Add more granular control for enchantments Fixes #5245 2026-04-27 13:51:29 -07:00
91d01c7e9e Expand config surface for newer skills Fixes #5275 2026-04-26 13:52:19 -07:00
fada487ac3 Fix Daze teleporting players after a world change or death Fixes #5191 2026-04-19 14:50:45 -07:00
017a1cd258 update changelog 2026-04-19 14:01:05 -07:00
0cccaea3e7 update changelog 2026-04-19 13:56:53 -07:00
6047a12ef4 Nerf Glow Lichen XP a bit 2026-04-19 13:34:42 -07:00
ebd2f902b6 Bounced arrows no longer have super long durations Fixes #5246 Fixes #5243 2026-04-19 13:33:51 -07:00
7afbed36db 2.2.050 2026-04-06 13:32:51 -07:00
99c2ec2959 changelog update again 2026-02-07 15:02:07 -08:00
3a7d605450 changelog update 2026-02-07 14:58:39 -08:00
c94f10568d refactor a bunch of unused, outdated, or unnecessary tech debt for compatibility for older versions that are no longer supported or were never supported 2026-02-07 14:54:25 -08:00
95026e6016 improved spears dmg detection and fixed more errors with Excellent Enchants 2026-01-31 11:20:35 -08:00
080d407c14 another fix for compatibility with Excellent Enchants 2026-01-27 13:03:50 -08:00
e24b5b0b75 2.2.049 2026-01-26 11:33:11 -08:00
8ac3198386 improved compatibility with Excellent Enchants 2026-01-26 11:23:45 -08:00
4c33f76404 update changelog 2026-01-25 12:22:45 -08:00
9c9e5313ca prevent item stack size from going outside normal bounds 2026-01-17 13:38:29 -08:00
c14b82fff1 updated notes 2026-01-17 13:31:05 -08:00
5a9390f88f allow combat abilities to activate with spear in off-hand 2026-01-17 13:27:14 -08:00
1036aabc32 2.2.048 hotfix for spear manager exception Fixes #5237 2025-12-14 16:35:54 -08:00
e2f18a9e89 2.2.047 hotfix for spears combat offhand oddities 2025-12-14 14:42:59 -08:00
694de2ff5f fix overlooked spears interaction with other melee skills 2025-12-14 14:36:41 -08:00
b15365e978 Spears update (#5236)
Spears update
2025-12-14 14:23:25 -08:00
2a8be52be5 back to snapshots 2025-11-08 13:57:14 -08:00