打包皮肤包
在本教程中,您将学习以下内容:
- 《我的世界》基岩版中皮肤包的文件夹和文件结构。
- 如何为皮肤包构建必要的元数据文件以及如何使用它们定义皮肤。
皮肤包文件夹结构
manifest.json
清单文件告知《我的世界》关于您的皮肤包的一般性信息。 在皮肤包的根目录创建一个名为 manifest.json
的 JSON 文件。 其中包含以下内容:
name
name:包的名称,始终是pack.name
。version
version:包的版本。 例如,[1, 0 ,0]
表示版本 1.0.0。uuid
uuid:防止包冲突的唯一标识符,可以从这个站点生成:https://www.uuidgenerator.net/version4(需要生成两个不同的 UUID)。type
type:设置为skin_pack
以告诉游戏将此包视为皮肤包。
模板 manifest.json
{
"header": {
"name": "pack.name",
"version": [1, 0, 0],
"uuid": "<FIRST GENERATED UUID>"
},
"modules": [
{
"version": [1, 0, 0],
"type": "skin_pack",
"uuid": "<SECOND GENERATED UUID>"
}
],
"format_version": 1
}
skins.json
skins.json
文件将定义您的皮肤包附带的皮肤。 在皮肤包的根目录创建一个名为 skins.json
的 JSON 文件。 其中包含以下内容:
localization_name
localization_name 和serialize_name
:它们是相同的,作为本地化键,它们的值稍后在en_US.lang
中定义,完整键是skinpack.<localization_name>
。 该值将是包的标题。 该键也将始终附加到每个单独皮肤的本地化键之前。skins
skins:定义的集合,分别定义一个皮肤。
每个单独的皮肤定义将包含以下内容:
localization_name
localization_name:本地化键,其值稍后在en_US.lang
中定义。 该值将是单个皮肤的名称。geometry
geometry:此皮肤适用的基础模型。geometry.humanoid.customSlim
geometry.humanoid.customSlim 是艾莉克斯模型,geometry.humanoid.custom
是史蒂夫模型。texture
texture:皮肤包根目录中每个皮肤材质的文件名。type
type:free
或paid
。 非市场合作伙伴可能拥有任意数量的免费皮肤但没有付费皮肤,而市场合作伙伴可能拥有最多 2 个免费皮肤并且能够添加付费皮肤。
模板 skins.json
{
"serialize_name": "TemplateSkinPack",
"localization_name": "TemplateSkinPack",
"skins": [
{
"localization_name": "TemplateSkin1",
"geometry": "geometry.humanoid.customSlim",
"texture": "skin_file_name1.png",
"type": "free"
},
{
"localization_name": "TemplateSkin2",
"geometry": "geometry.humanoid.custom",
"texture": "skin_file_name2.png",
"type": "free"
},
{
"localization_name": "TemplateSkin3",
"geometry": "geometry.humanoid.customSlim",
"texture": "skin_file_name3.png",
"type": "paid"
},
{
"localization_name": "TemplateSkin4",
"geometry": "geometry.humanoid.custom",
"texture": "skin_file_name4.png",
"type": "paid"
},
{
"localization_name": "TemplateSkin5",
"geometry": "geometry.humanoid.custom",
"texture": "skin_file_name5.png",
"type": "paid"
}
]
}
皮肤材质
实际的皮肤材质是 PNG 文件。 文件名在 skins.json
元数据文件中引用。 它们只能在皮肤包的根部使用。 您可以使用 Blockbench 为您的皮肤包创建一个可用的皮肤 PNG。
texts 文件夹
此文件夹包含 en_US.lang
和 languages.json
文件,它们定义了包和皮肤的实际名称以及您的包支持的语言。 =
后面的名称是显示在游戏中(如皮肤选择器中)的名称。
en_US.lang
这是您命名包和皮肤的文件。
- 包的名称:skinpack.[skins.json localization_name]=[name of pack]
skinpack.[skins.json localization_name]=[name of pack]
- 皮肤的名称:skin.[skins.json localization_name].[skins.json single skin localization_name]=[name of skin]
skin.[skins.json localization_name].[skins.json single skin localization_name]=[name of skin]
下面的模板使用模板 skin.json
中的“localization keys”来命名包“Your Skin Pack Name Here”,并将各个皮肤命名为“Skin Name 1-5”。
模板 en_US.lang
skinpack.TemplateSkinPack=Your Skin Pack Name Here
skin.TemplateSkinPack.TemplateSkin1=Skin Name 1
skin.TemplateSkinPack.TemplateSkin2=Skin Name 2
skin.TemplateSkinPack.TemplateSkin3=Skin Name 3
skin.TemplateSkinPack.TemplateSkin4=Skin Name 4
skin.TemplateSkinPack.TemplateSkin5=Skin Name 5
languages.json
此文件告诉《我的世界》您的皮肤包支持哪些语言。 仅英语是必需的。 如果您想支持其他语言,可以制作其他 xx_YY.lang
文件,然后进行编辑此文件,以告诉游戏您支持这些语言。
当前支持以下区域设置/语言:
- "en_US"
- "de_DE"
- "ru_RU"
- "zh_CN"
- "fr_FR"
- "it_IT"
- "pt_BR"
- "fr_CA"
- "zh_TW"
- "es_MX"
- "es_ES"
- "pt_PT"
- "en_GB"
- "ko_KR"
- "ja_JP"
- "nl_NL"
- "bg_BG"
- "cs_CZ"
- "da_DK"
- "el_GR"
- "fi_FI"
- "hu_HU"
- "id_ID"
- "nb_NO"
- "pl_PL"
- "sk_SK"
- "sv_SE"
- "tr_TR"
- "uk_UA"
模板 languages.json
[
"en_US"
]
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈