Создание музыкального мода - Моды и моддинг - Strategium.ru Перейти к содержимому

Создание музыкального мода

Рекомендованные сообщения

Kassatka

Сначала нужно создать файл и папку мода, как и для любого другого мода.

Создаем .mod-файл с каким-нибудь именем на латиннице, например MyMusicMod.mod

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

tags = { ... } и picture можно не указывать, это может понадобится для выкладывания в Steam. Важны только первые две строчки. В tags = { ... } можно вписать и другие ключевые слова, кроме Music.

name - это имя, под которым мод будет виден в списке лаунчера. Его пишем латинницей, так как кириллицу лаунчер не понимает.

Создаем папку с тем именем, которое указано в path после mod\. В данном случае папку MyMusicMod\

Если указывали picture, то нужно поместить в папку MyMusicMod\ картинку с соответствующим именем.

Теперь займемся собственно наполнением нашего мода.

Создаем внутри MyMusicMod\ папку music\ и уже в дальнейшем все действия выполняем внутри этой папки  MyMusicMod\music\

Сначала накидаем в эту папку музыкальных файлов. Файлы должны быть в формате OGG-Vorbis (*.ogg). Если наша музыка в *.mp3, то её нужно сначале переконвертировать в *.ogg каким-нибудь кодировщиком музыки. Также имена файлов задаем на латиннице. Иногда может случится так, что полученные *.ogg-файлы игра не будет нормально воспринимать, будет зависать с ними. Тогда нужно кодировать OGG-файлы другим кодировщиком музыки или с более стандартными параметрами кодирования.

Допустим у нас сейчас папка MyMusicMod\music\ заполнена файлами с именами music1.mp3, music2.mp3 и т.д.

Теперь переходим к главному - файлу, в котором прописано в каких случаях какую музыку можно играть. Для этого в папке music нужно создать *.txt файл с любым именем на латиннице. Например, MyMusicMod\music\MyMusicMod.txt

Для каждого музыкального файла создаем в файле блок song, который может содержать разные параметры. Беру пример из файла \music\hymnsofrevelation.txt внутри \dlc\dlc071.zip - музыкальный пак для "Монахов и Мистиков":

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Здесь name - имя музыкального файла в папке. Обязательный параметр.

song_name - название композиции. С каким текстом мы увидим название композиции в консоли при переключении музыки. Необязательный параметр. Если ничего не указывать, то будет использоваться имя муз. файла из параметра name.

volume - уровень громкости. Необязательный параметр, указывающий долю уровня звука от полной громкости. Если ничего не указывать то будет играть с обычным уровнем громкости 1 (100%).

chance - шанс на то, как часто будет играть именно эта мелодия, а не другая. modifier'ы умножают этот фактор на свой фактор в зависимости от указанного в них условия. Если для нескольких modifier условия выполняются, то все они перемножатся на начальный фактор, если ни один не выполняется, то начальный фактор останется без изменений. Условие в modifier задается для текущего персонажа игрока. Например, если текущий персонаж игрока состоит в каком-нибудь сообществе, но для него не выполняется is_christian_monastic_member_trigger, то суммарный фактор 1*1.5=1.5. Если состоит в сообществе и выполняется is_christian_monastic_member_trigger, то суммарный фактор 1*1.5*1.5=2.25. Если не состоит в сообществе, но выполняется is_christian_monastic_member_trigger, то суммарный фактор 1*1.5=1.5. Если не состоит ни в каком сообществе и не выполняется is_christian_monastic_member_trigger, то фактор остается начальным и равен 1.

Фактор 1 - обычная нечастая частота проигрывания музыки.

Фактор 2 - повышенное частое проигрывание музыки

Фактор 1.5 - немного повышенная частота выпадания проигрывания музыки

Фактор 2.5 - сильно повышенная частота выпадания проигрывания музыки

Фактор 0.7 - музыка очень-очень редко выпадает.

Фактор 0 - музыка никогда не будет играть.

Не знаем, что такое is_christian_monastic_member_trigger? Открываем папку \common\scripted_triggers\, ищем текст is_christian_monastic_member_trigger, находим

Спойлер

is_christian_monastic_member_trigger = {
    OR = {
        society_member_of = monastic_order_orthodox
        society_member_of = monastic_order_benedictine
        society_member_of = monastic_order_dominican
        society_member_of = monastic_order_nestorian
        society_member_of = monastic_order_monophysite
    }
}

то есть если персонаж принадлежит одному из христианских монашеских сообществ.

 

Теперь привожу примеры.

Хотим, чтоб music1.ogg с высокой частотой 2 играло только для мусульман, а для немусульман вообще не играло:

Спойлер

song = {
    name = "music1.ogg"
    chance = { factor = 2
        modifier = { factor = 0
            NOT = { religion_group = muslim }
        }
    }
}

 

Хотим, чтоб music2.ogg могло играть всегда, но в случае мусульман чаще, в случае арабов тоже чаще, а в случае арабов-мусульман еще чаще.

Спойлер

song = {
    name = "music2.ogg"
    chance = { factor = 1
        modifier = { factor = 1.5
            religion_group = muslim
        }
        modifier = { factor = 1.5
            culture_group = arabic
        }
    }
}

 

Хотим, чтоб music3.ogg могло играть всегда, но для арабской, персидской и алтайской культурных групп часто.

Спойлер

song = {
    name = "music3.ogg"
    chance = { factor = 1
        modifier = { factor = 2
            OR = {
                culture_group = arabic
                culture_group = iranian
                culture_group = altaic
            }
        }
    }
}

 

Хотим, чтоб music4.ogg играло с фактором два, но только в двух случаях - когда воюем мусульманами против немусульман, или немусульманами против мусульман

Спойлер

song = {
    name = "music4.ogg"
    chance = { factor = 2
        modifier = { factor = 0
            NOR = {
                AND = {
                    religion_group = muslim
                    any_current_enemy = {
                        NOT = { religion_group = muslim }
                    }
                }
                AND = {
                    NOT = { religion_group = muslim }
                    any_current_enemy = {
                        religion_group = muslim
                    }
                }
            }
        }
    }
}

 

Хотим, чтоб music5.ogg играло с фактором два только в случае когда мы за русских обороняемся в какой-то войне против нерусского.

Спойлер

song = {
    name = "music5.ogg"
    chance = { factor = 2
        modifier = { factor = 0
            NOT = {
                any_war = {
                    defender = {
                        character = ROOT
                        culture = russian
                    }
                    attacker = { NOT = { culture = russian } }
                }
            }
        }
    }
}

 

Хотим, чтоб music6.ogg играло с повышенным фактором два когда у нас столица русской культуры и с пониженным фактором 0.7, когда нерусская.

Спойлер

song = {
    name = "music6.ogg"
    chance = { factor = 1
        modifier = { factor = 2
            capital_scope = { culture = russian }
        }
        modifier = { factor = 0.7
            capital_scope = { NOT = { culture = russian } }
        }
    }
}

 

Хотим, чтоб music7.ogg играло с фактором два, но только тогда, когда мы ни с кем не воюем.

Спойлер

song = {
    name = "music7.ogg"
    chance = { factor = 2
        modifier = { factor = 0
            war = yes
        }
    }
}

 

Хотим, чтоб music8.ogg играло с фактором два, но только для славянских культурных групп

Спойлер

song = {
    name = "music8.ogg"
    chance = { factor = 2
        modifier = { factor = 0
            NOR = {
                culture_group = east_slavic
                culture_group = west_slavic
                culture_group = south_slavic
            }
        }
    }
}

 

После того как мод готов помещаем MyMusicMod.mod и папку MyMusicMod\ в один архив, заливаем на файлообменник и выкладываем в общий доступ например сюда на Стратегиум.

 

Весьма полезно для вашего мода, думаю, делать два или три варианта частоты в моде, не считая нуля

Шаблон 1:

factor 1 в обычном случае,

factor 2 при выполнении условия повышения частоты,

factor 0 при неподходящем условии.

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

 

Шаблон 2:

factor 1 в обычном случае,

factor 1.5 при выполнении одного из двух независимых условий повышения частоты,

factor 1.5*1.5=2.25 при выполнении обоих независимых условий повышения частоты,

factor 0 при неподходящем условии.

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

 

Это как бы самые стандартные показатели частоты (фактора), которые используются в ванили. По их примеру хорошо делать свой мод.

Изменено пользователем Kassatka
Ссылка на комментарий

Флавий Аниций

В процессе создания музыкального мода, столкнулся с проблемой вылетов из игры после использования многих конвертеров в ogg.
Решил проблему,  когда нашел вот этот сайт

Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Если через него конвертировать, то  игра будет нормально читать музыку. 
 

Ссылка на комментарий

El Búho
6 минут назад, Флавий Аниций сказал:

Если через него конвертировать, то  игра будет нормально читать музыку. 

aimp прекрасно справляется

Ссылка на комментарий

East Viking

Ребятушки! Нужна конкретная оперативная помощь! Сделал музыкальный, очень атмосферный, клевый муз мод для викингов... Но всегда в игре работает только 1 песня по счету в songs.txt , переставлял местами треки (работает также 1 песня), проверял на наличие ошибок в коде, но все в порядке! Подскажите, пожалуйста, что могу сделать?

 

П.С.:От безысходности сделал 20 модов по папке в каждой 1 трек из мода - все-равно играет только 1 трек из основного мода, и даже скинул непосредственно игровую папку sounds(или music) и прописал все значения в songs.txt вне мода - работает только 1-ый. В чем же может быть проблема?! 

 

Ссылка на мод(62мб): Войдите или зарегистрируйтесь, чтобы увидеть скрытое содержимое.

Изменено пользователем East Viking
Ссылка на комментарий

DarkLibrary
В 08.04.2017 в 16:13, Kassatka сказал:

Сначала нужно создать файл и папку мода, как и для любого другого мода........

 

Файл мода ? Через какую программу? Ужасный гайд.  Даже в англоязычном сегменте ютуба (how to make music ck2) не нашел ответа. Только немного понял что нужно возится с файлом /"songs" в папке music.

Ссылка на комментарий

10 минут назад, DarkLibrary сказал:

Файл мода ? Через какую программу? Ужасный гайд.  Даже в англоязычном сегменте ютуба (how to make music ck2) не нашел ответа. Только немного понял что нужно возится с файлом /"songs" в папке music.

Файл мода через блокнот, впрочем проще скопировать любой первый попавшийся файл с расширением .mod создать его копию и открыть блокнотом и изменить данные на свои

Ссылка на комментарий

Присоединиться к обсуждению

Вы можете оставить комментарий уже сейчас, а зарегистрироваться позже! Если у вас уже есть аккаунт, войдите, чтобы оставить сообщение через него.

Гость
Ответить в тему...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Only 75 emoji are allowed.

×   Ваша ссылка автоматически преображена.   Отображать как простую ссылку

×   Предыдущее содержимое было восстановлено..   Очистить текст в редакторе

×   You cannot paste images directly. Upload or insert images from URL.

  • Ответы 5
  • Создано
  • Последний ответ
  • Просмотры 2441

Лучшие авторы в этой теме

  • Kassatka

    1

  • Флавий Аниций

    1

  • El Búho

    1

  • East Viking

    1

  • Vremen

    1

  • DarkLibrary

    1

Лучшие авторы в этой теме

  • Сейчас на странице   0 пользователей

    • Нет пользователей, просматривающих эту страницу


Copyright © 2008-2024 Strategium.ru Powered by Invision Community

×
×
  • Создать...