Men of War II

Men of War II

Not enough ratings
Памятка по переносу миссий из MOWAS2 на MOW2
By Timosh
Пошаговая памятка для переноса миссий с Штурма-2 на MOW2
   
Award
Favorite
Favorited
Unfavorite
Минимально необходимые для запуска миссии правки
* Файла .materials надо удалить, переделав в .mtl0-9
* Удалить океан из map, заменив его на {WaterAltitude -50}, где вместо -50 поставить нужное значение. Позже подкорректировать.
* Перенести из map в .mi настройки клипов (границ карты)
* {DisableObstacles} {throwing 1} {throwing 0} {Stamina {reload} надо убирать из map и .mi.
Регулярка на выносливость \{Stamina(([^{}]+?)|(\{([^{}]*?)\}))*?\}
* Убрать данные по опыту:
(\{Score([^\{\}]*?)\}) --------Строго с указанием регистра!!!!!
(\{TankKills([^\{\}]*?)\})
(\{InfantryKills([^\{\}]*?)\})
* Так как ящики становятся объектами, надо тщательно проверить mids 10xxx (используемые в map). Лучше даже грузить сразу с mi. Это важно, если в миссии используется выбор юнитов по MIDs
=====В данный момент карту (но не миссию) можно уже загрузить в редакторе
* Сохранить и проверка на WinMerge – так вы увидите все изменения. Проверьте, ничего не пропало?
* Возможно, теряются линки между жд вагонами. Либо они могут вызывать вылет с указанием на блок, отвечающий за линковку. Блоки междувагонной линковки может понадобиться убрать, и пересцепить вагоны заново. (\{Links([^\{\}]*?)\})
* Тексмоды типа {TexMod "green_blask_ecrans" не принимаются, надо убрать основное название, до {TexMod . Вариант {TexMod "pps"} допустим. Искать по {"/texture
* команда environment - название погоды должно быть в кавычках.
* Теперь уже можно удалить .mtl0-9, ведь у вас после пересохранения появился map.mtl. И .materials, если он остался, тоже удалите - иначе получите визуальные баги.
Перенос миссии (полный)
* Команду environment надо переделывать. Оставьте только запись про нужную погоду и добавьте {blend_time 60} (60 – время перехода) для плавной смены.
* Сами environment тоже нужно брать новые, либо переделать старые под формат новых.
* Замена траншей. Возможно, траншеи из MOWAS2 не будут работать корректно, будут вызывать мерцание в месте перехода на землю.
* Замена воды со старого формата (отдельные объекты на карте) на новые водные бассейны, проверить уровень океана уже более точно.
Хорошие результаты дают следующие настройки: для озера {color 0x80b0a} {specular_power 1000} {bumpiness_noise 2} {refraction_scale 0.05}
{density 0.1} {reflection_scale 0.03} {fresnel_power 3} {fresnel_scale 1} {bumpiness_wave 2} {speed_noise 0.05} {speed_wave 0.05}

а для океана: {color 0x8130a} {specular_power 1000} {bumpiness_noise 1} {specular_amount 0} {refraction_scale 0.05}
{density 0.1} {reflection_scale 0.03} {bumpiness_wave 4.5} {period_wave 0.1} {tile_wave 0.05} {tile_noise 0.2} {speed_noise 0.01} {speed_wave 0.01}

* Замена материалов земли (некоторых)лучше на pbr. Не забываем менять тип материала (пункт сразу над диффузной текстурой), а то не подгрузятся все текстуры и будет недостаточно красиво. Материалы со Штурма, впрочем, тоже поддерживаются. Используйте simple_bump для Штурма, Parallax для материалов MOW2 не-PBR, и pbr/ground_lightmap_parallax для PBR. При необходимости отрегулируйте настройки: рельефность блеск и т.п.
* Установка флагов no_install и no_dig, если надо запретить в определенных местах копать и строить. (на склонах и дорогах окопы и так копаться не будут)
* Везде сделать автозакрытие катсцен, если где нет. Даже если есть кнопка закрытия.
* Есть проблемы с player. После save-load юниты уже не передаются через autoassign, т.к. player имеет по факту player 8 (может отличаться в разных модах), а не player 0. После перенесения юнита в player 0 надо сразу менять player на player 8 (условия по player 0 продолжают работать)
* Если используются фильтры вейпойнтов, то путь определяется при начале движения, а не на точке. Перед развилкой сделать не линк ВП, а actor_to_waypoint - если маршрут выбирается после начала движения. Если он известен заранее (по mid или по тагу, имеющемуся до начала движения), то ничего менять не надо. Искать {filter
* Если используются анимации, то перед началом надо отключать able idle, потом включать.
* Условия поражения и победы теперь делаются командой mp_event
mp_event: event=gameover, team=coop, param=win или fail
* outro_completewin/fail локаль победы/поражения переименовать
* ed_storeMinimap - миникарты теперь имеют базовые границы по максимальным размерам полигона карты, а не по клипу auto. Их надо переделать указанной командой.
Миникарта появится в корне профиля. Отключить клипы можно удалением {v_boxworld} в editor_desktop.set
* Включить entitymanager. Пометить вещи и объекты, не подлежащие удалению, тагом em_notouch. В CW - проверить наличие скрипта, маркирующего изначально лежащие вещи
(в CW все вещи, изначально лежащие на карте, кроме прилинкованных, получат этот тег, а вот лежащие в инвентаре - нет).
* Устроить работу carryover (применимо для совместной работы с CW transfer tool и при наличии необходимости в переносе). Дать переносимым юнитам таг carryover. В момент переноса сделать event "start_carryover" и сразу autosave.
* Переделать видеоролик: извлечь звук и запустить отдельной музыкой, как встарь на ЛП.
* Устранить проблемы со сквадами. В MOW2 сквады переделаны, и старая механика сквадов работает лишь частично: сквады можно направлять на точку, но нельзя создавать. Так что если на карте есть патрули, они все еще могут быть направлены по маршруту как сквад командой squad_to_waypoint, но задать их состав через команду squad уже нельзя. Нужно указать конкретный состав сквада на старте игры, и через интерфейс это не сделать, придется редактировать файл миссии, добавляя в него записи типа
{Squad
{Name "farm1"}
{Actors 142 201 194}
{Id 40}
{Placer
{Min 8}
{Max 12}
{Radius 30}
{CommanderAhead 2}
}
}
* В MOW2 основным форматом музыки является .ogg. Проверьте, не нужно ли поменять расширение музыкального файла в командах music
* Как было сказано выше, теперь де-факто юнты игрока имеют player 8,9,10..., а не тот, который указан в свойствах миссии (напр. P0). Селекторы standart при выборе Player 0 выбирают также и другие плееры игрока (например, триггер с простым условием Player 0 сработает на player 0 или player 8). Но advanced селектор срабатывает только на конкретного player 0 - т.е. сработает в редакторе, но не будет работать в игре. Лучший вариант - переделать все advanced селекторы с условия player 0 на условие tag player :
Выбор в advanced селекторе блока player с заменой на tag player
\{player([^\{\}]*?)\{player 0\}([^\{\}]*?)\}
\{tag($1)\{tag player\}($2)\}
Теперь в скриптах юниты игрока будут вместо player 0 определяться по тагу player, добавьте триггеры, которые дают игрокам P0, P8-P15 таг player и убирают его у игроков с другим player.
6 Comments
Timosh  [author] 4 Dec, 2024 @ 10:19am 
Я такого гайда не писал. И не всегда он нужен - скажем, текстуры земли достаточно просто перетащить в соответствующие папки. Большинство антуражных объектов (особенно простых - штампы на земле, например) также просто перетаскиваются.
В любом случае, в Cold War весь антураж из Штурма уже перенесен. Можете использовать нас как пример. В большинстве случаев игра сама скажет, где ошибка, останется только посмотреть, как она исправлена в CW.
Ivannik85 4 Dec, 2024 @ 1:25am 
Понял, спасибо. Если возможно, скиньте ссылку на гайд как это сделать.
Timosh  [author] 3 Dec, 2024 @ 6:54am 
Графику? Уточните, что вы имеете в виду. Если вы про модельки объектов, текстуры земли - то да, можно. Мы, например, перенесли (из Штурма). Но это тема за пределами данного гайда.
Ivannik85 26 Nov, 2024 @ 8:01am 
А графику возможно перенести? Или это уже за гранью разумного?
Timosh  [author] 22 May, 2024 @ 1:20am 
"а то новый от гранат не отбегает и не отступает при численном перевесе противника" - попробуйте мораль подкрутить. Может, в ней дело.
AZOT 21 May, 2024 @ 3:48am 
а можно как-то вернуть ИИшник пехоты из прошлых частей? а то новый от гранат не отбегает и не отступает при численном перевесе противника