Gamemode Templates

Templates for gamemodes in BattleArena that can be drag-and-dropped into the arenas folder.

One in the Chamber

This is a gamemode that adds one in the chamber to BattleArena. This utilizes the One in the Chamber module which comes pre-installed with BattleArena.

Description

Arena Configuration

name: OITC
mode: Arena
aliases: [oic, oneinthechamber]
type: Match
team-options:
  named-teams: false
  team-size: 1
  team-amount: 2+
  team-selection: none
modules:
  - duels
  - one-in-the-chamber
  - scoreboards
lives:
  enabled: false
victory-conditions:
  highest-stat:
    stat-name: kills
    win-after: 20
  time-limit:
    time-limit: 5m
events:
  on-join:
    - store{types=all}
    - change-gamemode{gamemode=adventure}
    - flight{enabled=false}
    - teleport{location=waitroom}
  on-spectate:
    - store{types=all}
    - change-gamemode{gamemode=spectator}
    - flight{enabled=true}
    - teleport{location=spectator}
  on-leave:
    - restore{types=all}
    - remove-scoreboard
  on-death:
    - respawn
    - delay{ticks=1}
    - teleport{location=team_spawn;random=true}
options:
  - block-break{enabled=false}
  - block-place{enabled=false}
  - block-interact{enabled=false}
  - damage-entities{option=never}
  - keep-inventory{enabled=true}
  - keep-experience{enabled=true}
initial-phase: waiting
phases:
  waiting:
    allow-join: true
    next-phase: countdown
    options:
      - damage-players{option=never}
    events:
      on-start:
        - apply-scoreboard{scoreboard=waiting}
      on-join:
        - apply-scoreboard{scoreboard=waiting}
  countdown:
    allow-join: true
    allow-spectate: true
    revert-phase: true
    next-phase: ingame
    countdown-time: 60s
    options:
      - damage-players{option=never}
    events:
      on-start:
        - apply-scoreboard{scoreboard=countdown}
  ingame:
    allow-join: false
    allow-spectate: true
    next-phase: victory
    options:
      - damage-players{option=other_team}
    events:
      on-start:
        - teleport{location=team_spawn}
        - play-sound{sound=block.note_block.pling;pitch=2;volume=1}
        - apply-scoreboard{scoreboard=ingame-top-kills}
        - give-item{item=stone_sword}
        - give-item{item=bow}
        - give-item{item=arrow}
  victory:
    allow-join: false
    allow-spectate: false
    next-phase: waiting
    duration: 5s
    events:
      on-complete:
        - leave
        - remove-scoreboard
      on-victory:
        - send-message{message=<green>Congrats, you won!</green>}
        - play-sound{sound=entity.player.levelup;pitch=1;volume=1}
      on-lose:
        - send-message{message=<red>Sorry, you lost!</red>}
        - play-sound{sound=block.anvil.place;pitch=0;volume=1}
      on-draw:
        - send-message{message=<yellow>It's a draw!</yellow>}
        - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1}

 

SkyWars

This is a gamemode that adds SkyWars to BattleArena. This requires the PhatLoots plugin for the chest configuration.

Description

Configuring Chests

Chests are configured using the PhatLoots plugin which contains native support for BattleArena and adds the reset-loot-tables action used in the configuration below.

Using PhatLoots, you can create loot tables and link them to blocks (using the /loot link <loot table> command). The following configurations are provided as island and center loot tables, and can be placed inside the plugins/PhatLoots/LootTables directory. Then, using PhatLoots, you can link these to chest blocks by running /loot link island and /loot link center for island and center chests respectively.

Arena Configuration

name: SkyWars
mode: Arena
type: Match
team-options:
  named-teams: false
  team-size: 1
  team-amount: 2+
  team-selection: none
modules:
  - duels
  - scoreboards
lives:
  enabled: false
victory-conditions:
  teams-alive:
    amount: 1
  time-limit:
    time-limit: 5m
events:
  on-join:
    - store{types=all}
    - change-gamemode{gamemode=adventure}
    - flight{enabled=false}
    - teleport{location=waitroom}
  on-spectate:
    - store{types=all}
    - change-gamemode{gamemode=spectator}
    - flight{enabled=true}
    - teleport{location=spectator}
  on-leave:
    - clear-effects
    - restore{types=all}
    - remove-scoreboard
  on-death:
    - clear-inventory
    - respawn
    - delay{ticks=1}
    - teleport{location=waitroom}
options:
  - block-break{enabled=false}
  - block-place{enabled=false}
  - block-interact{enabled=false}
  - damage-entities{option=never}
  - keep-inventory{enabled=true}
  - keep-experience{enabled=true}
  - shuffle-loot{enabled=true}
initial-phase: waiting
phases:
  waiting:
    allow-join: true
    next-phase: countdown
    options:
      - damage-players{option=never}
    events:
      on-start:
        - apply-scoreboard{scoreboard=waiting}
      on-join:
        - apply-scoreboard{scoreboard=waiting}
  countdown:
    allow-join: true
    allow-spectate: true
    revert-phase: true
    next-phase: ingame
    countdown-time: 60s
    options:
      - damage-players{option=never}
    events:
      on-start:
        - apply-scoreboard{scoreboard=countdown}
  ingame:
    allow-join: false
    allow-spectate: true
    next-phase: victory
    options:
      - damage-players{option=other_team}
      - block-break{enabled=true}
      - block-place{enabled=true}
      - block-interact{enabled=true}
    events:
      on-start:
        - change-gamemode{gamemode=survival}
        - reset-loot-tables
        - teleport{location=team_spawn}
        - play-sound{sound=block.note_block.pling;pitch=2;volume=1}
        - apply-scoreboard{scoreboard=ingame-list}
  victory:
    allow-join: false
    allow-spectate: false
    next-phase: waiting
    duration: 5s
    events:
      on-complete:
        - leave
        - remove-scoreboard
      on-victory:
        - send-message{message=<green>Congrats, you won!</green>}
        - play-sound{sound=entity.player.levelup;pitch=1;volume=1}
      on-lose:
        - send-message{message=<red>Sorry, you lost!</red>}
        - play-sound{sound=block.anvil.place;pitch=0;volume=1}
      on-draw:
        - send-message{message=<yellow>It's a draw!</yellow>}
        - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1}

Survival Games

This is a gamemode that adds Survival Games to BattleArena. This requires the PhatLoots plugin for the chest configuration.

Description

Configuring Chests

Chests are configured using the PhatLoots plugin which contains native support for BattleArena and adds the reset-loot-tables action used in the configuration below.

Using PhatLoots, you can create loot tables and link them to blocks (using the /loot link <loot table> command). The following configurations are provided as standard and pedestal loot tables, and can be placed inside the plugins/PhatLoots/LootTables directory. Then, using PhatLoots, you can link these to chest blocks by running /loot link standard and /loot link pedestal for standard and pedetal chests respectively.

Arena Configuration

name: SurvivalGames
aliases: [sg]
mode: Arena
type: Match
team-options:
  named-teams: false
  team-size: 1
  team-amount: 2+
  team-selection: none
modules:
  - arena-restoration
  - duels
  - scoreboards
lives:
  enabled: false
victory-conditions:
  teams-alive:
    amount: 1
  time-limit:
    time-limit: 5m
events:
  on-join:
    - store{types=all}
    - change-gamemode{gamemode=adventure}
    - flight{enabled=false}
    - teleport{location=waitroom}
  on-spectate:
    - store{types=all}
    - change-gamemode{gamemode=spectator}
    - flight{enabled=true}
    - teleport{location=spectator}
  on-leave:
    - clear-effects
    - restore{types=all}
    - remove-scoreboard
  on-death:
    - clear-inventory
    - respawn
    - delay{ticks=1}
    - teleport{location=waitroom}
options:
  - block-break{enabled=false}
  - block-place{enabled=false}
  - block-interact{enabled=false}
  - damage-entities{option=never}
  - keep-inventory{enabled=true}
  - keep-experience{enabled=true}
  - shuffle-loot{enabled=true}
initial-phase: waiting
phases:
  waiting:
    allow-join: true
    next-phase: countdown
    options:
      - damage-players{option=never}
    events:
      on-start:
        - apply-scoreboard{scoreboard=waiting}
      on-join:
        - apply-scoreboard{scoreboard=waiting}
  countdown:
    allow-join: true
    allow-spectate: true
    revert-phase: true
    next-phase: ingame
    countdown-time: 60s
    options:
      - damage-players{option=never}
    events:
      on-start:
        - apply-scoreboard{scoreboard=countdown}
  ingame:
    allow-join: false
    allow-spectate: true
    next-phase: victory
    options:
      - damage-players{option=other_team}
      - block-place{enabled=true}
      - block-interact{enabled=true}
    events:
      on-start:
        - change-gamemode{gamemode=survival}
        - reset-loot-tables
        - teleport{location=team_spawn}
        - play-sound{sound=block.note_block.pling;pitch=2;volume=1}
        - apply-scoreboard{scoreboard=ingame-list}
  victory:
    allow-join: false
    allow-spectate: false
    next-phase: waiting
    duration: 5s
    events:
      on-complete:
        - leave
        - remove-scoreboard
        - restore-arena
      on-victory:
        - send-message{message=<green>Congrats, you won!</green>}
        - play-sound{sound=entity.player.levelup;pitch=1;volume=1}
      on-lose:
        - send-message{message=<red>Sorry, you lost!</red>}
        - play-sound{sound=block.anvil.place;pitch=0;volume=1}
      on-draw:
        - send-message{message=<yellow>It's a draw!</yellow>}
        - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1}

Bow Spleef

This is a gamemode that adds Bow Spleef to BattleArena. This requires ArenaSpelef to be installed.

Description

Arena Configuration

name: BowSpleef
mode: Spleef
type: Match
team-options:
  named-teams: false
  team-size: 1
  team-amount: 2+
  team-selection: none
modules:
  - scoreboards
lives:
  enabled: false
victory-conditions:
  teams-alive:
    amount: 1
  time-limit:
    time-limit: 5m
layer-decay-delay: 2m
layer-decay-time: 1m
game: bow_spleef
events:
  on-join:
    - store{types=all}
    - change-gamemode{gamemode=adventure}
    - flight{enabled=false}
    - teleport{location=waitroom}
  on-spectate:
    - store{types=all}
    - change-gamemode{gamemode=spectator}
    - flight{enabled=true}
    - teleport{location=spectator}
  on-leave:
    - clear-effects
    - restore{types=all}
    - remove-scoreboard
  on-death:
    - clear-inventory
    - respawn
    - delay{ticks=1}
    - change-gamemode{gamemode=adventure}
    - teleport{location=waitroom}
options:
  - block-break{enabled=false}
  - block-place{enabled=false}
  - block-drops{enabled=false}
  - block-interact{enabled=false}
  - item-drops{enabled=false}
  - keep-inventory{enabled=true}
  - keep-experience{enabled=true}
  - damage-entities{option=never}
  - damage-players{option=never}
initial-phase: waiting
phases:
  waiting:
    allow-join: true
    next-phase: countdown
    events:
      on-start:
        - apply-scoreboard{scoreboard=waiting}
      on-join:
        - apply-scoreboard{scoreboard=waiting}
  countdown:
    allow-join: false
    allow-spectate: true
    revert-phase: true
    next-phase: ingame
    countdown-time: 5s
    events:
      on-start:
        - paste-layers
        - apply-scoreboard{scoreboard=countdown}
      on-complete:
        - teleport{location=team_spawn}
        - play-sound{sound=block.note_block.pling;pitch=2;volume=1}
  ingame:
    allow-join: false
    allow-spectate: true
    next-phase: victory
    options:
      - block-interact{enabled=true}
    events:
      on-start:
        - give-shovel{shovel=bow}
        - give-item{item=arrow}
        - change-gamemode{gamemode=survival}
        - apply-scoreboard{scoreboard=ingame-list-alive}
  victory:
    allow-join: false
    allow-spectate: false
    next-phase: waiting
    duration: 5s
    events:
      on-complete:
        - leave
        - remove-scoreboard
      on-victory:
        - send-message{message=<green>Congrats, you won!</green>}
        - play-sound{sound=entity.player.levelup;pitch=1;volume=1}
      on-lose:
        - send-message{message=<red>Sorry, you lost!</red>}
        - play-sound{sound=block.anvil.place;pitch=0;volume=1}
      on-draw:
        - send-message{message=<yellow>It's a draw!</yellow>}
        - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1}

 

Splegg

This is a gamemode that adds Splegg to BattleArena. This requires ArenaSpelef to be installed.

Description

Arena Configuration

name: Splegg
mode: Spleef
type: Match
team-options:
  named-teams: false
  team-size: 1+
  team-amount: 2
  team-selection: none
modules:
  - scoreboards
lives:
  enabled: false
victory-conditions:
  teams-alive:
    amount: 1
  time-limit:
    time-limit: 5m
layer-decay-delay: 2m
layer-decay-time: 1m
game: splegg
events:
  on-join:
    - store{types=all}
    - change-gamemode{gamemode=adventure}
    - flight{enabled=false}
    - teleport{location=waitroom}
  on-spectate:
    - store{types=all}
    - change-gamemode{gamemode=spectator}
    - flight{enabled=true}
    - teleport{location=spectator}
  on-leave:
    - clear-effects
    - restore{types=all}
    - remove-scoreboard
  on-death:
    - clear-inventory
    - respawn
    - delay{ticks=1}
    - change-gamemode{gamemode=adventure}
    - teleport{location=waitroom}
options:
  - block-break{enabled=false}
  - block-place{enabled=false}
  - block-drops{enabled=false}
  - block-interact{enabled=false}
  - item-drops{enabled=false}
  - keep-inventory{enabled=true}
  - keep-experience{enabled=true}
  - damage-entities{option=never}
  - damage-players{option=never}
initial-phase: waiting
phases:
  waiting:
    allow-join: true
    next-phase: countdown
    events:
      on-start:
        - apply-scoreboard{scoreboard=waiting}
      on-join:
        - apply-scoreboard{scoreboard=waiting}
  countdown:
    allow-join: false
    allow-spectate: true
    revert-phase: true
    next-phase: ingame
    countdown-time: 5s
    events:
      on-start:
        - paste-layers
        - apply-scoreboard{scoreboard=countdown}
      on-complete:
        - teleport{location=team_spawn}
        - play-sound{sound=block.note_block.pling;pitch=2;volume=1}
  ingame:
    allow-join: false
    allow-spectate: true
    next-phase: victory
    options:
      - block-interact{enabled=true}
    events:
      on-start:
        - change-gamemode{gamemode=survival}
        - give-shovel{shovel=egg-cannon}
        - apply-scoreboard{scoreboard=ingame-list-alive}
  victory:
    allow-join: false
    allow-spectate: false
    next-phase: waiting
    duration: 5s
    events:
      on-complete:
        - leave
        - remove-scoreboard
      on-victory:
        - send-message{message=<green>Congrats, you won!</green>}
        - play-sound{sound=entity.player.levelup;pitch=1;volume=1}
      on-lose:
        - send-message{message=<red>Sorry, you lost!</red>}
        - play-sound{sound=block.anvil.place;pitch=0;volume=1}
      on-draw:
        - send-message{message=<yellow>It's a draw!</yellow>}
        - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1}

 

TNT Run (Decay Spleef)

This is a gamemode that adds TNT Run to BattleArena. This requires ArenaSpelef to be installed.

Description

Arena Configuration

name: TNTRun
mode: Spleef
type: Match
team-options:
  named-teams: false
  team-size: 1
  team-amount: 2+
  team-selection: none
modules:
  - scoreboards
lives:
  enabled: false
victory-conditions:
  teams-alive:
    amount: 1
  time-limit:
    time-limit: 5m
layer-decay-delay: 2m
layer-decay-time: 1m
game: decay
events:
  on-join:
    - store{types=all}
    - change-gamemode{gamemode=adventure}
    - flight{enabled=false}
    - teleport{location=waitroom}
  on-spectate:
    - store{types=all}
    - change-gamemode{gamemode=spectator}
    - flight{enabled=true}
    - teleport{location=spectator}
  on-leave:
    - clear-effects
    - restore{types=all}
    - remove-scoreboard
  on-death:
    - clear-inventory
    - respawn
    - delay{ticks=1}
    - change-gamemode{gamemode=adventure}
    - teleport{location=waitroom}
options:
  - block-break{enabled=false}
  - block-place{enabled=false}
  - block-drops{enabled=false}
  - block-interact{enabled=false}
  - item-drops{enabled=false}
  - keep-inventory{enabled=true}
  - keep-experience{enabled=true}
  - damage-entities{option=never}
  - damage-players{option=never}
initial-phase: waiting
phases:
  waiting:
    allow-join: true
    next-phase: countdown
    events:
      on-start:
        - apply-scoreboard{scoreboard=waiting}
      on-join:
        - apply-scoreboard{scoreboard=waiting}
  countdown:
    allow-join: false
    allow-spectate: true
    revert-phase: true
    next-phase: ingame
    countdown-time: 5s
    events:
      on-start:
        - paste-layers
        - apply-scoreboard{scoreboard=countdown}
      on-complete:
        - teleport{location=team_spawn}
        - play-sound{sound=block.note_block.pling;pitch=2;volume=1}
  ingame:
    allow-join: false
    allow-spectate: true
    next-phase: victory
    options:
      - block-interact{enabled=true}
    events:
      on-start:
        - change-gamemode{gamemode=survival}
        - apply-scoreboard{scoreboard=ingame-list-alive}
  victory:
    allow-join: false
    allow-spectate: false
    next-phase: waiting
    duration: 5s
    events:
      on-complete:
        - leave
        - remove-scoreboard
      on-victory:
        - send-message{message=<green>Congrats, you won!</green>}
        - play-sound{sound=entity.player.levelup;pitch=1;volume=1}
      on-lose:
        - send-message{message=<red>Sorry, you lost!</red>}
        - play-sound{sound=block.anvil.place;pitch=0;volume=1}
      on-draw:
        - send-message{message=<yellow>It's a draw!</yellow>}
        - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1}