Добавление звуков в модуль



Аудиосистема Bannerlord построена на фирменной аудиосистеме FMOD. Чтобы сохранить производительность звукового движка и сделать его доступным для всех, нам нужно было создать свой внутриигровой аудиопроигрыватель.

Ключевые элементы
  • В файл  ...\Modules\*ВАШ МОД*\ModuleData\module_sounds.xml вы прописываете названия своих звуковых файлов. В папку  ...\Modules\*ВАШ МОД*\ModuleSounds вы помещаете свои новые аудиофайлы (.ogg, .wav).

В качестве примера можно посмотреть, как это реализовано у разработчиков в их модуле ‘Native’.


Базовое руководство

1. Скопируйте примеры файлов и папок из модуля ‘Native’в свой собственный модуль.
2. Добавьте свои новые звуки в папку ModuleSounds
3. Откройте файл module_sounds.xml в вашем модуле.
4. Просмотрите пример записи кода звуковых файлов в файле module_sounds.xml  модуля ‘Native’.
5. Добавьте новые строки в файл module_sounds.xml своего мода.
6. Воспроизведите для проверки новое звуковые записи из кода.


Двигаемся дальше

Using module_sounds.xml (Помощь в создании файла module_sounds.xml):
    <module_sound name="example/combat/hit" is_2d="true" sound_category="mission_combat" path="example_sound_modders.ogg" />
, где:

‘name’: любое уникальное имя, которое вы хотите. Это идентификатор вашего звука.
  • Используется во время воспроизведения звука из кода.
  • Используется для воспроизведения звука анимации, добавив к анимации свойство 'sound_code'.

‘is_2d’: (Звук является двухмерным "2D") Ставится значение "true" (верно), если пространственные свойства звука не будут использоваться. 3d звуки имеют свойства, как (position) расположение в пространстве, (velocity) скорость воспроизведения и т.д.

‘sound_category’: Все звуки должны быть отнесены к определенной категории, чтобы они правильно воспроизводились.
Доступные категории:
НАЗВАНИЕ
ОПИСАНИЕ
ПРИМЕР
mission_ambient_bed
Двухмерные, зацикленные звуки окружения
Ветер, другие погодные явления
mission_ambient_3d_big
Звуки, которые должны быть слышны издалека
Горящий замок
mission_ambient_3d_medium
Звуки, которые должны быть слышны со среднего расстояния
Костры
mission_ambient_3d_small
Звуки, которые должны быть слышны поблизости
Костры в лагере
mission_material_impact
Звуки физических материальных воздействий
Удар металлического меча о каменную стену
mission_combat_trivial
Слабые звуки урона в сражениях
Звук при получении низкого урона или вообще без урона
mission_combat
Звуки урона в сражениях
Звук при получении стандартного или критического урона
mission_foley
Различные шумовые эффекты (фоли)
Взмахи оружия, звук шагов, звуки движения животных
mission_voice_shout
Крики людей/животных, которые должны быть слышны издалека
Боевые крики
mission_voice
Звуки людей/животных
Хрюканье, удары по лицу
mission_voice_trivial
Слабые звуки людей/животных
Лазание, прыжки
mission_siege_loud
Громкие звуки осады
Валун, врезающийся в стену, стрельба катапульты, разрушение двери
mission_footstep
Стандартные шаги
Шаги одиночных людей и мелких животных
mission_footstep_run
Более громкие шаги, которые можно услышать издалека
Бег, или движение толпы
mission_horse_gallop
Громкие звуки движения ездовых животных
Галоп лошадей и верблюдов
mission_horse_walk
Стандартные звуки движения ездовых животных
Мягкий шаг лошадей и верблюдов
ui
Двухмерные звуки для пользовательского интерфейса и уведомлений
Звук нажатия на кнопку, при всплывающем уведомлении, и т.д.
alert
Псевдо-3d звуки для оповещения игрока со средней дистанции

campaign_node
Позиционные звуки для глобальной карты
Звуки ферм, морей, водопадов
campaign_bed
Двухмерные звуки окружения для глобальной карты
Порывы ветра в пустыне, ветры на травяных пастбищах и т.д.

‘path’: Имя звукового файла для воспроизведения [обязательно с его расширением]. Путь (Path) указывается относительно папки ModuleSounds вашего модуля. Вы можете создавать подпапки.

Пример кода в звуковом файле

    int soundIndex = SoundEvent.GetEventIdFromString("example/voice/charge"); //to avoid string operations in runtime soundIndex can be cached.
    if (playOneshot)
    {
        MakeSound(soundIndex, MainAgent.Position, false, true, -1, -1); //plays one shot sound at position with given parameters.
    }
    else
    {
        SoundEvent eventRef = SoundEvent.CreateEvent(soundIndex, Scene); //get a reference to sound and update parameters later.
        eventRef.SetPosition(MainAgent.Position);
        eventRef.Play();
    }


У вас есть два способа воспроизведения звука:
  • One Shot (Один выстрел). Лучшая производительность и меньше контроля за управлением. Выстрелил и забыл. Хорошо подходит для звуков, связанных с боем.
  • Creating and holding (Создание и удержание ссылки). Худшая производительность. Контролируйте каждый параметр звука всякий раз, когда вы хотите его произвести. Обновление состояния во время паузы.




- используйте эту кнопку если вы обнаружили ошибку/искажение содержимого/отсутствие контента в новости или если хотите сообщить администрации о выходе новой версии мода и т.п.

Комментариев 0

Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.

Онлайн

Сейчас на сайте: 190
Гостей: 188

Пользователи: 
- отсутствуют

Последние комментарии

MOD ANNO DOMINI 1259 - 13th Century Europe
yura20352, Сегодня, 00:40
На какую версию 1.2.11 есть?...
Перечень модификаций на MOUNT AND BLADE 2 BANNERLORD
yura20352, Сегодня, 00:38
Ребят на версия 1.2.11 есть рабочие моды  вроде освоил игру ..дипломатии нету дети 18 лет там можно...
Гайд по моду Age of Arthur
yura20352, 18 ноября 2025 13:44
Плюс дипломатия вроде мир в пишет заключить перемирие вот отправил посла а там вассалитет...
Гайд по моду Age of Arthur
yura20352, 18 ноября 2025 12:33
А что за цепочка квестов за римскую империю ...
MOD Age of Arthur
yura20352, 18 ноября 2025 00:06
как сдклать так что бы не портились отношения с лордами при раздаче феодов может кто знает?? там в...
Viking Conquest Reforged Edition 2.059
yura20352, 17 ноября 2025 23:07
Artkolobok, не хрена там на русском нету скачиваешь и как поставить русский язык как быо файл есть...
Viking Conquest Reforged Edition 2.059
Artkolobok, 17 ноября 2025 20:34
yura20352, ​TweakMB​​​ - Там есть и ру версия, думаю, разберёшься....
Diplomacy 4.3 - Mrcmod and bugfixes
yura20352, 17 ноября 2025 01:23
[spoiler][/spoiler]МОД СУПЕР ОСОБЕННО С ИЗМЕНЕИЕМ ФИЛОСОФИИ ЖИЗНИ НО ВЫНЕСТИ СМЕРТНЫЙ ПРИГОЛОВР...
Viking Conquest Reforged Edition 2.059
yura20352, 16 ноября 2025 17:46
Artkolobok, это где и как такая программма на русском Artkolobok, просто где там щанс успеха...