/
parseText overload (TextNode instead of Text), and (2) it looked up the text factory by the Yarn name literal, which does not exist in the intermediary namespace the addon runs in. Both are now resolved via shape-based reflection that is mapping-namespace agnostic. Verified against the real intermediary runtime classpath.This completes the PB4 fix started in 2.1.1.
%player_displayname% built-in placeholder now resolves the actual player display name (from the platform player object) instead of falling back to the raw username./pvnreload — reload config.toml at runtime without restarting the server.
pv.addon.nickname.reload (default: op).VoiceServerConfigReloadedEvent (i.e. when you run /vreload).| Loader | MC versions tested | Plasmo Voice | Java | Install addon in |
|---|---|---|---|---|
| Paper | 1.20.1, 1.21.1, 1.21.11 | Paper 2.1.9 | 21 | plugins/ |
| Folia | 1.20.1, 1.21.4, 1.21.11 | Paper 2.1.9 | 21 | plugins/ |
| Canvas (Folia fork) | 26.1.2 | Paper 2.1.9 | 25 | plugins/ |
| Fabric | 1.20.1, 1.21.1, 1.21.4, 1.21.6, 1.21.11, 26.1.2 | Fabric 2.1.9 | 21 / 25 | mods/ |
| Velocity | 3.4.0-SNAPSHOT | Velocity 2.1.9 | 21 | plugins/ |
| Forge (native PV) | 47.4.20 / 1.20.1, 52.1.14 / 1.21.1 | Forge 2.1.9 | 21 | mods/ |
| NeoForge (native PV) | 21.1.228 / 1.21.1 | NeoForge 2.1.9 | 21 | mods/ |
| Arclight Fabric (Bukkit + Fabric hybrid) | 1.0.2-SNAPSHOT / 1.21.1 | Fabric 2.1.9 | 21 | mods/ |
1.0.0 (plugin) and 1.1 (NeoForge) splits are merged.config.toml). Built-in placeholders work everywhere; PlaceholderAPI is auto-detected on Bukkit-family, PB4 placeholder-api on Fabric./pvn command was removed; nickname now flows through Plasmo Voice's PlayerInfoCreateEvent so the value reaches every voice client identically.format value in the new config.toml./vreload) after editing.Auto detect by Text Placeholder API

Plasmo Voice nickname addon. One universal jar - tested on Paper/Folia/Fabric/Forge/NeoForge/Velocity/Arclight (MC 1.20.1 to 26.1.2). PlaceholderAPI / PB4 supported.