Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement
Disambig gray.svg  本文章介绍的是为Java版制作资源包。关于基岩版上的行为包,请见“教程/制作行为包”。
Information icon.svg
此特性为Java版独有。
Clock JE3 BE3.gif
此条目需要更新。

条目中某些信息可以参照英文版进行翻译更新。

Iron Pickaxe JE3 BE2.png
该页面的编辑正在进行中。 讨论

请帮助我们扩充或改进这篇文章。

开始制作[]

注意:完成本教程大约需要1至1.5个小时。

资源包可以修改纹理、模型、动画、声音、用户界面和语言。

不可以做的事[]

在制作资源包之前,你应该知道有些事是不能做的。下面列举了一些不能做的事:

  • 做任何违反Mojang的Minecraft使用条款的事。
  • 发布Minecraft版本或其修改版本,允许别人在没有从Mojang购买Minecraft的情况下进行游戏。
  • 以任何方式发布Minecraft的反编译源代码。

所需要的工具[]

完成此教程需要准备以下软件:

一个文件解压程序[]

如果你是Windows系统,那么本页面推荐使用WinRAR,进入链接以下载:https://www.rarlab.com/download.htm

一个文本编辑器[]

你可以使用任何一种文本编辑器,但本页面建议你使用集成开发环境(IDE)。Visual Studio Code是一款不错的文本编辑器,进入链接后并点击Download for Windows,链接:https://code.visualstudio.com/

一个图像编辑器[]

微软画图软件可用于编辑大多数的图像,但它无法编辑那些带有透明度的图像(比如鸡的纹理),但画图3D可以。

GIMP(GNU图像处理程序)是一款实用的图像编辑器,它可以编辑有透明度的图像,进入此链接下载。

Paint.NET也可以编辑有透明度的图像,并且拥有更简单和基本的用户界面,进入此链接下载。

一个3D模型编辑器[]

你可以使用任何一种3D模型编辑器,但是本页面推荐使用Blockbench,因为它可以较为方便地将工程输出为.json格式,进入链接以下载:https://blockbench.net/

一个音轨编辑器[]

Audacity可以迅速编辑你的音效。

创建资源包[]

进入.minecraft/resourcepacks文件夹创建一个新文件夹并将其命名为“教程资源包”,然后打开它。

创建MCMETA文件[]

右键选择新建文本文档,并将其重命名为“pack”。这样游戏系统知道该文件夹是一个资源包,还允许您自定义在游戏中选择使用资源包时出现的描述。

注意

重命名时,请确保文件扩展名为.mcmeta,而不是.txt可能会弹出“如果要改变文件扩展名,可能会导致文件不可用!”的警告,选择“是”。

如果看不到文件扩展名,可以转到“文件资源管理器”的“视图”菜单并勾选“文件扩展名”复选框来启用它们。

FileExtensions.png

你必须使用英文半角去输入代码(例如双引号“"”、空格“ ”、以及所有括号“{[()]}”等,中文全角格式无法被Minecraft识别)

pack.mcmeta[]

在你选择的文本编辑器中打开pack.mcmeta并复制或键入以下内容:

{
    "pack": { 
        "pack_format": X,
        "description": "Tutorial Resource Pack"
    }
}

pack_format[]

你应该根据你的Minecraft版本替换“pack_format”后面的X

“pack_format”需为:

(在pack_format 3和更高版本(1.11和更高版本)中,资源包中的所有文件名都只能有小写字母)

Description[]

你可以留下描述,也可以把它改成更激动人心的东西。如果你决定需要具有特殊字符的内容,可以在此处查找其代码。假设你想用“Þ”这个字母,你可以把它放在\u00DE中。只需记住是反斜杠而不是斜杠。(Minecraft只支持字符0000-FFFF(BMP)

注意

这个文件是用JSON写的!我们现在不会详细讨论格式,但要注意保持它的排列。注意不要漏了任何一个引号、冒号和花括号或方括号。缺少其中一个可能会导致资源包无法正常工作!

测试我们的资源包[]

现在我们准备在游戏中测试它!启动Minecraft并打开选项,然后单击资源包。如果使用上述代码,您的游戏应该如下所示:

TestingJavaPack.png

故障排除[]

如果你没有在游戏中看到包,确保pack.mcmeta是正确的。如果不是,查找缺少的大括号{},逗号冒号:,引号"",或方括号[]。记住,对于每个左大括号、左中括号或前引号,必须有对应的右大括号、右中括号或后引号。

包图标[]

如果未指定图标,则包旁边将显示圆石图标。任何图像都可以在此处使用,只要它名为pack.png。如果pack.png为非正方形图片,Minecraft会截取其中的方形部分。

为资源包添加内容[]

更改一个实体的纹理[]

现在我们已经建立了我们的资源包,让我们修改苦力怕的纹理!

但是,在我们开始绘制之前,我们需要设置Minecraft希望资源包位于其中的文件夹结构。为此,请执行以下操作:

  1. 在我们的教程资源包文件夹中创建assets/minecraft/textures/entity文件夹。
  2. 使用你所选择的文件解压程序打开.minecraft/versions/<版本号>/<版本号>.jar文件,然后提取assets/minecraft/textures/entity/creeper文件夹到新创建的entity文件夹中。

现在我们有了正常的苦力怕纹理,在你选择的图像编辑器中打开它。应该是这样的:

CreeperTexture1.png

你可能会察觉到图片太小了, 所以请放大以便清晰地观察纹理。在微软画图软件中,你可以通过窗口右下角的滑块来控制放大率。

CreeperTexture2.png
关于纹理的快速说明

如果你以前从未看过纹理图,上方的图片可能会让你一头雾水。一个形象的解释是这就像用彩纸包裹礼物,不过在这里我们的彩纸是纹理。下方是苦力怕纹理的布局:

TextureLayoutMap.png
标记说明
Top 立方体顶部
Bot 立方体底部
Left 左面
Frnt 前面
Rt 右面
Bck 后面

相同颜色的区域朝向相同(比如说,红色区域都是立方体的前面。)

它在游戏里看上去是这样的:

Howthislooksingame.jpg
提示

不是每个实体纹理都是以相同的方式布局的!你需要进行试验并找出它们的布局是怎样的。

现在就是发挥你创造力的时刻了!你想怎么画苦力怕就怎么画。为了简单,我就给它加一个发带好了。

Creeperheadband.png

当你对所画的纹理感到满意时,请以.png的格式保存图片,并且确保文件名为“creeper”。游戏只会匹配有正确文件名的文件。如果你不知道所画纹理对应的文件名,请参照原版Minecraft资源包中的文件名。

更改一个方块/物品的模型[]

主条目:模型

有时你可能想更改 Minecraft 中的模型,下面给出一种简单易上手的方法。

准备材料[]

梯子为例,默认状态下 Minecraft 中的梯子不是3D模型,假设你想将它升级为3D模型。为此,请执行以下操作:

  1. 在我们的教程资源包文件夹中分别创建assets/minecraft/blockstatesassets/minecraft/models/blockassets/minecraft/models/itemassets/minecraft/textures/block文件夹。
  2. 使用你所选择的文件解压程序打开.minecraft/versions/<版本号>/<版本号>.jar文件,然后提取以下内容到指定位置:
    1. assets/minecraft/blockstates/ladder.json到新创建的blockstates文件夹中。
    2. assets/minecraft/models/block/ladder.json到新创建的models/block文件夹中。
    3. assets/minecraft/models/item/ladder.json到新创建的item文件夹中。
    4. assets/minecraft/textures/block/ladder.png到新创建的textures/block文件夹中。

现在你可以先通过图像编辑器修改梯子的纹理,也可以直接开始编辑梯子的3D模型。

建模[]

我们将使用页首所推荐的3D建模软件 Blockbench。双击打开程序,然后按下组合键Ctrl+O以打开文件浏览器,找到并导入在 models/block 中的 ladder.json。

替换现有的音效或音乐[]

替换默认音乐的部分步骤

就像调整默认的模型材质一样,你可以替换默认的音乐或音效。下面以改变与末影龙战斗时的 BGM 为例,对具体的方法做出介绍。

查找文件路径[]

与更改材质类似,我们需要首先找到声音文件所在的路径。

  1. 打开你的.minecraft文件夹,打开“assets”文件夹。再打开“indexes”文件夹,找到对应游戏版本的.json文件(比如1.16.json),用文本编辑器打开它。
  2. 在此文件中,你可以找到Minecraft中的所有声音文件。按下CTRL + F查找需要的声音文件。
    • 此列表包含了所有音乐的文件名。
  3. 声音路径看起来应该是这样的:minecraft/sounds/music/game/end/boss.ogg

导入你的音乐[]

  1. 在你的资源包文件夹中打开assets/minecraft文件夹。
  2. 创建一个名为sounds的新文件夹。
  3. 打开sounds文件夹,根据声音的路径继续创建新文件夹。如果你的声音路径是这样的:minecraft/sounds/music/game/end/boss.ogg,那么你需要创建这些文件夹:minecraft/sounds/music/game/end
  4. 在最后一个文件夹(在此示例中为end)里就可以放入你制作的声音文件了。确保已将文件重命名为与正在替换的文件相同的名称(在此示例中为boss.ogg)。
    • 注意!此文件必须是一个.ogg文件。
    • 背景音乐要用立体声,音乐唱片要用单声道。用音轨编辑器转换。

测试音乐[]

如果一切正常,那么你已成功替换了Minecraft中的声音。若要测试它:

  1. 确保已启用资源包。
    • 如果整个过程中一直在加载了资源包的情况下运行Minecraft。请使用F3 + T重新加载资源包。
  2. 使用/playsound命令来播放声音。在此示例中需输入:/playsound minecraft:music.dragon master @s

添加新的音效或音乐[]

Iron Pickaxe JE3 BE2.png
该页面的编辑正在进行中。 讨论

请帮助我们扩充或改进这篇文章。

除了修改默认的音乐或音效之外,你还可以添加属于自己的!在本例当中,我们将在不替换任何文件的条件下,添加一个全新的玩家受伤音效。

找到源路径[]

在添加音频之前,你需要知道它在游戏源文件中应该存在的位置。

  • 打开你的 .minecraft 文件夹,打开“assets”文件夹。再打开“indexes”文件夹,找到对应游戏版本的 .json 文件(比如1.16.json),用文本编辑器打开它。
  • 在此文件中,你可以找到 Minecraft 中的所有声音文件。按下CTRL + F查找需要的声音文件。

添加文件夹和音频[]

  1. 在你的资源包文件加夹中打开Tutorial_Resource_Pack/assets/minecraft
  2. minecraft 文件夹中创建一个叫sounds的文件夹。
    • 如果已经存在这个文件夹的话直接打开就可以。
  3. sounds 文件夹中,创建一个和你想要添加的音效或音乐的同类型的音频所在的文件夹。在本例当中,我们创建的是damage
  4. 在这个文件夹中添加音频。
    • 音频文件必须是 .ogg 格式的。
    • 另外要注意那些已经存在的音频文件。在本例当中,其他的五个音频文件已存在于 minecraft/sounds/damage/ 文件夹内,两个用于从不同高度衰落的情况。(fallbig.oggfallsmall.ogg)剩下的三个是受到伤害时的(hit1.ogghit2.ogg、和 hit3.ogg)。因为我们是想添加文件,所以最好不要和这些文件重名。为了简化,这里使用hit4.ogg

修改声音事件[]

由于我们添加了新的音效,所以我们必须修改对应的声音事件,这些事件一般在 .sound 文件夹中。

  1. 返回你资源包的 assets/minecraft 文件夹中。
  2. 创建一个文本文件,命名为 sounds.json。确保这个文件的后缀是 .json 而不是其他的。
  3. 根据你的选择,粘贴对应的例子到 .json 中:
{
  "entity.player.hurt": {
    "sounds": [
      {
        "name": "damage/hit1"
      },
      {
        "name": "damage/hit2"
      },
      {
        "name": "damage/hit3"
      },
      {
        "name": "damage/hit4"
      }
    ],
    "subtitle": "Hurt"
  }
}
  • 上面的代码只适用于这个教程,我们在这里添加了一个新的受伤音效。而如果你想要改变不同的音效,请 entity.player.hurt 替换为原版 sounds.json 中所列举的那些音效。
  • 通过在游戏中使用 /playsound 这个指令,你可以确定所使用的 ID 是否正确。在本教程当中,使用/playsound minecraft:entity.player.hurt master @s 可以帮助确认这一点。
  • 确保你所使用的名字是小写英文字母,否则,这个资源包可能会失效。
  • 副标题 subtitle 是当音乐播放时会显示的文字,它可以在 lang 中定义。
  • 正确的 .json 格式是非常重要的,比如说括号、逗号等等,使用错误的话资源包依旧会失效。

测试你的音频[]

Iron Pickaxe JE3 BE2.png
该页面的编辑正在进行中。 讨论

请帮助我们扩充或改进这篇文章。

Advertisement