Моддинг

Изменения моддинга 1.17.0

рекомендации

  • Некоторые новые модели, использующие суффикс или префикс «sc», все еще работают, и вполне вероятно, что они могут значительно измениться в следующем патче. По этой причине рекомендуется избегать использования их в ваших моделях в это время.
  • Когда вы основываете свою модель на исходных, добавьте в свой мод также ВСЕ оригинал / автомат / файлы, используемые им. Имена файлов генерируются как SHA1-хэш их содержимого, поэтому всякий раз, когда мы каким-либо образом меняем параметры материала, для их хранения используется другой файл, и исходный файл может перестать существовать, если нет другой модели, использующей исходные параметры.
  • При модификации оригинальных моделей всегда включайте ВСЕ компоненты этой модели (pmg + pmd) вместо тех, которые вы изменили. В противном случае вы рискуете столкнуться, если измените модель.
  • Как всегда при добавлении новых объектов в файлы, поддерживающие многопользовательский подход (например, road_look.sii), ВЫСОКО РЕКОМЕНДУЕТСЯ использовать суффиксы или префикс в имени, чтобы избежать конфликтов с новыми объектами, которые мы добавляем в патчи. В противном случае вам, возможно, придется использовать функцию переименования пакетов (см. Переименование пачек), чтобы исправить конфликты при появлении нового патча.

Различные полезные команды

  • Запуск игры с параметром командной строки -unlimitedlog отключит стандартный лимит 1 МБ на размер файла журнала игры. Это может быть полезно во время обновления, если вы хотите сначала сфокусироваться на некоторых ошибках.
  • Запуск игры с параметром командной строки -validate или выполнение команды проверки на консоли будет запускать специальный игровой режим, который загрузит все определенные модели, сборные блоки, транспортные средства и другие объекты, чтобы обнаружить недостающие текстуры и подобные ошибки. Изучив игровой журнал, вы можете определить, что игра пыталась сделать, когда появилась ошибка. Обратите внимание, что есть еще много вещей, которые могут быть неправильными, которые не проверяются в этом режиме.
  • Запуск игры с параметром командной строки -error_overlay отобразит оверлей с количеством сообщений об ошибках и предупреждениях, напечатанных в журнале, как только будет напечатано хотя бы одно такое сообщение.

Как преобразовать карту

  • Если вы добавили семафоры tollgate для региона Scandinavia, вам может потребоваться удалить их, поскольку они теперь определены (tr_sem_mdl.ab_toll.s, tr_sem_mdl.ab_toll.dk, tr_sem_mdl.ab_toll.n)
  • Преобразуйте шаблоны значков в новый формат. Либо вручную, либо используя предоставленный скрипт.
  • Мы добавили паромы в некоторые скандинавские города, если ваши моды добавили их также из своих фреймов. <Mod_id> .sii , вам нужно удалить конфликтующее добавление.
  • Обновите генераторы частиц в новый формат.
  • Сохранить карту
  • Перестроить (F8)
  • Сохранить карту

изменения

Рендеринг изменений

Мы изменили рендеринг, чтобы улучшить согласованность кадров, перемещаясь или оглядываясь. В результате этого изменения игра значительно более чувствительна к количеству вызовов обратного вызова, генерируемых отдельными моделями (например, количество деталей и материалов). Кроме того, существует буфер фиксированного размера, который используется для хранения геометрии мира. Если размер этого буфера превышен, дополнительные ничьи стали медленнее. Размер устанавливается по умолчанию на 128 МБ, однако его можно расширить с помощью r_segment_buffer_size cvar при условии, что ваш GPU и драйвер этого допускает.

Изменение колес

Колесный аксессуар был разделен на два отдельных аксессуара: шины и диски.

Изменения в пароме

Теперь связь между паромами может быть определена в отдельных файлах внутри / def / ferry / connection / для большей гибкости. Каждый файл определяет соединение с исходным паромом на целевой паром. Единица в файле должна быть названа conn. <Source_ferry>. <Target_ferry> и настоятельно рекомендуется, чтобы соответствующий файл был назван <source_ferry> _ <target_ferry> .sii

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

Визуализация паром на карте

Связь между двумя паромами рисуется на карте. Если определено новое соединение паром, прямая линия автоматически рисуется между исходным и целевым паром.

Для художественных целей можно определить кривые линии между источником и мишенью, определяя дополнительные точки кривой. Чтобы добавить точки кривой, необходимо определить поля connection_positions [n] (int, 0, int) и connection_directions [n] (float, 0.0, float) в conn. <Source_ferry>. <Target_ferry> (файл определения соединения), где connection_positions содержит позиции точек без высоты, а connection_directions содержит точки векторов для рыскания.

Масштабирование штырей

Городские контакты масштабируются по картам мира, работы и гаража. Для включения этой функции необходимо определить поле city_pin_scale_factor в файле определения города.

city_pin_scale_factor [n] float устанавливает размер имени города и названия города на карте пользовательского интерфейса для каждого уровня масштабирования. Рекомендованные значения: (0; 2>, значение по умолчанию равно 1.0, когда city_pin_scale_factor не определен. Размер контактов по умолчанию - 24 пикселя на карте.

Изменение данных о грузовиках

  • Изменен способ обработки панелей дисплея панели. Вместо контрольной группы (ID + 5) теперь есть текстовый элемент. Помимо определения размера, он также сохраняет данные функциональности баров. Формат «H ~~ 0 ~~ 1» означает горизонтальную полосу со значениями от 0 до 1. Все прежние идентификаторы вертикальных полос не используются.
  • Добавлены некоторые другие элементы дисплея на приборную панель - предупреждение о немодальном повреждении (1190), предупреждение о низком уровне топлива (1200), дальность навигации (1210).
  • Добавлена ??анимация indicator_cruise_control для внутренних данных.
  • Добавлен wiper_delay[] к внутренним данным, который может определить дополнительное перемещение палочки стеклоочистителя и их функции (задержка между двумя петлями).
  • Добавлено значение rpm_limit для данных двигателя. Двигатель будет игнорировать дроссель, когда обороты превышают лимит.
  • Удалено motor_brake из данных двигателя, вместо этого добавлено значение engine_brake качестве значения относительной тормозной силы.
  • Добавлен engine_brake_downshift (по умолчанию 1) в данные двигателя. Он заставляет автоматические трансмиссии переключать передачу при включении двигателя.

Дорожные взгляды

  • удаленная совместимость для атрибутов « ai_lane_count » и « one_way » была удалена
    • если они используются, игра не будет разбиваться, только их значения будут проигнорированы
  • атрибут ' no_wrong_way ' был заменен атрибутом ' allow_wrong_way '
    • хотя атрибут обратно совместим в этом патче, его можно удалить в любом из будущих патчей без уведомления
    • allow_wrong_way - это массив имен дорожных вариантов (в качестве жетонов), когда движение в неправильном направлении разрешено (т. е. не сообщается о неправильном обращении)
    • чтобы разрешить неправильное вождение для всех вариантов, используйте массив, содержащий 1 пустой токен:
      • allow_wrong_way []: ""

Изменения генератора частиц

  • Генераторы частиц теперь явно указывают путь модели и модельный вид в unit_gen, вместо того, чтобы использовать model_templateunit для поддержки асинхронной загрузки. Вам необходимо обновить свои определения.

Изменения в знаковых шаблонах

Существует новый формат знаковых шаблонов, который имеет лучшую поддержку моддинга.

Старый формат:

                                        SiiNunit {sign_templates: sign_templs {template_paths: 2 template_paths [0]: "/def/sign/template/sign_templ.2hw_exit_hw.sii" template_paths [1]: "/def/sign/template/sign_templ.3hw_noexit_h.sii"}}
                                

Новый формат:

                                        SiiNunit {sign_template_def: sign_templ.2hw_exit_hw {путь: "/def/sign/template/sign_templ.2hw_exit_hw.sii"} sign_template_def: sign_templ.3hw_noexit_h {путь: "/def/sign/template/sign_templ.3hw_noexit_h.sii"}}
                                

Теперь вы можете создавать файлы templates.mod_xxx.sii в своих модех с помощью настраиваемых шаблонов значков.

Имя, которое ранее было частью / def / sign / template / sign_templ. .sii * - это теперь название блока определения шаблона в файле /def/sign/templates.sii . Вы можете преобразовать его вручную или использовать следующий PHP-скрипт для их преобразования.

Изменение флагов сокрытия аксессуаров

Опциональные флаги, контролирующие видимость аксессуаров в различных представлениях, изменились, чтобы улучшить будущую расширяемость. Вместо этого следует использовать этот калькулятор с информацией об 1.14 modding.

Обратите внимание, что, хотя значения в этой сборке совместимы с теми, которые были сгенерированы предыдущим калькулятором, и будут только регистрировать ошибку, это может измениться в будущей версии игры, поэтому вы должны обновить их до новых значений, чтобы предотвратить возможные проблемы в будущем. Для исправления файлов можно использовать следующий скрипт perl .

Скрыть следующие виды

Основной вид
Куб Отражения
Закрыть Зеркало
Far Mirror
Боковое зеркало
Переднее зеркало
Тени
Отражение дождя
hide_in: 0x 0