UploadedNov 8, 2020
Supported Bukkit Versions
Note: For 1.8 and 1.12 builds, visit github releases
Minor breaking changes
MobArena 0.105 includes a rework of how arenas and classes are referenced, both internally in the plugin, but also in permissions, commands, etc. Instead of the ambiguous and arbitrary "config names", MobArena now uses "slugs", which just means a
kebab-case version of a name. For example, the slug for an arena named "Castle of Doom" will be
castle-of-doom, and the slug for the implicit "My Items" class is
my-items. All commands that take arena or class names as arguments will tab complete slugs, so they should be fairly easy to figure out.
The goal of this change is to make the plugin more consistent about arena and class references in commands, permissions, etc., as well as to allow for multi-word names. Backwards compatibility has taken a backseat for the sake of maintainability and clarity, so certain adjustments may be necessary in some setups:
- Permissions: All permissions for arenas and classes must be changed to the new slug-based permission keys. For example, the permission for the "My Items" class is now
- Class signs: It may be necessary to recreate the signs for classes with multi-word names. The name on the sign should match the name in the config-file (or the slug). For example,
my-items) instead of
- Default classes: The per-arena setting
default-classmay need to be adjusted. The class name should match the name in the config-file (or the slug). For example, if the default class is "My Items", the value should be
- Custom integrations: Custom commands or integrations may need to be adjusted accordingly. If you're running a setup like that, you probably already know what you're doing and what you need to do. If not, hop on Discord.
- A new
readystate is now available for arena sign templates. Signs are in this state when all players in the lobby have readied up, but the arena has not yet started due to a start delay timer. Check the wiki for details.
- Arena signs now support dynamic list entry variables for 4 different player lists. As an example,
results in the name of a player in the lobby who hasn't readied up yet. This is useful for visualizing who is holding up the lobby. Check the wiki for details.
- Elytra are now supported chest pieces in class chests.
- Boss names now support color codes.
- New per-arena setting
arena-warp-offsetcan be used to spread out players randomly by an offset from the arena warp. This should help prevent players taking suffocation damage.
- New per-arena setting
announcer-typedetermines where to display per-arena announcements such as wave spawns, auto start timers, boss abilities, and death messages. Options are
- It is now possible to group rewards. For example,
all(stick, bone)results a stick and a bone, while
random(all(stick, bone), all(dirt, stone))results in getting either a stick and a bone or a dirt block and a stone block.
- The new
nothingkeyword can be used to not grant a reward. This can be used in a crude way to create "loot table"-style reward systems where there is a chance that something is reward, but it might also just be nothing.
- Boss rewards also support the
random()functions as well as the
- New command
/ma addrewardcan be used to add a reward to an arena player's reward list. This can be useful for hooking into the rewards system from scripts or other plugins.
/ma autogeneratecommands now supports multi-word arena names.
- The Root Target ability now uses potion effects (slowness, slow falling, and negative jump boost) instead of repeated teleports. This should make for a smoother root experience.
- Permissions for arenas and classes are now based on "slugs". It is now possible to configure permissions for arenas and classes with multi-word names (including "My Items"). Check the Permissions page on the wiki for details.
- Commands that resolve arena and/or class names now consistently resolve and tab complete "slugs" instead of arbitrarily "squashed" names. This greatly improves support for multi-word names.
- The class signs generated by the
/ma autogeneratecommand now use class names from the config-file instead of arbitrarily "squashed" names.
- Leaderboards now use arena and class names from the config-file instead of arbitrarily "prettified" names.
spectate-on-death: trueno longer forces players out to their join location/exit warp before moving them to the spectator area. This should prevent "jumpy" behavior in multi-world setups.
- Config-file errors imposed by incorrect usage of
/ma settingno longer cause "internal errors". Instead, the errors are properly communicated in the command output similar to how the
/ma reloadcommand works.
- Guardians and elder guardians no longer instantly retarget players when they break line of sight. This should make their behavior work a bit closer to vanilla.
- (API) MobArenaHandler now returns class name slugs in the
- Elytra and Netherite armor pieces now correctly auto-equip if specified in the generic
armornode in classes in the config-file.
- Players should now properly respawn at the spectator area rather than at world spawn on servers with plugins that override respawn locations.
- Config-files with missing
pet-itemsnodes no longer errors. A missing
global-settingsis treated as empty, i.e. no pet items will be registered.
player-time-in-arenasetting has been fixed.
soft-restoresetting has been fixed for blocks broken by players. Note that the functionality is still unreliable for non-trivial blocks.
- Items in class chests are now cloned before they are made unbreakable and given to players. This fixes an issue where setting
unbreakable-weapons: falsehad no effect on the items. Note that any affected items in existing class chests will need to be replaced.
- (1.8) Potions no longer turn into water bottles.
- The MagicSpells integration has been removed. This means that the extra
magicspells.ymlconfig-file (if it exists) no longer does anything and can be removed.