Minecraft(我的世界)中文论坛

 找回密码
 注册(register)

!header_login!

只需一步,立刻登录

查看: 305978|回复: 2074

[教程] 【1.13-1.15】原版模组入门教程

    [复制链接]
ruhuasiyu 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
16981
钻石
性别
保密
注册时间
2014-10-16
查看详细资料
发表于 2018-2-26 13:16:49 | 显示全部楼层 |阅读模式

您尚未登录,立即登录享受更好的浏览体验!

您需要 登录 才可以下载或查看,没有帐号?注册(register)

x
本帖最后由 ruhuasiyu 于 2019-12-6 01:44 编辑


原版模组入门教程

  本文适用 Minecraft Java 版 1.13 及更高版本,部分内容仅适用于部分版本。系统环境为 Windows10,其它环境下有较小的差异。本文参考和吸取了大量其他玩家的意见、建议、教程等。有任何错误和疑问请联系我,谢谢!
  原版模组一般指在不修改 Minecraft 游戏本体的前提下,通过命令方块、一键命令、数据包、资源包等方式对游戏的可玩性做出修改。而自 Minecraft Java 版 1.13 起的数据包概念问世之后,原版模组的制作已变得十分便捷。因此我将为大家做一个简单的入门,以期抛砖引玉。
  编写进度:§1-§9.4 (2019/12/05)
§1 预备知识
  部分段落常为部分读者所熟知,若如此可直接跳至自己所需段落。对于首次接触者,请耐心阅读。
§1.1 新人指引
  本文并非命令的入门教程,不会对命令部分做过多的详解。若你对命令尚不了解,可先依次通过如下链接学习并了解:
  可先熟悉各项命令后,再学习记分板和nbt相关命令。实体和方块nbt亦可通过在游戏中使用 data get entity/block 命令来获取,以避免记忆大量的nbt。
  若你已对1.12或以下的命令较为熟悉,可直接查看1.13页面1.14页面1.15页面了解命令改动之处。
§1.2 工具准备
§1.2.1 文本编辑器
  我们所涉及的所有文本文件,包括函数文件(.mcfunction)、JSON文件(.json, .mcmeta),均需使用 UTF-8 编码格式。以下列出的文本编辑器默认均为 UTF-8 编码,可以在编辑页面的右下角状态栏看到。
  • VS Code 下载安装后,可以安装如下插件:
    • Chinese (Simplified) Language Pack for Visual Studio Code 支持中文语言
    • datapack helper plus (JSON) 支持JSON语法补全和纠错
    • datapack helper plus (MCF) 支持函数语法补全和纠错
    • language-mcfunction 支持函数语法高亮
  • 记事本 为 Windows 系统自带。Windows10 的记事本已经默认是 UTF-8 编码了。点击查看->状态栏可以在右下角状态栏看到,因此可以正常使用。旧版本 Windows 的记事本仍然不是,请勿使用。
  • Notepad++ 可从 mcfunction 的语言样式和自动补全帖中下载相关文件并导入,另外请将 Notepad++ 中设置->首选项->其它->自动检测字符编码选项关闭。
  右下角也可以看到 LFCRLF,分别表示两种换行符,二者均可正常使用,建议使用 LF
  注意不要误选了 UTF-8 with BOM 格式。
§1.2.2 压缩工具
  数据包和资源包均可以为文件夹或 zip 压缩文件格式。游戏本体和模组本体的 jar 文件也需要压缩工具来打开。
  • Windows 资源管理器 Windows10 系统自带 zip 格式的压缩和解压缩。zip 格式可以直接打开,压缩则用选择->右键->发送到->压缩文件夹
  • 7-zip 免费软件。
  • winrar 付费软件。
  jar 文件可以通过重命名为 zip 文件直接用 Windows 资源管理器打开。显然,这不如右键->7-zip->打开压缩包方便。
§1.2.3 NBT编辑器
  推荐使用 nbtexplorer 来打开 dat 和其它 nbt 格式文件。
§1.2.4 绘图工具
  推荐使用 Photoshop 或其它绘图工具,而非 Windows 自带的画图,来绘制材质。
§1.3 文件结构
  本节中我们将对各个主要的文件夹结构和文件做简单的介绍。为便于查看文件后缀,请将文件->文件夹选项->查看->隐藏已知文件类型的扩展名选项去掉勾选。其中可以使用文本编辑器打开的文件可通过新建文本文件并修改后缀来创建。
§1.3.1 游戏文件结构
  打开 .minecraft 所在的文件夹,这通常位于你的启动器目录下。如果启动器中设置为各版本独立,则类似的文件结构位于 versions/版本号下。
文件
文件位置
说明
资源文件索引
assets/indexes/[版本号].jsonminecraft/lang/zh_cn.json的 hash 值可知中文语言文件位置,找到后使用文本编辑器打开。其它资源文件也可以类似寻找并用相应软件打开。
资源文件
assets/objects/[hash开头]/[hash]
备份文件
backups/[日期-世界名称].zip使用压缩工具打开,为存档的备份文件。
崩溃报告
crash-reports/[日期].txt使用文本编辑器打开,如果是由于资源包或数据包引起的崩溃,可以在该文件中看到原因。
日志
logs/[日期].log.gz历史日志,使用压缩工具打开,然后使用文本编辑器打开。
logs/latest.log使用文本编辑器打开,当前日志,可随时查看加载资源包和数据包时的错误信息,包括错误的文件名称、位置、错误的行列数等。
资源包
resourcepacks/[资源包名]zip格式的使用压缩工具打开,具体结构见 §3 资源包
resourcepacks/[资源包名].zip
存档文件
saves/[世界名称]具体结构见 §1.3.2 存档文件结构
游戏截图
screenshots/[日期].png使用图片查看工具打开。
服务器资源包
server-resource-packs/[服务器]使用压缩工具打开,具体结构见 §3 资源包
存储的物品栏
hotbar.nbt使用 NBT 编辑器打开,游戏内使用C+[数字]存储、X+[数字]取出的创造模式的物品快捷栏。
游戏设置
options.txt使用文本编辑器打开,可直接设置游戏内快捷键、音量、视距等选项。
服务器
servers.dat使用 NBT 编辑器打开,包含服务器信息。
玩家缓存
usercache.json使用文本编辑器打开,为服务器玩家登录名和 UUID 对应。
玩家名缓存
usernamecache.json使用文本编辑器打开,为单机玩家登录名和 UUID 对应。
游戏本体
versions/[版本号]/[版本号].jar使用 NBT 编辑器打开,包含了对应版本的资源和数据文件,assets 结构见 §3 资源包data 结构见 §2 数据包


图1.1 游戏本体文件结构

§1.3.2 存档文件结构
  位于.minecraft/saves/[世界名称]
文件
文件位置
说明
进度
advancements/[玩家 UUID].json使用文本编辑器打开,记录了玩家已完成的进度和进度判据的完成时间。
存储区
data/command_storage_[命名空间].json使用 NBT 编辑器打开,记录了玩家和函数存储在存储区 (storage) 的 NBT。
地图数
data/idcounts.json使用文本编辑器打开,记录了当前已使用的地图数量,游戏内新使用的空地图会由此开始计数。
地图
map_[数字].txt使用 NBT 编辑器打开,记录了地图 filled_map{data:[数字]} 的信息。
记分板
scoreboard.txt使用 NBT 编辑器打开,记录了记分板、记分板的值、组。
袭击
raids.txt使用 NBT 编辑器打开,记录了袭击的信息。
DIM-1/data/raids_nether.txt
DIM1/data/raids_end.txt
数据包
datapacks/[数据包名]zip格式的使用压缩工具打开,具体结构见 §2 数据包
datapacks/[数据包名].zip
主世界区块
region/r.[数值].[数值].mca使用 NBT 编辑器打开,每32×32个区块存储为一个文件。建议使用 MCEdit 等工具来编辑。
下界区块
DIM-1/r.[数值].[数值].mca
末地区块
DIM1/r.[数值].[数值].mca
统计
stats/[玩家UUID].json使用文本编辑器打开,记录了玩家的统计信息。
属性
playerdata/[玩家UUID].dat使用 NBT 编辑器打开,记录了玩家的位置、复活点、飞行速度等。
世界信息
level.dat使用 NBT 编辑器打开,记录了种子、生成类型、难度、出生点、世界边界、游戏规则等内容。
结构
generated/[命名空间]/structures/[文件].nbt使用 NBT 编辑器打开,记录了游戏内使用结构方块保存的结构,将其移动至数据包内方可使用。

§1.4 JSON文件
  数据包的进度、战利品表、标签、断言、配方,资源包的语言文件、模型等文件均为JSON格式文件。.mcmeta 文件也是JSON文件,因此格式也是相同的。编写时,使用空格或制表符(Tab)缩进,以便于查看括号匹配和层次。wiki 上有关页面使用了 NBT 的数据类型标注,但其实并不适用于JSON格式。
  JSON文件包括一对根括号{},包含类似 "abc":"def" (键:值)的对。相同的键后者会覆盖前者。键为需引号圈住的字符串,值的数据类型为
数据类型
示例
说明
布尔型
  • "is_on_fire": false
  • "is_baby": true
值为truefalse
数值
  • "count": 2
  • "chance": 0.025
2和2.0没有效果上的差异。
字符串
  • "item": "minecraft:shears"
  • "condition": "minecraft:match_tool"
  • "layer0": "cpp:crop/bauhinia_seeds"
  • "description": "§6更多的合成 1.10\n§6by ruhuasiyu"
使用双引号圈住,可以使用颜色代码如§6、换行符\n。
列表
  • "chances": [0.05, 0.0625, 0.083333336, 0.1]
  • "items": [
        {"item": "minecraft:zombie_head"},
        {"item": "minecraft:skeleton_skull"},
        {"item": minecraft:wither_skeleton_skull"},
        {"item": "minecraft:creeper_head"}
    ]
  • "requirements":[
        ["wing_of_sky", "heart_of_crystal", "nova_of_fire"]
    ]

使用中括号圈住。
JSON对象
  • "count": { "min": 1, "max": 2 }
  • "modifiers": [
        {
            "name": "legs_armor",
            "attribute": "generic.armor",
            "operation": "addition",
            "amount": 4,
            "slot": "legs"
        }
    ]

使用大括号圈住。整个JSON文件内容本身就是一个JSON对象。

file_1575563771000.jpg

评分

参与人数 70人气 +108 金粒 +739 贡献 +9 收起 理由
我是萌新( + 2 MCBBS有你更精彩~
Herobrane + 1 神乎其技,不服不行!
song2006 + 1 + 10 神乎其技,不服不行!
MC深坑不回头 + 1 + 5 神乎其技,不服不行!
模仿... + 1 MCBBS有你更精彩~
bai11234 + 1 + 5 神乎其技,不服不行!
SPGoding + 3 + 25 + 2 MCBBS有你更精彩~
1919褐雨燕 + 1 + 1 + 1 奥利给
lijiabo + 1 + 6 MCBBS有你更精彩~
隐退 + 2 + 30 MCBBS有你更精彩~
刘力玮1573 + 1 神乎其技,不服不行!
ColorPencil + 2 MCBBS有你更精彩~
old_whale + 2 + 30 感谢,现在我需要虚心学习了.
second_ + 1 + 15 神乎其技,不服不行!
w5056008 + 1 + 15 神乎其技,不服不行!
酷车手BB弹 + 4 + 1 神乎其技,不服不行!
没糖的葫芦 + 3 MCBBS有你更精彩~
1163340864 + 1 厉害了
smithsam + 1 MCBBS有你更精彩~
lingxy19031 + 2 神乎其技,不服不行!

查看全部评分

呆丶旺旺 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
205
钻石
性别
保密
注册时间
2017-1-28
查看详细资料
发表于 昨天 23:12 | 显示全部楼层
大佬大佬 膜拜
回复

使用道具 举报

rainmaker- 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
489
钻石
性别
保密
注册时间
2019-4-7
查看详细资料
发表于 前天 12:38 | 显示全部楼层
神乎其技,不服不行!
回复

使用道具 举报

我是大怪龙 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
45
钻石
性别
保密
注册时间
2019-12-2
查看详细资料
头像被屏蔽
发表于 4 天前 | 显示全部楼层
滴答滴答滴答滴答滴答滴答滴答滴答滴答滴答滴答滴答滴答

评分

参与人数 1人气 -1 金粒 -10 收起 理由
SPGoding -1 -10 版规 2-4 万用回复

查看全部评分

回复

使用道具 举报

原来是你呀 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
59
钻石
性别
保密
注册时间
2019-11-26
查看详细资料
发表于 6 天前 | 显示全部楼层
这个mod非常实用

评分

参与人数 1人气 -1 金粒 -10 收起 理由
SPGoding -1 -10 版规 2-4 无意义

查看全部评分

回复

使用道具 举报

a1148058243 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
32
钻石
性别
保密
注册时间
2012-8-27
查看详细资料
发表于 2019-11-28 16:19:13 | 显示全部楼层
简直是萌新福音
回复

使用道具 举报

SPGoding 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
16073
钻石
性别
保密
注册时间
2018-1-18
查看详细资料
发表于 2019-11-27 23:11:05 | 显示全部楼层
在与有 发表于 2019-11-27 22:50
楼主,在§2.7 配方中
——“见§6 合成与烧炼配方。”点进去已经失效了,求解决!,最近正在想怎么用数据 ...

https://www.mcbbs.net/thread-784662-1-1.html?cp=6
回复

使用道具 举报

在与有 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
399
钻石
性别
保密
注册时间
2015-11-15
查看详细资料
发表于 2019-11-27 22:50:49 | 显示全部楼层
楼主,在§2.7 配方中
——“见§6 合成与烧炼配方。”点进去已经失效了,求解决!,最近正在想怎么用数据包做带有NBT的合成,非常感谢楼主的分享,希望能早些填坑qwq.
回复

使用道具 举报

love晓露 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
38
钻石
性别
保密
注册时间
2019-11-11
查看详细资料
发表于 2019-11-27 12:14:24 | 显示全部楼层
为了荣耀为了任务为了mod

评分

参与人数 1人气 -2 金粒 -20 收起 理由
SPGoding -2 -20 版规 2-4 复制粘贴

查看全部评分

回复

使用道具 举报

焱天元 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
41
钻石
性别
保密
注册时间
2019-10-1
查看详细资料
发表于 2019-11-23 12:18:07 | 显示全部楼层
为了荣耀为了任务为了mod

评分

参与人数 1人气 -2 金粒 -20 收起 理由
SPGoding -2 -20 版规 2-4 复制粘贴

查看全部评分

回复

使用道具 举报

malusu 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
159
钻石
性别
保密
注册时间
2019-11-16
查看详细资料
发表于 2019-11-18 16:43:36 | 显示全部楼层
要好好研究一下這
很適合剛踏進這遊戲的我
回复

使用道具 举报

ruhuasiyu 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
16981
钻石
性别
保密
注册时间
2014-10-16
查看详细资料
 楼主| 发表于 2019-11-15 21:31:04 | 显示全部楼层
lc990930 发表于 2019-11-15 15:53
有个问题,无序合成如何做到两件不同的物品只消耗其中一件进行合成?例如
一个鞘翅 和 一个剪刀
合成后得到 ...

做不到,能返回物品的合成只有水桶熔岩桶牛奶桶蜂蜜瓶,而且只能返回指定物品(桶或玻璃瓶)

想要自定义合成,就需要用第八节的自定义工作台来弄

回复

使用道具 举报

lc990930 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
997
钻石
性别
保密
注册时间
2013-9-14
查看详细资料
发表于 2019-11-15 15:53:30 | 显示全部楼层
本帖最后由 lc990930 于 2019-11-15 16:02 编辑

有个问题,无序合成如何做到两件不同的物品只消耗其中一件进行合成?例如
一个鞘翅 和 一个剪刀
合成后得到
六个幻翼膜 和 一个降低了少量耐久的剪刀(仍然在工具台合成面板里)
回复

使用道具 举报

lzh大人 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
195
钻石
性别
保密
注册时间
2019-5-15
查看详细资料
发表于 2019-11-8 21:02:09 | 显示全部楼层
感谢楼主

评分

参与人数 1人气 -1 金粒 -10 收起 理由
SPGoding -1 -10 版规 2-4 万用回复

查看全部评分

回复

使用道具 举报

萝卜石头 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
244
钻石
性别
保密
注册时间
2017-12-9
查看详细资料
发表于 2019-11-3 14:51:05 | 显示全部楼层
大佬级教程,很全面
回复

使用道具 举报

luoyuesnake 当前离线
帖子
主题
精华
贡献
最后登录
1970-1-1
爱心
积分
73
钻石
性别
保密
注册时间
2019-11-2
查看详细资料
发表于 2019-11-3 11:19:59 | 显示全部楼层

666666666666666666666666

评分

参与人数 1人气 -1 金粒 -10 收起 理由
SPGoding -1 -10 版规 2-4 无意义

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册(register)

本版积分规则

Archiver|小黑屋|Mcbbs.net ( 京ICP备15023768号-1 ) | 京公网安备 11010502037624号 | 手机版

GMT+8, 2019-12-7 02:27 , Processed in 0.084987 second(s), Total 28, Slave 26 queries, Release: Build.2019.12.06.1150, Gzip On, MemCached On.

"Minecraft"以及"我的世界"为Mojang Synergies AB的商标 本站与Mojang以及微软公司没有从属关系

© 2010-2019 我的世界中文论坛 版权所有 本站原创图文内容版权属于原创作者,未经许可不得转载

快速回复 返回顶部 返回列表