乙烯分享的我的世界自定义advancement教程
乙烯分享的我的世界自定义advancement教程。那下面给大家介绍的则是我的世界玩家乙烯分享的自定义advancement教程哦~那到底怎么弄呢?那下面就给大家分享一下吧!
游戏园我的世界官方群:325049520 或 256070479 欢迎各路喜爱我的世界的小伙伴们加入讨论!
玩服务器的小伙伴们可以加入:141931866 群一起联机玩游戏哦!
如果你是腐竹的话可以给我们投稿你的服务器哦~投稿地址:点我进入
如果你有心仪的作品或者心得分享的话,欢迎来游戏园投稿,大家可以点击>>>投稿<<<进行投稿哦~ 有奖品哦~
新快照出了几天了,advancement这个替换成就的新的系统大家都很感到新奇,正巧这次快照更新有添加一些相关内容,今天我乙烯就来和大家说一说这样的一个新的系统要怎样的玩耍。那么我们先来简单的介绍一下吧。(其中部分资料源自Minecraft Wiki,英文的
什么是advancement?
这就是advancement。(迫真)
好了,这是一个替换了成就系统的新的成就系统,嗯,大概这么看的话好像是看不出和原来的区别有多大?好像确实不大,但是现在通过这样的整理可以很方便的使用json来自定义advancement。而且你也可以很方便的添加选项卡,是不是很厉害!然后成就还是需要你逐步解锁的,不过目前的成就还不能写注解,所以很sad。
完成advancement的时候右上角会有提示,并且支持多条提示。
同样的,原来的成就指令achievement也被替换成advancement,这个的用法我们之后会说到。
如何自定义advancement
整个自定义推荐直接从0自己写,如果要基于官方的修改的话,请在完全熟悉系统以及官方成就的情况下修改。
据dinnerbone在推特上说,自定义advancement是与存档绑定的,也就是说相关的自定义文件要放在存档根目录的data/advancement里。是自定义里的豪杰。我们通过解压游戏的version jar可以很容易的确定这样的一个格式
advancement
adventure
recipes
story
如何创建一个选项卡
这里就不复述中间的过程直接上结论了。这里除了recipes每一个文件夹都被视为一个单独的选项卡。如果要创建一个新的选项卡请在advancement文件夹下新建一个新的文件夹,文件夹名字从简为佳,允许存在中文但是个人并不推荐。在这个选项卡的advancement如果没有解锁的话,那么这个选项卡是不会显示的。
Recipes文件夹我暂时还没有时间进行详细的实验,但是据源码观察是利用了成就的系统决定了合成表的解锁链,比如我在进入了水(船合成表的解锁条件之一)后便解锁了船的合成,在我使用合法的格式编辑了面包的json后,进入水中便解锁了面包的合成。所以工作原理是一样的。也就是说,合成虽然暂时不能自定义,但是合成链的解锁已经可以自定义了。
创建一个选项卡除了新建一个文件夹,还要求这个选项卡有一个起始成就(下文称之为根成就),并且这个起始成就不能成为任何一个成就的子成就。如果这个成就是一个其他选项卡的子成就的话,显示上不仅不会显示新建选项卡,该成就以及其子成就还会显示到其他选项卡下面。这是我们不想要的。
大概加多了会这样。
当然这时候你们大概会说了:“哎呀我们不知道怎么写成就啊”,这个你们不要急,我们马上来说。
如何写一个单独的advancement
如果你已经按照上文操作,并自己写了成就的话,你的页面大概回事这个样子的。别急,这说明你的成就已经写的很接近了,让我们来看看成就应有的标准格式。
乙烯分享的我的世界自定义advancement教程。那下面给大家介绍的则是我的世界玩家乙烯分享的自定义advancement教程哦~那到底怎么弄呢?那下面就给大家分享一下吧!
游戏园我的世界官方群:325049520 或 256070479 欢迎各路喜爱我的世界的小伙伴们加入讨论!
玩服务器的小伙伴们可以加入:141931866 群一起联机玩游戏哦!
如果你是腐竹的话可以给我们投稿你的服务器哦~投稿地址:点我进入
如果你有心仪的作品或者心得分享的话,欢迎来游戏园投稿,大家可以点击>>>投稿<<<进行投稿哦~ 有奖品哦~
新快照出了几天了,advancement这个替换成就的新的系统大家都很感到新奇,正巧这次快照更新有添加一些相关内容,今天我乙烯就来和大家说一说这样的一个新的系统要怎样的玩耍。那么我们先来简单的介绍一下吧。(其中部分资料源自Minecraft Wiki,英文的
什么是advancement?
这就是advancement。(迫真)
好了,这是一个替换了成就系统的新的成就系统,嗯,大概这么看的话好像是看不出和原来的区别有多大?好像确实不大,但是现在通过这样的整理可以很方便的使用json来自定义advancement。而且你也可以很方便的添加选项卡,是不是很厉害!然后成就还是需要你逐步解锁的,不过目前的成就还不能写注解,所以很sad。
完成advancement的时候右上角会有提示,并且支持多条提示。
同样的,原来的成就指令achievement也被替换成advancement,这个的用法我们之后会说到。
如何自定义advancement
整个自定义推荐直接从0自己写,如果要基于官方的修改的话,请在完全熟悉系统以及官方成就的情况下修改。
据dinnerbone在推特上说,自定义advancement是与存档绑定的,也就是说相关的自定义文件要放在存档根目录的data/advancement里。是自定义里的豪杰。我们通过解压游戏的version jar可以很容易的确定这样的一个格式
advancement
adventure
recipes
story
如何创建一个选项卡
这里就不复述中间的过程直接上结论了。这里除了recipes每一个文件夹都被视为一个单独的选项卡。如果要创建一个新的选项卡请在advancement文件夹下新建一个新的文件夹,文件夹名字从简为佳,允许存在中文但是个人并不推荐。在这个选项卡的advancement如果没有解锁的话,那么这个选项卡是不会显示的。
Recipes文件夹我暂时还没有时间进行详细的实验,但是据源码观察是利用了成就的系统决定了合成表的解锁链,比如我在进入了水(船合成表的解锁条件之一)后便解锁了船的合成,在我使用合法的格式编辑了面包的json后,进入水中便解锁了面包的合成。所以工作原理是一样的。也就是说,合成虽然暂时不能自定义,但是合成链的解锁已经可以自定义了。
创建一个选项卡除了新建一个文件夹,还要求这个选项卡有一个起始成就(下文称之为根成就),并且这个起始成就不能成为任何一个成就的子成就。如果这个成就是一个其他选项卡的子成就的话,显示上不仅不会显示新建选项卡,该成就以及其子成就还会显示到其他选项卡下面。这是我们不想要的。
大概加多了会这样。
当然这时候你们大概会说了:“哎呀我们不知道怎么写成就啊”,这个你们不要急,我们马上来说。
如何写一个单独的advancement
如果你已经按照上文操作,并自己写了成就的话,你的页面大概回事这个样子的。别急,这说明你的成就已经写的很接近了,让我们来看看成就应有的标准格式。
首先,要明确的是,大致会使用json格式是自定义成就的前提条件。所以让我们来简单介绍一下json格式。
这里我就折叠一下。
Json其实并不难,但是如果使用专业的说法可能导致一些人不太容易理解。如果你不擅长或者看完也没懂的话,有两种解决办法,一个是抄,抄原版游戏文件中的json,一个是问。
{“aa”:”bb”}
这就是最简单的json格式。并不难对吧。
{“aa”:”bb”,”cc”:”dd”}
这便是两者并列的json格式。使用逗号分隔。
{“aa”:”bb”,”cc”:”dd”,”ee”:{“ff”:”gg”}}
这便是一个上下级的关系。这里使用的都是大括号或者说叫花括号。
实例的结构可以简写为
Aa
Cc
Ee
Ff
下文的结构也是如此。
使用中括号便是代表一个列表,这个难以一言蔽之,基本上你可以看官方怎么写就好了。
字符串用”“围起来,数值则不需要。还有一种特殊的true或者false。
最后的最后,所有的括号都必须成对,并且不能有多余的逗号。
好的,这里就让我们来讲一下成就的结构是怎样的。下文均为小写,辣鸡word自动给我大写了,还有全文的引号必须为半角的引号,我这里尽量自己修一修,但word看不太出来。
Display
Icon
Title
Frame
Background
Parent
Criteria
条件名
Trigger
Conditions
Requirement
Rewards
Recipes
Loot
Experience
好,接下来逐条讲解.
display
Display其下所有的都用于设置这个成就是如何显示的。
Icon:这个用于设置成就显示的标识。
例子 ,这个的写法是
"icon":"minecraft:map"
Title:这个用于设置成就的名字。
例子 ,写法为
"title": "Adventure"
,同时也可以使用同时也可以使用类似tellraw指令里面的json写法,比如"
title":{"text":"test","color":"red","bold":true,"italic":true}
这里单独说一点,title和icon两者用于根成就时,都会被使用到这个选项卡的icon和title。
Frame:这个成就的边框,如果不填则默认为圆角矩形(task)。
从左到右为task,challenge和goal。例子,
"frame": "goal"
同时也决定了完成advancement完成时的右上角提示,例如如果是goal完成的话右上角会提示goal完成。
Background:这个成就选项卡的背景。这一项仅限于根成就才拥有。这个后面可以填一个可用的图片地址
例子
"background": "minecraft:textures/blocks/wool_colored_cyan.png"
这样的效果为
自此display系列标签全部讲解完成。
parent
Parent无其下标签,其自己是用于确定该成就的父成就,也就是在界面中左边与哪个成就相连。可以在不完成父成就的情况下获得该成就。
解锁或已被列出的成就会列出其所有的父成就以及两个子成就。不得写在根成就中。写法,
"parent": "adventure/root"
内容必须为一个已经存在的成就。
自此parent系列标签全部讲解完成。
criteria
Criteria其下为需列出获得成就的条件名,可以自己定义,但是不能与其他条件重名。
每个条件名其下需要有相关的判据,判据会在下方列出。每个判据会有相关的条件。每个判据我都会详细的说明。后续版本更新的我也会慢慢的补齐。
一般来说都是这样的格式
"criteria": {
"这里写条件名": {
"trigger": "minecraft:xxx",
"conditions": {
这里填条件
}
}
下文会慢慢举例子。这里先把目前所有的判据都举出来
该表格翻译自Minecraft 英文Wiki
Requirement
这里的话便是将在Criteria中写的判据进行应用。需要注意的是,如果判据仅写在Criteria中而你又写了requirement,那么这个判据是不会生效的。必须在这个条目中应用。如果不写则默认需要完成所有的criteria。
如果criteria非常简单的话(只有一个)则也可以选择不写requirement,但是个人建议为了避免某些意外性质的幺蛾子,还是每个都给写上比较好。
Requirement根据不同作用有两种写法。
首先requirement的外壳是
"requirements": [ ]
注意了,这里的话是有一份中括号的。
然后如果是需要a和b两个判据同时生效的话,写法为
"requirements": [["a", "b"]]
注意这里是新用了一个中括号将a和b扩起来,有两对中括号。
如果需要完成任一判据即可获得成就的话,写法为
"requirements": [["a"], ["b"]]
这里是用分别用一对中括号将两个判据围起来。
这两种写法是可以混用的,但是一般来说是不必要的。
"requirements": [["killed_something", "has_wheat"]]
这就是一份需要杀死过生物并且拥有小麦时能解锁的写法,但是前提是你必须定义过这两个判据。
自此requirement系列标签讲解完成。
Rewards
这个标签是用来确定获得成就以获得的奖励。多用于合成表解锁。
这个标签下面都是非常简单暴力的写法,让我来就着例子和大家说明一下。
"rewards": {
"recipes": ["minecraft:crafting_table", "minecraft:iron_block"],
"loot": ["minecraft:entities/zombie", "minecraft:gameplay/fishing/treasure"],
"experience": 7
}
这里是rewards的三种子标签:recipes,内部填写物品名称,负责解锁合成表,在将来能自定义合成的时候是很方便的;loot,内部填写任一个合法的loottable名字,奖励时进行抽取随机给予,前面两种标签都可以同时在中括号里写出多种奖励;experience,奖励固定的经验数,就目前所了解到的是只能填写一个固定的数值。
这是上面loot奖励获得的腐肉(僵尸掉落),马鞍(钓鱼宝藏)。
自此全标签讲解完成,留待二楼仔细说明判据,可能会在最后放出一个单独用于示例讲解的advancement。
PS:在此非常感谢我的世界MCBBS玩家乙烯_中国的分享。
以上就是乙烯分享的我的世界自定义advancement教程。更多精彩尽在游戏园我的世界专区。
相关攻略推荐:
精品推荐
相关文章
更多+热门搜索
手游排行榜
- 最新排行
- 最热排行
- 评分最高
-
赛车竞速 大小:136MB
-
图像影音 大小:1.15MB
-
冒险解谜 大小:228M
-
休闲益智 大小:
-
其他游戏 大小:13.06MB