【心得】Minecraft Attributes–屬性介紹 (20w14a後)

各位安安,我是瘋子((怎麼你名字又改了(((其實沒有人知道你
自從沒有在蓋地圖之後,我就一直在鑽研那個snapshot快照版本
那個,先來介紹一下背景吧
1.13
大家應該也知道那個版本發生甚麼事了
指令的文法大改
那些像是testforblocks之類的都沒有了
這次的20w12a,
把屬性的格式稍微的改了一下
20w14a,又把屬性id稍微的又改了一下

那我就輕輕的把20w12a之前的屬性介紹一下吧
喔對,這裡我會使用一個叫”NBT Explorer”的工具輔助介紹,有興趣的好朋友可以點一下前面的超鏈接

屬性是增益/減益效果(buff/debuff),有點像是狀態效果(effect),但是它可以做一些跟狀態效果不同的東西,時間在特定情況下是永久的
聽起來很棒對不?他就是這麼棒
那我們一起來看看屬性的格式(舊版,即20w12a之前)
Amount:值,它是控制屬性的強度的東…東西?總之它就是一個數字越大效果越強的東西啦
AttributeName:屬性名稱,之後會介紹
Name:同上,應該是與上面一樣才會發動,我也沒有特意去試
Operation:運算模式(0=Amount就是它的終極值,1=基礎乘Amount,2=基礎乘Amount在加1(?)
Slot:(在圖中沒有顯示)在甚麼格子才會發動,mainhand是慣用手(當前選擇的格子),offhand是副手,head是頭,chest是衣服,legging是褲子,boots是鞋子
UUID(Least/Most):這個是隨便的數字,這個可以用來區分是否可疊加,例如左手的UUID是1,右手的UUID是2,屬性就可以疊加;那左右手的UUID都是1,那就不會疊加了

那接下來要介紹屬性名稱(舊版,即20w12a之前)了,不過我只介紹常用的屬性名稱就算了((懶
generic.maxHealth=最大生命值,跟那個/effect的health boost是一樣的,不過效果可以保留
generic.knockbackResistance=抗擊退,只有獄髓裝備在沒有修改的情況下擁有抗擊退的效果(我果然好愛1.16)
generic.movementSpeed=移動速度,跟speed/slowness是一樣的,但是不會使用上圖的Int tag(因為Int不能設置小數),而是使用Double tag((移動速度越接近1越快
generic.attackDamage=攻擊傷害,跟strength/weakness一樣
generic.armor=盔甲值,平常穿盔甲就可以獲得,但是使用屬性的話,你可以在握著劍的時候獲得盔甲值((之類的
generic.armorToughness=盔甲強度,它沒有顯示在原生Minecraft,但是你在受傷的時候可以減免一點傷害
generic.attackSpeed=CD時間,夠快的話(我是指Amount夠大拉)你可以回歸1.9之前的爽快連打

那以上就是舊版的屬性
那新版的,其實好像也沒有甚麼大改
只是它的格式和id有改而已
先說20w12a的改動吧
20w12a把UUIDLeast和UUIDMost給砍掉
變成4組數字的組合UUID
可以看到這串Int Array tag由4組數字組合而成
如果用之前的UUIDLeast/Most會令屬性整個沒有辦法用哦((我還特意去回報bug,其實我只是沒有翻清楚wiki((MC-175259(不是我回報的
而且,你升級成20w12a的時候它不會幫你把UUID改成4組,使得你必須使用NBT Explorer改tag

然後就是20w14a的改動,
第二張圖可以看到AttributeName和Name有底線,下面顯示了20w14a的改動
generic.maxHealth   →  generic.max_health
generic.knockbackResistance    generic.knockback_Resistance
generic.movementSpeed    generic.movement_speed
generic.attackDamage  →  generic.attack_damage
generic.armorToughness  →  generic.armor_toughness
generic.attackSpeed  →  generic.attack_speed
直白來說,就是armor的盔甲值沒有改動
如果用之前的沒有底線的名稱不會發動屬性,但是AttributeName在升級成20w14a的時候會自動幫你改
所以AttributeName跟Name不一樣是可以的嗎((不知道w

接下來就是升級成20w14a的屬性的方法
首先要找到你的物品的AttributeModifiers
然後就是把AttributeName和Name改成上面的id(有底線的)
接著就是把UUIDLeast和UUIDMost刪掉
點那個5entries,在上方的空間找<I> (Int Array Tag)
Tag的名字是UUID
打開你剛剛用出來的tag
隨便打一些數字(例如:1498693494  1027158888  1898994005  860320107)
OK然後保存
然後就升級完了

這次的介紹就結束了
如果有問題的都可以問,有補充的都可以補充
感謝各位耐心閱讀
本文來自網路,不代表3樓貓立場,轉載請註明出處:https://www.3loumao.org/957.html?variant=zh-tw
返回頂部