Руководство по изменению названия культуры
Возможно, данный туториал не особо востребован, но для следующих поколений мододелов, решил всё же накатать его. Кроме того, я был благодарен авторам за те руководства, которые у нас есть, что они не поленились поделиться опытом.
Итак!
Постановка задачи такова: нужно поменять ванильные названия культур на свои собственные: например southern_european нужно поменять на culture_dwarves.
Зачем это делать, спросите вы? А для того, чтобы легче читался код, и чтобы не нужно было в уме переводить, а кто же прячется под названием southern_european, то ли гномы, то ли эльфы. Конечно, можно оставить всё как есть, это личное дело. И всё же, если вы решили, что в вашем моде всё должно называться своими именами, в том числе и культура, тогда этот тутор для вас.
Небольшая справка:
Медиевал 2 имеет ограничение в количестве культур прошитое в игровом движке. Всего их может быть 7.
Базовый файл, с которого нужно начинать - descr_cultures.txt. Там прописываются названия культур, а также названия и пути к ним для всех моделей (городов, замков, портов, форта, сторожевой вышки, всех агентов) на стратегической карте, относящихся к данной культуре. По идее, фракция, которая имеет культуру culture_dwarves, должна иметь данные модели.
village
{
normal data/models_strat/residences/dwarves_village.CAS, settlement_eastern_level_1
card data/ui/culture_dwarves/cities/dwarves_village.tga
}
пример города 1 уровня:
в папке data/models_strat/residences/ – прописывается кас-модель города
обратите внимание, что у каждой кас-модели есть соответствующая текстура (лежит здесь: data/models_strat/residences/texture/), отсутствие которой приводит к вылету. Чтобы проверить, какая текстура соответствует модели, нужно открыть её в блокноте и посмотреть в конец файла.
Считаю, что логично кас-модель города назвать также цивилизованно dwarves_village.CAS.
в папке data/ui/culture_dwarves/cities/ лежит иконка этого самого уровня города.
Заметьте, что в папке data/ui/ нужно создать папку культуры, которая будет называться точно так, как и имя культуры (в нашем случае culture_dwarves. Скопируйте всю информация с папки southern_european в папку culture_dwarves. Переименовывать southern_european в culture_dwarves я б не рекомендовал. Но можно и так.
Теперь у нас есть базовый набор изменений. Движок уже понимает, что нет больше southern_european, есть только culture_dwarves.
Жизнь была б слишком простой, если бы всё на этом закончилось. Оказывается, что нужно поправить еще десяток файлов, где фигурирует старое название культуры southern_european.
Привожу полный список:
в папке data\
descr_engines.txt
descr_sm_factions.txt
export_descr_ancillaries.txt
export_descr_buildings.txt
export_descr_unit.txt
export_descr_character_traits.txt
в папке data\world\maps\base\
descr_sounds_music_types.txt
в папке data\world\maps\campaign\imperial_campaign\
campaign_script.txt
в папке data\text\
export_buildings.txt
event_strings.txt
expanded.txt
Теперь когда всё сделано, мод должен работать без проблем в новой культурной среде, которая будет называться так, как вы пожелаете.
Еще несколько заметок:
- вылеты бывают, если есть ошибки в прописях в текстовиках находящихся в папке data\. В таком случае информация об ошибке будет отображаться в логе.
- вылеты бывают или из-за не назначенных, или неправильно назначенных текстур для кас-моделей. Лог в таком случае будет пустой.
- вылеты бывают, если есть ошибки в прописях в текстовиках находящихся в папке data\text\. В таком случае лог тоже молчит.
Это всё. Успехов в редактировании культур.
P.S. Тутор – не истина в последней инстанции, могут быть ошибки. Если есть какие замечания, дополнения – пишите в личку (Letif) на СиЧи.
Спасибо камрадам за разного рода и степени помощь: Necromancer, Delabras, Master_TW_DAR, СТАРК, Mesn
10.06.2015
Автор: Letif