Skip to content

Bosses bosses

The bosses feature provides highly configurable boss fights for a server to host automatically, or spawned via item.

Config

The bosses config is very complex, so many examples will be used.
Starting out, all the simple config options will be listed. Then boss configuration will be explained.

limit-auto-boss-spawns

Limits auto-spawning bosses to a single boss. This will prevent auto-spawned bosses from stacking up.

attack-frequency

How often, in ticks, a boss will try to attack. This is only the default value, you can override this at the boss and phase level as well.

only-allow-in-warzone

If boss spawn items should only be allowed in areas claimed by warzone.


auto-spawn-task Section

This section controls auto-spawning bosses.

auto-spawn-task.enabled

If the auto spawn task should be enabled.

auto-spawn-task.schedule-timezone

The timezone to use for the timestamps.

auto-spawn-task.schedule

This is a list of the times during the day a boss will spawn.
The entries should be formatted as follows:

HH:MM:boss-id[:x:y:z:world]

The HH is the hour of the day. MM is the minute of the hour. The section encased in [] is optional.

auto-spawn-task.spawn-location

This is the location that auto-spawned bosses will spawn by default.

auto-spawn-task.warmup

These messages, keyed by the minutes til spawn, will send to the entire server.


Configuring Bosses

Each boss is defined by its config section. There is a lot of configurability when creating bosses, so be prepared!

Let's start off with the default boss:

    ice-zombie:
      name: '&b&lICE ZOMBIE'
      entity-type: ZOMBIE
      kb-resistance: 0.9
      movement-speed: 1.5
      base-damage: 100.0
      attack-frequency: 50 # This overrides the global value.
      on-spawn-commands:
        - 'broadcast &aThe {ICE_ZOMBIE} &aboss has spawned!'
      on-death-commands:
        - 'broadcast &aThe {ICE_ZOMBIE} &aboss has been defeated!'
      hologram-lines:
        - '{BOSS_NAME}'
        - '&8[{HEALTH_BAR}&8]'
      entity-equipment:
        boots:
          type: LEATHER_BOOTS
          color: "33FFFF"
        leggings:
          type: LEATHER_LEGGINGS
          color: "33FFFF"
        chestplate:
          type: LEATHER_CHESTPLATE
          color: "33FFFF"
        helmet:
          type: SKULL_ITEM
          damage: 3
          skull-url: "56aab58fa01fce9af469ed747aed811d7ba18c476f5a7f9088e129c31b45f3"
        hand:
          chance-to-drop: 10.0
          type: DIAMOND_SWORD
          name: '&b&lIce Zombie''s Shank'
          lore:
            - '&7Obtained by fighting the ice-zombie!'
          enchants:
            DAMAGE_ALL: 6
            DURABILITY: 10
            LOOT_BONUS_MOBS: 5
      player-spawn-message:
        - ''
        - '&c{PLAYER} has unleashed the {BOSS_NAME}&c in the warzone at &e{LOCATION}&c!'
        - '&cGo there to help them fight it!'
        - ''
      rewards:
        '1':
          - 'give {PLAYER} diamond'
        '2':
          - 'give {PLAYER} gold_ingot'
        '3':
          - 'give {PLAYER} iron_ingot'
        '4':
          - '10.0:give {PLAYER} iron_ingot'
      spawn-item:
        type: 'ROTTEN_FLESH'
        is-glowing: true
        name: '&b&lICE ZOMBIE ARM'
        lore:
          - '&fUse this ancient piece of rotting meat to summon the &b&lICE ZOMBIE&r&f!'
          - '&fDifficulty: &4EXTREME'
      health: 1000.0
      blacklisted-regions:
        - 'spawn'
        - 'outpost'
      whitelisted-regions:
        - 'warzone'
      whitelisted-worlds:
        - 'world'
      phases:
        '1':
          start-at: 1000.0
          end-at: 666.0
          immunities:
            arrow: false
            physical: false
          attacks:
            THROW:
              chance: 50
            EXPLOSIVE_SHOT:
              chance: 100
              amount-shot: 20
        '2':
          start-at: 666.0
          end-at: 333.0
          attack-frequency: 25 # You can also override it here, too!
          immunities:
            arrow: true
            physical: false
          attacks:
            GROUND_POUND:
              damage: 15.0
              chance: 50
            MINION_SPAWN:
              type-spawned: ZOMBIE
              is-baby: true
              amount-spawned: 4
              spawned-health: 150.0
              spawned-damage: 10.0
              chance: 25
        '3':
          start-at: 333.0
          end-at: 0.0
          immunities:
            arrow: true
            physical: false
          attacks:
            THROW:
              chance: 50
            GROUND_POUND:
              damage: 15.0
              chance: 75
This is a lot to handle, so it'll be split up by section.
First, let's look at the basics of configuring bosses.

name

The display name of the boss.

on-spawn-commands

These commands will be run when the boss spawns.

on-death-commands

These commands will be run when the boss dies.

hologram-lines

This is an optional setting. If you add this option, it will remove the boss' display name and use this instead.

You can use the following placeholders for this setting. * {BOSS_NAME} The name of the boss * {HEALTH_BAR} A health bar for the boss * {MAX_HEALTH} The maximum health of the boss * {HEALTH} The current health of the boss

entity-type

The type of entity to use as the base of the boss.

Note

Note, in older versions if you'd like to use wither skeletons or elder guardians you'll have to specify is-wither: true or is-elder: true respectively.

kb-resistance

The numerical knockback resistance of the base entity.

movement-speed

The movement speed of the base entity.

attack-frequency

The overridden attack frequency of the boss.

base-damage

The damage of the base entity without weapons.

entity-equipment

Allows you to specify the helmet, chestplate, leggings, boots, and hand of the boss' equipment.

rewards

The rewards to give of the top damagers of the boss. The sub-keys of this section are the numerical places of the players.

spawn-item

The item that is used to spawn the boss.

health

The health of the boss.

blacklisted-regions

Prevents this boss from being spawned in any of the listed WorldGuard regions.

whitelisted-regions

If any regions are listed, this boss may only be spawned in them.

whitelisted-worlds

If any worlds are listed, this boss may only be spawned in them.

run-for-raided-when-starting

These commands will run when the


Phases

Bosses are programmed to go through 'phases'. Each phase is defined by a range of health and set of attacks the boss can do.

          start-at: 1000.0
          end-at: 666.0
          base-damage: 100
          kb-resistance: 0.3
          movement-speed: 0.2
          attack-frequency: 25
          immunities:
            arrow: false
            physical: false
          attacks:
            THROW:
              chance: 50
              velocity: 3
            EXPLOSIVE_SHOT:
              chance: 100
              amount-shot: 20

The start-at and end-at values define the health range the boss needs to be in to be considered in that phase.

The immunities section defines the base immunities of the boss, that being arrows (ranged) and physical (melee).

Along with these, you can redefine the base-damage, kb-resistance, attack-frequency, and movement-speed attributes in each phase.

Attacks

Along with the basic parts of phases, there must be a definition of attacks for the bosses. These are like 'special abilities' the boss can use. Here are the types available.
* TRHOW * GROUND_POUND * EXPLOSIVE_SHOT * MINION_SPAWN * FIREBALL_FRENZY * TIME_WARP * FLURRY_OF_PUNCHES * POTION_SPLASH

Each attack must have a chance specified. This is the chance of the attack happening in refernce to the other attacks.

THROW

The boss will throw all nearby players upward very high. Specify the velocity via velocity.

GROUND_POUND

Similar to throw, but doesn't throw as high and damages the player directly. Set the damage done to players via damage.

EXPLOSIVE_SHOT

Shoots off arrows in all directions that do explosive damage when they land. They do not destroy blocks. Set the amount of arrows via amount-shot. Set each arrow's damage via damage.

MINION_SPAWN

The boss will spawn minions all around itself. While these minions are alive, the boss cannot be damaged. Set the amount of minions via amount-spawned. Set the type of entity via type-spawned. Set the display name of the minion via display-name. Set the health and damage via spawned-health and spawned-damage. You can specify things like is-baby, is-elder, is-wither, and slime-size for each respective entity.

FIREBALL_FRENZY

The boss will shoot out fireballs toward nearby players. Set the amount of fireballs via amount-shot. Set the damage of each fireball via damage.

TIME_WARP

Reverses time for all players around the boss. This includes their health and positions. Set the amount of ticks reversed via time-reversed.

FLURRY_OF_PUNCHES

The boss will attack the player in rapid succession dealing damage and knocking the player back. Set the amount of punches via punches. Set the amount of damage per punch via damage.

POTION_SPLASH

The boss shoots out splash potions around toward nearby players. These potions don't affect the boss. Set the amount of potions via thrown.
Setting the types of potions that can be thrown has to be done through the possible-effects.

possible-effects:
  - '16428' #Splash instant damage 2

Note

These are the IDs of the splash potions. Meaning they will most likely not work on versions newer than 1.12.

Command

  • /bosses give (Player) (Type) [amount=1] - Gives a player a spawn item for the given boss.
  • /bosses spawn (type) - Spawns a boss at the player's (sender's) location.
  • /bosses spawnat (type) (world) (x) (y) (z) - Spawns a boss at the given location.
  • /bosses clear - Clears all active bosses.

Permissions

  • Base Level - Nothing.
  • Admin Level - Some commands.