Party Extension for Duels Optimized v1.16.1

A plug-and-play party extension for Duels Optimized - supports party team & party FFA modes.
DuelsFlexParty v1.4.8
Match End Polish, Group Auto-Join Fixes, Configurable Sounds & 1.21.3+ Compatibility
Combined 1.4.7 + 1.4.8 + 1.4.8-2 + 1.4.8-3 drop.



✦ New Features

1. Configurable Match-End Sounds
  • Separate win/lose sounds with volume and pitch
  • Win default: ENTITY_PLAYER_LEVELUP, lose default: empty (disabled)
  • Config under match-end-sound.win and match-end-sound.lose (.sound, .volume, .pitch)

2. Configurable Title Duration
  • match-end-title.fade-in, .stay, .fade-out in ticks (20 = 1s)
  • Defaults: 10 / 60 / 20



✦ Bug Fixes

  • MC 1.21.3+ compatibility match-end sounds were crashing on newer Minecraft versions, which also stopped titles from showing. Both work properly now on 1.21.3 and up. Countdown sound fixed the same way
  • Winning team title for eliminated players dead teammates on the winning side now see the win title and hear the win sound, previously they were skipped
  • Killer not seeing win title the player who lands the final kill now reliably gets the "Match Won!" title
  • Match-end titles for everyone all players in the match (winners, losers, spectators, eliminated) now see the title, previously only one team member did
  • Group auto-join in cleanup window group members couldn't auto-join a new party if the previous match's cleanup window was still running, fixed
  • End-match cleanup interference the cleanup task from an old match no longer teleports players out of a new one they joined quickly after
  • Risk-inventory subtitle scope "You have X seconds to pick up items" now only shows in risk-inventory matches, kit mode shows the title without the subtitle since there's nothing to pick up
  • Broadcast count + gate party creation announcement now uses group size for %count% (a group of 2 in a 4-player party shows 2/4 instead of 1/4), and the broadcast is skipped entirely if the group already fills the party



✦ Config

YAML:
match-end-title:
  fade-in: 10
  stay: 60
  fade-out: 20

match-end-sound:
  win:
    sound: ENTITY_PLAYER_LEVELUP
    volume: 1.0
    pitch: 1.0
  lose:
    sound: ""               # empty = disabled
    volume: 1.0
    pitch: 1.0

Auto-migrated on reload, no manual edits required.



✦ Version Breakdown

VersionFocus
1.4.7Titles show for everyone, configurable title duration, broadcast slot count fix
1.4.8Configurable sounds, winning team title for eliminated players, killer title fix, auto-join + cleanup fixes, risk-inventory-only subtitle
1.4.8-2MC 1.21.3+ compatibility hotfix
1.4.8-3Broadcast count uses group size, full-group broadcasts skipped



Drop in the new jar and restart. Compatible with MC 1.21.3+.
DuelsFlexParty v1.4.6
Semantic Versioning, Match End Titles, Placeholders & CombatLogX Bypass



✦ New Features

1. Match End Titles
  • Winners see a configurable title ("Match Won!") with a subtitle showing how many seconds they have to pick up items
  • Losers see a separate title ("Match Over")
  • Config keys:
    • match-end-title-win
    • match-end-subtitle-win (supports %seconds%)
    • match-end-title-lose
    • match-end-subtitle-lose
  • Set any to empty to disable that line

2. New Placeholders
  • %flexparty_warmup_remaining% seconds left in FFA warmup
  • %flexparty_match_end_delay% config value
  • %flexparty_match_time_limit% config value in minutes

3. CombatLogX Bypass
  • Soft dependency, automatically prevents combat tagging for players in active FlexParty matches
  • No config needed, activates when CombatLogX is detected

4. Config Migration Update Log
  • New update-log.yml tracks every config key added by auto-migration with version and default value
  • Helps debug missing config issues on customer servers, you can see at a glance what was added and when
  • Config migration errors are now logged instead of silently swallowed



✦ Bug Fix

  • Slot count in queue messages joined-queue, player-joined, and the party creation broadcast now show the correct player count including auto-joined group members. Previously these messages fired before group members were added



✦ Changes

  • Semantic Versioning adopted all future releases follow MAJOR.MINOR.PATCH starting from this version
  • Internal DuelPartyExtension.VERSION constant is now used throughout instead of hardcoded version strings



Drop in the new jar and restart, new config keys are added automatically and tracked in update-log.yml.
DuelsFlexParty v1.4.5.5
PlaceholderAPI Support, Team Colors for TAB & Nametags



✦ New Feature: PlaceholderAPI Integration

Use FlexParty team colors with TAB, nametag plugins, or anything that supports PlaceholderAPI.

Two Color Modes
  • Absolute team 1 is always one color, team 2 is always another, everyone sees the same. Good for classic "red vs blue" setups
  • Relative your teammates always show as one color and enemies as another, no matter which team you're on. In FFA, everyone else shows as enemy color

Player Placeholders
  • %flexparty_in_match% whether the player is in a match
  • %flexparty_team_number% 1 or 2
  • %flexparty_team_color% the player's team color code
  • %flexparty_match_mode% FFA or TEAMS
  • %flexparty_match_kit% kit name
  • %flexparty_is_alive% alive or eliminated
  • %flexparty_is_spectator% spectating or not

Relational Placeholders
Perfect for TAB nametag prefixes and per-viewer coloring.
  • %rel_flexparty_team_color% color of the player you're looking at, based on whether they're on your team
  • %rel_flexparty_is_ally% true if same team
  • %rel_flexparty_is_enemy% true if different team or FFA



✦ Config

  • All colors are configurable in config.yml under team-colors
  • PlaceholderAPI is optional, the plugin works fine without it, these placeholders just won't be available
  • Auto-migrated on reload, no manual edits required



Swap the jar and restart. Install PlaceholderAPI if you don't have it already to enable team color placeholders.
DuelsFlexParty v1.4.5.4
Social Groups + Inventory Save/Restore
Combined 1.4.5.2 + 1.4.5.3 + 1.4.5.4 drop, the full Social Groups system with inventory fixes in one release.



✦ New Feature: Social Groups

A persistent group system, form a squad once and queue together every match without re-inviting.

Invites & Joining
  • /group invite <player> send an invite
  • /group accept <player> accept (player must be in the spawn area if WorldGuard region is set)
  • /group deny <player> deny
  • Invites expire after 60 seconds (configurable)

Queueing Together
  • Group leader runs /flexparty create like normal, the whole group is pulled into the queue automatically
  • If anyone leaves the queue, the whole group is pulled out too
  • The group itself stays intact, just queue again, no re-inviting needed
  • Only the leader can create or join games, everyone else follows along

Teams Mode Priority
  • Group members get priority placement on the same team
  • Queue up 2v2 with a friend, you'll be on the same side
  • Uses a greedy largest-group-first assignment so bigger groups stay together
  • When a group is too large for one side (e.g. 4-player group in 2v2 or 3v3), members are split across teams using balance logic instead of all dumped on one team

Group Command Blocking
  • Separate blacklist/whitelist for group-only contexts
  • Trigger on group join, or only when entering a queue, your choice

Disconnect Handling
  • Disconnecting removes the player from the group, everyone gets notified
  • If the leader disconnects, leadership passes to the next member automatically
  • Groups auto-disband when they drop to 1 person



✦ Risk-Inventory Save Option

  • New config: risk-inventory.save-inventory: false (default off)
  • When enabled, the original inventory is saved before the match and restored on all exits
  • Disconnects skip item drops while this is on, items are restored on rejoin instead
  • Lets you offer "soft" risk-inventory rounds where players don't actually lose their gear



✦ Bug Fixes

  • Kit-mode inventory save/restore beginMatch() was clearing inventory to equip kits but never saving the original, players ended up with an empty inventory after match end or death. Now saved before match start and restored on all exit paths: match end (winner + spectators), death elimination (non-spectating), /spec leave, disconnect and rejoin. Restore logic simplified, if a saved inventory exists it's restored, otherwise falls back to old behavior
  • Slot count in announcement the player count in the party announcement was hardcoded to 1, now uses %count% placeholder and reflects group auto-joins
  • Usage messages now respect command alias typing /group invite no longer shows "Usage: /socialgroup invite <player>", it shows the alias you actually used



✦ Commands

  • /group invite <player> send an invite
  • /group accept <player> accept an invite
  • /group deny <player> deny an invite
  • /group leave leave your current group
  • /group disband leader only, dissolve the group
  • /group kick <player> leader only
  • /group info view current group details
  • Aliases: /sgroup, /socialgroup, /socialg



✦ Config

YAML:
save-inventory: true                 # kit mode (default on)
risk-inventory:
  save-inventory: false              # risk mode (default off)
social-groups:
  enabled: false                     # off by default

  • Social Groups feature is off by default, enable with social-groups.enabled: true
  • Configurable: max group size, invite expiry, cooldowns, command blocking rules
  • ~40 new group-related messages for full customization
  • All config keys are auto-migrated on reload, no manual edits required



Swap the jar and restart. Set social-groups.enabled: true to turn on groups, all other keys are added automatically.
DuelsFlexParty v1.4.5.1
Faction PvP, Disconnect Recovery, Arena Reservation & Spectator Fixes



✦ New Features

1. Faction/Team PvP Override
  • Same-faction or same-team players can now fight in FlexParty matches
  • Overrides external faction/team plugin PvP blocking when both players are in the same match
  • FlexParty's own rules (warmup, friendly fire, match ended) still apply on top
  • Config: force-allow-combat: false (set to true to enable)

2. Arena Reservation
  • FlexParty now reserves the arena while a party match is running, Duels can no longer send /duel players into the same arena
  • Config: reserve-arena: true (on by default)

3. Native Spectator Teleport Restriction
  • Spectators can no longer teleport to other players via the spectator hotbar
  • Built in natively, no external plugin required anymore



✦ Bug Fixes

  • 3-player FFA respawn killing the second player no longer respawns them in the arena in survival, they're now teleported back correctly on match end
  • Disconnect item drops in risk-inventory matches, disconnecting players now drop their items at their arena location instead of having them cleared, other players can pick them up
  • Persistent location restore player locations are saved to disk when a match starts, so a server crash or restart no longer leaves players stranded, they're teleported back on rejoin



✦ New Config Options

YAML:
force-allow-combat: false
reserve-arena: true



Drop in the new jar and restart, config keys are added automatically.
DuelsFlexParty v1.4.4.2
Spectator Reliability Pass + Instant Return + Boundary Limits



✦ Bug Fixes

1. Spectator Mode Activation, Reworked
  • Root cause identified: setGameMode(SPECTATOR) was being overridden during the respawn cycle
  • Now hooks into PlayerRespawnEvent to set the respawn location to the spectator spawn, then defers GameMode.SPECTATOR by 1 tick after respawn completes
  • Much more reliable, works with the respawn system instead of racing it

2. Disconnect Restore Hardening
  • Rejoin delay increased from 1 to 5 ticks to allow full player init before restoration
  • Health, food, and active potion effects are now reset on rejoin
  • pendingSpectators is cleaned up on quit to prevent stale state from carrying over



✦ New Features

3. Instant Spectator Return on Match End
  • New config: spectator-on-death.instant-return-on-end: true
  • Spectators get a 1-tick teleport on match end so they don't sit watching dead air
  • Alive players keep the normal match-end-delay for item pickup

4. Spectator Boundary Limit
  • New config: spectator-on-death.max-distance: 50
  • Stops spectators flying off into the world to scout map areas they shouldn't see
  • Checks horizontal (XZ) distance from arena center on block-change moves only (performance-safe, no per-tick cost)
  • Teleports the spectator back and shows a warning when the limit is exceeded
  • Set to 0 for unlimited range



✦ New Config Options

Auto-migrated on reload, no manual edits required.

YAML:
spectator-on-death:
  instant-return-on-end: true
  max-distance: 50



Update now for rock-solid spectator activation, faster match-end returns, and arena-bound spectators.
All changes layer on top of v1.4.4.1 with safe defaults.
DuelsFlexParty v1.4.4.1
Spectator Mode + Arena Spawn Polish + Hotfix Roll-up
Combined 1.4.3 + 1.4.4 + 1.4.4.1 drop, the full spectator system in one release.



✦ New Features

1. Spectator Mode on Death
  • Eliminated players now enter GameMode.SPECTATOR instead of being teleported back
  • Available in 3+ player matches only, smaller matches still teleport back instantly
  • Lets eliminated players watch the rest of the match play out

2. /flexparty spec leave
  • Exit spectator mode early at any time
  • Returns the player to their pre-match location
  • No need to wait for the match to end if you'd rather move on

3. Spectator Disconnect Handling
  • If a spectator disconnects mid-match, they're restored to survival automatically on rejoin
  • No more getting stuck in spectator mode after a crash or relog

4. Smart Spectator Spawn Location
  • Spectators now teleport to the arena center (average of all spawn points) instead of staying at their death spot
  • Optional per-arena spectator spawn, set it manually with /flexparty setspawns <arena> spectator
  • Clear a custom spectator spawn with /flexparty setspawns <arena> spectator clear
  • Falls back to auto-center if no custom spawn is set
  • All spectator spawns stored in arenas.yml

5. Left-Spectator Match-End Notification
  • Players who used /spec leave now receive the normal match-end message plus an appended context line when their match finishes
  • Opt-in via spectator-on-death.notify-on-match-end (default false)
  • New message key: spectator-match-ended



✦ Bug Fixes

  • Spectator mode now applies reliably previously, dying could teleport you to the arena center without actually entering spectator mode, you'd still be able to run commands and wouldn't get the spectator message. Fixed
  • Disconnect-during-match restoration players who disconnect during a match are now teleported back to their previous location on rejoin (previously this only worked for spectators)
  • Risk-inventory logout exploit closed disconnecting during a risk-inventory match now clears your inventory, no more keeping items by logging out
  • Double teleport fix players who used /spec leave mid-match were getting teleported again when the match ended. endMatch() now skips players already removed from playerMatches



✦ New Config Options

Auto-migrated on reload, no manual edits required.

YAML:
spectator-on-death:
  enabled: false
  min-players: 3
  notify-on-match-end: false

New messages added:
  • spectator-mode-start
  • spectator-left
  • not-spectating
  • spec-usage
  • spectator-match-ended



✦ New Commands

  • /flexparty spec leave exit spectator mode early
  • /flexparty setspawns <arena> spectator set a custom spectator spawn for an arena
  • /flexparty setspawns <arena> spectator clear remove the custom spectator spawn (falls back to auto-center)



Update now for the full spectator system with all known issues patched.
Disabled by default, flip spectator-on-death.enabled: true to turn it on.
DuelsFlexParty v1.4.2
Combined 1.4 → 1.4.1 → 1.4.2 release
The 1.4 and 1.4.1 builds were internal, this is the first public 1.4.x drop with everything rolled in.



✦ New Features

1. FFA Warmup
  • Configurable PvP cooldown at the start of FFA matches
  • Players can't damage each other for X seconds, giving everyone time to spread out
  • Perfect for arenas with fewer spawns than players
  • Set ffa-warmup: 5 in config
  • Teams mode is unaffected

2. Draw Instant Teleport
  • Draws (time limit or mutual kills) now teleport players back instantly by default
  • No more waiting around to "collect items" when there's nothing to collect
  • Configurable via draw-end-delay
    • 0 = instant
    • Set your own value in seconds
    • -1 = same as normal end delay

3. Per-Creator Parties
  • Queue key is now kit:mode:creatorUUID, every party create is unique
  • Join a specific player's party with /flexparty join <playerName>
  • Click-to-join broadcast uses /flexparty join <creatorName>
  • Tab completion shows active party creators
  • /flexparty info now shows the creator name per party
  • New message: party-not-found

4. Customizable Join Broadcast
  • The party announcement message is now fully configurable
  • Hide the command text and show only "Click to Join" by setting command-suffix: "" under announcement: in config
  • Or customize it with the %command% placeholder



✦ Changes

Simplified Join Command
  • /party join risk-inventory and /party join <kit> [ffa|teams] have been removed
  • These paths were accidentally creating new parties instead of joining existing ones
  • Now /party join <playerName> is the only way to join, just type the host's name or click the broadcast message
  • All party settings (kit, mode, player count, risk inventory) are chosen by the host when they create the party through /party create



✦ Bug Fixes

  • Fixed /party join paths accidentally creating new parties instead of joining existing ones
  • Fixed empty lore lines, if a lore line in the config was set to "", it was showing as a blank line in the GUI. Empty lore values are now hidden automatically



✦ New Config Options

Auto-migrated on reload, no manual edits required.

YAML:
ffa-warmup: 5
draw-end-delay: 0
announcement:
  command-suffix: ""



✦ Version Breakdown

For reference, here's what each internal version brought to this release:

VersionFocus
1.4Announcement suffix, draw end delay, FFA warmup
1.4.1Independent parties, join by creator name, multiple simultaneous parties
1.4.2Empty lore fix, join command simplified (removed kit/mode/risk-inventory paths)



Update now for cleaner FFA starts, instant draw cleanup, per-creator party queues, and a polished join flow.
Existing configs are auto-migrated, no manual changes needed.
Buy a license now
$6.99
EULA
Standard EULA
Use on any projects you own with attribution
Support
Standard
Includes:
Download the resource
Access new updates
Support from the creator
Support duration
Lifetime
Share and earn
Refer this resource and earn a 15% commission.
985 Views
6 Purchases
8 Downloads
May 13, 2026 Published
Jun 28, 2026 Updated
5.00 star(s)
Average rating (2)
667.9 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Gameplay
  1. Minigame
  1. Technology
Game mode
  1. Minigame
  1. BoxPVP
  1. Practice
Supported software
  1. Paper
Supported versions
  1. 1.21.11
  1. 1.21.8
  1. 1.21.5
  1. 1.21.4
  1. 1.21.2
  1. 1.21
  1. 1.20
Supported languages
  1. English
Creators
Recommended for you
Second-ever Modern OneBlock setup, crafted for addictive, feature-rich gameplay.
5.00 star(s) 6 ratings
87 purchases
A modern, feature-rich Survival setup with custom menus, events, and immersive gameplay systems.
5.00 star(s) 20 ratings
83 purchases
All Versions | Crates | Ranks | Upgrades | Perks | Shop | Worlds | Chunk Hoppers
5.00 star(s) 4 ratings
57 purchases
A bedwars server setup made in 1.20.4 to match the Modern theme of experience.
5.00 star(s) 5 ratings
56 purchases
1.17-1.21.8 | Native 1.21.8 | Coinshop | Playtime rewards | Chat games | Gui menus | Custom Terrain
4.50 star(s) 8 ratings
46 purchases
Share and earn
Refer this resource and earn a 15% commission.
985 Views
6 Purchases
8 Downloads
May 13, 2026 Published
Jun 28, 2026 Updated
5.00 star(s)
Average rating (2)
667.9 KB File size
Open source
  1. No
DRM-free
  1. Yes
Unobfuscated
  1. Yes
Type
  1. Gameplay
  1. Minigame
  1. Technology
Game mode
  1. Minigame
  1. BoxPVP
  1. Practice
Supported software
  1. Paper
Supported versions
  1. 1.21.11
  1. 1.21.8
  1. 1.21.5
  1. 1.21.4
  1. 1.21.2
  1. 1.21
  1. 1.20
Supported languages
  1. English
Creators
Recommended for you
Second-ever Modern OneBlock setup, crafted for addictive, feature-rich gameplay.
5.00 star(s) 6 ratings
87 purchases
A modern, feature-rich Survival setup with custom menus, events, and immersive gameplay systems.
5.00 star(s) 20 ratings
83 purchases
All Versions | Crates | Ranks | Upgrades | Perks | Shop | Worlds | Chunk Hoppers
5.00 star(s) 4 ratings
57 purchases
A bedwars server setup made in 1.20.4 to match the Modern theme of experience.
5.00 star(s) 5 ratings
56 purchases
1.17-1.21.8 | Native 1.21.8 | Coinshop | Playtime rewards | Chat games | Gui menus | Custom Terrain
4.50 star(s) 8 ratings
46 purchases
Top