#サウンドsound
1 messages · Page 1 of 1 (latest)
block_soundsの中にブロックのIDに続けて破壊した時/設置した時などの音が指定されているので、そちらを変更することで設置時の音を変えられます
ありません
音はカスタムした物に置き換えたい感じですか?
ではsounds/sound_definitions.jsonで定義した音のIDをsounds.jsonで指定する形になりますね
書き方はバニラのものを参考にしてみてください
ですね
block/glass_placeが音のファイルがある場所を指していて、ここでは"blockフォルダ内のglass_place(.ogg)ファイル"という意味です
そしてblock.glass.placeがsounds.jsonで使われる音のIDです
wool_placeですね
⭕
ですね
(基本的には音のファイルはsoundsフォルダ内に置かれてますが)
sounds.jsonでどのブロックを設置/破壊した時にどの音を出すかを指定しています
format_versionは基本的にはサンプルのまま変えないでください
ここはマイクラのバージョンではなくjsonの書き方のバージョンなので、変に変えると動かなくなってしまいます
weightは複数の音をsoundsに入れたときにどれくらいの割合でそれを鳴らすか、という物です
今回は1つしか入れていないからどの数でもOK
合ってそうですね
sounds.jsonの書き方はこちらを参考にしてみてください
https://github.com/Mojang/bedrock-samples/blob/main/resource_pack/sounds.json
ブロック以外も入ってたような
block_soundsの中がブロック周りの音ですね
3273行目にentity_soundsがあるので、2~3272行目がブロックの部分です
この中のambient.basalt_deltas.additionsが音のIDに当たる部分です
それをここと置き換えです
流石に全ブロック手作業で変えるのはしぬから自動化した方がよさそう()
そこは別ですね
まとめると
- sound_definitions.jsonで音のIDと音声ファイルを紐付け
- sounds.jsonで何をした時にどのIDの音を鳴らすかを設定
って感じ
yes
ちょっと怪しい気がするから今のsound_definitions.json見せて
definitionsはok
あとは
今回は全ての設置音を変えたいので、sounds.jsonの中でブロックの設置音のIDを全てblock.okublock_placeに変更する必要があります
もう一度確認しておきますがバニラの全てのブロックの設置音を変えたいんですよね?
#old-サウンド で言われているように、place内に書かれている音のIDを変更することでそのブロックの設置音を変えられます
こちらの書き方は間違っている+全ブロック分書き換える必要があるので、まずはバニラのパックからsounds.jsonをコピーしてきましょう
yes
sounds.jsonではこのように書かれています
なのでここではplace.amethyst_blockをblock.okublock_placeに変更すると、amethyst_blockの設置音が変わります
全ブロックを変更なのでブロックID分全て書き換える必要がありますね()
なので、、、
プログラム等でJSONを編集することです
pyでもjsでもなんでもok
今日の夜あたりになりそうですが作ってみますね
200個あるけどどれのことかな()
簡単そうなので今やります
block.clickも音のIDです
sound_definitionsで探すと見つかると思います
ついでにコードも貼っとく```js
const fs = require('fs')
const sounds = require('./sounds.json');
const NEW_SOUND_ID = "block.okublock_place";
const newSounds = {
"block_sounds": {}
}
for (const [key, soundData] of Object.entries(sounds["block_sounds"])) {
soundData.events.place.sound = NEW_SOUND_ID;
newSounds["block_sounds"][key] = soundData;
}
fs.writeFileSync('./new_sounds.json', JSON.stringify(newSounds, null, 2))
全部書き換えたよ