MCPvP-Tab A lightweight, packet-based tablist & friends system. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ⚡ Overview MCPvP-Tab completely replaces the default Minecraft tablist with a clean, fully custom player list powered by PacketEvents. It features a built-in friends system with two switchable tab views — Friends and Region — toggled by simply pressing Sneak. Every element is packet-driven. No scoreboards, no flicker, no lag. The entire tab is rendered with fake entries, custom skulls, and real-time ping bars — exactly like the top PvP networks. ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ✨ Features
- Custom Tablist — Fully packet-based, replaces every entry
- Friends System — Add, remove, and accept friends with /friend
- Two Tab Views — Friends & Region, toggled with Sneak
- Real Player Skulls — Online friends show their actual skin
- Custom Skull Textures — Offline friends, headers, and separators use custom heads
- Live Ping Bars — Accurate connection quality indicators (5-bar system)
- Offline Friend Tracking — See which friends are offline with a timed-out indicator
- Online Player Count — Live count in the footer, updated every second
- Clean Header & Footer — Centered, formatted, fully customizable
- Smart Tab Completion — Context-aware suggestions for every subcommand
- Cracked Server Support — Works perfectly on offline-mode servers
- MySQL Storage — HikariCP connection pooling, zero file storage
- Fully Async — All database operations and snapshot building off the main thread
- Real Players Hidden — Vanilla tab entries are completely hidden via packets
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Friends Tab When a player opens their tablist, they see:
Friends (3) ------- ● FriendOnline1 [green, real skin, live ping] ● FriendOnline2 [green, real skin, live ping] ✕ FriendOffline1 [gray, custom skull, timed out]- Online friends appear at the top with their real skin and live ping
- Offline friends appear below with a dark skull and a timed-out ping icon
- No friends? The tab shows /f add <player> as a hint
- Maximum 75 friends per player
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Region Tab Press Sneak to switch to Region view:
PlayerA [gray, real skin, live ping] PlayerB [gray, real skin, live ping] PlayerC [gray, real skin, live ping]- Shows every online player on the server
- Sorted alphabetically
- Each player displays their real skin and live ping
- Press Sneak again to switch back to Friends
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Commands
/friend add <player> Send a friend request (60s to accept) /friend accept <player> Accept an incoming request /friend remove <player> Remove a friend from your listAliases: /f All commands feature intelligent tab completion:
- /f add — suggests online players
- /f remove — suggests your current friends
- /f accept — suggests pending incoming requests
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ⚙️ Requirements
- Paper 1.21+ (or any Paper fork)
- Java 21
- PacketEvents 2.11+
- MySQL Database
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ️ Architecture Built with performance as the top priority:
- Zero main-thread computation — all snapshots built asynchronously
- Packet interception — vanilla player entries never reach the client as listed
- Immutable snapshots — precomputed and atomically swapped every second
- HikariCP — fast, pooled MySQL connections
- Caffeine cache — high-performance caching for skins and friend data
- No deprecated API — fully modern Paper and PacketEvents usage
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Ping Bars The tablist displays accurate ping indicators:
< 150ms ▐▐▐▐▐ (5 bars — Excellent) < 300ms ▐▐▐▐ (4 bars — Good) < 600ms ▐▐▐ (3 bars — Fair) < 1000ms ▐▐ (2 bars — Poor) < 1500ms ▐ (1 bar — Bad) > 1500ms (0 bars — No connection)━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ Built with ❤️ for competitive PvP servers. If you need support, feel free to open a discussion.
Similar projects
Plugin →Let Me Despawn
Improves performance by tweaking mob despawn rules. Say bye to pesky unintentional persistent mobs.
25MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
Emotecraft
Create your own emotes in Minecraft.
7.5MSueta
Simple Tpa
A simple tpa plugin which sends requests
5.4MSueta
Common Network
Forge and Fabric Unified Networking Solution
3.9MSueta
Set Home
A lightweight plugin for players to set their homes.
3.8MSueta