• Fixed glow outline not removing after duels end
• Added proper glow cleanup when duels end
• Updated tablist reset handling
- Glow is now always cleared for both players after matches finish
• Fixed cases where glow could remain stuck after:
- Glow cleanup now runs even if tablist features are disabled
- Prevents stuck glowing states from remaining on players
• Fixed tab skin issues behind Velocity/Bungee
- /leave
- /ff
- /surrender
- Opponent leaving mid-match
- Opponent forfeiting mid-match
- TablistManager now creates real player profiles with proper texture properties
- Properly copies skin texture data from Paper player profiles
- Fixes missing or broken skins in tablist when using proxies
- head will render only in online mode
• Match-found delay system improved
• Custom rounds now support AnvilGUI input
- Delay is now cached for better performance
- New config priority: teleport-delay -> start-delay -> legacy delay
- Setting teleport-delay: 0 starts teleport/match setup instantly after match found
• Fixed social tab sorting issues
- Configurable from menus/rounds.yml
- Supports custom title, text, and invalid-text options
- Chat input is now only used as fallback if AnvilGUI fails to open
• Added support for custom kit display names
- Added viewer-specific social sorting teams
- Friends and party members now correctly follow social tab layout order
- Prevents LuckPerms rank order from breaking social tab positioning
- Fake entries still only handle headers/blanks/text while real players remain normal tab entries
• Fixed duel and party split animation cleanup
- Supports display-name and display_name config formats
- Example: display-name: '&eTank'
- Uses &e%kit% as fallback if no custom display name is set
- PartyManageGUI now reads display names from cached mode configs for better performance
- Duel end now instantly stops door/fence animations, countdowns, titles, blindness, and sounds
- Leaving a party game now immediately stops that player’s cage/fence animations and sounds
- Party game end now properly cancels countdown tasks and stops door animations
- Totem and match-found delayed sounds are now tracked and cancelled correctly on stop
• ELO can no longer go below 0
• Fixed ELO syncing/loading across ranked data and kit ranks
• Added /sc eloreset command
• Unplayed kits now use their configured starting-tier for global ELO calculation
- Resets ranked ELO to 0
- Clears ranked stats (wins/losses/matches)
- Removes player from ranked queue
- Resets all per-kit ranked ELO
• Points at or below the starting-tier now display as Unranked instead of showing a rank like Silver I
- Example: sword=900, mace=750, axe=750 → global = 800
• Added optional arena selection GUI after round selection
• /ff and /leave are available aliases for /surrender
- New config: menus/arenaselect.yml
- Disabled by default with gui.enabled: false
- Shows only available arenas matching kit rules
- Prevents unavailable arenas from being selected
- Existing queue flow stays unchanged when disabled
• Fixed arenas randomly disappearing from arenas.yml on large setups (200+ arenas)
• Important: if arenas were already removed from arenas.yml before this update, they must be restored from a backup or older config file
- Arena storage no longer expires or removes old arenas from memory
- Arena loading now reloads cleanly without overwriting missing data
- Prevents future arena removals from config
• Fixed BlockDecay/spawn block breaking issues
• Fixed Bridge portal scoring issues
- BlockDecay now properly checks if the player is still in an active match before removing blocks
- Players inside inactive arenas can no longer break blocks unless they are op outside a game
• Added Party Invite Friends GUI
- Scoring now triggers instantly when standing or turning on the end portal
- Temporary respawn spectators can no longer accidentally score
• Improved lobby social tab while sneaking
- New PARTY_INVITE_FRIENDS GUI type
- Added configurable invite-friends section in menus/partymanage.yml
- Added Invite Friends button to party manage menu
- Shows online inviteable friends as player heads with skins
- Supports previous/next/back/close buttons
- Clicking a player head sends a party invite and refreshes the menu
- Automatically filters invalid players (offline, already in party, disabled invites, yourself, etc.)
- Uses cached friend and menu data for better performance
• Fixed kill effect GUI click issue
- Added cached social tab layout with Friends and Party columns
- Friends column shows online friends under a configurable header
- Party column shows party members with leaders marked as [L]
- Added fake tab rows for cleaner side-by-side layout styling
- Automatically refreshes while viewing and on friend join/quit updates
- Falls back to the old friends-only tab system if social-layout.enabled: false
• Fixed actionbar placeholder color formatting
- Opening kill effects from settings now happens on the next tick
- Prevents accidental selecting/deselecting when the menu opens
- %kit% and other placeholders now properly apply color codes after replacement
- Supports )A7FA, &f, §f and similar formatting correctly
Party Fixes
- Fixed Party /ff teleport cleanup issue
- Players now properly return to lobby after surrendering
Fence v2
- Fixed missing and misaligned fence blocks
- Improved wall spacing and placement consistency
- Fixed side boundary positioning and player eject checks
Ranked Fixes
- Fixed ranked ELO messages and titles showing pooled ELO instead of kit ELO
- ELO gain/loss, points, and tier updates now correctly display per-kit ranked progress
- Fixed incorrect rank up/down titles during ranked matches
- Added %swiftcore_ranked_nextrank_<kit>% placeholder
- Added %swiftcore_ranked_progress_<kit>% placeholder
- Global ELO now averages configured per-kit ELO values instead of using only stored pooled ranked points
Elevator Changes
match:
- Added kit-specific elevator disabling support
start-elevator:
enabled: true
disabled-kits:
- nodebuff
- boxing
- sumo
Behavior
- Kits listed in disabled-kits will skip the start elevator and use normal arena teleport
- Other kits continue using the elevator normally
Clan Fixes
-# Many Feature Didnt Test Yet May contains bugs
- Improved clan data saving during server shutdown
- Fixed possible clan save issues during shutdown/restart
- Clan data is now fully saved before database shutdown completes
Improvements
- Improved tablist performance and reduced unnecessary refreshes
- Better team sorting and rank update handling
- Improved scoreboard fallback behavior for custom queue layouts
Changes
- Added configurable async party auto-broadcast system
- Legacy party broadcast config still supported for older setups
Fixes
- Fixed rare movement bugs after matches and spectator states
- Improved cleanup for gravity, flight, jumping, walk speed, and fly speed
- Added extra movement normalization checks to prevent stale Bukkit movement states
## Fixes
- Fixed players sometimes remaining invisible during matches
- Visibility is now restored automatically in:
- Duels
- Ranked matches
- Unranked queue matches
- FFA
- Party FFA / Split / VS Party
- Improved spectator and teleport visibility handling
- Visibility restore now repeats after short delays for reliability
- Fixed global ranked ELO not updating correctly after matches
- Fixed older ranked players appearing reset after per-kit rank update
## New Features
- Added configurable per-kit queue default rounds:
- Separate settings for ranked and unranked queues
- Supports custom rounds per kit
## Improvements
- kitsrank.yml is now fully cached and async:
- Player rank data loads asynchronously
- Runtime reads now use memory cache only
- Dirty player saves are batched and written async
- Shutdown safely flushes pending saves
- Added automatic per-kit rank migration:
- Migrates from old kit data if available
- Otherwise uses existing global ranked ELO
- Existing kitsrank.yml data is preserved
- Cross-server queue matches now save configured round amounts correctly
## Configuration
```yaml
match:
queue-default-rounds:
unranked:
default: 1
kits:
# nodebuff: 3
ranked:
default: 1
kits:
# tank: 3
# tiertank 3
## New Features
- Added optional Paper Dialog duel settings UI
- Duel settings can now open in a modern dialog interface with:
- Round slider
- Send button
- Close button
- Optional advanced settings button
- Advanced Options button opens the classic rounds GUI as fallback
## Improvements
- Added smoother start elevator animation:
- Smoother movement and transitions
- Uses interpolation for better visual quality
- Added easing support (ease-in-out)
- Reduced server load with optimized update intervals
- Added new elevator config options:
-smooth
-update-interval
-teleport-duration
-easing
- Elevator settings now reload with/swiftcore reload config
-
- Added new
gui.duel-dialogconfig section- Dialog settings are fully reloadable without restart:
/swiftcore reload config
-/swiftcore reload duelgui
-/swiftcore reload rounds
## Notes
- If disabled, the system automatically falls back to the classic inventory GUI
- Fully configurable via config.yml
## Fixes
- Fixed trails showing during matches and spectator mode
- Trails now disable correctly in duels, FFA, party games, and spectating
- Fixed clan color system issues:
- Removed clan color command support
- Clan placeholders now return clean formatting
- Clan chat no longer applies saved colors
- Fixed HP indicators not working correctly in party modes and FFA
- Now supports FFA, Party FFA, Split, and VS Party modes
- Proper cleanup on death, leave, surrender, and game end
- Fixed lose sound not playing on round defeat
-match.sounds.losenow works for round losses too
- Fixed party broadcasts not sending correctly
- Broadcasts now reach players outside the party, including other parties
- Party members and owners no longer receive their own broadcast
## New Features
- Added highest kit rank placeholders:
-%swiftcore_highest_tier_rank%
-%swiftcore_best_tier_rank%
-%swiftcore_highest_tier_points%
-%swiftcore_best_tier_points%
## Notes
- Improved gameplay consistency and placeholder support
