药水是可以给玩家提供各种状态效果的一系列物品。
分类
药水可分为可饮用的药水、喷溅药水和滞留药水 3 类,其中喷溅型药水和滞留型药水由可饮用的药水转化而来,三者提供的状态效果相同,仅在使用方式上有差别。
水瓶及其喷溅型、滞留型变种都属于药水,但蜂蜜瓶和不详之瓶不属于药水。
获取
除了幸运药水和不可合成的药水,其它药水都可以被玩家通过至少一种途径获取。
世界生成
下列情况下世界中会自然生成部分药水:
末地船的舱室中的酿造台上必定有两瓶瞬间治疗 II 药水;
雪屋的地下室中的酿造台上必定有一瓶喷溅型虚弱药水;
埋藏的宝藏的箱子中有概率生成水肺药水和再生药水;
探索试炼密室的过程中玩家可能会获得力量药水、迅捷药水和再生药水;
远古城市的箱子中可能生成再生药水(II 级);
[仅基岩版]沼泽小屋的炼药锅中会随机盛装一种除衰变药水以外的药水。
生物战利品
下列情况下部分生物会手持药水:
女巫在战斗中会视情况饮用治疗药水、抗火药水、迅捷药水或水肺药水;
流浪商人在即将天黑时会饮用隐身药水。
此时,若玩家将其杀死,上述生物有 8.5%[Java版] 或 25%[基岩版] 的概率掉落手持的药水,此概率受抢夺魔咒的影响。
以物易物
玩家可以和下面的生物交易获得部分药水:
流浪商人有概率出售 1 瓶隐身药水,售价为 5 颗绿宝石;
猪灵收取金锭后有概率给予玩家一瓶抗火药水、其溅射型变种或一个水瓶,三者的概率分别是 8/469、8/469 和 10/469.
酿造
酿造是玩家获取药水最主要的方式,其流程详见药水酿造词条。
世界交互
玻璃瓶有概率作为垃圾在钓鱼时获得;
玩家可以手持玻璃瓶盛装含水方块[仅Java版]、水源方块和炼药锅中的水;
[仅基岩版]玩家可以手持玻璃瓶盛装炼药锅内的药水,玻璃瓶将会被替换为对应的药水。
每次盛装炼药锅中的液体都会使其减少 1/3.
用途
获得状态效果
玩家可以消耗药水来获得各种状态效果,三种不同类型的药水使用方式有所差别。
可饮用的药水:手持药水,长按使用物品键,玩家将饮用这瓶药水,药水转化为玻璃瓶,同时玩家获得相应的状态效果;
喷溅药水:玩家使用喷溅药水可将其以弹射物的状态投掷出去,发射器亦可以完成此行为。
滞留药水:滞留药水的投掷方法和喷溅药水相同,滞留药水击中方块或实体后会创造出一片区域效果云,其初始半径为 3 格,并会在 30 秒内渐渐缩小到 0. 只要玩家接触到区域效果云就会立即获得药水对应的完整时长的状态效果。
交易
流浪商人有 1/3 的概率以 1 颗绿宝石的价格收购 1 个玻璃瓶。
世界交互
填充炼药锅:玩家可以手持水瓶或药水[仅基岩版] 对着炼药锅按下使用键,手中的物品将转化为玻璃瓶,炼药锅中的水位将提升。
和泥:对泥土、缠根泥土或沙土使用水瓶可使其转变为泥巴,返还空玻璃瓶。发射器可以模拟玩家的这一行为。
相关成就 / 进度
图标成就游戏内描述实际需求本地酿造厂配制一瓶药水从酿造台的输出栏获取药水
图标进度游戏内描述实际需求命名空间ID本地酿造厂酿造一瓶药水从酿造台的输出栏获取任意物品,包括空瓶或命令放入的其他物品。nether/brew_potion狂乱的鸡尾酒同时拥有所有药水效果同时拥有下列 17 种状态效果:
抗火、隐身、跳跃提升、夜视、中毒、生命恢复、抗性提升、缓降、缓慢、迅捷、力量、水下呼吸、虚弱、寄生、渗浆、盘丝和蓄风
nether/all_potions为什么会变成这样呢?同时拥有所有状态效果同时拥有下列 33 种状态效果:
伤害吸收、不祥之兆、失明、潮涌能量、黑暗、海豚的恩惠、抗火、发光、急迫、村庄英雄、饥饿、隐身、跳跃提升、飘浮、挖掘疲劳、反胃、夜视、中毒、生命恢复、抗性提升、缓降、缓慢、迅捷、力量、水下呼吸、虚弱、凋零、寄生、渗浆、盘丝、蓄风、袭击之兆、试炼之兆
nether/all_effects数据值
命名空间ID
所有的药水共用三个 ID 值:
potion:对应所有可饮用的药水;
splash_potion:对应所有喷溅药水;
lingering_potion:对应所有滞留药水。
物品标签
药水都具有以下物品标签:
#c:potions:标记了所有的药水;
#c:potions/bottle:标记了所有瓶装药水;
可饮用的药水还具有额外的物品标签:
#c:drinks:标记了所有的饮品;
#c:drinks/watery;
#c:drinks/magic.
物品堆叠组件
由于所有药水共用三个命名空间 ID,药水产生的状态效果的类型、时长等信息通过物品堆叠组件存储。
任何药水都包含复合组件 minecraft:potion_contents,其中必定包含字符串类型的组件 potion,存储该药水提供的效果,此组件会影响该药水的名称和纹理。
夜视药水的物品堆叠组件,图中的 GUI 由 IGNR 模组提供
使用指令获取的自定义药水还额外包含以下组件:
(复合组件)custom_effects:存储该药水的所有自定义效果,每个效果都由一个复合组件存储,其中可以包含以下组件:
(布尔型)ambient:标记该效果是否由信标施加;
(无符号 8 位整数)amplifier:记录该效果的等级,取值范围为 0~255;
(整型)duration:记录该效果的持续时间,以游戏刻为单位;
(复合组件)hidden_effect:决定该效果被更高级的相同效果覆盖的相关行为;
(字符串)id:记录该效果的命名空间 ID;
(布尔型)show_icon:决定是否显示该效果的图标;
(布尔型)show_particles:决定是否显示该效果的粒子效果。
(整型)custom_color:决定该药水渲染的颜色,取其二进制的后 24 位按 RGB 格式存储;
(字符串)custom_name:决定该药水的名称。
历史改动
纹理变迁
1.14 快照 18w43a 更改了药水的纹理。
1.19.4-pre1 移除了药水的附魔光效,1.19.4-pre3 更改了部分药水的颜色。
下图展示了夜视药水在各个时期的纹理。
夜视药水在 1.4.2 被加入游戏时的纹理夜视药水在 1.14 ~ 1.19.3 的纹理夜视药水自 1.19.4 至今的纹理使用机制改动
在 1.21.6 快照 25w18a 之前,若玩家投掷喷溅药水的角度不是向正上方,玩家获得的状态效果的时长将在一定程度上缩短;25w18a 之后,只要被药水击中,玩家就可以获得完整时长的状态效果。