Skip to content

Repository files navigation

Holographic Displays

Holographic Displays 是一款基于 Minecraft 的 Bukkit/Spigot/Paper 全息图插件,可以通过纯数据包在服务端渲染全息图,无需生成任何实体。

支持的服务端

  • 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 服务端)

依赖引入

Maven

<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>

Gradle

maven {
  url "https://repo.codemc.io/repository/maven-public/"
}
compileOnly 'me.filoghost.holographicdisplays:holographicdisplays-api:3.0.0'

虚拟全息图(ProtocolLib TextDisplay,服务端零实体)

本 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 文件。

About

适配HolographicDisplays至1.21.11并添加虚拟全息图功能

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages