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
此特性為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
來避免卡頓。所有的music
和record
分類的音效(除了音階盒)都使用流式播放,因為它們的長度都達到一分多鐘。未指定則預設為false
。
attenuation_distance: 基於距離的音效大小衰減率。用於傳送門、烽火台和海靈核心。
preload: 若設定為true
,則該音效文件會在加載資源包時就加載,而不是在播放音效的時候再加載。用於水下環境音效。預設為false
。
type: 可選sound
或event
。sound
表明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。 |