Minecraft · Guide

如何在 Minecraft 服务器上安装 datapacks

更新于 July 27, 2026 2 分钟阅读

本页内容
  1. Datapacks、plugins 与 mods 的区别
  2. 第 1 步:为你的版本找到 datapack
  3. 第 2 步:安装到 world 的 datapacks 文件夹
  4. 文件夹在哪里:自建 vs 托管
  5. 为什么 datapack 无法加载
  6. 用好多个 datapacks
  7. 常见问题

Datapacks 是无需任何一个 mod 或 plugin 就能改变 Minecraft 服务器玩法的最简单方式。新配方、自定义 loot、生物行为、小游戏、各种体验优化——全都构建在 vanilla Minecraft 之上,全都从一个文件夹加载,任何加入的玩家都无需安装任何东西。

本指南会准确说明 datapacks 放在哪里、如何一步步安装、为什么有时它会拒绝加载,以及无论你是自建还是租用,这个文件夹都在什么位置。只要知道了文件夹,大约两分钟就能搞定。

Datapacks、plugins 与 mods 的区别

这三者都会改变你的服务器,但它们并不是一回事,而把它们混为一谈正是安装失败的常见原因:

  • Datapacks 内置于 vanilla Minecraft。它们改变数据——配方、loot 表、函数、结构——并从你 world 内部的一个文件夹加载。无需额外软件,玩家那一侧也不需要任何东西。
  • Plugins 是服务器端附加组件,需要 Paper 或 Spigot 才能运行(参见安装 plugins)。Datapacks 在纯 Vanilla 上就能工作;plugins 则不行。
  • Mods 需要像 Forge 或 Fabric 这样的加载器,而且每个玩家都要安装相同的 mods(参见modded 服务器)。

由于 datapacks 是 vanilla 且运行在服务器端,它们是自定义 survival 或 SMP 服务器最轻量的方式——而且它们在 Paper 上也能顺畅运行,因此你可以在同一台服务器上把 datapacks 和 plugins 结合起来。

第 1 步:为你的版本找到 datapack

Datapacks 以 .zip 文件的形式发布。主要来源是 Modrinth 和 Planet Minecraft,以及创作者自己的页面。

  1. 匹配你的 Minecraft 版本。这是最容易让人栽跟头的一点。为旧版本制作的 datapack 可能会拒绝在较新的服务器上加载,因为它的 pack.mcmeta 声明了一个与游戏版本绑定的 pack_format 数字。请下载列出了你服务器版本的那个发行版。
  2. 下载 zip——不要解压。Minecraft 会把 datapack 作为 .zip 加载。解压是一个常见错误(解压后的文件夹也可能可用,但前提是内部结构完全正确——用 zip 更稳妥)。

第 2 步:安装到 world 的 datapacks 文件夹

Datapacks 位于某个特定的 world 内部,也就是那个 world 的 datapacks 文件夹中。整个安装就是这样:

  1. 打开你的 world 文件夹。每个 datapack 的路径都是 <world>/datapacks/。如果你的 world 名为 world,那就是 world/datapacks/
  2. 把 zip 放进去。把 datapack 的 .zip 直接放进那个 datapacks 文件夹——不要放进子文件夹。
  3. 加载它。如果服务器正在运行,在控制台或游戏内输入 /reload;否则它会在下次启动时加载。会添加世界生成内容的全新 datapack 应该在 world 首次创建之前就加进去。
  4. 验证是否已加载。运行 /datapack list——你的 pack 应当出现在已启用列表中。如果某个 pack 存在但被禁用,用 /datapack enable "file/name.zip" 启用它。
请先备份。Datapacks 可能会更改配方和世界数据;添加之前先给 world 做一次快照,这样如果你不喜欢就能干净地回滚。

省去折腾 SFTP 的麻烦——HytHost Minecraft 服务器让你把 datapack 放进文件管理器,几秒钟内 /reload。

查看 Minecraft 套餐

文件夹在哪里:自建 vs 托管

文件夹是一样的;只是你访问它的方式不同。

  • 自建。World 位于你的服务器目录中(或者对于你正在转换的单人 world,则在 saves/ 下),所以路径是 <server>/world/datapacks/。用你的文件资源管理器把 zip 复制进去。
  • 托管。打开面板的文件管理器(或通过 SFTP 连接),浏览到 world/datapacks/,上传 zip——然后从网页控制台运行 /reload。在 HytHost Minecraft 服务器上,这只是一次拖放加一次点击,而且如果你想先做快照,一键备份就在那里。

如果你的服务器运行多个 worlds(Nether/End 分离,或者 multiverse 设置),请记住 datapacks 是按 world 划分的——把它们装进你真正想要的那个 world。

为什么 datapack 无法加载

几乎每一个加载失败的 datapack 都归结为以下之一:

  • 版本不匹配。pack 的 pack_format 与你的 Minecraft 版本不符——控制台会就不兼容的 pack 发出警告。请获取与你的确切版本对应的发行版。
  • 文件夹放错了。它必须在 worlddatapacks 文件夹里,而不是服务器根目录或某个 resource pack 文件夹。
  • 你忘了 reload。在你运行 /reload 或重启之前什么都不会发生。之后,用 /datapack list 确认。
  • 它其实是个 resource pack。Resource packs 改变游戏的外观,属于客户端/服务器列表设置,而不是 datapack——它们不放在这个文件夹里。

还是搞不定?在启动时或运行 /reload 之后查看控制台——datapack 的错误会连同文件名和原因一起打印在那里。

用好多个 datapacks

  • 留意冲突。两个编辑同一配方或 loot 表的 datapacks 可能会冲突。逐个添加并测试,这样你就知道是哪一个引起了问题。
  • 顺序可能很重要。当多个 packs 重叠时,加载顺序决定谁胜出;你可以用 /datapack enable 及其 first/last/before/after 选项来设置。
  • 让它们与你的服务器保持同版本。更新 Minecraft 时,也要更新你的 datapacks,否则版本不匹配的那些会停止加载。
  • 与 Paper 结合,兼得两者之长。Datapacks 负责对 vanilla 友好的内容,plugins 负责管理与保护——它们在 Paper 服务器上可以很好地共存。
常见问题

常见问题解答

Datapack 是 vanilla Minecraft 内置的功能,用来改变游戏数据——配方、loot 表、函数、结构等等——从某个 world 内部的文件夹加载。它无需额外软件,玩家也无需安装任何东西,这使它成为自定义服务器最轻量的方式。

Datapack 是纯 vanilla 且运行在服务器端,从 world 文件夹加载。Plugin 是服务器端附加组件,需要 Paper 或 Spigot。Mod 需要像 Forge 或 Fabric 这样的加载器,而且也必须由每个玩家安装。在这三者中,datapacks 是唯一能在未经修改的 Vanilla 服务器上、且客户端零配置就能工作的。

在 world 内部,位于 <world>/datapacks/——对于名为 world 的 world,就是 world/datapacks/。自建时它在你的服务器目录中;使用托管时,你通过面板文件管理器或 SFTP 访问它。Datapacks 是按 world 划分的,所以把它们装进你想要的那个具体 world。

不需要。Datapacks 完全在服务器上运行,所以玩家只要加入就能玩——他们那一侧无需下载或启用任何东西。这正是相较于 mods 的巨大优势,后者要求每个玩家都安装相同的 mods 才能连接。

通常是版本不匹配(pack 的 pack_format 与你的 Minecraft 版本不符)、zip 放错了文件夹,或者忘了运行 /reload。用 /datapack list 查看它是否加载,并查看控制台——datapack 的错误会连同文件名和原因打印在那里。

能。Datapacks 是 vanilla 功能,Paper 和 Spigot 完全支持,所以你可以在同一台服务器上同时运行 datapacks 和 plugins——datapacks 负责对 vanilla 友好的内容,plugins 负责管理。它们以完全相同的方式安装到 world 的 datapacks 文件夹中。

让安装 datapacks 变成拖放操作的服务器

在 HytHost Minecraft 服务器上,上传 datapack 就是拖进文件管理器再点一下 /reload——先来一键备份,几分钟内你的 world 就能上线。

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours