Skip to content
MOD 开发 · 游戏方块图集与加载器图标

历史 PAK 与数据文件参考

本页合并旧语雀教程中的 Content.pakBlocksData.txtClothes.xmlCraftingRecipes.xmlDatabase.xml 以及 .csv/.clo/.cr/.xdb 免打包格式。它们有助于理解数据结构,但不是 SCAPI 1.9 或 SuAPI 的当前安装步骤。

历史接口

旧教程覆盖 API 1.3–1.4、旧版 PAK 解包和直接修改游戏文件。当前开发必须先选择 SCAPISuAPI,再以目标分支的模板和加载器为准。

Content.pak 的职责

历史版本把大部分非代码内容集中在内容包中,包括:

  • BlocksData.txt:方块基础属性表;
  • Clothes.xml:衣物槽位、贴图、保温、防护和耐久等数据;
  • CraftingRecipes.xml:合成、拆解和加热配方;
  • Database.xml:实体、组件、子系统和项目模板;
  • AtlasesTexturesModelsAudio:界面、纹理、模型和声音;
  • DialogsScreensStylesWidgets:历史 UI 布局资源。

直接重打整个 PAK 会放大冲突和分发风险。现代加载器允许时,应只携带 MOD 实际修改的条目和资源。

方块数据

BlocksData 教程逐列解释了显示、碰撞、透明、工具、燃料、耐久、纹理槽等属性。不同版本可能增删列或改变含义,因此建议:

  1. 从目标版本取得表头,而不是复制旧模板;
  2. 用稳定标识匹配条目,不依赖“看起来空闲”的数字 ID;
  3. 保持代码、配方、本地化和纹理引用一致;
  4. 先在空白世界测试,再迁移已有存档。

纹理槽通常按图集网格计算。旧教程的固定宽度公式只适用于对应图集布局;当前项目应从源码或资源元数据核对。

衣物数据

衣物条目会关联穿戴部位、层级、纹理、耐久、保温、防护、移动与密度修正。新增衣物不能只复制 XML:还要确保索引唯一、贴图路径正确、本地化存在,并测试多层穿戴与水中行为。

当前源码快照中的衣物数据已整理到衣物与盔甲图鉴,可用于阅读结构,但不应当成所有版本通用数值。

配方数据

配方由产物、数量、材料映射、排列图案和所需热量组成。新增配方时检查:

  • 产物与材料标识是否属于目标加载器;
  • 有序图案中的空格、行宽和字符映射;
  • 是否与已有配方产生无法区分的冲突;
  • 加热配方是否使用正确热量等级;
  • 本地化描述是否让玩家能在 Recipaedia 中理解。

本站的完整配方索引由当前源码快照生成,可作为结构示例。

Database 的继承关系

Database.xml 不是普通配置表。项目、子系统、实体模板和组件之间存在继承与引用。历史名词表中的常见概念可归纳为:

层级作用
Project / ProjectTemplate世界项目及其模板
Subsystem世界范围的系统与持久化服务
EntityTemplate可生成实体的模板
Component实体的一部分状态或行为
Parameter / Value具体配置值或对其他条目的引用

复制节点时必须追踪父级、名称和引用。只改显示名称无法创建独立实体,错误继承还可能让世界在加载阶段失败。

旧免打包扩展

.csv.clo.cr.xdb 等格式曾用于只携带差异条目,减少重打 PAK。它们的合并规则、删除语义和加载顺序由旧 API 决定。现代项目可以借鉴“最小差异包”的思想,但不能默认扩展名仍受支持。

不再推荐的步骤

  • 修改唯一游戏安装中的原始 Content.pak
  • 用旧版工具覆盖当前数据表;
  • 发布包含完整游戏资源的 PAK;
  • 只改数字 ID,不建立项目内分配清单;
  • 把旧 modinfo.json 示例原样用于 API 1.9 或 SuAPI。

下一步阅读数据与素材扩展测试与发布

玩家共建文档 · 原版、插件版、联机版与插件联机版请注意区分