Holographic Displays 是一款基于 Minecraft 的 Bukkit/Spigot/Paper 全息图插件,可以通过纯数据包在服务端渲染全息图,无需生成任何实体。
- Bukkit Dev 页面:http://dev.bukkit.org/bukkit-plugins/holographic-displays
- API 教程:https://github.com/filoghost/HolographicDisplays/wiki
- 开发版构建:https://ci.codemc.io/job/filoghost/job/HolographicDisplays
- Spigot / Paper / Purpur / Folia 等,版本 1.8 – 1.21.11
- 1.21.9+ 的 Paper 系(Purpur/Folia 等)使用 Mojang 映射,已提供专用 NMS 模块(
v1_21_paper) - 1.21.9+ 的原版 Spigot 使用 Spigot 映射,使用
v1_21_r7模块 - 需要 Java 21+(运行 1.21.11 服务端)
<repository>
<id>codemc-repo</id>
<url>https://repo.codemc.io/repository/maven-public/</url>
</repository><dependency>
<groupId>me.filoghost.holographicdisplays</groupId>
<artifactId>holographicdisplays-api</artifactId>
<version>3.0.0</version>
<scope>provided</scope>
</dependency>maven {
url "https://repo.codemc.io/repository/maven-public/"
}compileOnly 'me.filoghost.holographicdisplays:holographicdisplays-api:3.0.0'本 fork 新增了一个可选的 ProtocolLib 渲染后端:文本全息图以纯数据包的形式渲染为
text_display 实体(TextDisplay),服务端不会生成任何实体,因此:
/paper entity list minecraft:text_display不会列出任何实体- 全息图不占用实体配额,也没有实体 tick 开销
- 文本数据索引在启动时通过临时实体进行运行时校准,兼容 1.21.x 的索引漂移
需要服务器安装 ProtocolLib(软依赖, 推荐 5.4.0 及以上版本)。当 ProtocolLib 缺失、索引校准失败或发包失败时,会自动 降级回退到默认的 NMS 渲染后端(同样是纯发包、服务端零实体),不会影响插件启用, 也不会踢出玩家。
在 config.yml 中:
options:
enable-holograms: true # 是否启用 ProtocolLib 虚拟全息图,默认开启true(默认):文本行优先使用 ProtocolLib TextDisplay 虚拟全息图false:强制使用默认的 NMS 渲染后端
修改后执行 /holograms reload 即可生效。
启用后启动日志会显示:
[HolographicDisplays] Using ProtocolLib virtual holograms (TextDisplay, zero server-side entities).
[HolographicDisplays] TextDisplay metadata indices calibrated: text=23, billboard=15
calibrated: text=...表示虚拟全息图后端已成功激活- 若出现
Could not detect the TextDisplay text index或降级警告,表示已自动回退到 NMS 渲染(实体列表验证仍然通过,因为 NMS 路径同样是纯发包)
Holographic Displays 是自由软件/开源软件,基于 GPL 3.0 许可证 分发。其中包含第三方代码,第三方代码的许可证信息请参阅随附的 THIRD-PARTY.txt 文件。