跳到正文

MCA Village Ranks

作者:SpaceCat_97

为《Minecraft Comes Alive Reborn》扩展村庄发展进程,支持数据包 JSON 文件和 MCA 现有的任务系统

收藏

介绍

介绍由机器翻译自 CurseForge 原页面,仅供参考。

MCA Village Ranks 将 MCA 原有的等级进阶替换为按顺序排列的阶段列表,旨在鼓励你将村庄从小型定居点发展成宏伟都市。

对于服务器服主、数据包创作者和整合包制作者,这个模组允许你通过数据包或配置文件创建新阶段并替换现有阶段。进阶路线可以包含任意数量的阶段,而不再受限于 MCA 内置的六个等级。

每个自定义阶段都有自己的 MCA 等级映射和任务列表。任务使用 MCA 现有的任务定义和完成检查方式,因此与原模组及其附属内容保持最大程度的兼容。

 

配置

这个模组无需配置即可游玩,不过你也可以修改村庄等级。

若要禁用本模组自带的默认等级,请找到配置文件“config/mca_rank_customiser.json”,并将“enableDefaultRanks”改为false。

这不会禁用外部数据包,只会禁用本模组创建的默认村庄等级。

 

自定义数据包

外部等级定义会从 mca_custom_ranks 数据目录读取。你必须在数据包的此处放置等级定义 JSON 文件。数据包可以使用任意命名空间。例如:

my_village_progression/
├── pack.mcmeta
└── data/
    └── example/
        └── mca_custom_ranks/
            ├── settlement.json
            ├── hamlet.json
            ├── village.json
            └── town.json

等级 JSON 格式

等级定义包含以下字段:

字段 类型 用途
order 整数 该阶段在进阶路线中的位置,必须大于或等于零。
mca_rank 字符串 MCA 进行内部检查时使用的现有 MCA 等级。
tasks 数组 此阶段所需的 MCA 任务 JSON 对象。

示例:settlement.json:

{
  "order": 0,
  "mca_rank": "PEASANT",
  "tasks": [
    {
      "type": "population",
      "population": 5
    },
    {
      "type": "building",
      "building": "house"
    }
  ]
}

任务 JSON 由 MCA 定义。中的对象tasks必须遵循 MCA 所注册任务类型所要求的 JSON 格式。你可以在所用版本的 MCA 源代码中找到最新信息。

任务类型

人口:当村庄人口达到或超过所设阈值时,人口任务即告完成。

{
  "type": "population",
  "population": 10
}

建筑:当村庄拥有指定建筑时,建筑任务即告完成。示例:

{
  "type": "building",
  "building": "inn"
}

声望:当玩家声望达到或超过所设阈值时,声望任务即告完成。示例:

{
  "type": "reputation",
  "reputation": 400
}

进度: 当玩家解锁指定进度时,进度任务即告完成。示例:

{
  "type": "advancement",
  "id": "mca:adventure/kill_grim_reaper"
}

 

翻译

MCA 使用翻译键,本模组也遵循这一做法。

自定义等级名称使用以下格式的翻译键:

rank.<namespace>.<path>

 

重要的数据包规则

  • 顺序:使用递增的 order 值定义预期的进阶路线。数值较小的阶段排在前面。
  • 非负数:order 不能是负数。
  • MCA 映射:字符串mca_rank必须对应一个 MCA 枚举值,大小写不敏感。有效值包括 OUTLAW、PEASANT、MERCHANT、NOBLE、MAYOR和MONARCH。
  • 空任务列表:没有任务的等级可能仍会加载,但加载器会发出警告。由于没有必需任务阻止其完成,这个阶段可能会立即完成。
  • 重复的 order 值:加载器会报告重复的 order 值。为每个阶段指定不同的 order,能让进阶路线更清晰,也更易维护。
  • 映射等级倒退:如果某个阶段映射到的 MCA 等级低于之前已接受的阶段,该阶段会在进阶验证时被跳过。自定义进阶路线不断推进时,MCA 等级映射应保持不变或逐步提高。
  • 无效条目:无效的等级文件会被记录并跳过,不会阻止其他有效等级文件加载。如果某个等级没有出现,请在服务器启动或重新加载数据包后检查服务器日志。
  • 验证:本模组内置了验证功能。如果遇到问题,请查看最新的 latest.log 文件。

出问题了!

等级没有出现
确认文件位于 data/<namespace>/mca_custom_ranks/ 目录下。
确认文件扩展名为 .json,且 JSON 语法有效。
确认 order 是大于或等于零的整数。
确认 mca_rank 是六个受支持的 MCA 枚举值之一。
检查日志中是否有解码错误、重复的任务 ID 或进阶验证警告。
确认数据包已启用并由世界加载。

内置进阶路线缺失
检查 config/mca_rank_customiser.json,并确认 enableDefaultRanks 已设为 true。即使此选项为 false,外部数据包中的等级仍可加载。

蓝图仍显示 MCA 的常规进阶路线
只有加载了至少一个有效的自定义等级时,才会启用自定义蓝图集成。运行 /mca-admin villageRanks,确认服务器已加载预期的阶段。

自定义等级名称显示为翻译键
在语言资源文件中添加相应的 rank.<namespace>.<path> 条目,并使用该等级的命名空间和路径。

阶段立即完成
检查任务列表。空任务列表没有需要满足的条件。还要确认任务定义使用了预期的阈值和标识符。

 

常见问题

MCA Village Ranks 支持哪些 Minecraft 版本?

MCA Village Ranks 支持 Minecraft Java 版 1.21.1,可用的加载器:Fabric / NeoForge。下载时注意选择和你游戏版本一致的文件。

MCA Village Ranks 怎么安装?

先用 PCL2 或 HMCL 启动器安装对应版本的 Fabric / NeoForge,再把下载的 .jar 文件放进游戏目录的 mods 文件夹,重新启动游戏即可。开启了版本隔离的,mods 文件夹在 versions/版本名 下面。

评论

登录后评论和评分

SpaceCat_97 的其他作品

查看全部 →