❓ Ваши вопросы про редактор миссий и их запуск в игре

Как создать ИИ технику, которая будет пытаться добраться до указанной точки назначения?

Для этого надо просто добавить постфиксы +ai_aircraft+ai_aircraft_crew_X+ai_vehicle_driver.

x может быть: ger, it, jap, sov, usa, uk, moroc и pilot.
Скорее всего только ger, sov и usa имеют немного уникальный внешний вид бойца.


И после этого пропишите свойство ai_vehicle_driver__destination. И все! Готово!
(На данный момент тестировал в рамках локальной сети).

Если что ai_vehicle_driver имеет ряд проблем:

  • Вы не сможете добавить ai_aircraft_crew к гражданской технике или к кораблям.

  • Если вы убили водителя, но не весь “экипаж”, то техника продолжит свое движение.

  • Лучше закрыть доступ к местам техники. Потому что когда игрок садится в технику, то оно продолжит свое движение (но не будет двигаться, если игрок сидит на месте водителя).

  • Техника не умеет читать NavMesh, но иногда пытается поварачивать.

  • Боты в технике все еще не могут использовать орудия для убийства врагов.

  • Техника всегда будет пытаться добраться до точки назначения.




    (Я использовал координаты Gaz_67 на AI технике, чтобы они добрались к gaz_67).

1 лайк

Нужна помощь. Нигде не могу найти функцию скопировать и вставить объект. Существует ли такая возможность вообще? За ранее спасибо.

Да, такая возможность существует.
Выбери объект/объекты. Зажми Shift и передвигай их.
Не очень удобно, но так можно копировать объекты.

Спасибо, а где есть поиск объектов окружения? Искал стены завода в “верхней” вкладке, но по имени объекта ничего не находились.

1 лайк

Для этого создавай game_rendinst или game_rendinst_decor.
Там отдельный список объектов - и они именно про декорации, внешний вид карты и т.п.
То есть домики, стены там лежат.

И если не ошибаюсь, то стены скорее всего будут вместе с крышой.
Но это не точно.

А про find entity - он не может найти РИ объекты, которые скрыли для снижения нагрузки.
РИ объект можно вытащить путем toolbox —>>> rendinst —> клик по объекту —> unbake.

1 лайк

Как менять свойства у оружия, расположенного на карте моддером/маппером?

Для этого… Всего лишь надо прописать свойство customProps! Да-да!
Именно оно и отвечает за сохранение измененных свойств при подборе оружия!

Итак… Когда вы создадите оружие, вы увидите, что данное свойство полностью пустое:


Все просто - нажмите на плюсик, а после напишите initialComponents и выберите тип object:

А далее осталось лишь вписать любое свойство внутри этого же initialComponents для этого кликаем по плюсику, что рядом с initialComponents и пишем название любого свойства:

Например… Дадим оружию возможность пополнять из ящиков второй команды (Оси):
Для этого добавляем эти свойства и прописываем их. Кроме этого для наглядности итогов так же пропишем изменение модельки на более старую после подбора оружия:

Итог (я клонировал оружие перед тем как подобрать):

Как вы видите по скриншоту… Все успешно! Даже моделька поменялась!
Удачи в создании карт с очень-очень разнообразным вооружением :slight_smile:

Заметил данное свойство из-за того, что повторно пытался найти способ добавить модификации к оружию (прицел/гранатомет/штык-нож). И повторно пытался благодаря вопросу TommyZZM.

Увы модификации к оружию не добавить из-за того, что уникальный ID оружия и мода не сохраняются у оружия, размещенного на карте.

5 лайков

Как понять какой тип (text? real? integer?) нужен для того или иного свойства?

Тут все просто. Просто смотрите что написано после названия свойства.

Если строка (mauser_98k_magazine), то text.
Если целое число (чётко 1 или -31 и без точек), то integer.
Если рациональное число (5.333), то real.
Если переключатель (квадратик), то bool.

А Array и Object уже указаны рядом с названием свойств.
Вот у customProps оно Object.

2 лайка

Возможно ли как-то менять принты земли? Хочу поменять принт дна реки на принт поля.

2 лайка

Нет, слои карты низя менять как в тундре.

3 лайка

Нет, мы можем.

Как добавить модификации (штык, прицел и гранатомет) к оружию?

Для начала просто надо добавить свойство gunMods в customProps.
Для этого рядом с customProps жмем на плюс. После этого пишем gunMods и выбираем object:


После этого надо нажать на плюсик рядом с gunMods и написать scope (прицел) или bayonet (штык-нож), а после выбрать text.
Я решил добавить сразу две модификации для данного оружия:

И расписал какие именно будет штык и прицел после подбора оружия.
Итог:

Как вы могли заметить прицел и штык-нож на месте.

Увы…
Скорее всего нельзя добавить модификации к оружию, которое не может иметь их. Например добавить прицел к Gewehr 43 Kurz. Кроме этого этим же путем нельзя добиться визуального изменения оружия размещенного на карте.

Вы можете проверить какие модификации могут быть добавлены к тому или иному оружию.
Для этого надо проверить свойство gun_mods__slots:


Имейте в виду, что оно не показывает гранатомет (grenade launcher).

Как добавить гранатомет к оружию?

Данный метод похож на прошлый, но вместо scope или bayonet вы должны ввести grenade_launcher.


И после этого надо разместить на карте снаряды для данного гранатомета.
В скриншоте я добавил schiessbecher_grenade_launcher так что снаряды для него будут scheissbecher_grenade_item.
В итоге всего:

Как видно - граната вылетает из только что подобранной винтовки с гранатометом.

Увы, похоже, нельзя добавить другой гранатомет данному оружию. Только такой, который прописан.
Подсказка какой можно добавить находится в названии оружия.

Дополнительная информация:

В прошлом я писал о том как добавить ботов с оружием.

Теперь хотел бы дополнить - вы можете добавить модификации к оружию, что держит бот.
Для этого надо будет поменять оружие на то, которое может содержать модификации.
После этого в weapInfo пишем название патрон для данного оружия.
Например у меня боец с pre_war_kar98k_with_scope_mount_gun.
У него должны быть патроны mauser98k_magazine.


Как только написали - жмем на плюс. И пишем gunMods, выбирая object. После чего в gunMods жмем на плюсик и вводим название модификации (bayonet, scope или grenade_launcher) и выбираем text. После этого вводим точное название модификации. Итог:

2 лайка

Блин. Хотел карты из ВТВ2 попереносить. С красивыми дорожками и садами, видимо не судьба.
image

Столкнулся с проблемой: в режиме теста не могу пополнить БК. Пробовал Resupply_zone, resupply_in_the_air с разным радиусом и командой - никакой разницы.
С Ammunition_box аналогично.

Кто-нибудь знает, в чём может быть проблема?

Было бы хорошо подробнее расписать проблему.
А так… Если ты про оружие и технику, размещенной на карте…
То тут необходимо сделать пару изменении в них.

Для техники надо поставить технике команду (поменять свойство team).

Для оружия уже придется больше редактировать свойства.
И для добавления возможности подбора патрон из ящика команды тебе надо будет отредактировать customProps свойство. Тут более подробное описание про customProps. Если что animchar__res необязательно добавлять.

2 лайка

Сразу небольшой список вопросов.
Объект dead_enlisted_base_soldier, как его настроить?
Какие настройки у gpu_object_placer?
С помощью какого объекта/свойства создаётся снежный слой в миссии, по типу https://sandbox.enlisted.net/post/UqLSlUEV6vp32w7p/ ?

1 лайк

Хм… Заспавнить?
Настройки я не знаю. Не изучал особо.
Вроде ± такие же как и у объектов-бойцов.

Как заспавнить?

Вариант 1:
Создайте бота-бойца/объект-бойца.
И поставьте ему 0 хп.

Примечание:

  • Если не хотим чтобы труп быстро пропадал, то увеличиваем bodyCleanupTime.

  • Труп во время запуска карты будет всегда в Т позе.
    А анимации у нас, в игре, мягко говоря… Не очень крутые.
    Вероятно поворот бойца может помочь с этим. Но это не точно…

  • Лучше очистить weapInfo и weapTemplate.
    Но если рядом с трупом должно быть оружие, то оставьте.
    !Если использован простой бот, то он не выбрасывает оружие!

Вариант2:
Думаю, что можно криво заспавнить добавив постфикс объекта-бойца.
То есть в postfix template пишем +ger_base_soldier или лучше +ger_soldier (лучше так как одевать не придется) и после этого dead_enlisted_base_soldier спавним это.

Почему криво?
Боец будет живым и мертвым одновременно.
И боты будут на него реагировать.

Хотя вероятно все это можно отключить поставив 0 хп.

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

shaderVars.
Некоторые свойства можно ввести только через файл scene.blk.

За “снег” отвечает это:
envi_cover_specular_albedo - цвет.
envi_cover_specular_color - доп. цвет.
envi_cover_intensity_map - текстура, которая будет накладываться. Лучше всего использовать из Москвы.
envi_cover_normal - слой или “снег” на объектах. Первое значение уменьшает, второе увеличивает, а третье меняет угол. Параметры могут быть ниже 0 для противоположного эффекта.
envi_cover_normal_mask_threshold - видимо увеличивает envi_cover_normal .
envi_cover_normal_infl - не уверен, но работает как envi_cover_normal_mask_threshold .
НО НЕ ВЕЗДЕ СНЕГ СОЗДАЕТСЯ.

1 лайк

В файлах игры до сих пор есть турель из события Битва за Луну!

1 лайк

Добрался до редактора, пробую сделать свой ангар. На фон боевого пропуска думаю собрать сцену из главного меню старенького Вольфенштейна. Появилось несколько вопросов касательно объектов в редакторе.

  1. Кто может подсказать либо как добавить на карту сбитый самолёт в Нормандии, который там ещё одной из точек является, либо как подорвать рабочий самолёт, чтобы его можно было поставить на землю в роли декоративного объекта?

  2. Как мне повесить на опоры ЛЭП сами провода?

  3. Как изменить параметры погоды?
    например я ставлю параметр sky_atmosphere_moon_brightness на значение 0.4, сохраняю, но после перезахода небо опять светлое, несмотря на то, что значение 0.4 там по-прежнему стоит.

2 лайка

Создаешь game_rendinst и в ri_extra_name выбираешь объект.


Данный объект есть в списке. И называется douglas_c_47_damaged_a.
Стекла идут отдельными объектами.

Чтобы узнать название - используй toolbox - rendinst. Кликнув на объект тебе покажет его название.
Unbake позволит его отодвинуть в другое место. А Instance сделает копию.

Хм… А вот это не смогу сказать.
Как вариант костылем - найти какие-то объекты, похожие на провод.
Или растянуть их. Правда при последнем действии есть шанс краша редактора.

В теории за это может отвечать этот объект:


Но я тут не знаю как его правильно расписать и т.п…

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

И из-за того, что твоя погода создается после той, что сгенерировано уровнем (объектом level).
Чтобы отключить генерацию погоды тебе надо будет найти объект level в find entity.
Кликаешь по level__weatherChoice и там ставишь 0.0.


Если что на некоторых картах используется другой level.
Там уже может быть генерация погоды из самой игры.

В таком случае все тоже самое, но ставим 0.0 также и в weight, что находится внутри вкладки с погодой с определенными создаваемыми объектами/настройками.

Эх… Было время)

Жаль, что для более точной картинки нельзя наклейки налепить на объекты. Только на технику.
Холмики, думаю, можно добавить с помощью game_rendinst.
Там в ri_extra_name выбираем что-то среди debris.

Зенитки тоже не очень просто будет добавить.
Хотя не знаю. Я увы еще не пробовал то, что TommyZZM скидывал.
Так что пока что с этим не смогу помочь.

Тут есть немного информации что и как.
Но скорее всего будет сложно для тебя. Ибо в дело уже идет редактирование кода карты, файла scene.blk. Потом как будет время я изучу, разберусь и распишу об этом позднее…

3 лайка

Благодарю, буду сегодня проверять. Не знал, что дефолтные объекты на карте тоже можно выделять и двигать. Думал их только удалять.

2 лайка

Подскажите, добавляю объект и хочу, чтобы на него не действовали законы физики и он был статичен. Запуская сценарий (тест) объект стремится встать горизонтально. Какой параметр необходимо выключить?


1 лайк