| ... | ... | @@ -397,289 +397,14 @@ Bug Fixes / Other |
|
|
|
- Fixed metadata deep clone not cloning targets by value
|
|
|
|
- Fixed console spam about magic values
|
|
|
|
|
|
|
|
# 5.8.0
|
|
|
|
|
|
|
|
**`Note: This update includes various optimizations, new mechanics, improvements, bug fixes, and additional API features. Please report any issues you find by opening an Issue or letting us know in the appropriate Discord channel.`**
|
|
|
|
|
|
|
|
General
|
|
|
|
-------
|
|
|
|
- Added 1.21.3 and 1.21.4 support
|
|
|
|
- Lots of micro-optimizations for performance (thank you, Taiyou!)
|
|
|
|
- Added `Configuration.General.AnnounceOpReload` to `config-general.yml` to set whether Mythic reload announcements are sent to all online operators.
|
|
|
|
- Optimized various projectile/entity selection mechanics and removed stream usage in key areas (e.g., `IEntitySelector`, `PacketEntityRenderer`).
|
|
|
|
- Added a global option to automatically apply FancyDrops to all items (disabled by default).
|
|
|
|
- Added `/mm m spawn [type] [amount] @targeter` command.
|
|
|
|
|
|
|
|
Random Spawning
|
|
|
|
---------------
|
|
|
|
- **Multiple Mobs with Weights**: You can now specify multiple mobs in a Random Spawner entry with weighted values, for example:
|
|
|
|
```yaml
|
|
|
|
Deeps:
|
|
|
|
Types:
|
|
|
|
- RegularZombie 100
|
|
|
|
- BigZombie 50
|
|
|
|
- GiantZombie 5
|
|
|
|
Worlds: world
|
|
|
|
Chance: 0.1
|
|
|
|
Priority: 1
|
|
|
|
Action: ADD
|
|
|
|
PositionType: LAND
|
|
|
|
```
|
|
|
|
- **Structures Support**: Added a `Structures:` list option allowing you to limit a Random Spawner to spawn mobs only in specific structures:
|
|
|
|
```yaml
|
|
|
|
Nether_Fortress:
|
|
|
|
Types:
|
|
|
|
- blaze_wisp 100
|
|
|
|
Worlds: world_nether
|
|
|
|
Chance: 0.02
|
|
|
|
Priority: 1
|
|
|
|
Action: ADD
|
|
|
|
PositionType: LAND
|
|
|
|
Structures:
|
|
|
|
- 'minecraft:fortress'
|
|
|
|
- 'incendium:forbidden_castle'
|
|
|
|
```
|
|
|
|
- **New Config Options**:
|
|
|
|
- `RandomSpawning.MaxGenerationAttempts` to limit how many attempts the cluster generator tries when spawning.
|
|
|
|
- `RandomSpawning.LocalSpawningLimit` and a new `MaxLocalMobs` option on individual Random Spawners to override local limits.
|
|
|
|
- **Renamed**: The old `GroupMultiplier` option is now `LocalGroupMultiplier` in `config-spawning.yml`, and its default value logic has changed.
|
|
|
|
- Various improvements to cluster generation and structure detection logic.
|
|
|
|
|
|
|
|
Mobs
|
|
|
|
----
|
|
|
|
- Streamlined variant options to `Options.Variant` for wolves, cats, frogs, villagers, etc., allowing for custom variants.
|
|
|
|
- Added ability to configure **custom mob spawner items**, including the ability to set spawn delay, spawn range, etc.
|
|
|
|
- Added Wolf-specific `Options.Variant` for custom wolf variants.
|
|
|
|
|
|
|
|
Mechanics
|
|
|
|
---------
|
|
|
|
|
|
|
|
### `NEW: followPath`
|
|
|
|
- An aura causing the target mob to walk along a defined path.
|
|
|
|
|
|
|
|
### `NEW: log`
|
|
|
|
- `log{message="Debug to console with variables <caster.var.test>"}` for simple logging.
|
|
|
|
|
|
|
|
### `NEW: setTextDisplay`
|
|
|
|
- `setTextDisplay{text="text here"} @Target` mechanic for displaying text.
|
|
|
|
|
|
|
|
### `NEW: openTrades`
|
|
|
|
- Opens a merchant menu for the targeted player.
|
|
|
|
- `realTrade/real` attribute determines if trades are with a real villager.
|
|
|
|
|
|
|
|
### `NEW: movePin`
|
|
|
|
- `movePin{pin=X}` mechanic to relocate pins.
|
|
|
|
|
|
|
|
### `NEW: directionalVelocity`
|
|
|
|
- `directionalVelocity{yaw=50}` applies velocity to the target based on specified angles.
|
|
|
|
|
|
|
|
### `NEW: rotateTowards`
|
|
|
|
- Rotates the caster toward the target.
|
|
|
|
|
|
|
|
### `NEW: setChunkForceLoaded`
|
|
|
|
- Force-loads a chunk at the target location.
|
|
|
|
|
|
|
|
### `NEW: resetAI`
|
|
|
|
- Reverts a mob’s AI to factory defaults.
|
|
|
|
|
|
|
|
### `NEW: matchRotation`
|
|
|
|
- `matchRotation{of=@targeter}` to match rotation of a given target.
|
|
|
|
|
|
|
|
### `NEW: clearExperience`
|
|
|
|
- Resets a player's experience points.
|
|
|
|
|
|
|
|
### `NEW: setProjectileDirection`
|
|
|
|
- `setProjectileDirection{magnitude=1}` for controlling projectile direction.
|
|
|
|
|
|
|
|
### `NEW: lookAtTarget`
|
|
|
|
- An AI goal causing a mob to look at its current target.
|
|
|
|
|
|
|
|
### `UPDATED: dropItem`
|
|
|
|
- Now includes a `then=` skill section targeting dropped items.
|
|
|
|
|
|
|
|
### `UPDATED: setSpeed`
|
|
|
|
- Respects the configured movement speed; defaults to mob's base if none is set.
|
|
|
|
|
|
|
|
### `UPDATED: consumeSlotItem`
|
|
|
|
- Properly removes items with `0` amount.
|
|
|
|
|
|
|
|
### `UPDATED: shoot`
|
|
|
|
- Now supports `item=<material>` for custom projectiles (e.g., `item=REDSTONE`).
|
|
|
|
|
|
|
|
### `UPDATED: particleOrbital`
|
|
|
|
- Terminates after the caster dies/despawns and supports placeholders for `ticks`.
|
|
|
|
|
|
|
|
### `recoil`
|
|
|
|
- Fixed recoil on 1.21+; placeholders can be used in recoil values.
|
|
|
|
|
|
|
|
Conditions
|
|
|
|
----------
|
|
|
|
|
|
|
|
### `NEW: boundingBoxesOverlap`
|
|
|
|
- Checks if bounding boxes overlap.
|
|
|
|
|
|
|
|
### `NEW: distanceFromPin`
|
|
|
|
- `distanceFromPin{pin=X;distance=<5}` condition.
|
|
|
|
|
|
|
|
### `NEW: distanceFromLocation`
|
|
|
|
- `distanceFromLocation{x=...;y=...;z=...;distance=...;world=...}` condition.
|
|
|
|
|
|
|
|
### `NEW: PlaceholderBoolean`
|
|
|
|
- True if a variable is 'true' or '1', otherwise false.
|
|
|
|
|
|
|
|
### `NEW: originDistanceFromPin`
|
|
|
|
- Checks distance from a specific pinned location.
|
|
|
|
|
|
|
|
### `NEW: stringEmpty / stringNotEmpty`
|
|
|
|
- Checks if a string is empty or not.
|
|
|
|
|
|
|
|
### `lookAt`
|
|
|
|
- Now has `distance`/`d` attribute (defaults to 5) to check if a mob is looking at a target within that distance.
|
|
|
|
|
|
|
|
Targeters
|
|
|
|
---------
|
|
|
|
|
|
|
|
### `NEW: @BlocksInPinRegion`
|
|
|
|
- Targets blocks within a pin-defined region.
|
|
|
|
|
|
|
|
### `NEW: @HighestBlock`
|
|
|
|
- Targets the highest block at the origin position.
|
|
|
|
|
|
|
|
### `NEW: @TrackedPlayers`
|
|
|
|
- Targets players currently rendering or tracking the mob.
|
|
|
|
|
|
|
|
### `NEW: @ChunksinWERegion`
|
|
|
|
- `@ChunksinWERegion{region=X}` targeter.
|
|
|
|
|
|
|
|
### `NEW: @PNO`
|
|
|
|
- Alias for `PlayersNearOrigin`.
|
|
|
|
|
|
|
|
### `NEW: @OwnerLocation`
|
|
|
|
- Targets the owner location of a tamed entity.
|
|
|
|
|
|
|
|
### `NEW: @ParentLocation`
|
|
|
|
- Targets the parent location.
|
|
|
|
|
|
|
|
### `NEW: @WolfOwner`
|
|
|
|
- Re-added targeter that selects the owner of a tamed wolf.
|
|
|
|
|
|
|
|
### `skipTargetsUpToIndex`
|
|
|
|
- Lets targeters skip the first N matched targets.
|
|
|
|
|
|
|
|
### `@ObstructingBlock`
|
|
|
|
- Rewritten for better performance.
|
|
|
|
|
|
|
|
### `mobsInRadius`
|
|
|
|
- Now properly detects vanilla mob types.### Placeholders
|
|
|
|
- Added rounding support to `random.float` placeholder with syntax `<random.float.1to5{round=2}>`.
|
|
|
|
- Added new math functions: `todegree(value)`, `toradian(value)`, and `clamp(value,min,max)`.
|
|
|
|
- **NEW:** `caster.attack_cooldown` placeholder for vanilla swing cooldown.
|
|
|
|
|
|
|
|
Items
|
|
|
|
-----
|
|
|
|
- Added `Options.Glint: true` to add the enchantment glint effect.
|
|
|
|
- Added Mythic color picker for customizing color-related item properties.
|
|
|
|
- Added `vfxmodel/vfxitemmodel` support for Fancy Drops using 1.21.3+ item models.
|
|
|
|
- Added `namespace:enchant_name` support in the `Enchantments` option.
|
|
|
|
- Added `strict=true` to all item conditions/mechanics to prevent matching Mythic items with vanilla items.
|
|
|
|
- Extended `Equippable` component to support additional fields.
|
|
|
|
- Added `#tag` and `*wildcard` support to `itemType` condition.
|
|
|
|
- Added `Tool` and `UseCooldown` sub-components for more item customization.
|
|
|
|
- Reordered item components so `TooltipStyle` loads last.
|
|
|
|
|
|
|
|
### NEW: `TooltipStyle` component for advanced item tooltips.
|
|
|
|
### NEW: `Consumable` component:
|
|
|
|
```yaml
|
|
|
|
Item:
|
|
|
|
Consumable:
|
|
|
|
ConsumeSeconds: 5
|
|
|
|
HasParticles: true
|
|
|
|
Animation: SPEAR
|
|
|
|
Sound: entity.chicken.egg
|
|
|
|
```
|
|
|
|
|
|
|
|
### NEW: `Food` Component
|
|
|
|
- Added Food components for items, enabling the creation of edible items:
|
|
|
|
```yaml
|
|
|
|
NetheritePops:
|
|
|
|
Material: NETHERITE_SCRAP
|
|
|
|
Display: 'Delicious Scraps'
|
|
|
|
Food:
|
|
|
|
Nutrition: 2
|
|
|
|
Saturation: 2
|
|
|
|
EatSeconds: 2
|
|
|
|
CanAlwaysEat: true
|
|
|
|
Effects:
|
|
|
|
- regeneration{duration=60}```
|
|
|
|
|
|
|
|
Stats
|
|
|
|
-----
|
|
|
|
- Added new Mythic Stats for the latest Minecraft attributes:
|
|
|
|
- `STEP_HEIGHT`
|
|
|
|
- `ARMOR`
|
|
|
|
- `ARMOR_TOUGHNESS`
|
|
|
|
- `BURNING_TIME`
|
|
|
|
- `EXPLOSION_KNOCKBACK_RESISTANCE`
|
|
|
|
- `FALL_DAMAGE_MULTIPLIER`
|
|
|
|
- `GRAVITY`
|
|
|
|
- `JUMP_STRENGTH`
|
|
|
|
- `KNOCKBACK_RESISTANCE`
|
|
|
|
- `MOVEMENT_EFFICIENCY`
|
|
|
|
- `OXYGEN_BONUS`
|
|
|
|
- `SAFE_FALL_DISTANCE`
|
|
|
|
- `SNEAKING_SPEED`
|
|
|
|
- `WATER_MOVEMENT_EFFICIENCY`
|
|
|
|
|
|
|
|
API
|
|
|
|
---
|
|
|
|
- Refactored `EquipSlots` to allow for custom slots.
|
|
|
|
- Added API methods for dumping item component data (e.g., `DropTable.usesWeights()`, `DropTable.GetDrops()`).
|
|
|
|
|
|
|
|
- Added API condition type `ISkillMetaLocationComparisonCondition`.
|
|
|
|
- Enhanced item matching with `BukkitItemMatcher`.
|
|
|
|
- Exposed more plugin triggers and event calls for custom expansions.
|
|
|
|
|
|
|
|
## Bug Fixes & Optimizations
|
|
|
|
- Pre-generate and store default mob attributes for faster performance on spawn.
|
|
|
|
- Improved world checking to fix some concurrency issues.
|
|
|
|
- Improved rounding with placeholders.
|
|
|
|
- Fixed random spawning mobs occasionally spawning in walls or negative coordinates.
|
|
|
|
- Fixed plugin failing to load on older versions when building for new.
|
|
|
|
- Fixed NPE with placeholder doubles in certain situations.
|
|
|
|
- Fixed `onPrime` trigger for creepers.
|
|
|
|
- Fixed custom blocks not working as mob totem heads.
|
|
|
|
- Particle effects no longer limited by Spigot’s default view range incorrectly.
|
|
|
|
- Fixed `force=true` option with `look` mechanic.
|
|
|
|
- Fixed negative gravity on projectiles.
|
|
|
|
- Fixed recoil on 1.21+.
|
|
|
|
- Fixed spawners not saving correctly and reversed logic in `Spawners.DisableCommandSaving`.
|
|
|
|
- Fixed `onDamaged` aura not triggering with skill damage.
|
|
|
|
- Fixed `consumeSlotItem` failing with item amounts of `0`.
|
|
|
|
- Fixed default potion level being `2` instead of `1`.
|
|
|
|
- Fixed fireworks color loading with `RBG` instead of `RGB`.
|
|
|
|
- Fixed `teleport{unsafe=false}` not placing players properly on a solid block.
|
|
|
|
- Fixed `hasItem`, `holding`, and other item conditions to support new item matcher.
|
|
|
|
- Fixed health regen stat incorrectly healing dead players.
|
|
|
|
- Fixed MythicDamageEvent for entities that cannot be damaged (canceled properly).
|
|
|
|
- Fixed `mobsInRadius` failing with certain vanilla types.
|
|
|
|
- Fixed spawner items not applying correct mob data.
|
|
|
|
- Fixed sub-hitbox metadata manipulations causing stack overflow.
|
|
|
|
- Fixed `spin` effect so it stops if caster is dead.
|
|
|
|
- Fixed IllegalArgumentException in `EnderBeam` mechanic.
|
|
|
|
- Fixed `setDisplayEntityItem` mechanic not working properly with Crucible-generated items.
|
|
|
|
- Fixed item display interpolation/rotation issues.
|
|
|
|
- Fixed mobs without `MovementSpeed` becoming stuck when using the `setSpeed` mechanic.
|
|
|
|
- Fixed `setSpeed` mechanic to now base multiplier on the mob type’s default speed if no config value.
|
|
|
|
- Fixed `chicken jockey` option not working.
|
|
|
|
- Fixed various boat types being broken on 1.21.4.
|
|
|
|
- Many additional concurrency and caching fixes (faster item lookups, distanceSquared, etc.).
|
|
|
|
|
|
|
|
This release includes many new features, bug fixes, and optimizations. If you encounter any issues or unexpected behavior, please report them in the appropriate channels!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Older Changelogs
|
|
|
|
================
|
|
|
|
- [5.10.X Changelogs](/changelogs/5.10.x_changelogs)
|
|
|
|
- [5.9.X Changelogs](/changelogs/5.9.x_changelogs)
|
|
|
|
- [5.8.X Changelogs](/changelogs/5.8.x_changelogs)
|
|
|
|
- [5.7.X Changelogs](/changelogs/5.7.x_changelogs)
|
|
|
|
- [5.6.X Changelogs](/changelogs/5.6.x_changelogs)
|
|
|
|
- [5.5.X Changelogs](/changelogs/5.5.x_changelogs)
|
| ... | ... | |