# Additional Gamemodes # Spleef The main documentation page for the ArenaSpleef plugin. # Installation ### Requirements - A Paper server (or other derivative) running 1.19.4 or above - [BattleArena](https://modrinth.com/plugin/battlearena) 4.0.0 or higher ### Downloading 1. Download the [ArenaCTF](https://modrinth.com/plugin/arenaspleef) plugin 2. Stop your server and place the plugins in your plugins folder 3. Start the server and ArenaSpleef will load # Creating an Arena ### Map Creation 1. The first step follows the same steps as outlined in the BattleArena [Map Creation](https://docs.battleplugins.org/books/user-guide/page/map-creation) documentation. For ArenaSpleef, you will use the **/spleef** command to initiate the map creation. 2. Once you have created a map, you now need to set the spleef layers. Run **/spleef layer add <map>** to start the process. - A wizard will open, asking you to set the layer bounds. Follow the instructions in chat to set the layer bounds. - After you have set the layer bounds, you will be asked to set the block type the layer comprises of. Type the block name in chat. - After setting the layer bounds and block type, layers will now be placed upon joining the game. Repeat this for each remaining team. 3. If you wish to set a death region, rather than having a player die automatically due to lava or void, you can run **/spleef deathregion <map>** to set a death region. This will ask you to set the bounds of the death region upon execution. ### Configuration The default configuration for Spleef can be found in **plugins/ArenaSpleef/arenas/spleef.yml**. This can be modified in any way. See the [**Arena Configuration**](https://docs.bplug.in/books/user-guide/page/arena-configuration) page for more details. Additionally, configs for other spleef modes can be found [here](https://github.com/BattlePlugins/ArenaSpleef/tree/master/templates). ##### [Actions](https://docs.bplug.in/books/user-guide/page/action-reference) - **give-shovel:** Gives the player a spleef shovel which is configured in the ArenaSpleef config.yml. - Syntax: give-shovel{shovel=<shovel>} - **paste-layers:** Pastes the spleef layers into the map. # Commands
**Command****Description**
/spleef deathregionSets the death region for a spleef arena.
/spleef layer addAdds a layer to a spleef arena.
/spleef layer removeRemoves a layer from a spleef arena.
/spleef layer clearClears all layers from a spleef arena.
/spleef layer indexChanges the index of a layer.
/spleef layer listLists all layers in a spleef arena.
# Permissions
**Permission****Command**
battlearena.command.spleef.deathregion/spleef deathregion
battlearena.command.spleef.layer.add/spleef layer add
battlearena.command.spleef.layer.remove/spleef layer remove
battlearena.command.spleef.layer.clear/spleef layer clear
battlearena.command.spleef.layer.index/spleef layer index
battlearena.command.spleef.layer.list/spleef layer list
# Capture the Flag The main documentation page for the ArenaCTF plugin. # Installation ### Requirements - A Paper server (or other derivative) running 1.19.4 or above - [BattleArena](https://modrinth.com/plugin/battlearena) 4.0.0 or higher ### Downloading 1. Download the [ArenaCTF](https://modrinth.com/plugin/arenactf) plugin 2. Stop your server and place the plugins in your plugins folder 3. Start the server and ArenaCTF will load # Creating an Arena ### Map Creation 1. The first step follows the same steps as outlined in the BattleArena [Map Creation](https://docs.bplug.in/books/user-guide/page/map-creation) documentation. For ArenaCTF, you will use the **/ctf** command to initiate the map creation. 2. Once you have created a map, you now need to set the flag points. Run **/ctf flag set <map> <team>** to start the process. - A wizard will open, asking you to set the flag's position in the world. Follow the instructions in chat to set this point. - After you have set the flag position, you will be asked to set the capture point. This is the region in which a player must be to capture the flag. 3. After setting the flag position and setting the capture point, flags now be spawned upon joining the game. Repeat this for each remaining team. ### Configuration The default configuration for CTF can be found in **plugins/ArenaCTF/arenas/ctf.yml**. This can be modified in any way. See the [Arena Configuration](https://docs.bplug.in/books/user-guide/page/arena-configuration) page for more details. ##### [Events](https://docs.bplug.in/books/user-guide/page/event-reference) - **on-flag-capture:** Called any time a flag is captured. - **on-flag-return:** Called any time a flag is returned back to its home base. ##### [Actions](https://docs.bplug.in/books/user-guide/page/action-reference) - **place-flags:** Instructs the competition to place the flags into the map. - **remove-flags:** Instructs the competition to remove the flags from the map. # Permissions
**Permission** **Command**
battlearena.command.ctf.flag.set/ctf flag set
# Paintball The main documentation page for the ArenaPaintball plugin. # Installation ### Requirements - A Paper server (or other derivative) running 1.19.4 or above - [BattleArena](https://modrinth.com/plugin/battlearena) 4.0.0 or higher ### Downloading 1. Download the [ArenaPaintball](https://modrinth.com/plugin/arenapaintball) plugin 2. Stop your server and place the plugins in your plugins folder 3. Start the server and ArenaPaintball will load # Creating an Arena ### Map Creation Map creation follows the same steps as outlined in the BattleArena [Map Creation](https://docs.battleplugins.org/books/user-guide/page/map-creation) documentation. For ArenaPaintball, you will use the **/paintball** command to initiate the map creation. No additional steps are needed from this point forward. ### Configuration The default configuration for Paintball can be found in **plugins/ArenaPaintball/arenas/paintball.yml**. This can be modified in any way. See the [**Arena Configuration**](https://docs.battleplugins.org/books/user-guide/page/arena-configuration) page for more details. Additionally, configs for other paintball modes can be found [here](https://github.com/BattlePlugins/ArenaPaintball/tree/master/templates). ##### [Actions](https://docs.bplug.in/books/user-guide/page/action-reference) - **give-paintball:** Gives the player a paintball which is configured in the ArenaPaintball config.yml. - Syntax: give-paintball{paintball=<paintball>;amount=\[amount\]} # 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](https://docs.bplug.in/books/modules-and-other-tools/page/one-in-the-chamber) module which comes pre-installed with BattleArena. ### Description - Players spawn with a bow, arrow and a stone sword - Bows insta-kill a player - Any time a player scores a kill, they will be given an arrow - First player to 20 kills wins the game ### Arena Configuration ```yaml 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=Congrats, you won!} - play-sound{sound=entity.player.levelup;pitch=1;volume=1} on-lose: - send-message{message=Sorry, you lost!} - play-sound{sound=block.anvil.place;pitch=0;volume=1} on-draw: - send-message{message=It's a draw!} - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1} ``` # SkyWars This is a gamemode that adds SkyWars to BattleArena. This requires the [PhatLoots](https://modrinth.com/plugin/phatloots) plugin for the chest configuration. ### Description - Players spawn on an island with chests - Chests contain loot which players loot for items - Last player standing wins the game ### Configuring Chests Chests are configured using the [PhatLoots](https://modrinth.com/plugin/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](https://gist.github.com/Redned235/845f736c2b64a2bf930bf76929f44ef8) 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 ```yaml 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=Congrats, you won!} - play-sound{sound=entity.player.levelup;pitch=1;volume=1} on-lose: - send-message{message=Sorry, you lost!} - play-sound{sound=block.anvil.place;pitch=0;volume=1} on-draw: - send-message{message=It's a draw!} - 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](https://modrinth.com/plugin/phatloots) plugin for the chest configuration. ### Description - Players spawn in a map with chests - Chests contain loot which players loot for items - Last player standing wins the game ### Configuring Chests Chests are configured using the [PhatLoots](https://modrinth.com/plugin/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](https://gist.github.com/Redned235/331e576c4c7928efe95982bc6d1c9561) 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 ```yaml 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=Congrats, you won!} - play-sound{sound=entity.player.levelup;pitch=1;volume=1} on-lose: - send-message{message=Sorry, you lost!} - play-sound{sound=block.anvil.place;pitch=0;volume=1} on-draw: - send-message{message=It's a draw!} - 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](https://modrinth.com/plugin/arenaspleef) to be installed. ### Description - A spin on the classic spleef mode, where instead of having to break blocks with a shovel, TNT is broken with a flame bow - Last player alive wins ### Arena Configuration ```yaml 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=Congrats, you won!} - play-sound{sound=entity.player.levelup;pitch=1;volume=1} on-lose: - send-message{message=Sorry, you lost!} - play-sound{sound=block.anvil.place;pitch=0;volume=1} on-draw: - send-message{message=It's a draw!} - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1} ``` # Splegg This is a gamemode that adds Splegg to BattleArena. This requires [ArenaSpelef](https://modrinth.com/plugin/arenaspleef) to be installed. ### Description - A spin on the classic spleef mode, where instead of having to break blocks with a shovel, you get an egg cannon which you shoot to break blocks - Last player alive wins ### Arena Configuration ```yaml 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=Congrats, you won!} - play-sound{sound=entity.player.levelup;pitch=1;volume=1} on-lose: - send-message{message=Sorry, you lost!} - play-sound{sound=block.anvil.place;pitch=0;volume=1} on-draw: - send-message{message=It's a draw!} - 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](https://modrinth.com/plugin/arenaspleef) to be installed. ### Description - A spin on the classic spleef mode, where blocks break beneath you as you walk on them. - Last player alive wins ### Arena Configuration ```yaml 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=Congrats, you won!} - play-sound{sound=entity.player.levelup;pitch=1;volume=1} on-lose: - send-message{message=Sorry, you lost!} - play-sound{sound=block.anvil.place;pitch=0;volume=1} on-draw: - send-message{message=It's a draw!} - play-sound{sound=block.beacon.deactivate;pitch=0;volume=1} ```