概览
Chiikawa 模组里可以调的数值和清单,比如野生小伙伴在哪出现、公告板贴什么牌、商店卖什么、除草证有多难考、每个角色说什么话,都写在数据包里,不需要改代码。本章面向整合包作者,先介绍数据包放在哪、怎样覆盖、改完怎样生效,后面每一页讲一类文件。
数据包放在哪
数据包的写法和原版一样,pack.mcmeta 按你的游戏版本填,详见 Minecraft Wiki 的数据包词条。模组自己的文件都在 data/chiikawa/ 下,想看默认写了什么,直接解压模组的 jar,从 data/chiikawa/ 里把对应的文件复制出来改就行。
my_pack/
├── pack.mcmeta
└── data/
└── chiikawa/
├── pet_task/weeding.json 同名文件,替换模组自带的
└── tags/item/currency.json 标签,可以追加,也可以整个替换原版在 1.21 把一部分目录改成了单数,1.20.6 及更早的版本里是 tags/items、tags/blocks、tags/entity_types 和 loot_tables,1.21 起是 tags/item、tags/block、tags/entity_type 和 loot_table。模组自己的目录,比如 pet_task、shop_catalog,在所有版本里都一样。
怎样覆盖
覆盖规则和原版一样:
- 路径相同的文件,会整个替换模组自带的那一份。
- 放在你自己命名空间下的新文件,比如
data/my_pack/pet_task/mushroom_picking.json,会新增一项,适用于工作牌、小场面这类本来就有好几个文件的目录。 - 标签按原版的规则合并,
"replace": false是追加,true是整个换掉。
改完怎样生效
改完执行 /reload 就会生效,只有野生小伙伴的生成要重新进入世界。写错的文件会被跳过,日志里会说明是哪个文件、错在哪,其余的照常工作。这些文件都由服务端读取,在联机服里,数据包装在服务端就行。
文件里的时长都以 tick 计,20 tick 是 1 秒,一个游戏日是 24000 tick。
每一页讲什么
| 页面 | 文件 | 管什么 |
|---|---|---|
| 野生小伙伴在哪出现 | pet_spawn/ | 出现的群系、谁出现、多常见 |
| 标签 | tags/ | 驯服的食物、货币、职业的工具、干活时会碰的方块和生物 |
| 公告板 | labor_board/、pet_task/、loot_table/pet_task/ | 公告板的等级、工作牌的种类和报酬 |
| 商店 | shop_catalog/ | 价目表 |
| 送礼 | pet_gifting/ | 多久送一次礼、更想送什么 |
| 口哨糖 | pet_whistle/ | 口哨糖怎么吹 |
| 相机 | pet_camera/ | 小八怎么拍照、拍什么、一卷几张 |
| 除草证 | pet_qualification/ | 级数、报名费、通过率 |
| 性格 | pet_personality/ | 每个角色的意愿、喜好、考试的本事和闲着时的习惯 |
| 口头禅 | pet_voice/ | 每个角色在什么时候说什么 |
| 小场面 | pet_interaction/ | 小伙伴之间演的小场面 |
此外,配方、方块的掉落和进度都是原版格式,可以照原版的方式覆盖。第一次进入世界时送的《吉伊的打工手册》来自战利品表 loot_table/gifts/handbook.json,想换成别的见面礼,替换它就行。
