We are currently performing an upgrade to our software. This upgrade will bring MediaWiki from version 1.31 to 1.33. While the upgrade is being performed on your wiki it will be in read-only mode. For more information check here.

sounds.json

出自Minecraft Wiki
前往: 導覽搜尋

Information icon.svg
此特性為Java版基岩版獨有。

sounds.json(在基岩版中為sound_definitions.json)是一個由資源包的聲音系統使用的文件。當一個或多個遊戲內事件觸發了一個聲音事件時,聲音系統會根據該文件的內容來決定播放哪個音效。該文件應該放置於資源包的assets/<命名空间>/目錄下。在該文件中定義的聲音事件可以通過形如<命名空间>:<声音事件名>的命名空間ID來調用。

遊戲預設的該文件放置在.minecraft/assets/objects(基岩版的話是在assets/resource_packs/vanilla/sounds)目錄下,它的文件名可以在.minecraft/assets/indexes/<游戏版本>.json文件中查詢。

文件結構[編輯 | 編輯原始碼]

這個文件用JSON格式存儲,但在這裡使用NBT的圖標來表示。


  • 根對象。

    •  聲音事件名: 一個聲音事件。聲音事件名通常是按照類別以點(.)分割的(例如entity.enderman.stare)。下方有表格列出了所有遊戲自帶的聲音事件。(如果你想要為該聲音事件設定minecraft以外的命名空間,應當把sounds.json文件放置在相應命名空間的目錄下,而不是在這裡定義。)

      •  replace: 可選。如果設定為true,在sounds中定義的音效列表會替換掉優先級更低的資源包中為該聲音事件定義的音效。設定為false則會補充到原來的音效列表中,而不是直接替換。如果不指定,預設為false

      •  subtitle: 可選。如果遊戲中開啟了「顯示字幕」選項,遊戲將會在該聲音事件被播放時將該字符串翻譯為聲音字幕。

      •  sounds: 可選。該聲音事件使用的音效文件列表。當該聲音事件被觸發時,遊戲會從此列表定義的音效文件中隨機選取一個播放。

        • assets/<命名空间>/sounds/資料夾到此音效文件的路徑。應使用正斜線(/)分割路徑。

        • 一個代表音效文件的對象。如果你需要定義更多參數的話再用這個對象定義,否則用上面的字符串格式即可。

          •  name: 從assets/<命名空间>/sounds/資料夾到此聲音文件的路徑,或着是另一個聲音事件的命名空間ID。

          •  volume: 播放此聲音時的音量。值為0.0到1.0的小數。未定義時預設為1.0。

          •  pitch: 以確定的值播放音調。未定義時預設為1.0。可以調至更高或更低。

          •  weight: 此聲音事件觸發時此聲音被播放的概率。預設為1。例如,設為2相當於此文件在列表中出現兩次。相反地,假設別的文件都沒有更改此設定,設為0.5相當於別的文件在列表中都出現兩次。

          •  stream: 設定為true則此聲音會以流式播放。當聲音較長時最好設為true來避免卡頓。所有的musicrecord分類的音效(除了音階盒)都使用流式播放,因為它們的長度都達到一分多鐘。未指定則預設為false

          •  attenuation_distance: 基於距離的音效大小衰減率。用於傳送門、烽火台和海靈核心。

          •  preload: 若設定為true,則該音效文件會在加載資源包時就加載,而不是在播放音效的時候再加載。用於水下環境音效。預設為false

          •  type: 可選soundeventsound表明name中定義的是文件名,event表明name中定義的是聲音事件名。未指定則預設為sound

這裡有sounds.json的pre-1.10範本。
這裡有Dinnerbone關於此文件的編寫規範。

聲音事件[編輯 | 編輯原始碼]

一個聲音事件是和遊戲事件聯繫在一起的。多個聲音事件可能對應不同的遊戲事件或屬於不同的聲音分類,但它們共用同一個聲音文件。小部分的有效聲音文件並沒有出現於sounds.json,而其他則沒有相對應的遊戲事件。任何缺少遊戲事件的聲音事件都僅能通過/playsound指令播放。所有預設的聲音事件,它們使用的聲音,它們屬於的類別,以及觸發它們的遊戲事件將在下表中列出。

Java版數據值

基岩版數據值

方塊聲音種類[編輯 | 編輯原始碼]


此段落需要更新。原因:內容不包括1.13新更新的方塊

聲音系統可以使被踩到、被放置、被破壞的方塊產生相應的聲音。 具有特殊音效的史萊姆方塊沒有被列在下表中。

種類 所屬方塊 註解
布類 羊毛仙人掌蛋糕地毯[注 1] 火方塊被破壞的聲音是隨機生成的,fizz instead of dig.cloth.
草地海綿濕海綿樹葉芒草枯灌木棕色蘑菇紅色蘑菇TNT小麥甘蔗荷葉菌絲土藤蔓胡蘿蔔馬鈴薯乾草捆甜菜草徑 其中小麥種子甜菜種子、荷葉、胡蘿蔔和馬鈴薯在被玩家放置時不會產生聲音。
礫石類 泥土粗泥灰壤礫石耕地黏土塊
沙類 紅沙靈魂砂混凝土粉末
雪類 雪塊
石制類 石頭安山岩拋光安山岩閃長岩拋光閃長岩花崗岩拋光花崗岩鵝卵石基岩金礦鐵礦煤礦青金石礦青金石磚發射器砂岩黏性活塞蜘蛛網活塞石製半磚紅磚青苔鵝卵石黑曜石生怪磚紅石線鑽石礦熔爐鵝卵石階梯石制壓力板紅石礦石製按鈕唱片機地獄石怪物蛋石磚紅磚階梯石磚階梯地獄磚地獄磚柵欄地獄磚階梯地獄疙瘩附魔台釀造台鍋釜終界石龍蛋紅石燈砂岩階梯綠寶石礦終界箱絆線鈎絆線指令方塊烽火台鵝卵石牆花盆生物頭顱鐵砧地獄石英礦石英磚石英階梯投擲器陶土屏障海磷石海磷石磚暗海磷石煤炭磚紅砂岩階梯紅砂岩半磚岩漿塊混凝土界伏盒觀察者 唱片機雖然發出石制類方塊的音效,但是這種方塊最好用破壞,而不是
金屬類 動力鐵軌感測鐵軌金磚鐵磚鑽石磚鐵軌鐵門鐵柵欄綠寶石磚漏斗紅石磚觸發鐵軌鐵製地板門 鑽石磚、綠寶石磚理論上並不屬於金屬,但它們實際上仍然發出金屬的聲音。
木質類 木材木塊書櫃火把、木質階梯、儲物箱工作台梯子告示牌控制桿、木質壓力板、紅石火把柵欄南瓜南瓜燈紅石中繼器、木地板門、巨型蘑菇方塊、西瓜、南瓜藤、西瓜藤、柵欄門、木質半磚、可可豆、木質按鈕、陷阱儲物箱測重壓力板紅石比較器日光感測器旗幟木門 其中推薦使用鎬來破壞測重壓力板、火被破壞時的聲音是隨機的,可用手撲滅,滅火時發出「嘶嘶」的響聲、床、瓜藤、可可豆、旗幟和木門在被放置時沒有聲音產生。
玻璃類 玻璃螢光石地獄傳送門方塊染色玻璃玻璃片終界傳送門方塊染色玻璃片海燈籠冰磚終界傳送門框架 這些方塊在被踩踏和敲擊的時候發出「石製類」的聲音,並且很多「玻璃類」方塊推薦用鎬破壞,但是「玻璃類」方塊與「石制類」方塊的區別是——「玻璃類」方塊在被破壞的那一霎那會發出清脆的玻璃碎裂的聲音。

歷史[編輯 | 編輯原始碼]

Java版
1.7.2 13w42a 加入了sounds.json。
1.9 15w43b 加入了 "subtitle" 字段。
?更改了許多聲音的id,之前的id可以從sounds.json/Java版1.9前上查看。
16w02a 加入了「voice」聲音事件類別。
1.10 移除了「category」區域[1]
1.13 18w10a 加入了「preload」字段。
攜帶版
1.0 ?加入了sound_definitons.json。

參考[編輯 | 編輯原始碼]