
EcoMobs 10.20.0
Ultra-powerful and easy-to-use custom mobs made right in config
- Cleaned up contexts for config violations; instead of having a million brackets (i.e. 'Error for effect <id>, (inline chain) (args) (Effect send_message) (args)), it will be separated by an arrow (->) to be easier to read.
- Added truly-inline chains; a shorthand syntax to run multiple effects on a trigger without ever needing to worry about the run_chain_inline effect, or even what a chain is. Instead of specifying an effect ID, you specify a list of effects to be ran on the trigger. All chain features are supported (it is an inline chain, it's just simpler). Read more about it here: https://plugins.auxilor.io/effects/configuring-an-effect#shorthand-inline-chains
- Added not-met-effects to effect-specific conditions; a set of effects to be run when the trigger is activated but the conditions aren't met for that specific effect. Read more here: https://plugins.auxilor.io/effects/configuring-a-condition
- Added smite effect; like strike_lightning but damages a victim rather than a location; and you can specify the damage (and have it be silent)
- Fixed set_velocity and multiply_velocity effects not working correctly / not at all
- Removed broken fly_speed_multiplier effect; use movement_speed_multiplier and in_air instead.
- Added shorthand run_chain_inline; specify effects: [] instead of effects in a chain block..
- Added camelCase and nospaces to config getting; you can now specify parameters with underscore_separators, hyphen-separators, camelCaseSeparators, and unspacedseparators.
- Fixed persistent/serialized permanent effects causing issues on relog (e.g. AttributeModifier-based effects, like bonus_health, movement_speed_multiplier). Holders will now be purged on quit and all effects will be shut down.
- Added trigger_custom effect and a new custom trigger system; lets you have custom triggers based on filters, conditions, chains, cooldowns, whatever else.
- Added no_corners option to mine_radius_one_deep effect (finally!)
- Added teleport_to effect, like teleport except you specify an exact location
- Fixed player argument being incorrectly null for some BossDeathEvent/BossKillEvents
- Added consume_held_item effect, runs Player#updateEffects to be able to create consumable items to interact with other holders
- Fixed bug when enabling/disabling permanent effects in different orders than they were disabled/enabled in; this led to effects such as add_stat giving the wrong bonuses for some users with some configs.
- API: Effect#getUUID, Effect#getNamespacedKey, Player#getEffectAmount have been removed, and a new Identifiers parameter is passed to effects on enable / disable instead (A data class of a UUID and NamespacedKey to be used)
- Rewrote the entire effect scanning system (again), will be faster and more reliable now.
- Fixed arrow_ring effect ignoring the antigrief for nearby players
- Changed how effects detect trigger compatibility. (API) - Instead of supplying a Collection<Trigger> in the constructor, a () -> Collection<Trigger> is supplied instead. Triggers.withParameters returns () -> Collection<Trigger> now, and specifying all triggers uses Triggers.all() rather than Triggers.values(). Effect#applicableTriggers remains unchanged; however the named parameter in the effect constructor is now triggers rather than applicableTriggers.
This will fix issues with triggers being registered after effect constructor invocation but before effect compilation, for example the kill_boss trigger not working with give_points.
- Added rotate effect; spins you around a certain number of degrees