UU看書

第一百五十四章 村莊與掠奪更新前的自定義交易

天才一秒記住【UU看書】地址:www.uukanshu.co

林地府邸和海底神殿這兩個遺蹟,一般都生成在幾千格遠的地方,如果想要單獨靠運氣尋找那簡直是大海撈針。如果有作弊的話用locate也就罷了,沒開作弊或者是在伺服器內找,那就必須得找到身著白色服裝的製圖師換取林地探險家地圖和海洋探險家地圖。

現在,你找到了一個製圖師村民,他希望能用1顆綠寶石換取你的36張紙。你早有準備,與村民進行了一場交易,並獲得了些許經驗值。村民看起來很高興,頭上冒出綠色的粒子並伴隨生命提升效果給你開了一個新的交易專案:用一個指南針換取一顆綠寶石。

為了不死圖騰,你又向村民換取了一顆綠寶石。村民更加開心了,繼續給你開了一個新的交易最終,你成功用44顆綠寶石加上兩個指南針換取了那兩張你夢寐以求的地圖。

後來,其他玩家也發現了這個製圖師。其中一個玩家攜帶了大量紙張,將這個村民的第一個交易專案換沒了。但當他與該村民進行其他交易專案時,那個沒貨的交易專案又有貨了。

如你所見,村民的交易系統有以下幾個特點:

①指定的村民職業具有指定的交易專案

②交易專案會逐步開放,直到沒有專案可開放為止

③一個交易專案可以用一到兩種物品換取指定的物品。

④交易專案使用後可以獲得一些經驗

⑤交易專案具有次數限制,次數限制達到後將無法使用該交易專案,需要與村民進行其他交易後才會重新開放。

上面這幾個特點分別對應村民NBT標籤中的:

①Profession和Career(均為Int整形)

②——CareerLevel(Int整形)

③——一個交易專案中的buy、bugB和sell(均為複合標籤)

④——一個交易專案中的rewardExp(Byte布林值)

⑤——一個交易專案中的maxUses(Int整形)

為了能夠用NBT自定義村民交易,我們首先需要注意的是Profession和Career標籤,這兩個NBT標籤的作用分別是:

Profession——確定村民的一級職業,即村民的衣服是什麼顏色。0為棕色(農民),1為白色(圖書管理員),2為紫色(牧師),3為棕色黑色(鐵匠),4為棕色白色(屠夫)5為綠色(傻子)。如果不填該項遊戲會隨機賦予村民一級職業。

Career——確定村民的二級職業,即村民的具體職業。如果沒有這項或這項為0,當玩家開啟該村民的交易選單時遊戲將會重新整理該村民的職業並重置CareerLevel為1。如果不填該項遊戲會隨機賦予村民二級職業。

村民的二級職業ID具體如下:

⓪棕色長袍(農民)——1為農民,2為漁夫,3為牧羊人,4為制箭師;

①白色長袍(圖書管理員)——1為圖書管理員,2為制箭師;

②紫色長袍(牧師)——1為牧師;

③棕色黑色(鐵匠)——1為盔甲商,2為工具商,3為武器商;

④棕色白色(屠夫)——1為屠夫,2為皮匠;

⑤藍色長袍(傻子)——1為傻子。

需要注意,在Java113版本中,工具商和武器商的ID進行了交換。也就是在113版本中鐵匠下面的二級職業ID變為了“1為盔甲商,2為武器商,3為工具商”。

舉個很簡單的例子:

summonminecraftvillagerProfession0,Career1

這條指令將會生成一名普普通通的農民。

CareerLevel直譯為“交易水平”。它的作用很簡單,就是控制村民開放的交易專案的多少,基本上就相當於村莊更新後的“新手”、“老手”、“大師”各種村民級別,每當完成一次交易就重新整理並增加一些。和Career標籤一樣,如果為0就會重新重新整理該村民的職業將CareerLevel設為1。

舉個簡單的例子,假設有一個農民,遊戲給他的交易專案有:

2綠寶石→1西瓜(CareerLevel為1開啟)

1閃爍的瓜皮→1綠寶石(CareerLevel為2開啟)

1閃爍的西瓜→1綠寶石(CareerLevel為2開啟)

10綠寶石→1大鵬(CareerLevel為4開啟)

1水果攤1綠寶石→1生瓜蛋子(CareerLevel為6開啟)

2猹→1綠寶石(CareerLevel為10開啟)

1秤→5綠寶石(CareerLevel為12開啟)

1指南針15西瓜→30綠寶石(CareerLevel為13開啟)

1薩日朗花10綠寶石→1章魚哥(CareerLevel為17開啟)

此時有一個叫“LiuHuaqiang”的玩家騎著HeatAndClimate(熱量與氣候)模組中的摩托車(黑)前來買瓜。首先他換取了一個西瓜,使該村民的CareerLevel提升到了2,開放了兩個新的交易專案。隨後他用閃爍的瓜皮和閃爍的西瓜兌換了2顆綠寶石,進一步使村民的該標籤提升到了4,又開放了1個交易。就這樣,最終當CareerLevel≥17時,村民才不再開放新的交易專案。

(然後這名玩家來了個跳劈將村民一刀砍死了)

CareerLevel標籤對於自定義交易很重要。如果它的值過低,沒有超過該職業最後開放的交易專案需要的CareerLevel的值,玩家在進行自定義的交易專案後村民將會開放新的交易專案。

比如某伺服器腐竹使用了上面那名賣瓜的村民作為自定義村民的職業,但在編輯自定義交易專案時忘記了將CareerLevel設為大於或等於17的值。這就導致玩家前來與該村民進行交易後,村民又開放了兩個新的交易專案,使玩家們很疑惑。

上面這些都是自定義交易相關聯的內容,而接下來我們將要學習核心內容:Offers標籤。

自定義交易最重要的NBT標籤就是Offers(複合標籤)和Recipes(列表)。具體的格式如下:

OffersRecipes一個交易專案,一個交易專案

Offers有什麼用我們並不知道,似乎去掉這個NBT標籤把Recipes拿出來也絲毫沒有問題,也不知道Mojang為何要在Recipes外套一個Offers。

單個交易專案有以下NBT標籤:

rewardExp(Byte布林值)——交易成功後是否提供經驗球,1為提供,0為不提供。

maxUses(Int整形)——該交易專案能夠使用的次數,當交易專案被重新整理時會隨機增加212。

uses(Int整形)——該交易專案已經被使用的次數。如果大於等於maxUses該交易專案將會無法使用。交易專案重新整理時maxUses會隨機增加,uses就再次小於maxUses,交易專案便重新開啟。

buy(複合標籤)——該交易專案中村民需要收購的東西,值為物品通用標籤。

buyB(複合標籤)——該交易專案中村民需要收購的第二個東西,值為物品通用標籤。該標籤不一定需要。

sell(複合標籤)——該交易專案中村民出售的東西,值為物品通用標籤。

舉個簡單的例子:

summonvillagerCareerLevel200,OffersRecipesrewardExp1,maxUses150000,buyCount1,id“twilightforesttrophy“,Damage4,buyBCount10,id“minecraftemerald“,sellCount1,id“minecraftdiamondsword“,tagenchid16,lvl10

(上面這條指令適用於Java113之前的版本)

看起來這個很複雜,但如果你能夠把它展開再看就極為簡單了。

這條指令將會生成一名CareerLevel為200的村民,他有一個可以使用15萬次並且可以提供經驗值的交易專案:用1個幻影騎士戰利品(暮色森林mod)10綠寶石換取一把鋒利X的鑽石劍。

現在你可以嘗試自己去自定義一個交易專案。但請注意,最好新建一個txt檔案並使用notepad、文字文件之類的程式開啟再在裡面編寫指令(因為這樣子可以用換行tab鍵以類似於程式碼的樣子編寫,極為方便),編寫完成後再複製進遊戲中執行。不要在遊戲內的命令方塊、聊天欄內編寫,因為這樣子很容易出錯!

村民的NBT除了上面講到和交易有關的標籤,還有另外三個並不怎麼重要的標籤:

Riches(Int整形)——直譯為“富有的”,遊戲內沒有使用,會隨村民收到綠寶石而上升。

Willing(Byte布林值)——村民是否願意繁殖,1為願意。會在進行一次讓交易專案重新整理的交易後變為1。

Inventory(列表)——村民的揹包,但並沒有欄位之分。舉個簡單的例子:

summonvillagerInventoryid“minecraftemerald“,Count64

這將會生成一名有64個綠寶石的村民。

村民的揹包只有8格,所以如果這個列表內的專案超過了8格,多餘的部分將會被清除(除非能夠與沒有超過的部分堆疊)。

現在,你知道如何自定義村民交易了吧?需要注意,單個村民具有的交易專案最多隻能有16項!

如遇章節錯誤,請點選報錯(無需登陸)

新書推薦

帶顆華子穿越網遊世界 穿越八零:從極品肥妻到團寵 網遊之靈武者傳說 網遊之我是神偷 網遊:我在達瓦拉大陸當火神 網遊之無敵從殺雞開始 絕殺!我得到了超巨系統?