Skip to content

Compatibility

NEZNAMY edited this page Apr 27, 2025 · 228 revisions

Content

Requirements

TAB does not depend on any other plugins. The experience can however be enhanced by installing other plugins, see below.

Java

TAB's shared module is compiled with Java 8. For the platforms themselves, TAB does have a higher requirement, however, it does not require a Java version higher than the server software itself does. Specifically:

  • Sponge, Fabric, Forge and NeoForge require Java 21
  • Velocity requires Java 17
  • Bukkit and BungeeCord are ok with Java 8

Supported server software and versions

Software type Software name Supported versions
Vanilla Bukkit (+forge hybrids) ✔ (1.5 - 1.21.5)
Sponge ✔ (1.20.6 - 1.21.5)
Modded Fabric ✔ (1.21.4 - 1.21.5)
Forge ✔ (1.21.4 - 1.21.5)
NeoForge ✔ (1.21.4 - 1.21.5)
Proxies BungeeCord ✔ (latest only1)
Velocity ✔ (latest only1)

Modded platforms only support the latest MC version(s). For older MC versions try modrinth's version download filter. If you need a backport and no older version of TAB supports your desired server version, you'll need to edit it in the source code. Customers can ask for a backport on the customer discord.

1 Latest only doesn't mean only the latest build will work, it means the plugin was made to be compatible with the latest version/build. Since breaking changes don't happen too often, it means a wide range of versions is usually supported. When a breaking change occurs, the plugin is updated to support the new version, automatically making old versions incompatible. Since proxies support all client versions, there is never a reason to stay outdated, so you can always safely update to new version/build of your proxy software if the plugin requires it.

Supported features per platform

Feature \ Platform Bukkit / Hybrid Sponge Fabric / Forge / NeoForge BungeeCord Velocity
Belowname ✔ (via VSAPI)
BossBar
Global Playerlist
Header/Footer
Layout
Nametags & Sorting  ❗ ✔ (via VSAPI)
Per world playerlist
Playerlist objective ✔ (via VSAPI)
Scoreboard ✔ (via VSAPI)
Spectator fix
Tablist names

✔ = Fully functional
 ❗ = NameTags: Anti-override missing, Scoreboard: compatibility with other plugins missing.
❌ = Completely missing

Plugin hooks

To enhance user experience, TAB hooks into other plugins for better experience. This set of plugins is different for each platform based on their availability. Some are available on all platforms, some only in a few.

All platforms

Floodgate - For properly detecting bedrock players to adapt features for the best possible user experience.
LuckPerms - Detecting permission groups of players for per-group settings.
ViaVersion - For properly detecting player's version to adapt features for the best possible user experience.

Bukkit

LibsDisguises - Detecting disguised players to disable collision to avoid endless push by colliding with own copy created by LibsDisguises.
PlaceholderAPI - Allows users to use its placeholders inside TAB.
PremiumVanish - Supporting PremiumVanish's vanishing levels instead of using a basic compatibility system.
Vault - Detecting permission groups of players for per-group settings.

BungeeCord

PremiumVanish - Supporting PremiumVanish's vanishing levels instead of using a basic compatibility system.
RedisBungee - Communicating with other proxies to properly display visuals on players on another proxy.

Fabric

fabric-permissions-api - Supporting permission nodes instead of OP levels.
placeholder-api - Displaying placeholders from that mod and offering TAB's placeholders into it.

Forge / NeoForge

LuckPerms - Permission checks with a string instead of using vanilla OP levels.

Sponge

None

Velocity

PremiumVanish - Supporting PremiumVanish's vanishing levels instead of using a basic compatibility system.
RedisBungee - Communicating with other proxies to properly display visuals on players on another proxy.
VelocityScoreboardAPI - Sending scoreboard packets (scoreboard-teams, belowname-objective, playerlist-objective, scoreboard)

Compatibility issues

  • Glow plugins will fail to apply glow color correctly. Check How to make the plugin compatible with glow plugins for more information.
  • Tablisknu (skript addon) prevents TAB from assigning teams (sorting & nametags).
  • SkBee (skript addon) sends empty scoreboard, causing TAB's to not show sometimes.
  • Waterfall's disable_tab_list_rewrite: true may cause tablist to use offline UUIDs while TAB expects online uuids, causing various problems (most notably tablist formatting not working). Checking for this option is not an option either, because tablist rewrite might still be enabled despite being disabled (don't ask how, I have no idea). Set the option to false if you are experiencing issues.
  • ViaVersion on proxy and TAB on backend acts like a client-sided protocol hack, making it impossible for TAB to know player's real version and causing issues related to it, see Per-version experience for more info. Avoid this combination. Either install ViaVersion on all backend servers instead or install TAB on the proxy as well.
  • Nexo's hide_scoreboard_numbers config option (may apply to ItemsAdder and Oraxen as well) makes Belowname's value and Playerlist objective's value not visible. When using these features, you'll need to keep the option disabled.
  • Custom clients / resource packs - Unofficially modified minecraft clients often tend to break things. Just Lunar client has tons of bugs that can be reproduced with TAB. Resource packs may also contain modifications you are not aware of, making things not look the way you want them to. If you are experiencing any visual issue and are using a custom client or resource pack, try it with a clean vanilla client. If it works there, it's an issue with the client / resource pack and TAB cannot do anything about it.
    For example, here are a few bugs in LunarClient / FeatherClient that you may run into when using TAB:
    • They add their icon to players in tablist, but don't widen the entries. This results in player names overlapping with latency bar. You can avoid this by configuring some spaces in tabsuffix.
    • They don't support color field in chat components, which means they don't support RGB codes and will display bossbar without colors as well.
    • Bossbar is not visible on 1.8.
    • Rendering belowname 3 times.
    • They don't respect nametag visibility rule, showing their own nametag using F5 even if set to invisible by the plugin.
    • When the scoreboard is set to use all 0s, lines are rendered in opposite order on 1.20.3+.
    • They don't display 1.20.3+ NumberFormat feature in scoreboard objectives.
  • Random Spigot/BungeeCord forks - All safe patches for improving security & performance are present in well-known public opensource projects, such as Paper, Purpur or Waterfall. Using a random overpriced closed-source (and probably obfuscated) fork from BuiltByBit may not be safe, since they likely include unsafe patches that may break compatibility with plugins in an attempt to fix things that are not broken. Before spending your entire budget on such a fork, reconsider it first. Paper (and its forks) is a performance-oriented fork used by 2/3 of all MC servers worldwide, while the rest is still stuck on Spigot. It is highly unlikely your needs are so specific you need every single "improvement" anyone can come up with. If you need a feature, Purpur is a feature-oriented fork. Together with plugins you should achieve what you are looking for.
Clone this wiki locally