Welcome to the Hangar Open Beta. Please report any issue you encounter on GitHub!
Avatar for LucasTHCR

LuckPerms-powered tablist, chat & scoreboard with animated gradients.

Report LuckTAB?

Discord Release Downloads Servers License

Built with Java 21 Available for Paper Available for Purpur Available for Spigot Available for Bukkit

Chat with us on Discord Available on Codeberg

bStats

LuckTAB

Tab list, chat format and scoreboard in one plugin, set up from a single config.yml.

Ranks come from LuckPerms. You write your prefixes once and they show up in the tab list, above player heads and in chat, sorted by group weight.


What it does

  • Tab list - rank prefixes and sort order pulled from LuckPerms, with per-world header and footer designs
  • Chat format - your own format per rank
  • Scoreboard sidebar - per-world title and lines, falls back to default if a world has no design of its own
  • Nametags - prefix and suffix above player heads, via scoreboard teams
  • Colours everywhere - legacy & codes, hex &#RRGGBB, and animated gradients with <gradient:#FF0000:#FF7700>text</gradient>
  • Ping colours - %lucktab_ping_colored% goes green, yellow or red at thresholds you set
  • Vanish support - vanished players disappear from the tab list. Works with Essentials, CMI, SuperVanish and PremiumVanish
  • LuckPerms migration - /lucktab migrate to-luckperms and from-luckperms, so you can move your prefixes either way without retyping them
  • PlaceholderAPI - optional, works in header, footer, sidebar and chat

The scoreboard updates without flickering. It keeps score entries stable and only rewrites lines that actually changed, instead of tearing the whole sidebar down and rebuilding it every tick, which is what causes the flicker you see in a lot of sidebar plugins.

You can also pick where prefixes come from: prefix-source: lucktab uses the ones in the config, luckperms reads live meta instead.


Server software

Paper Spigot Purpur
Tab list, chat, nametag yes yes yes
Hex & gradient colors yes yes yes
Scoreboard anti-flicker yes yes yes
Hex/gradient in scoreboard lines yes legacy only yes

Paper or Purpur if you want all of it. Spigot works, the sidebar just falls back to legacy colours.


Dependencies


Colours

Format Example Works in
Legacy & codes &6[VIP] everywhere
Hex &#RRGGBB &#FF5733[Admin] everywhere
Animated gradient <gradient:#FF0000:#FF7700>text</gradient> everywhere
Bold gradient <gradient:#FF0000:#FF7700>&l[Owner]&r </gradient> everywhere

Built-in placeholders

These work without PlaceholderAPI:

Placeholder Description
%player% Player name
%world% Current world name
%server_online% Online player count
%server_max_players% Max player count
%player_ping% Player ping in ms (plain number)
%lucktab_ping_colored% Ping colored green/yellow/red automatically
%lucktab_rank% Colored rank prefix
%lucktab_prefix% Same as %lucktab_rank%
%lucktab_suffix% Rank suffix
%lucktab_color% Rank name color
%lucktab_rank_display% Prefix + color + group name + suffix
%chatPrefix% Rank prefix in chat format
%chatSuffix% Rank suffix in chat format

With PlaceholderAPI installed, anything else like %vault_eco_balance% works too.


Configuration

All of it lives in config.yml:

# ── Prefix Source ─────────────────────────────
# lucktab   -> use prefixes from this config (default)
# luckperms -> use prefixes directly from LuckPerms meta
prefix-source: lucktab

# ── Ping Colors ───────────────────────────────
ping-colors:
  good: 50    # 50ms or less  -> green
  medium: 100 # 100ms or less -> yellow
              # over 100ms    -> red

# ── Tab-List ──────────────────────────────────
tab-list:
  show-only-same-world: false

# ── Chat Format ───────────────────────────────
useChatFormat: true
chatFormat: "%chatPrefix%%playerName% &8» &7%message%"

# ── Rank Prefixes ─────────────────────────────
# Format: "group;prefix;suffix;namecolor"
# Top = highest priority | suffix can be empty: "group;prefix;;color"
prefixes:
  - "owner;<gradient:#FF0000:#FF7700>[Owner] </gradient>;;&#FF7700"
  - "admin;&#FF5555[Admin] &7;;&#FF5555"
  - "mod;&#5555FF[Mod] &7;;&#5555FF"
  - "vip;&6[VIP] &7;;&6"
  - "default;&7[Player] &7;;&7"

# ── Header & Footer ───────────────────────────
# Per-world: add a section with the exact world name as key
# Falls back to "default" if no world-specific design is found
header-footer:
  enabled: true
  designs:
    default:
      header:
        - ""
        - "<gradient:#FF5733:#FFC300>   MyServer   </gradient>"
        - ""
      footer:
        - ""
        - "&fOnline: &b%server_online%&7/&b%server_max_players%  &7| &fPing: %lucktab_ping_colored%"
        - ""

# ── Scoreboard Sidebar ────────────────────────
# Per-world: add a design with the exact world name under "designs"
scoreboard:
  enabled: true
  designs:
    default:
      title: "<gradient:#FF0000:#FF7700>MyServer</gradient>"
      lines:
        - ""
        - "&7Rank: %lucktab_rank%"
        - "&7Ping: %lucktab_ping_colored%"
        - ""
        - "&7World: &f%world%"
        - ""
        - "&7Online: &f%server_online%&8/&f%server_max_players%"
        - ""

Commands

Command Permission Default
/lucktab reload lucktab.reload OP
/lucktab migrate to-luckperms lucktab.migrate OP
/lucktab migrate from-luckperms lucktab.migrate OP

Migration calculates group weights for you, so the tab order stays the same after moving prefixes across.


Credits

Originally written by PattyXDHD, who built the foundation.

Maintained by LucasTHCR since then: scoreboard, hex and gradient colours, suffixes, vanish support, per-world configs, ping colours, the LuckPerms migration, anti-flicker, PlaceholderAPI, the reload command, and a pile of bug fixes.

Bugs and questions: dc.gg/paperstream

Information

Category
Chat
Published
August 7, 2026
License
31Downloads
0Stars

Pinned Versions

Members

1