Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
Advertisement

sounds.json是一个由资源包的声音系统使用的文件。当一个或多个游戏内事件触发了一个声音事件时,声音系统会根据该文件的内容来决定播放哪个音效。该文件应该放置于资源包的assets/<命名空间>/目录下。在该文件中定义的声音事件可以通过形如<命名空间>:<声音事件名>的命名空间ID来调用。

游戏默认的该文件放置在.minecraft/assets/objects(基岩版在assets/resource_packs/vanilla/sounds)目录下,它的文件名可以在.minecraft/assets/indexes/<游戏版本>.json文件中查询。

文件结构[]

文件用JSON格式存储,但在这里使用NBT的图标来表示。

Java版[]

  • :根对象。
    •  声音事件名:一个声音事件。声音事件名通常是按照类别以点(.)分割的(例如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相当于此文件在列表中出现两次。
          •  stream:设置为true则此声音会以流式播放。当声音较长时最好设为true来避免卡顿。所有的musicrecord分类的音效(除了音符盒)都使用流式播放,因为它们的长度都达到一分多钟(最长达八分多钟)。未指定则默认为false
          •  attenuation_distance: 基于距离的音效大小衰减率。用于传送门、信标和潮涌核心。默认为16。
          •  preload:若设置为true,则该音效文件会在加载资源包时就加载,而不是在播放音效的时候再加载。用于水下环境音效。默认为false
          •  type:可选soundeventfile表明name中定义的是文件名,event表明name中定义的是声音事件名。未指定则默认为sound

sounds.json的pre-1.10范本

Dinnerbone的关于此文件的编写规范

基岩版[]

sound_definitions.jsonmusic_definitions.json[]

  • : 根对象。
    •  format_version:当前值为1.14.0,表示自村庄与掠夺以来使用的标准格式。
    •  sound_definitions:对声音事件的定义。
      • :单个声音事件,通常会分为一类(例如mob.endermen.starestep.stone)。默认的声音事件会在下方列出。
        •  category:控制声音音量滑条的分类。mastermusicrecordweatherhostileneutralplayerblockbucketbottleambientvoicesound。默认值为sound
        •  min_distance:声音开始衰减的距离。默认值为0。
        •  max_distance:声音完全听不见的距离。默认值为16。
        •  min_delay:声音事件触发后经过多长时间才会播放(最小值),单位为秒。只有music_definitions.json才会使用此参数。默认值为0。
        •  max_delay:声音事件触发后经过多长时间才会播放(最大值),单位为秒。只有music_definitions.json才会使用此参数。默认值为0。
        •  sounds:声音事件所使用的具体音效。
          •  name:该音效在资源包中的路径(不包含拓展名)。若详细定义了每个音效的具体参数,则会使用下方的组件。
            •  name:该音效在资源包中的路径(不包含拓展名)。
            •  stream:当该声音为流式播放时为true。默认值为false。
            •  is3D:是否以立体声播放。
            •  volume:声音的音量。默认值为1.0。可以是一个区间以表示范围。
            •  pitch:声音的音高。默认值为1.0。可以是一个区间以表示范围。
            •  weight:声音的权重,即触发该音效时间后单个声音会被播放的概率,例如值为2时相当于将该音效重复定义了1次。默认值为1。
            •  load_on_low_memory:是否预载。预载的音效可以在低内存设备上播放。
        •  subtitle未使用的值

sounds.json[]

  • : 根对象。
    • :声音事件的集合名。值可以是individual_event_soundsblock_soundsentity_soundsinteractive_sounds
      • :二级集合名,用于表示某一类方块的共同音效集合,例如stonewood
        •  volume:声音的音量。默认值为1.0。可以是一个区间以表示范围。
        •  pitch:声音的音高。默认值为1.0。可以是一个区间以表示范围。
        •  events:具体的声音事件命名空间ID的集合。
          • :系统音效类型,例如item.use.on。默认值和声音事件命名空间ID保持一致。
            •  sound:单个声音事件命名空间ID,例如use.stone。作为简写,该参数有时候会直接以命名空间ID为值。
              •  volume:声音的音量。默认值为1.0。可以是一个区间以表示范围。此值与二级集合的同一参数为乘积关系,以表示该声音最终的音量。
              •  pitch:声音的音高。默认值为1.0。可以是一个区间以表示范围。此值与二级集合的同一参数为乘积关系,以表示该声音最终的音高。

声音事件[]

一个声音事件是和游戏事件联系在一起的。多个声音事件可能对应不同的游戏事件或属于不同的声音分类,但它们共用同一个声音文件。小部分的有效声音文件并没有出现于sounds.json,而其他则没有相对应的游戏事件。任何缺少游戏事件的声音事件都仅能通过/playsound命令播放。所有默认的声音事件,它们使用的声音,它们属于的类别,以及触发它们的游戏事件将在下表中列出。

Java版数据值

基岩版数据值

方块声音种类[]

声音系统可以使被踩到、被放置、被破坏的方块产生相应的声音。

种类 所属方块 备注
布类 羊毛仙人掌蛋糕地毯[注 1] 火方块被破坏的声音是random.fizz而非dig.cloth。
草类 草方块树叶高草丛枯萎的灌木棕色蘑菇红色蘑菇TNT小麦甘蔗睡莲菌丝体藤蔓胡萝卜马铃薯干草捆甜菜土径干海带块标靶 TNT理论上并不属于草。
作物类[仅Java版] 海带海草小麦马铃薯胡萝卜甜菜根下界疣
沙砾类 泥土砂土灰化土沙砾耕地黏土块
石质类 石头安山岩磨制安山岩闪长岩磨制闪长岩花岗岩磨制花岗岩圆石基岩金矿石铁矿石煤矿石青金石矿石青金石块发射器砂岩黏性活塞蜘蛛网活塞石头台阶砖块苔石黑曜石刷怪笼红石线钻石矿石熔炉高炉烟熏炉砂轮切石机圆石楼梯石质压力板红石矿石石头按钮虫蚀方块石砖红砖楼梯石砖楼梯下界砖栅栏附魔台酿造台炼药锅末地石龙蛋砂岩楼梯绿宝石矿石末影箱绊线命令方块信标、所有花盆生物头颅铁砧下界石英矿石石英块石英楼梯投掷器陶瓦屏障海晶石海晶石砖暗海晶石煤炭块红砂岩楼梯红砂岩台阶岩浆块混凝土潜影盒侦测器、所有失活的珊瑚块、所有失活的珊瑚、所有失活的珊瑚扇哭泣的黑曜石重生锚拉杆红石中继器红石比较器
珊瑚类 所有珊瑚方块、所有珊瑚、所有珊瑚扇蜜脾块 声音好似石质类方块和史莱姆方块的组合版。另蜜脾块理论上并不属于珊瑚。
金属类 动力铁轨探测铁轨金块铁块钻石块铁轨铁门铁栏杆绿宝石块漏斗红石块激活铁轨铁活板门[仅基岩版] 钻石块、绿宝石块理论上并不属于金属。
木质类 木板木头去皮原木去皮木头书架火把、木质楼梯、箱子工作台梯子告示牌、木质压力板、红石火把栅栏南瓜南瓜灯、木活板门、蘑菇方块西瓜南瓜梗西瓜梗栅栏门、木质台阶、可可果、木质按钮、陷阱箱测重压力板阳光探测器旗帜木门制图台制箭台锻造台讲台织布机堆肥桶营火木桶蜂巢蜂箱唱片机绊线钩
玻璃类 玻璃荧石下界传送门方块染色玻璃玻璃板末地传送门方块染色玻璃板海晶灯浮冰蓝冰末地传送门框架红石灯 这些方块在被踩踏和敲击的时候发出“石质类”的声音,并且很多“玻璃类”方块推荐用镐破坏,但是“玻璃类”方块与“石质类”方块的区别是——“玻璃类”方块在被破坏的那一霎那会发出清脆的玻璃碎裂的声音。
下界类 骨块下界岩玄武岩磨制玄武岩灵魂沙灵魂土诡异菌岩绯红菌岩下界砖块下界砖楼梯下界砖台阶红色下界砖块红色下界砖楼梯红色下界砖台阶下界合金块下界疣块诡异疣块菌光体下界金矿石下界石英矿石磁石绯红菌柄诡异菌柄绯红菌核诡异菌核远古残骸 包含各种下界方块中不同的音效。
其他 铁砧和钟在行走和破坏时则发出石质方块的声音,只有在放置时才发出特殊的声音。

历史[]

Java版
1.7.213w42a加入了sounds.json。
1.915w43a更改了许多声音的id,之前的id可以从sounds.json/Java版1.9前上查看。
15w43b加入了“subtitle”字段。
16w02a加入了“voice”声音事件类别。
1.10移除了“category”字段。[1]
1.1318w10a加入了“preload”字段。
携带版
1.0.41.0.4.1加入了sounds.json、sound_definitons.json和music_definitons.json。

参考[]

语言

Advertisement