Сообщество Империал: Некоторые ошибки в именах и трейтах Rome: Total War - Моддинг Rome: Total War - Rome: Total War - Библиотека - Сообщество Империал

Уважаемый Гость, Реклама отключается для зарегистрированных посетителей форума: Регистрация
G Уважаемый Гость, рады сообщить вам о Imperial Game Awards - Лучшие игры 2018 года по версии Сообщества Империал
Сообщество ИмпериалБиблиотека Rome: Total War Моддинг Rome: Total War Некоторые ошибки в именах и трейтах Rome: Total War Обратная Связь

Информация об авторе

RS4
  • Автор: RS4

Информация по статье

  • Добавлено: 02 Окт 2018, 10:08
  • Обновлено: 09 Окт 2018, 19:10
  • Просмотры: 393

Дополнительно

Классификация статьи: [Тутор]
Раздел Техподдержки: Перейти

Последние Статьи

  Phoenix Point - Дизайн Ану

Phoenix Point - Дизайн АнуRup. · 07 Дек 2018, 20:34

  Beyond Skyrim: Шестой блог разработки

Beyond Skyrim: Шестой блог разработкиMagister_equitum · 22 Ноя 2018, 05:11

Некоторые ошибки в именах и трейтах Rome: Total War

Описание: Примерной разъяснение ошибок и пособие по их устранению
В общем, нашёл у себя в моде недавно некоторые ошибки, которые долго не мог найти, и не знал в чём дело.
По моему мнению, данный тутор подойдёт двум категориям мододелов: начинающим, у которых ещё не выработались навыки изменения файлов и нахождения ошибок, и забывчивым и невнимательным мододоелам.
Итак, перейдём к ошибкам:

Ошибка 1:
Компания нормально загружается, но вылетает на повстанцах, как правило на первом ходу, иногда компания может вылететь на втором-третьем ходу.
Причина: как правило, потому, что в descr_rebel_factions.txt прописан несуществующий юнит.
Устранение: Для начала пропишите в ярлыке к моду -show_err. Затем запустите игру и выйдите из неё. Если в окне с сообщением будет указан данный файл, значит дело действительно в несуществующем юните, прописанном в файле для повстанцев.
Проверьте descr_rebel_factions.txt, найдите юнит, о котором говорилось в сообщении об ошибке и удалите его из списка.

Ошибка 2: Игра безо всякой причины вылетает на случайном ходу компании. Сообщение об ошибке не показывается даже при наличии -show_err в ярлыке.
Причина: в данном случае есть две, или даже три причины:
- ошибка отступов и табуляции в descr_names.txt
- ошибка в export_descr_character_traits.txt - как правило, много строковых отсупов перед началом другого трейта
- неправильно прописан триггер появлеия тейта в том-же export_descr_character_traits
Устранение: Начнём с первой ошибки.
Откройте descr_names.txt, разверните окно на полный экран и нажмите сочетание клавиш Ctrl+A. Если окно в этот момент активно, то весь текст выделится.
В норме всё должно быть как на скриншотах ниже
Imperial

Imperial


То-есть: сначала идёт обозначение фракции, затем абсолютно пустая строка, никаких табуляций и пробелов, затем обозначение characters - т.е членов семьи и полководцев - одноим словом: тех, кем мы можем управлять на стратегической карте .
Но иногда случаются ошибки, все ошибки долго перечислять, потому я покажу те, которые я недавно обнаружил сам у себя.
Смотрим на скриншот ниже
Imperial


и видим, что указана табуляция. Точно всё мне неизвестно, но я знаю, что двойная табуляция воспринимается игрой как имя, и иногда она генерирует персонажей с данным именем, однако этого имени нет больше нигде. Поскольку данного имени нет ни в names.txt, ни в descr_names_lookup.txt то игра не может инициализировать и вывести описание для данного имени. Даже если имени не будет только в name.txt, то игра не сможет вывести описание и будет фатальный вылет без объяснения причины, во всяком случае так происходит у меня. Пробел тоже считается за символ, так что если после имени указан пробел, а в описании names.txt и descr_names_lookup.txt его нет, то вылет гарантирован.

Ошибка 3 - Кампания работает, ходы идут исправно, но случается вылет при попытке просмотреть сведения о персонаже.
Причина: данная ошибка случается если неправильно прописан трейт или описание к нему.
Устранение:
Информация о трейте хранится в трёх файлах:
export_descr_character_traits.txt
export_descr_VnVs_enums.txt
export_VnVs.txt

Начнём с export_descr_character_traits.txt
В идеальном состоянии он должен выглядеть так

Imperial

Imperial


Никаких лишних отступов и табуляций быть не должно. Тут ситуация аналогична ошибке с именами. Лично у меня после того, как я сделал так, что стало как на скриншоте, вылеты при просмотре характеристик персонажей прекратились.
Если же export_descr_character_traits.txt исправен и выглядит как на скриншоте, то, как правило, ошибка кроется в файле export_VnVs.txt в папке text. Однако также стоит проверить файл export_descr_VnVs_enums.txt. И тут всплывает трудность: тейтов много, а нужно узнать конкретно какой-то. Тут очень быстрого способа выяснить нет. Нужно открыть descr_strat.txt, затем найти персонажа, при просмотре характеристик которого происходит вылет. Нужно перебирать каждую характеристику. Например князь Бажен. Здесь нет никаких ошибок, просто был приведён как пример.

Imperial


Смотрим на строку traits, очень важно обратить внимание на то, что трейт состоит из двух частей: имя самого трейта, и его уровень. Копируем имя трейта без цифры и открываем export_descr_character_traits.txt. Нажимаем Ctrl+V и ищем трейт и его уровни, они начинаются со слова Level.

Imperial


Просто копируем слово после level, НИЧЕГО НЕ МЕНЯЕМ! ВАЖНО: пробелы перед словами копировать не надо, т.к в других файлах блокнот не найдёт похожих слов из-за пробела.
Затем открываем файл export_descr_VnVs_enums.txt, жмём Ctrl+F, затем Ctrl+V, если кому-то удобнее, то можно выполнять эти операции мышью, принципиальной разницы для исправления ошибки нет. Итак, смотрим export_descr_character_traits.txt, обращаем внимание на строчки (имя трейта)_desc и (имя_трейта)_effects_desc - это описание трейта и того, что даёт этот трейт.
К чему я это? А к тому, что в export_descr_VnVs_enums.txt
будут, как правило три строки. Приведу пример из своего мода:
LudotaKoval
LudotaKoval_desc
LudotaKoval_effects_desc
Однако не всегда сразу в одном месте попадаются все строки. Если попалось только две строки, то нужно сократить имя уровня и поискать везде.
Для этого удаляем приписки _desc и _effects_desc, и пробуем искать выше и ниже

Imperial

Imperial


И так со всеми уровнями трейта. Я рекомендую записывать на бумажку что было найдено.
Затем ту-же процедуру проводим в export_VnVs.txt.
Если один из уровней трейтов, или строка есть в одном
файле, но нет в других, или наоборот, то значит, что причина вылета найдена!
Иногда бывает так, что при невнимательном переносе трейта искажается одна буква, найти это труднее, но возможно.
Итак, если вы обнаружили, что не хватает какого-то описания, то делайте как на скриншоте ниже:

Imperial

Imperial

Imperial


При работе с именами и трейтами всегда по завершении работы используёте Ctrl+A, либо "выделить всё" в меню "Правка". Потому-что под выделением легче выявить едва заметные ошибки.


С ошибками при прописывании свиты я ещё не сталкивался. Но если вдруг ещё узнаю что-нибудь, то напишу. :D


Будем благодарны, если Вы поделитесь этой публикацией:


Copyright © «Империал». Копирование информации с этой страницы возможно только при указании прямых ссылок на эту страницу.



    Imperial
    )))Людота ,который ковал меч . С надписью в переводе "человек ковал" (а не бог.Чтобы обращались к кузнецу а не списывали на бога эту работу).Это стало именем и фамилией типа? Просто верх невежества,ржу над авторами.


    Imperial
    Нашел с чего ржать :025:
    Лучше бы спасибо автору сказал. RS4, спасибо и плюсик :)
    Воспользуйтесь одной из соц-сетей для входа на форум:
    Сообщество ИмпериалБиблиотека Rome: Total War Моддинг Rome: Total War Некоторые ошибки в именах и трейтах Rome: Total War
    Обратная Связь
    © 2018 «Империал» · Условия использования · Ответственность · Визитка Сообщества · 18 Дек 2018, 16:22 · Счётчики