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}


Revision #3
Created 25 August 2024 22:56:30 by Redned
Updated 25 August 2024 23:05:13 by Redned