NovaFFA | Free For All Plugin 2.4.0

The ultimate Modern FFA PvP plugin | Editable Kits | Unlimited Kits/Arenas | PAPI | FAWE

Hold Shift and click to select a range

Latest
Compatible with Minecraft 1.21 - 26.2
NovaFFA v2.4.0
Leaderboard placeholders, so a top kills or top deaths board needs nothing but NovaFFA and PlaceholderAPI.

🏆 Top Kills and Top Deaths

Building a leaderboard used to mean pointing a third party plugin at NovaFFA's stats. Now the ranks are placeholders of their own, for the top ten in each:

%ffa_statistics_top_kills_<1-10>%        the kill count at that rank
%ffa_statistics_top_kills_name_<1-10>%   the player at that rank
%ffa_statistics_top_deaths_<1-10>%       the death count at that rank
%ffa_statistics_top_deaths_name_<1-10>%  the player at that rank
  • A rank nobody has reached yet reads cleanly, 0 for a count and - for a name, rather than the placeholder failing to resolve and leaving raw text on your board
  • Cheap to poll. The ranking is held in memory and refreshed once a minute rather than worked out on every request, so a scoreboard or hologram reading it several times a second costs nothing extra

📦 Upgrading

Stop the server, replace the old jar in plugins/ with NovaFFA-2.4.0.jar, and start it again. Nothing to reset, migrate or set up again, and no config or language changes at all.


🧪 Compatibility

Paper 1.21.1 through 1.21.11 on Java 21, and Paper 26.1 through 26.2 on Java 25.


Need help or found a bug? Join the Discord.
Join the Discord

Enjoying the plugin? A ⭐ review goes a long way!
Download 0
No ratings yet
Purchase required

Compatible with Minecraft 1.21 - 26.2
NovaFFA v2.3.0
Combat tagging held back the lobby command but not the lobby itself. Now a tagged player cannot walk or fly in either.

🚧 Lobby Entry Is Held Back Too

A tagged player could still run or fly straight into the lobby, since the timer only ever blocked the /lobby command. The lobby corners themselves are now held back as well.

  • Walking or flying, both are stopped the moment the move would put a tagged player inside the lobby
  • Movement anywhere else is untouched. Nothing happens until they actually try to cross in
  • They are told on the action bar, same as the countdown, so it never floods chat
  • On by default, as combat_tag.block.lobby_region, alongside the existing combat_tag.block.lobby that holds back the command

📦 Upgrading

Stop the server, replace the old jar in plugins/ with NovaFFA-2.3.0.jar, and start it again. Your config.yml and language file pick up the new key and its message on their own, and everything you already set stays put.


🧪 Compatibility

Paper 1.21.1 through 1.21.11 on Java 21, and Paper 26.1 through 26.2 on Java 25.


Need help or found a bug? Join the Discord.
Join the Discord

Enjoying the plugin? A ⭐ review goes a long way!
Download 0
No ratings yet
Purchase required

Compatible with Minecraft 1.21 - 26.2
NovaFFA v2.2.0
NovaFFA now runs on 26.1 and 26.2 as well as 1.21.1 through 1.21.11, from the same jar.

🧱 Both Version Lines, One Jar

Mojang changed the version scheme in 2026, counting the year and then the drop within it, so 1.21.11 is the last of the old line and 26.1 is the one after it. NovaFFA runs on both.

  • 1.21.1 through 1.21.11, and 26.1 through 26.2
  • One jar for both, there is no separate download to pick
  • Nothing changes on a 1.21.x server. No config, kit, arena, layout or player file changes shape, and nothing needs migrating



Without this build the plugin would not have loaded on 26.x at all, so if you are moving up, this is the one you need.


📝 Before You Move to 26.x

FastAsyncWorldEdit is still required, and NovaFFA disables itself without it. FastAsyncWorldEdit publishes its own 26.x builds, so grab the one matching your server rather than the 1.21.x build.

26.x needs Java 25. That is the server's requirement rather than NovaFFA's. Staying on 1.21.x? Java 21 is still fine.


📦 Upgrading

Stop the server, replace the old jar in plugins/ with NovaFFA-2.2.0.jar, and start it again. Nothing to reset, migrate or set up again.

Moving to 26.1 or 26.2 as well? Update FastAsyncWorldEdit to its matching build and make sure your server is on Java 25 first.


🧪 Compatibility

Paper 1.21.1 through 1.21.11 on Java 21, and Paper 26.1 through 26.2 on Java 25.


Need help or found a bug? Join the Discord.
Join the Discord

Enjoying the plugin? A ⭐ review goes a long way!
Download 0
No ratings yet
Purchase required

Compatible with Minecraft 1.21 - 26.2
NovaFFA v2.1.0
Getting hit now holds you in the fight, and a kit saved in the layout editor no longer comes back empty.

⚔️ Combat Tag

Being hit by another player starts a timer, and every fresh hit pushes it back out to full. While it runs, the player is held in the fight. Landing a kill clears their own timer straight away, since they have finished what they were in, and dying clears it too.

  • Five seconds by default, set to whatever you like with combat_tag.time
  • A countdown ticks away above the hotbar while the timer runs
  • Escape commands are held back. Put whatever your server uses into combat_tag.block.commands: /spawn, /home, /tpa and the rest
  • /leaveffa, /lobby and switching kit are held back too, each on its own switch
  • Logging out mid fight kills the player where they stood, credits the kill to whoever they were fighting, and tells the arena about it
  • Only players inside an arena are ever tagged, so a fight elsewhere on your server is left alone



The whole thing switches off with combat_tag.enabled: false.

blocked_commands.in_arena is unchanged and still blocks a command for as long as a player is in an arena. The combat tag only blocks while they are actually fighting, which is usually the one you want.


⌨️ Command Aliases Are Yours

Every alias is read from commands.aliases in config.yml, one list per command. Rename them, add your own, or leave a list empty to give a command no aliases at all.

/spawn ships as an alias of /lobby, because it is the word most players reach for.

If your server already has a /spawn, from EssentialsX or a hub plugin, take it out of commands.aliases.lobby. Two plugins claiming the same command means one wins it and the other is only reachable as novaffa:spawn.


🛠 The Kit Editor Keeps Your Work

A kit set up and saved in the layout editor could come back completely empty, and the editor kept reverting to empty on every later visit. This was carried over from ContinuumFFA and survived the 2.0.0 rebuild. It is fixed.

  • A kit or layout that fails to read back is now reported in the console, instead of being dropped silently with nothing to point at why
  • Clearing player layouts works properly after importing contents into a kit, so nobody is left on their old arrangement

🔗 Placeholders

Two new ones for your scoreboard or tab list:

%ffa_combat_tagged%   true while the timer is running
%ffa_combat_time%     seconds left, 0 when it is not

🔌 For Developers

FFACombatTagEvent fires before a player is tagged. Cancel it and they walk away free.


📦 Upgrading

Stop the server, replace the old jar in plugins/ with NovaFFA-2.1.0.jar, and start it again. Your config.yml and language files pick up the new keys on their own, and your kits, arenas and layouts are untouched.

Two things to do afterwards: put your server's own escape commands into combat_tag.block.commands, and check commands.aliases.lobby if another plugin already owns /spawn.


📋 Version Breakdown

Version Focus
2.1.0 Combat tagging with a countdown, blocked escape commands and a logout penalty, plus configurable command aliases and two new placeholders.
2.0.1 Kits and layouts saved in the editor no longer come back empty, and a file that cannot be read is reported rather than dropped in silence.

🧪 Compatibility

Paper 1.21.1 through 1.21.11, Java 21.


Need help or found a bug? Join the Discord.
Join the Discord

Enjoying the plugin? A ⭐ review goes a long way!
Download 0
No ratings yet
Purchase required

Compatible with Minecraft 1.21 - 26.2
NovaFFA v2.0.0
ContinuumFFA is now NovaFFA, part of the Arrow Plugin Series. Every feature you had is still here, rebuilt on the current Paper API and shipping in five languages.

⚠️ Read Before You Update

Nothing carries over from the old folder. NovaFFA generates a fresh plugins/NovaFFA/ on first start and leaves your old ContinuumFFA folder completely alone, so nothing is deleted. Arenas, kits and player stats need setting up again.

The old permission nodes stop working. Update your permission plugin before you restart:

Old node New node
ffa.admin novaffa.admin
continuum.ffa.commands.ffa novaffa.commands.ffa
continuum.ffa.openFFAMenu novaffa.openFFAMenu
continuum.ffa.arena.<name> novaffa.arena.<name>



/ffakit and /ffaarena no longer exist. If you have command blocks, macros or permission entries pointing at them, point those at /ffa kit and /ffa arena instead.


📋 What Changed For You

  Before Now
Main command /ffa /novaffa, with /ffa still working
Admin commands /ffakit, /ffaarena /ffa kit, /ffa arena
Help One long wall of chat Paginated, with clickable arrows
Permissions ffa. and continuum.ffa. All under novaffa.
Minecraft 1.21 and maybe upto 1.21.5? 1.21.1 through 1.21.11
Messages One messages.yml A lang/ folder, five languages
Config updates None Automatic, your settings kept

🧱 Runs on Modern Minecraft Again

The plugin had not been updated in about a year. It now targets Paper 1.21.1 up to 1.21.11 and uses the current API throughout, so it keeps working as 1.21 moves on. Both ends of that range were started on a clean server with FastAsyncWorldEdit and PlaceholderAPI installed.


⌨️ One Command Instead of Three

Everything an admin does now lives under /ffa:

/ffa                      opens the fight menu
/ffa <kit>                joins that kit's arena
/ffa help                 the home help screen
/ffa kit ...              everything to do with kits
/ffa arena ...            everything to do with arenas

Every command is a proper Brigadier command now, so you get argument types, live suggestions for kit and arena names, and the client greys out anything invalid before you press enter.


📖 Help That Does Not Flood Your Chat

Help is paginated. /ffa help shows the home screen and points you at /ffa kit and /ffa arena. The Back and Next arrows are clickable, and clicking any command line drops it straight into your chat box ready to fill in. Jump to a page directly with /ffa arena help 2.


🎒 Your Kits Keep Their Custom Items

Kits and player layouts are stored using Paper's own item format now. Custom items, data components and anything a plugin like ItemsAdder or Nexo put on a stack all survive a restart intact. The old storage flattened them.


🌍 Five Languages

en_US, fr_FR, es_ES, zh_CN and hi_IN all ship with the plugin and are kept up to date automatically. Pick one with language: in config.yml, or drop your own file into the lang/ folder and name it there.


🖥 Menus You Can Actually Configure

  • Every key has a plain comment above it explaining what it does
  • Kit buttons honour the whole item spec, so glow, flags, amount, custom_model_data and enchantments all work. Add a material line to override the kit's own icon
  • Any item can play a sound when it is clicked, with volume and pitch
  • A filler item fills the leftover squares on a part full page
  • A no_kits item shows instead of an empty menu on a fresh install
  • Anything you add under custom_items survives every future update

🎨 Colour Syntax

Colours are written differently now, so any messages you had edited will need their tags updating:

# Plain colours and formatting
'&aGreen text, &land bold'

# Any hex colour
'&#00ccffA custom blue'

# Gradients and rainbows
'<GRADIENT:00ccff>fades across</GRADIENT:7fe5ff>'
'<RAINBOW1>rainbow text</RAINBOW>'

Placeholders the plugin fills in use curly brackets, so {kit}, {arena}, {display_name} and so on. Angle brackets inside the help text are command usage, not placeholders.


🛠 Fixed

All of these were broken in ContinuumFFA 1.1.81:

  • Admin actions now confirm themselves. Deleting an arena, teleporting to one, toggling its permission, regenerating it, and starting or stopping the timer all sent nothing back before
  • /ffa kit info and /ffa arena info print their output
  • Title messages appear instead of never showing at all
  • Joining a fight can no longer corrupt an inventory. Health, hunger and inventory were being touched from a background thread
  • The layout editor saves slots in order, so a saved kit no longer comes back scrambled
  • Kill to death rate reads properly for a player with no deaths, instead of showing Infinity
  • A kit icon written in lower case loads instead of failing
  • The public API runs registered listeners as it always claimed to
  • The premium option on arenas is in the help text
  • A broken FastAsyncWorldEdit install is reported clearly. It was previously only checked for being installed, not for having actually started, so a failed copy left the plugin half working with no explanation

📜 Commands

Command Aliases What it does
/novaffa /ffa Opens the fight menu
/ffa <kit>   Joins the arena linked to that kit
/ffa help [page]   The home help screen
/ffa kit ...   Creates and edits kits, clears player layouts
/ffa arena ...   Creates and edits arenas, drives regeneration
/leaveffa /leave, /exit, /ffaleave, /exitffa, /ffaexit Leaves the arena
/lobby /ffalobby Goes to the FFA lobby
/statistics /stats Opens the statistics menu
/editkits /kiteditor, /kitlayouts, /layouts Opens the kit layout editor



/ffa leave, /ffa lobby, /ffa stats and /ffa editkits do the same as their standalone versions.


🔐 Permissions

Node Default Covers
novaffa.admin op /ffa kit, /ffa arena, and the admin arguments on /lobby
novaffa.commands.ffa true /novaffa and /ffa
novaffa.openFFAMenu true Opening the fight menu
novaffa.arena.<arena> false Joining an arena with premium turned on

🔗 Placeholders

The identifier is still ffa, so anything you already reference keeps working.

%ffa_statistics_kills%      %ffa_statistics_deaths%
%ffa_statistics_kdr%        %ffa_statistics_current_streak%
%ffa_statistics_highest_streak%
%ffa_arena_name%            %ffa_kit_name%
%ffa_kit_display%           %ffa_is_playing%
%ffa_players_<arena>%

📦 Upgrading

  1. Stop your server
  2. Delete the old ContinuumFFA.jar. Leave the ContinuumFFA folder alone if you want to keep it for reference, NovaFFA will not touch it
  3. Drop in NovaFFA-2.0.0.jar
  4. Update your permission plugin to the novaffa. nodes
  5. Start the server, then rebuild your arenas and kits



FastAsyncWorldEdit is required, it is what rebuilds arenas. PlaceholderAPI is optional. If FastAsyncWorldEdit is missing or fails to start, NovaFFA now tells you clearly in the console instead of half working.


Need help or found a bug? Join the Discord.
Join the Discord

Enjoying the plugin? A ⭐ review goes a long way!
Download 0
No ratings yet
Purchase required
Product Info
Statistics
21

Views

0

Purchases

0

Downloads

1.06 MB

File size

22.08.2026

Published

30.08.2026

Updated

Info
Supported software
Supported Versions
1.21 - 26.2
Product Image
NovaFFA | Free For All Plugin
NovaFFA | Free For All Plugin