Skip to content

Conversation

@JasperLorelai
Copy link

Changelog:

Additions:

  • Added disable-slots to armorstand spell effect. Boolean, defaulting to true.
  • Added minion option to MinionSpell which accepts an Entity Data configuration section. Due to conflicts, if minion is used, baby has to be configured within it, not the spell option.
  • New Entity Data options:
    • armor_stand:
    • Nameable:
    • Entity:
      • custom-name-visible, no-physics, persistent, visual-fire, and invulnerable - Boolean
      • fire-ticks and freeze-ticks - Integer
      • scoreboard-tags - Aside from a list of strings of tags to add, you can now specify a list of configuration sections with operation (default add, remove, and clear), and tag to add or remove.
      • passengers - List of Entity Data
    • Living Entity:
      • can-pickup-items - Boolean
      • max-health - Double
    • Mob:
      • aware - Boolean
      • mob-goals:
    • Tameable:
      • tamed-owner - Boolean - sets the entity as tamed and the recipient as its owner (caster of the spell or target of a Buff).
    • command_minecart:
      • command - String
    • falling_block:
      • cancel-drop and hurt-entities - Boolean
      • damage-per-block - Float
      • max-damage - Integer
    • Frictional:
      • friction-state - true, false, or not_set
    • goat:
      • left-horn, right-horn, and screaming - Boolean
    • hoglin:
      • immune-to-zombification and able-to-be-hunted - Boolean
    • item:
    • Minecart:
      • max-speed - Double
      • slow-when-empty - Boolean
      • display-block-offset - Integer
      • display-block - Block Data
    • piglin:
      • able-to-hunt - Boolean
      • dancing - Integer ticks
    • Piglin Abstract:
      • immune-to-zombification - Boolean
    • Raider:
      • patrol-leader, can-join-raid, and celebrating - Boolean
    • salmon:
    • vindicator:
      • johnny - Boolean
    • zombie_villager:
  • Added .targeted.EntityDataApplySpell with entity Entity Data option. This spell applies the configured Entity Data to the targeted entity.
  • Added .targeted.EntityRemoveSpell, which removes non-player entity targets from the world without the death animation.

Changes:

  • Entity Data changes:
    • Spells and spell effect options no longer override the Entity Data configuration with their defaults (e.g. in SpawnEntitySpell, the gravity of Entity Data is overridden by the spell's gravity, whether set or left as default).
    • The armorstand spell effect options gravity and custom-name-visibility now support expressions.

Fixes:

  • Fixed a rounding issue with MultiSpell when using enable-custom-spell-cast-chance.
  • Fixed an issue with MinionSpell option mob-chances not properly accounting for weighted possibly total being > 100.
  • Fixed an issue with the path_to mob goal default speed being too slow.

Notes For Reviewers:

Entity "transformer" refers to any setter on a Bukkit entity. Here are the steps taken on spell/effect transformers regarding the Entity Data override fix for places where Entity Data is supported:

  • If the spell transformer should be hard-coded (e.g. spell effect entity permanence), or its default differs from Vanilla (e.g. SpawnEntitySpell's remove-mob should always have priority), it will keep priority over the one in Entity Data and be applied in the post-consumer.
  • If the Entity Data transformer is optional, the spell transformer is now set in the pre-consumer, so that Entity Data may optionally override it.
  • If the spell default aligns with Entity Data (Vanilla):
    • If it's read from the same config path, it was safely removed as a duplicate (e.g. silent and ai in entity spell effect).
    • If the Entity Data one is not optional, the spell option has been deprecated to avoid conflicts (conflict only happens with baby in MinionSpell if entity Entity Data is used).

- "disable-slots" (bool) - to EntityData and "armorstand" spell effect where it's "true" by default
- "disable-slots" (EquipmentSlot enum list)
- "equipment-locks" (list of sections with EquipmentSlot "slot" and ArmorStand.LockType "lock")
Other changes:
- Added "custom-name" & "custom-name-visibility".
- "armorstand" effect options "gravity" and "custom-name-visibility" (now in EntityData) now have expression support.
@JasperLorelai
Copy link
Author

Split to #1055 and #1056.

@JasperLorelai JasperLorelai deleted the entity-data branch October 9, 2025 17:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant