Описание
## Plasmo Voice Nickname Addon
A **Plasmo Voice** addon that displays player nicknames instead of their Minecraft usernames.
Starting with **v2.0.0**, the addon ships as a **single universal jar** that runs on every server-side platform Plasmo Voice supports — drop it into `plugins/` (Bukkit-family) or `mods/` (Fabric, NeoForge via Sinytra Connector), no separate downloads.
### Example

---
## Tested matrix (v2.1.0)
Verified by booting each combination with the addon and observing both successful PV addon registration and `Done (...)` from the server thread:
| Loader | MC versions tested | Plasmo Voice | Java | Install addon in | Result |
| --- | --- | --- | --- | --- | --- |
| **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/` | ✅ |
| **NeoForge** (native PV) | 21.1.228 / 1.21.1 | NeoForge 2.1.9 | 21 | `mods/` | ✅ |
| **Forge** (native PV) | 47.4.20 / 1.20.1, 52.1.14 / 1.21.1 | Forge 2.1.9 | 21 | `mods/` | ✅ |
| **Arclight Fabric** (Bukkit + Fabric hybrid) | 1.0.2-SNAPSHOT / 1.21.1 | Fabric 2.1.9 | 21 | `mods/` | ✅ |
**Note for Forge / NeoForge users:** install **Plasmo Voice's native Forge or NeoForge build** (e.g. `plasmovoice-forge-1.21.1-2.1.9.jar` or `plasmovoice-neoforge-1.21.1-2.1.9.jar`), not the Fabric jar with Sinytra Connector. The addon ships auto-generated Forge / NeoForge entrypoints that load cleanly against the native PV builds — no Connector required.
The addon itself does not depend on any platform-internal API, so it should work on every other Plasmo-Voice-supported MC version (1.20.1 → 26.1.2) on the loaders listed above; the table above is just what was actually booted and verified.
---
## Supported platforms
One jar covers all of these:
- **Bukkit / Spigot / Paper / Purpur / Folia** (and Folia forks like Canvas)
- **Fabric** (1.20.1 → 26.1.x)
- **Forge** (uses Plasmo Voice's native Forge build)
- **NeoForge** (uses Plasmo Voice's native NeoForge build, no Connector required)
- **Velocity** (proxy)
- **BungeeCord** (proxy)
---
## Placeholder support
The format string in `config.toml` is parsed by the best resolver available on the running platform:
| Platform | Resolver | Notes |
| --- | --- | --- |
| Bukkit / Paper / Folia / Purpur / Spigot | **PlaceholderAPI** | Optional. Falls back to built-in placeholders if not installed. |
| Fabric | **PB4 Text Placeholder API** | Optional. Falls back to built-in placeholders if not installed. |
| NeoForge / Velocity / BungeeCord | Built-in | Use the built-in placeholders below. |
### Built-in placeholders
Always available, regardless of platform:
- `%player_name%`
- `%player_uuid%`
- `%player_displayname%`
---
## Commands & Permissions
| Command | Permission | Default | Action |
| --- | --- | --- | --- |
| `/pvnreload` | `pv.addon.nickname.reload` | `op` | Reload `config.toml` at runtime. Works with LuckPerms / Vault / PEX on Bukkit-family. |
The config also reloads automatically when Plasmo Voice's own `/vreload` runs.
---
## Installation
1. Install **Plasmo Voice 2.1.9** on your server or proxy. Forge / NeoForge users: use the native PV Forge or NeoForge jar (no Connector needed).
2. Drop `pv-addon-nickname-.jar` into the same `plugins/` or `mods/` folder as Plasmo Voice.
3. Start the server. A config will be generated at `plugins/pv-addon-nickname/config.toml` (Bukkit) or `config/pv-addon-nickname/config.toml` (Fabric/proxy).
### Default config
```toml
# Built-in placeholders: %player_name%, %player_uuid%, %player_displayname%
# On Bukkit/Paper with PlaceholderAPI installed, all PAPI placeholders work.
# On Fabric with PB4 placeholder-api installed, %namespace:placeholder% syntax works.
format = "%player_displayname%"
```
Reload with `/pvnreload` (or Plasmo Voice's `/vreload`) after editing.
---
## Migration from 1.x
- Old `1.0.0` (plugin) and `1.1` (NeoForge) splits are merged into a single jar starting at `2.0.0`.
- Config format moved from JSON to TOML. Re-create your `format` value in the new TOML config.
- The NeoForge-only `/pvn` command was removed; the addon now uses **Plasmo Voice's player info** path on every platform, which is what client-side mods (e.g. nickname mods) expect.
---
## Source
GitHub:
---
## Contributors
- **AsamiKafune** — original NeoForge port and internal nickname system that inspired the unified built-in resolver.