Minecraft Wiki

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

了解更多

Minecraft Wiki
Advertisement
Information icon
此特性为Java版独有。
Dinnerbone-twitter

这一整个叫“进度”的系统,其目的就是指导和跟踪玩家在游戏中的进展(在原版的生存模式以及那些有创意的地图制作者的自定义插件或者mod中)。大部分进度就如字面所言——你在游戏中的前进。

——Dinnerbone评论于进度系统[1]
AdvancementMade

进度完成时弹出的提示。

GoalReached

目标进度完成时弹出的提示。

ChallengeComplete

特殊的挑战进度完成时弹出的提示。

进度(Advancements)是一种逐步引导新手玩家融入Minecraft,并给予他们需完成的挑战的途径,类似于主机版携带版中更简单的成就系统。

获取

进度和成就的获取方式基本相同。类似于成就,进度也可以在任何模式下完成,在每个世界独立获得以及保存,也可以使用命令/advancement来获得进度。

虽然进度也是像成就一项一步一步引导玩家,与成就不同的是,每一个进度彼此独立,不需要完成其上一个进度即可完成。

若一个进度被完成,屏幕右上角会显示一个滚动通知,聊天框内也会有消息通知。通知中标题文字的颜色取决于每一个进度:普通和目标进度完成时有黄色标题文本弹出,而特殊的挑战进度具有粉红色标题文本。完成一个普通进度时会显示“进度已达成!”,完成一个目标进度时标题会显示“目标已达成!”,完成一个挑战进度时标题会显示“挑战已完成!”。

界面

AdvancementsInterface

进度界面。其中“这不是铁镐么”进度被选中。

与成就一样,进度界面也是在暂停界面内调出。玩家也可以按下L来打开此屏幕(可在游戏内的选项菜单中更改)。

进度系统包含若干棵进度树,每棵进度树的开端是一个根进度,末端则是目标或挑战进度。通过点击与拖动,可以查看进度树的不同分支。每棵树分为不同的标签(这些标签本身就是一个进度)。目前原版Minecraft中有5个标签(尽管之后还会继续添加[2][3]):

  • Minecraft:游戏的核心与故事。
  • 冒险:冒险、探索与战斗。
  • 下界:记得带夏装。
  • 末地:还是开始了?
  • 农牧业:世界无处没有朋友与美食。

每个标签具有不同的背景和重复纹理。

进度标签图标在鼠标悬停于其上时显示标题名称和描述。当这个进度完成时,这个进度标签只会显示一串进程分支 。但是,每个进度是独立的,不需要完成其上一个进度即可完成。“目标”进度的图标框架更加圆润,而“挑战”进度则具有更加清晰的外观。每个进度的图标一开始为浅灰色,但在完成后变为深黄色。

图标的框架能随难度变化,无论其是否完成。图例如下:

图标 描述
常规 已完成
Advancement-plain-raw Advancement-plain-worn 普通的进度。
Advancement-oval-raw Advancement-oval-worn 目标进度。
Advancement-fancy-raw Advancement-fancy-worn 挑战进度。

可以使用JSON文件添加和定制额外的进度和其选项卡,如下所述

进度列表

Minecraft

File:Advancements Tree - Minecraft.png

“Minecraft”标签中的进度树。

Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项!

下界

Advancements Tree - Nether

“下界”标签中的进度树。

Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项!

末地

Advancements Tree - The End

“末地”标签中的进度树。

Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项!

冒险

Advancements Tree - Adventure

“冒险”标签中的进度树。

Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项!

农牧业

Advancements Tree - Husbandry

“农牧业”标签中的进度树。

Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项! Template:Advancements:“key”参数为必填项!

JSON格式

Minecraft世界的“data/advancements”目录下以分开的json文件储存了此世界的进度数据:

这些JSON文件根据以下格式排列:

  • 根标签
    •  display:可选的显示数据。
      •  icon:一个物品或方块ID,用于显示进度窗口。
        •  item:物品的ID
        •  data:物品的损害值
      •  title:进度的名称
      •  title:JSON文本(包含文本,格式和/tellraw等命令中使用的类似)
      •  frame:图标边框的可选种类。challenge为有穗的边框标题,其用于杀死所有种类生物的进度;goal为更圆的边框标题,其用于完整信标进度;task为普通进度(默认)。
      •  background:用于此进度标签的背景的可选目录(仅根进度)。
      •  description:进度的描述
      •  description:进度的描述。
      •  show_toast:可以为truefalse。是否在完成此进度后显示提示信息。默认为true。
      •  announce_to_chat:可以为truefalse。是否在完成此进度后广播此信息。默认为true。
      •  hidden:可以为truefalse。是否直到完成进度前在进度屏幕隐藏进度。对根进度无效,但会影响其子进度。当父进度值为true后便无法覆盖。默认为false。
    •  parent:此进度的可选的父目录(不适用于根进度)。
    •  criteria:必须达成的条件。
      •  <criteriaName>:给予此条件的名称(可以为任何字符串,必须唯一)。
        •  trigger:此进度的触发条件;指定游戏为进度检查的条件。
        •  conditions:当触发器激活时所有需要达成的条件
    •  requirements:可选,所有条件(<criteriaName>)列表。如果所有条件都需要,此项可以被忽略。有多个条件:要求包含了要求条件列表(所有条件都需要被提及)。任一列表中所有条件达成后,进度会完成。(基本上是“与”、“或”的条件分组)
    •  rewards:可选,当进度达到时获得的所有奖励。
      •  recipes:配方列表(标签)。
      •  loot:战利品列表(标签)。
      •  experience经验值总数。
      •  function:运行的函数。函数为.minecraft\saves\XXXX\data\functions\中的纯文本文件,包含运行的命令列表。

触发器列表

minecraft:bred_animals

玩家繁殖两个动物时触发。可用条件:

  •  conditions
    •  child:繁殖出的孩子。
      • 实体谓词
    •  parent:父或母。
      • 实体谓词
    •  partner:配偶(实体父母的繁殖对象,可用于检查繁殖的骡)
      • 实体谓词


minecraft:brewed_potion

玩家从酿造台中拿出一瓶药水时触发。可用条件:


minecraft:changed_dimension

玩家在两个维度间旅行时触发。可用条件:

  •  conditions
    •  from:实体出发的维度。这3个值
    •  to:实体到达的维度。可用值同上。


minecraft:construct_beacon

玩家更改信标结构时触发。(当信标自我更新时)可用条件:

  •  conditions
    •  level:信标的层数。
    •  level
      •  max:最大值。
      •  min:最小值。


minecraft:consume_item

玩家损耗了物品时触发。可用条件:

  •  conditions
    •  item:被损耗的物品。
      • 物品谓词


minecraft:cured_zombie_villager

玩家治愈了僵尸村民时触发。可用条件:

  •  conditions
    •  villager:转换后的村民。“type”标签一直为“villager”,所以是多余的。
      • 实体谓词
    •  zombie:转换前的僵尸。“type”标签一直为“zombie_villager”,所以是多余的。
      • 实体谓词


minecraft:effects_changed

玩家获得/消除状态效果时触发。可用条件:

  •  conditions
    •  effects:状态效果列表。
      •  <minecraft:effect_name>状态效果名称。
        •  amplifier:效果放大器。
        •  amplifier
          •  max:最大值。
          •  min:最小值。
        •  duration:效果持续时间,以刻为单位。
        •  duration
          •  max:最大值。
          •  min:最小值。

minecraft:enchanted_item

玩家通过附魔台附魔物品时触发(使用铁砧或命令时不触发)。可用条件:

  •  conditions
    •  item
      • 物品谓词
    •  levels:附魔花费的经验等级。
    •  levels
      •  max:最大值。
      •  min:最小值。


minecraft:enter_block

玩家进入方块时触发。每刻都会检查成功的匹配,仅在进度内被函数奖励剥夺可用条件:

  •  conditions
    •  block:一个方块ID
    •  state:方块的方块状态。
      •  <state_name>:单一的方块状态,值为其状态。


minecraft:entity_hurt_player

实体伤害玩家时触发。可用条件:

  •  conditions:
    •  damage:检查对玩家造成伤害的类型。
      • 伤害谓词


minecraft:entity_killed_player

实体杀死玩家时触发。可用条件:

  •  conditions:
    •  entity:伤害的直接来源实体(比如射箭的骷髅)。
      • 实体谓词
    •  killing_blow:检查杀死玩家的伤害类型。
      • 伤害类型谓词


minecraft:impossible

仅可使用命令#advancement触发。

minecraft:inventory_changed

玩家物品栏变化时触发。可用条件:

  •  conditions
    •  items:物品列表
        • 物品谓词
    •  slots
      •  empty:物品栏中空槽位数量。
      •  empty
        •  max:最大值。
        •  min:最小值。
      •  full:物品栏中已被完全使用(填充了一组物品)槽位数量。
      •  full
        •  max:最大值。
        •  min:最小值。
      •  occupied:物品栏中已使用槽位数量。
      •  occupied
        •  max:最大值。
        •  min:最小值。


minecraft:item_durability_changed

物品栏中任何物品以任何形式损害时触发。可用条件:

  •  conditions
  •  conditions
    •  delta:耐久度差值。
    •  delta
      •  max:最大值。
      •  min:最小值。
    •  durability:物品的剩余耐久度。
    •  durability
      •  max:最大值。
      •  min:最小值。
    •  item:损害前的物品,可用来检查物品损害前的耐久度。
      • 物品谓词


minecraft:levitation

玩家获得漂浮状态效果时触发。可用条件:

  •  conditions
    •  distance
      •  absolute
        •  max:最大值。
        •  min:最小值。
      •  horizontal
        •  max:最大值。
        •  min:最小值。
      •  x
        •  max:最大值。
        •  min:最小值。
      •  y
        •  max:最大值。
        •  min:最小值。
      •  z
        •  max:最大值。
        •  min:最小值。
    •  duration:漂浮时间。
    •  duration
      •  max:最大值。
      •  min:最小值。


minecraft:location

每个游戏刻(每秒20次)检查玩家的位置。可用条件:

  •  conditions
    • 位置信息谓词


minecraft:nether_travel

玩家进入下界,然后返回主世界时触发。可用条件:

  •  conditions
    •  distance
      •  absolute
        •  max:最大值。
        •  min:最小值。
      •  horizontal
        •  max:最大值。
        •  min:最小值。
      •  x
        •  max:最大值。
        •  min:最小值。
      •  y
        •  max:最大值。
        •  min:最小值。
      •  z
        •  max:最大值。
        •  min:最小值。


minecraft:placed_block

玩家放置方块时触发。可用条件:

  •  conditions
    •  block:一个方块ID
    •  item:一个物品。
      • 物品谓词
    •  location
      • 位置信息谓词
    •  state:方块的方块状态。
      •  <state_name>:单一的方块状态,值为其状态。


minecraft:player_hurt_entity

玩家伤害实体(包括自己时触发。可用条件:

  •  conditions:
    •  damage:造成的伤害。
      • 伤害谓词

minecraft:player_killed_entity

玩家杀死实体时触发。可用条件:

  •  conditions:
    •  entity::杀死的实体。
      • 实体谓词
    •  killing_blow:杀死实体的伤害类型。
      • 伤害类型谓词


minecraft:recipe_unlocked

玩家解锁配方时触发(例如用知识之书)。可用条件:

  •  conditions
    •  recipe:配方。

minecraft:slept_in_bed

玩家上睡觉时触发。可用条件:

  •  conditions
    • 位置信息谓词


minecraft:summoned_entity

玩家召唤了实体时触发。例如铁傀儡(南瓜和铁块)、雪傀儡(南瓜和雪块)、末影龙(末影水晶)和凋灵(灵魂沙和凋灵骷髅头颅)。使用发射器来放置凋灵骷髅头颅或南瓜也能激活此触发器。刷怪蛋命令刷怪箱不会激活此触发器。可用条件:

  •  conditions
    •  entity
      • 实体谓词


minecraft:tame_animal

玩家驯服动物时触发。可用条件:

  •  conditions
    •  entity
      • 实体谓词


minecraft:tick

每个游戏刻触发(每秒20次)。

minecraft:used_ender_eye

玩家使用末影之眼(在有要塞生成的世界)时触发。可用条件:

  •  conditions
    •  distance:玩家与要塞的水平距离。
    •  distance
      •  max:最大值。
      •  min:最小值。


minecraft:used_totem

玩家使用图腾时触发。可用条件:

  •  conditions
    •  item:物品,仅限图腾。
      • 物品谓词


minecraft:villager_trade

玩家与村民交易时触发。可用条件:

  •  conditions
    •  item:购买的物品。
      • 物品谓词
    •  villager
      • 实体谓词

历史

release
1.122017年2月16日Dinnerbone发Twitter说他已花一整天时间和Darngeek一起设计“一个新东西”。
2017年2月20日“这个东西”的设计已经完成,可以开始实施了;他稍后提示了新特性的名称。[4]
2017年2月22日他说他在“推进”此特性:“太,多,的,Json,文,件,了。”
当天稍晚他说此工程正变得更大,他也许需要一个“比/scoreboard更复杂的命令”。
2017年3月6日神秘特性的后端已经完成但UI还没完成。
他稍后说:“我今天做了个tabthulhu。”[5]这暗示此特性可能要使用很多的标签。
2017年3月13日他再次在Twitter中提及特性名称,说他快完成这个新特性了。
2017年3月14日UI正在研发中,此项目需要许多天和一些研究报告来完成。
2017年3月22日此特性现在“奖励玩家一些东西”,他再次提到特性名称。
2017年3月23日Dinnerbone说此特性需要大约500个JSON文件。
他稍后发布了一张特性预览图,[6],后来澄清了是伪装为.png图片的.zip文件。[7][8][9]此.zip文件包含自定义JSON配方文件。
他后来又发布了另一个加密的.zip文件,包含了更多配方。[10]
2017年3月24日“一个吵闹的车子让我持续分心”,Dinnerbone说。用户们很快精确地找到这个奇怪的消息指向这个Gfycat链接,第一次官方地展示进度。
他透露UI可以包含进度树上的许多标签,其本身就是进度。[11]他说这就是他说的“tabthulhu.”的意思。[12]
所有UI都是数据驱动,包括位置和布局,没有位置或硬编码数据。[13]
17w13a加入了进度。
17w14a加入了新的进度,包括一个新的“冒险”标签。
加入了玩家达成进度时的提醒,有滑动效果和两种颜色:普通进度为黄色,特殊挑战为粉色。
17w15a增加了对每个进度的描述,并改变了一些进度的标题。
17w16b添加minecraft:item_durability_changed触发器。
17w17a添加新的进度以及两个新的标签:“末地”和“下界”。
添加levitation触发器。
添加location触发器的一个新的feature条件。
进度现在可以通过命令获得。
进度图标现在可以使用数据值。
添加5个修饰符到/advancement grant/advancement revoke命令: “everything”,“from”,“until”,“through”和“only”。
17w17b默认的进度现在从本地化文件中获取标题和简介。
加入了获取某些进度时提供直观的数字显示
加入了changed_dimension触发器,有两种可用条件:tofrom,都允许“overworld”“the_nether”或“the_end”为参数。
“位置”共享对象现在有了一个名为dimension的新的字符串(和上述内容有相同的值)。
17w18a重新加入通知功能,当有人获得新的进度时,聊天栏内会显示消息
加入了新的冒险模式进度:“永恒的伙伴”“我从哪儿来?”和“成双成对”。
加入了新的minecraft:tickminecraft:tame_animal触发器
加入了新的show_toastannounce_to_chat显示选项
加入了/gamerule announceAdvancements,用来控制聊天栏的进度提示。替代了旧的server.properties条目
“entity”对象以及minecraft:levitation触发器现在使用一个共享的“distance”对象。它们检查玩家是否在一定的x轴、y轴或z轴范围内或之外,尽管水平位置不包括Y轴。
进度“这上面的风景不错”现在要求玩家向上漂浮50米,而不是持续漂浮30秒。
“狙击手间的对决”的完成标准现在检查水平距离。
进度加载现在需要严格JSON。
17w18b添加了一个新的“农牧业”标签和下列新的进度:“开荒垦地”“终极奉献”“均衡饮食”“招募援兵”。
在之前的快照中添加的进度会移到新的农牧业标签。
添加了新的进度触发器:consume_itemplaced_blockarbitrary_player_tick
“怪物猎人”和“怪物狩猎完成”进度现在需要22个生物而不是23个,从列表中移除了幻术师
pre1加入了新的进度:“狂乱的鸡尾酒”“超越生死”“子空间泡泡”“不稳定的同盟”。
添加了hidden,隐藏进度介绍的设置,默认为否。
添加了新的effects_changedused_totemnether_travel的进度触发器。
添加了function作为进度的奖励,移除了进度中的commands奖励。
进度树现在将居中在UI中。
进度中的物品和实体将拥有一个额外的NBT字段。
进度中的实体将有额外的effectslocation字段。
移除了arbitrary_player_tick触发器。
pre2加入了新的进度:“为什么会变成这样呢?”。奖励100经验
pre3“为什么会变成这样呢?”进度需获得的状态效果现在包括抗性提升,完成该进度时会现在给予玩家1000点经验。
完成“均衡饮食”进度所需要吃的食物现在包含所有种类的鱼(生的和熟的,如果有)和附魔金苹果。
进度界面会记住你上次打开的标签页。
pre5所有配方解锁的进度都有minecraft:recipes/root的上级ID了。
某些配方解锁的进度更名了。
pre7为所有“挑战”进度加入经验奖励。
正式版为推送通知添加了新的声音。

漏洞

Template:Issue list

你知道吗

  • 17个原电脑版的成就被重制为进度:这是?工作台!(改为 Minecraft)、采矿时间到!(改为 石器时代)、获得升级来硬的我们需要再深入些结束了?结束了。(改为 解放末地)、见鬼去吧!与火共舞本地的酿造厂开始了?(改为 凋零山庄)、信标工程师钻石!附魔师探索的时光怪物猎人狙击手的对决
  • 6个原其他版本的成就被重制为进度: 保镖(改为 招募援兵)、逃脱死亡(改为 超越生死)、僵尸科医生你需要来点薄荷糖 结束了…再一次…这上面的风景不错

画廊

另见

参考

  1. https://www.reddit.com/r/Minecraft/comments/64pk6r/dinnerbone_working_on_giving_advancements/dg4uiou?context=1
  2. “The tabs are alternate trees that are themselves advancements too. We support a lot, but we'll use 4/5 in vanilla. http://media.dinnerbone.com/uploads/2017-03/screenshots/24_09-23-41_rYLfqg0Q52.png”@Dinnerbone,2017年3月24日
  3. “4 or 5 tabs. Probably: "mine & craft", "nether", "end", "combat", "engineering" or some variant of.”@Dinnerbone,2017年3月27日
  4. “Getting this implemented in a nice way would be a real advancement for the game.”@Dinnerbone,2017年2月20日
  5. “I made a tabthulhu at work today. This is an interesting project!”@Dinnerbone,2017年3月6日
  6. “This is a super big spoiler of what I'm working on. Totally unfinished and may change a lot, but gives you an idea. http://media.dinnerbone.com/uploads/2017-03/screenshots/23_15-00-52_ttcfj9tDnV.png”@Dinnerbone,2017年3月23日
  7. “(No I'm not adding emoji.)”@Dinnerbone,2017年3月23日
  8. “(P.s. there was more to that picture than meets the eye. May need a bit of trickery.)”@Dinnerbone,2017年3月23日
  9. “Did the filesize seem a bit big?”@Dinnerbone,2017年3月23日
  10. “Okay so I think my webserver proxy messed that up. Technology is difficult. Here's a more fun image, in a zip: http:// media.dinnerbone.com/uploads/2017-03/screenshots/23_15-00-52_ttcfj9tDnV.zip”@Dinnerbone,2017年3月23日
  11. “The tabs are alternate trees that are themselves advancements too. We support a lot, but we'll use 4/5 in vanilla. http://media.dinnerbone.com/uploads/2017-03/screenshots/24_09-23-41_rYLfqg0Q52.png”@Dinnerbone,2017年3月24日
  12. “(Thus "tabthulu" tweets from a few weeks back. :D)”@Dinnerbone,2017年3月24日
  13. “Also worth noting: all of that UI is data driven. Positioning and layout included. No hardcoded data in UI, no hardcoded positions in data.”@Dinnerbone,2017年3月24日

游戏内容

Advertisement