跳到主要内容

EternalTD 内容包

EternalTD 现在通过 content_packages 配置集合跟踪官方内容,并通过 /etd setup 暴露这些内容包。

内容包分类

当前代码使用三种内容包分类:

  • FREE
  • PREMIUM
  • RESOURCES

设置菜单当前将它们显示为:

  • Free Content
  • Premium Packs
  • Resources

已验证的预制内容包

这些是当前仓库中定义的预制内容包:

内容包分类可在 /etd setup 中切换跟踪的资源
EternalTD Hub WorldFreeNo服务器世界容器文件夹 etd_spawn
EternalTD TutorialFreeYestutorial.ymltutorial_waves.ymltutorial_npc.ymletd_tutorial
Towers of the Grassy LandsFreeYes5 个关卡文件、1 个 waves 文件、1 个 NPC 文件、5 个世界
Towers from the DepthsPremiumYes5 个关卡文件、1 个 waves 文件、1 个 NPC 文件、5 个世界
Towers of the Rising SunPremiumYes5 个关卡文件、1 个 waves 文件、1 个 NPC 文件、5 个世界
EternalTD Custom ModelsResourcesNo仅 marker 文件,以及在存在时导入的 FreeMinecraftModels 内容

内容包生命周期

当前内容包浏览器会区分:

  • 未下载
  • 未安装
  • 已安装
  • 部分安装
  • 已过期且可更新
  • 已过期但不可访问
  • 需要访问权限

该状态根据磁盘上的跟踪资源、跟踪配置文件中的 isEnabled 标志,以及 Nightbreak 访问/更新检查进行计算。

可切换内容包与共享内容包

可切换内容包通过切换以下路径中的跟踪配置文件里的 isEnabled 来工作:

plugins/EternalTD/levels/
plugins/EternalTD/waves/
plugins/EternalTD/npcs/

共享内容包的行为不同于普通开关:

  • hub world 被视为共享已安装内容。
  • 自定义模型内容包被视为共享资源内容。

对于这些内容包,设置菜单会提示你手动删除文件,然后运行 /etd reload

批量操作

当前已实现两个批量操作:

  • /etd downloadall
  • /etd updatecontent

这两个命令都会:

  • 需要已链接的 Nightbreak token
  • 下载到 plugins/EternalTD/imports
  • 跳过不可访问或已经是最新版本的内容包
  • 在成功下载后自动重新加载 EternalTD

实用说明

  • 内容包检查会在批量下载或更新前按 Nightbreak slug 去重。
  • 设置界面会在冷却时间内刷新内容和访问状态,而不是每次打开都请求 Nightbreak。
  • 自定义模型内容包会在 plugins/EternalTD/content_markers/ 下写入 marker,以便 EternalTD 跟踪共享资源包是否已下载。