NovaFFA | Free For All Plugin 2.12.0

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

Download 0
No ratings yet

Compatibility

Minecraft: Java Edition 1.21 - 26.3
Platforms Paper Purpur

Changes

NovaFFA v2.9.0
Heads wear the right face, an arena can be rebuilt without killing the people standing in it, and the items you write into a menu yourself can now do something.
All of it is documented here: greenarrowlol.github.io/NovaFFA/docs

🧑 Player Heads Show the Right Face

A head written as skull: viewer, skull: 'player:SomeName' or skull: 'uuid:<uuid>' now wears that player's skin. It was drawn with the default face before, on an online mode server as much as a cracked one, because a profile holding only a name or a uuid carries no skin and nothing was filling one in.

  • An online player's skin is read from the player themselves, which costs nothing and covers the common case, skull: viewer on a toolbar button
  • New optional SkinsRestorer hook, which is what makes heads work on a cracked server, where a player's uuid is made up locally and Mojang has never heard of it. Install it and NovaFFA reads the skin it holds, nothing to configure, and the hook is reported in the console at start
  • Mojang is asked for anybody who has never been online on this server
  • Neither of those last two blocks anything. The head goes down plain and is filled in the moment the answer lands, with the menu still open
  • Answers are kept for half an hour, and /ffa reload drops them, which is how a changed skin is picked up without waiting that out
  • Heads written as texture:, url: or hash: carry their own skin and never needed any of this. They are unchanged



Where a player's skin comes from


🧱 Rebuilding an Arena Without Killing Anybody

  • New arenas.regeneration.protect_players, on by default. While an arena is being rebuilt, and for a few seconds after, the world cannot hurt anybody inside it. Suffocation, falling, fire, lava, drowning and the rest are all held back
  • Damage from another player is untouched, so a fight carries on through a rebuild rather than turning into a few seconds where nobody can die
  • protect_players.free_stuck lifts anybody the new blocks sealed in up to the first open space above them, keeping the way they were facing. Somebody the arena has no room for is sent to the arena spawn
  • This is what makes after.teleport_players.enabled: false safe to use. Turning the teleport off keeps a fight going through a rebuild, and until now that also meant the blocks came back around the players and suffocated them
  • New arenas.regeneration.layers, off by default. Turned on, the arena goes back down a row at a time from the bottom up, so the floor returns under a player before the roof returns over them and there is time to walk out of the way
  • layers.rows sets how many rows go down in one step and layers.delay_ticks how long it waits between steps, so a tall arena can be put back faster or slower



Rebuilding without interrupting the fight


🖱 Menu Items That Do Something

A custom_items entry in a menu file was decoration and nothing else, so an item built to look like a kit button did nothing at all when a player clicked it.

  • New join: <kit or arena> drops the player into a fight. A kit name joins that kit, an arena name joins that arena with the kit it is linked to
  • New commands: list runs command lines on click, as the player unless the line says console:. {viewer} and {viewer_uuid} work in them
  • New close: decides whether the menu closes first, on by default for an item that joins a fight
  • Read by every menu: fight.yml, kit_list.yml, kit_editor.yml and statistics.yml



Items that do something


🎯 Joining One Arena by Name

  • New /ffa join <arena> joins that arena with the kit it is linked to, with tab completion over your arenas
  • This is the command to point an NPC, a sign or a command block at when each one should send players to a particular arena. /ffa <kit> goes the other way round, naming the kit and letting the kit find its arena
  • It joins the arena that was named, so several arenas linked to one kit each get their own command
  • Premium arenas are still gated on novaffa.arena.<arena>, and the combat tag still blocks a kit switch mid fight



Commands


🎒 Kits That Came Out Empty

  • A player's saved layout that holds nothing, while the kit itself has contents, is now read as the kit's own layout. An empty layout on disk, which is what an editor that drew nothing leaves behind, could otherwise leave a working kit handing out an empty inventory
  • /ffa kit create says so when it captured nothing, from the console or from an admin standing there empty handed, and names the command to fill it
  • /ffa kit edit <kit> inventory import refuses an empty inventory rather than carrying out an import that would wipe the kit
  • A kit that hands out nothing is reported once in the console, naming the kit, so an empty kit reads as an empty kit rather than as the plugin being broken

📦 Upgrading

Stop the server, drop NovaFFA-2.9.0.jar in place of your old jar, and start it again. The new config, language and menu keys are added to your files on their own, taking config.yml to config-version: 3, the language files to lang-version: 6 and the menu files to menus-version: 3, and everything you had already set in them is kept. The four new messages are translated in all five shipped languages, and the help screen gains its /ffa join <arena> entry.

On a cracked server, install SkinsRestorer if you want player heads in menus to show real skins. Compiled clean against Paper 1.21.1 and Paper 26.2.


Need help or found a bug? Join the Discord.
Read the documentation | Join the Discord

Enjoying the plugin? A ⭐ review goes a long way!

Dependencies

NovaFFA-2.9.0.jar 1.10 MB
Purchase required
Product Info
Statistics
136

Views

0

Purchases

0

Downloads

800.78 KB

File size

22.08.2026

Published

03.10.2026

Updated

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