ZNPCs:用于在 Minecraft 中创建 NPC 的插件
依赖项: 服务器类型:Paper 或 Spigot 1.8.8–1.21.4 Minecraft 版本:1.8.8–1.21.4 依赖插件:PlaceholderAPI(可选,用于全息图中的变量) 下载:SpigotMC / GitHub 如果你需要用于大厅或装饰的简单…
依赖项: 服务器类型:Paper 或 Spigot 1.8.8–1.21.4 Minecraft 版本:1.8.8–1.21.4 依赖插件:PlaceholderAPI(可选,用于全息图中的变量) 下载:SpigotMC / GitHub 如果你需要用于大厅或装饰的简单 NPC,Citizens 可能会显得过于笨重。ZNPCs 用更简单的方式解决了同样的问题:它是一个单独的 .jar 文件,无需一大堆依赖,让你可以放置拥有自定义皮肤、
依赖项:
服务器类型:Paper 或 Spigot 1.8.8–1.21.4
Minecraft 版本:1.8.8–1.21.4
依赖插件:PlaceholderAPI(可选,用于全息图中的变量)
下载:SpigotMC / GitHub
如果你需要用于大厅或装饰的简单 NPC,Citizens 可能会显得过于笨重。ZNPCs 用更简单的方式解决了同样的问题:它是一个单独的 .jar 文件,无需一大堆依赖,让你可以放置拥有自定义皮肤、文本以及点击响应的角色。
主要功能
所有 NPC 都拥有唯一的数字 ID。你可以创建一个按昵称或 URL 设置皮肤的普通玩家,也可以放置像 ZOMBIE 或 SKELETON 这样的生物。
当玩家点击 NPC 时,插件会执行设定好的动作。这可以是一条消息、以玩家或控制台名义执行的命令,甚至通过 BungeeCord 将玩家发送到另一台服务器。如果有多个动作,它们会依次执行。你还可以为每个动作设置冷却时间(延迟)。
头顶文本(Lines)
你可以使用 lines 命令在 NPC 上方添加文本。插件支持颜色代码,如果安装了 PlaceholderAPI,还支持变量,例如 %player_name% 或 %server_online%。你还可以用 height 命令更改文本的高度。
路线(Paths)
NPC 不一定要站在原地。要让它行走,需要开启录制模式(/znpcs path create <名称>)并亲自走完所需的路线。完成后需要输入 /znpcs path exit。接着将该路线分配给特定的 NPC(/znpcs path set <id> <名称>),它便会开始沿其无限往返。
需要注意的一点:移动非常简单。ZNPCs 不使用原版寻路(Pathfinder),因此角色不会绕开障碍物,也不会对其他玩家做出反应。
装备与外观
可以给角色穿上盔甲,并让它们手持物品。只需拿起所需的物品并输入 /znpcs equip <id> <槽位>(可用槽位:HAND、OFFHAND、HELMET、CHESTPLATE、LEGGINGS、BOOTS)。
此外还可以通过 toggle 命令配置 NPC 的行为:让它注视附近的玩家(look)、镜像正在注视它的玩家的皮肤(mirror),或添加所选颜色的发光效果(glow)。
命令
这些命令需要管理员权限(znpcs.admin)。
命令 | 说明 | 权限 |
| 在你的坐标处创建一个 NPC | znpcs.admin |
| 删除一个 NPC | znpcs.admin |
| 显示 NPC 及其 ID 的列表 | znpcs.admin |
| 将 NPC 传送到你身边 | znpcs.admin |
| 将你传送到 NPC 身边 | znpcs.admin |
| 更改现有 NPC 的类型 | znpcs.admin |
| 更改角色的皮肤 | znpcs.admin |
| 将你手中的物品交给 NPC | znpcs.admin |
| 更改 NPC 上方的文本 | znpcs.admin |
| 更改文本的高度(默认 1) | znpcs.admin |
| 添加点击时的动作 | znpcs.admin |
| 显示 NPC 的动作列表(含其 ID) | znpcs.admin |
| 按 ID 删除一个动作 | znpcs.admin |
| 为动作的执行设置延迟 | znpcs.admin |
| 录制一条新路线 | znpcs.admin |
| 退出路线录制模式 | znpcs.admin |
| 为 NPC 分配路线 | znpcs.admin |
| 开启/关闭选项(look、holo、mirror) | znpcs.admin |
| 添加所选颜色的发光效果 | znpcs.admin |
action add 的动作类型:
CMD(以玩家名义执行命令)
CONSOLE(以控制台执行命令)
CHAT(玩家在聊天中发送消息)
MESSAGE(向玩家发送消息)
SERVER(通过 BungeeCord 转送到另一台服务器)
访问权限
这里一切都极其简单。几乎所有功能都只需要一个节点:
节点 | 所授予的权限 |
znpcs.admin | 对所有命令的完全访问权限 |
配置
config.json
参数 | 值 | 说明 |
| 500 | 单条 NPC 路线可录制的最大点数(步数)。如果路线过长,达到此上限时录制会自动停止。 |
| "DEFAULT" | 为 NPC 生成内部名称的算法。默认值可确保 ID 的正确绑定。 |
| TRUE | 在创建 NPC 时自动将其精确对齐到方块中心。防止模型偏移到方块边缘。 |
| "-" | 插件用于替换命令文本中的空格或生成标识符时所使用的符号。 |
| 600 | 将已创建的角色自动保存到 npcs.json 文件的间隔(600 秒 = 10 分钟)。可在服务器突然崩溃时防止数据丢失。 |
| TRUE | 启用调试模式。插件将开始在服务器控制台中输出详细的技术信息和错误日志。为保持控制台整洁,建议在稳定的服务器上将其关闭(false)。 |
| 0.3 | NPC 头顶全息图(文本)各行之间的间距。值越小,文本越紧凑。 |
| 32 | 服务器开始向玩家发送数据包以渲染 NPC 模型的半径(以方块为单位)。降低该值可节省服务器和客户端资源。 |
| FALSE | 对全息图文本的动态变色(RGB 渐变)支持。启用后可能给客户端带来额外负担。 |
npcs.json
所有已创建的 NPC 都会被写入 npcs.json 文件。插件会自动生成该文件,因此最好不要手动编辑。需要动这个文件的唯一理由,就是当你需要将已配置好的 NPC 迁移到另一台服务器时。
conversations.json
所有对话都保存在这里。
paths
保存所有已录制路线的文件夹。
data.json
这里保存着关于已创建 NPC 的所有详细信息。
集成
如果服务器上安装了 PlaceholderAPI,ZNPCs 会自动识别它,无需特殊扩展。例如,当你想在 NPC 上方显示动态的在线人数计数器时,这就会派上用场。
兼容性
原版 ZNPCs 仅能在 1.21.1 版本及之前正常运行。对于更新的服务器(1.21.1 及以上),需要安装分支版 ZNPC Plus。
此外,由于其处理实体的方式存在特殊性,该插件无法在 Folia 上运行。
何时应使用 ZNPCs
如果你需要在出生点放置一个只用于打开菜单、发放初始套装或将玩家转送到其他小游戏服务器的 NPC,那么 ZNPCs 是一个绝佳的选择。它恰好做到了它所承诺的功能,并且不会用多余的功能给服务器增加负担。
但如果你打算制作分支对话或复杂任务,那就需要 Citizens + Denizen 生态系统。ZNPCs 并不是为此而设计的。
安装
一次典型安装大约 5 分钟。流程相同,只是 Loader 和对应构建不同。
- 1Stop your Minecraft server.
- 2Drop the plugin .jar into the server /plugins folder.
- 3Start the server once so the plugin generates its config files.
- 4Edit /plugins/<name>/config.yml as needed, then run /reload confirm or restart.








