
EliteMobs
Minidungeons, Arenas, Bosses, Custom Loot, Quests, MMORPG progression & more!
50.0K
106
Список изменений
EliteMobs 10.3.0:
- [New] Cross-plugin LocationOwnership API — EliteMobs now registers itself with MagmaCore's LocationOwnership service, so any plugin shading MagmaCore (FMM, MegaBlockSurvivors, BetterStructures, …) can call em.location.owned_by(loc, "EliteMobs"), .owners(loc), .is_protected(loc), .kinds_at(loc), .has_kind(loc, "open_world_dungeon") from a Lua script and get a correct answer regardless of which classloader hosts the script. Kind tags include "elitemobs", "world_package", "open_world_dungeon" (for WorldDungeonPackage), and the dungeon size category name. Older FMM jars (pre-2.4.0 LocationAPI) still get the legacy direct-registry bridge via NoClassDefFoundError fallback.
- [New] Broken elite weapons now block melee damage too, not just bow shots — an elite spear/sword/axe/scythe at last durability cancels EntityDamageByEntityEvent (ENTITY_ATTACK / ENTITY_SWEEP_ATTACK) the same way bows already cancel EntityShootBowEvent. Players see a configurable subtitle ("brokenItemSubtitleWarning" in ItemSettings.yml, default "&cYour weapon is broken!") so it's clear why their hits stopped landing instead of feeling like a silent bug.
- [New] DROPPABLE item type — adds a third option alongside CUSTOM and UNIQUE for items that should enter the random elite drop pool (like CUSTOM) but never appear in shops (like UNIQUE). Useful for items that should feel earned without being locked to a specific boss's drop table.
- [Fix] Armor attribute per-slot dedup on MC 1.21+ — attribute modifiers dedupe by NamespacedKey alone (slot is not part of the dedup key), so all four armor pieces sharing the keys "elite_armor", "elite_toughness", "elite_knockback_resist" meant only one piece's modifiers actually applied. Each slot now gets a "_head"/"_chest"/"_legs"/"_feet" suffix so all four armor pieces stack their stats correctly.
- [Fix] Loud admin warning when a player takes WORLD_BORDER damage inside an EM dungeon instance — the symptom is "dungeon closes the moment players walk in" because the border tick deals lethal damage which cascades into removePlayer → defeat → removeInstance. Almost always means the dungeon's blueprint world is missing its world-border data, or the border didn't carry over when the world was cloned (on Paper 1.21.6+ the border lives in its own file inside the dimension data folder, easy to miss).
- [Fix] ScriptZone now cancels its listener task when a shape's center loses its world (e.g. a referenced entity got despawned mid-tick) — previously filterByElite/Player/Living would log "World is null" once per shape per tick forever and the script kept ticking with no work to do.
- [Fix] VersionChecker / Nightbreak content access prefetch now bail fast on plugin shutdown — onDisable previously had to wait for in-flight HTTP timeouts (up to 10s each, potentially across many packages) and Bukkit would nag about async tasks not properly shutting down. Every loop iteration and HTTP callback now checks MetadataHandler.shutdownRequested and returns immediately.
- [Fix] Wormholes no longer accumulate orphan line entities across the away-period — when no players are within the 30-block nearby radius the line visuals are now torn down via the new WormholeEntry.onNoNearbyPlayers() hook instead of silently lingering, and a fresh set is recreated when a player walks back.
- [Tweak] EliteItemManager.isOnLastDamage(ItemStack) is now a single public static API, replacing two private duplicates (one in AlternativeDurabilityLoss, one in PlayerItem).
Метаданные
Канал релиза
Release
Номер версии
10.3.0
Загрузчики
PaperPurpurSpigot
Версии игры
1.21.4–26.1.2
Загрузок
1.6K
Дата публикации
1 мес. назад

