BattleArena
NOTE: This project has moved to Modrinth. All future updates will be posted there and this page will no longer receive updates.

A complete match and event framework for creating arenas and minigames in Minecraft. Supports creating modes through config files, or fully custom modes through plugins.
BattleArena allows you to create your own competitions on a Minecraft server through config files. Nearly all aspects of game logic are configurable, ranging from team sizes, spawn points, maps, game mechanics and many other features.
Features
- Arena isolation - Store/restore player items when joining or leaving competitions
- Classes - Create custom kits or classes
- Dueling - Configure dueling options for your competitions
- Dynamic arenas - Scale up competitions in worlds on-demand
- Scoreboards - Configure scoreboards for competitions
- Statistic Tracking (with BattleTracker) - Store competition statistics and include leaderboards
- Team configuration - Create solo or team-based competitions
- Tournaments - Run bracket tournaments for any match type
- World restoration - Restore maps once a competition ends
Default Modes
Active games in BattleArena are referred to as Competitions. BattleArena natively supports two competition types:
Matches
A game that is started when a certain condition is met (i.e. number of players), or is always active. These games can be joined at any time, as long as there are available maps. Common examples may include Spleef, SkyWars, Survival Games, or Capture the Flag.
A list of additional gamemodes can be found here.
Events
A game that is started based on a certain interval, or when triggered by a server administrator. These games cannot be joined normally unless the event is active. Common examples may include a bracket tournament, deathmatch, or a free for all.
Builtin Match Types
- Arena: Simple duels mode that you fight with what is given to you in the config.
- Skirmish: You bring in items you want to fight with. The game is always running, and you can join and leave at any time.
- Colosseum: 4v4 team deathmatch. Last team standing wins.
- Battlegrounds: 1 minute match in which the winner is the player with the most kills.
Builtin Event Types
- Free for All: A free for all deathmatch that starts every 30 minutes. Last player alive wins.
- Deathmatch: A 2-minute event where if you die you respawn. The player with the highest number of kills wins.
- Tournament: Bracket tournament for any number of teams.
User Guide
Most all of the configurable features in BattleArena will lie in the respective <arena>.yml files located in plugins/BattleArena/arenas. These can be modified, removed, and new ones can be added.
The full user guide for BattleArena can be found at the User Guide on the BattleDocs.
For Developers
BattleArena is highly extendable and has wide support for creating your own matches, events, and even competition types. It is an event driven framework, meaning external plugins can easily add or modify behavior in numerous ways.
Full documentation for the BattleArena API can be found on the Developer Guide on the BattleDocs.
Additional Extensions and Modules
BattleArena is a framework at heart, meaning that the base plugin comes with a very standard feature set, with the bulk of additional content coming from modules and extensions. The following extensions and modules build on top of BattleArena, and allow you to further extend BattleArena's capability.
Extensions
These are plugins which add new modes to BattleArena.
- ArenaSpleef - Adds Spleef to BattleArena
- ArenaCTF - Adds Capture the Flag to BattleArena
- ArenaPaintball - Adds a Paintball mode to BattleArena
- ArenaParkour (coming soon) - Adds Parkour to BattleArena
Statistic Tracking
Statistics are tracked by our sister plugin BattleTracker. This adds functionality such as leaderboards and ranking to BattleArena. See the BattleTracker page for more information.
Modules
These extend on existing BattleArena functionality and can (often) be used in any mode, even custom ones.
Bundled: These modules come pre-installed with BattleArena.
- Arena Resoration - Allows you to restore maps at the end of a competition from a WorldEdit schematic
- Boundary Enforcer - Ensures that players do not leave the arena bounds while in a competition.
- Classes - Adds custom classes (or kits) to BattleArena.
- Duels - Allows you to duel other players in configured arenas.
- One in the Chamber - Adds One in the Chamber support to BattleArena.
- Scoreboards - Adds scoreboard support to BattleArena.
- Team Colors - Changes the color of a player's name in arenas this module is enabled in.
- Team Heads - Sets each player's head item to a wool item of their team color.
- Tournaments - Adds bracket tournament support to BattleArena.
- Vault Integration - Support for functionality with Vault, such as adding/removing currency or giving/removing permissions in arenas
Third Party:
- PhatLoots - Support for configuring and resetting loot tables inside competitions.
A full list of party modules and plugins that utilize BattleArenacan be found on the Modules and Other Tools page on the BattleDocs.
Links
- Website: https://www.battleplugins.org
- Discord: BattlePlugins Discord
- Donate: BattlePlugins Patreon
Important Mentions
Special thanks to alkarin_v for writing the original BattleArena plugin back in 2011. While very little of the original code survives today, this laid the foundation of what would eventually become the BattlePlugins suite and the innovations that followed.
-
View User Profile
-
Send Message
Posted Jul 28, 2015How would I enable /arena watch in an arena and what would the permission be? Also I am having trouble with how the enabled/disabled queue commands are supposed to be formatted in the config.yml. I have ['all'] set in disabled queue command and [arena leave] set for enabled queue commands but it still does not let me leave the queue.
-
View User Profile
-
Send Message
Posted Jul 26, 2015@LesMineCrefts
Hey LesMineCrefts, check this wiki page: http://wiki.battleplugins.com/Item_Syntax ;)
-
View User Profile
-
Send Message
Posted Jul 20, 2015How do i make custom named item?
-
View User Profile
-
Send Message
Posted Jul 19, 2015I've tried to find kill rewards, and finally found it when searching in the most unlikely source: The Change Log. Apparently it's a new feature and I would like some documents about it on the wiki... Do I just add money=2(and probably also to give an arrow) or I need to do something else..
-
View User Profile
-
Send Message
Posted Jul 14, 2015Quick Question: How do i allow Arenas to spectate them with /arena watch player?
I always get the error that the arena ist not allowed to watch, but i cant find a solution.
-
View User Profile
-
Send Message
Posted Jul 13, 2015Hello all, I have a quick question, is it possible to give players money per kill? I know how to give them server money for winning a round/match, but would it be possible to do it per kill as the game goes along?
Thanks in advance.
EllisWin
-
View User Profile
-
Send Message
Posted Jul 13, 2015Also how can I set a timer on screen like match starting in, 3 seconds, two seconds, 1 second, GOOD LUCK!?
-
View User Profile
-
Send Message
Posted Jul 13, 2015In 3.8.8 update log it says you can set ForceStartTime to start from when 1st player joins or the needed players and I am confused... could someone tell me, if I want my FFA to have min 20 players and max 50 and I want the ForceStartTime to start from when 20th player has joined, how do I do this? All I have been able to do so far is to make it start when the 1st guy joins in with matchEnableForceStartTime: true
-
View User Profile
-
Send Message
Posted Jul 7, 2015@Europia79
Ah okay. Now we know where the problem is at least. :) Anything I can do to fix it? Thank you for your speedy response. :)
-
View User Profile
-
Send Message
Posted Jul 6, 2015@Dantinoz
i don't know. That's an awesome idea tho
-
View User Profile
-
Send Message
Posted Jul 6, 2015Here I am with another question again. :P
Is there a way to make the arena chat only visible to those inside that arena? (including announcements and such) also, is it possible for each team to have a "private" chat so they don't tell their strategy to the enemy team?
-
View User Profile
-
Send Message
Posted Jul 6, 2015@Azfaloth
i will have to debug this.
it appears to prevent item drops while in the waitroom, but not while in the arena.
Also, there is a double check for the TransitionOption.ITEMDROPOFF... Once during listener registration, and the 2nd check is each time the listener runs to make sure the competition is in the correct MatchState.
So either the competition is not in the correct state, or the MatchParams are configured or constructed incorrectly.
-
View User Profile
-
Send Message
Posted Jul 5, 2015Hi, Thank you for your wonderful plugin. I have some issues though and I hope you will be able to help me solve them. I am setting up a skirmish area on my server where players should be able to pvp each other with items back.
I have two signs at spawn with skirmish join and skirmish leave. After which the players are teleported to an arena about 50 blocks away.
I have a bug where players are able to drop items in the arena even though I use the no dropped items option as seen in my config (linked below). And use things like splash potions and enderpearls. If an item is dropped within the arena or a splash potion or enderpearl is used till there are none left, most of the time the item bugs out after the match and does not restore properly.
What happens is that the item appears in the inventory with a zero on it. For armour, tools and arrows etc if you click on the item with the zero, it vanishes from the inventory.
For splash potions and enderpearls etc you can still throw the item, though it appears with zero. And it goes into negative numbers and can be used infinitely.
This is effectively causing
1) an infinite potion and enderpearl bug. 2) A losing inventory items bug. 3) Being able to still drop items when the option is off bug/
These first two bugs seem to be caused by not restoring the correct quantity of items back while restoring inventory causing the zero to appear and resulting in those problems.
I am running 1.8.7 spigot with BattleArena version 3.9.10.4 but i have been having this bug since 1.8. I have not used the plugin before that. This is my skirmish config: http://pastebin.com/9B5jLU1a
Other relevant plugins are multiinv, essentials, worldedit, worldguard, mcmmo, plotsquared, towny.
Please let me know how I can fix this.
Regards, Azfaloth
-
View User Profile
-
Send Message
Posted Jul 5, 2015I really can't figure out how to set up a Free for all but with two teams where they have 2 spawn points and stuff, can't figure out how to do it and can't find any tutorials to do it?
If anyone could help me, my Skype is 'Lukecharltonnew' and would love to be helped and would appreciate it so much :)
Thanks, Lukech
-
View User Profile
-
Send Message
Posted Jul 5, 2015@Europia79
I'm using this: http://dev.bukkit.org/bukkit-plugins/health-bar/
-
View User Profile
-
Send Message
Posted Jul 5, 2015@Dantinoz
Try config.yml option:
Now, exactly what HealthBar plugin are you talking about ? I would like to investigate the conflict further... To see if i can make the plugins compatible with each other.
-
View User Profile
-
Send Message
Posted Jul 5, 2015@Europia79
Thanks, it works like a charm now!
But I have another question... How do I turn off the colored names inside the arena? It's interfering with my HealthBar plugin so the healthbars don't show up :S
-
View User Profile
-
Send Message
Posted Jul 2, 2015@Dantinoz
The yaml node that you're trying to use is "Arena.matchTime": Your yaml is valid syntax, but that's not the correct node. You should use "Arena.times.matchTime"
It looks like this: http://hastebin.com/ubejapazor.sm
Also, there was a matchTime inconsistency in the code where it was sometimes treated as an integer and other times it was treated as a string... So you should update to v3.9.10.4 : which resolves this inconsistency.
-
View User Profile
-
Send Message
Posted Jul 2, 2015I posted this a while ago, but I never got an answer for it. So I'm asking again:"MatchTime" automatically sets to 2minutes, no matter what I set it to. Here is my ArenaConfig.yml: http://pastebin.com/1YkzDG1a please fix this, or tell me if I made any mistakes in the config, would appreciate it alot!
-
View User Profile
-
Send Message
Posted Jul 1, 2015@Europia79
Thanks for the help!