Skip to content

Compatibility

NEZNAMY edited this page Oct 29, 2024 · 202 revisions

Content

Requirements

TAB does not depend on any other plugins.
It is compiled with Java 8 and therefore supports any version of 8 and above.

Supported server software and versions

Software type Software name Supported versions
Vanilla Bukkit (+forge hybrids) ✔ (1.5 - 1.21.3)
Sponge ✔ (1.91 - 1.21.3)
Modded Fabric ✔ (1.14 - 1.21.3)
Forge
Proxies BungeeCord ✔ (latest only2)
Velocity ✔ (latest only2)
1 Due to a bug in Sponge 7, it cannot coexist in the same jar with classes compiled with Java higher than 8, which is required by some other platforms. To get the plugin to run on Sponge 7, you will need to do one of the following:
  • Compile the plugin yourself and use the jar from sponge7/build/libs, which only contains sponge support instead of the universal jar from jar/build/libs.
  • Unzip the plugin jar, go to me/neznamy/tab/platforms/ and delete everything except sponge7.

2 Latest only doesn't mean only the latest build will work, it means the plugin was made to be compatible with 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, plugin is updated to support 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 version/build of your proxy software if plugin requires it.

Supported features per platform

Feature \ Platform Bukkit / Hybrid Sponge Fabric BungeeCord Velocity
Belowname ✔ (via VSAPI)
BossBar ✔ (1.9+) ✔ (1.9+)
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

In order 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 best possible user experience.
LuckPerms - Detecting permission groups of players for per-group settings.
ViaVersion - For properly detecting player version to adapt features for 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 PV's vanish levels instead of using a basic vanish compatibility system.
Vault - Detecting permission groups of players for per-group settings.

BungeeCord

PremiumVanish - Supporting PV's vanish levels instead of using a basic vanish 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.

Sponge

None

Velocity

PremiumVanish - Supporting PV's vanish levels instead of using a basic vanish 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 BungeeCord 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. Just avoid this combination - either install ViaVersion on all backend servers instead or install TAB on BungeeCord instead.
  • Custom clients / resource packs - Unofficially modified minecraft clients often tend to break things. Just Lunar client has 3 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 clean vanilla client. If it works there, it's an issue with the client / resource pack and TAB cannot do anything about it. 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 own nametag using F5 even if set to invisible by the plugin.
    • When 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 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