Чудо-инженер в редакторе

Да. Можно.


Для этого надо всего лишь прописать постройки внутри previewTemplate и buildingLimits.

Можно поменять список только через scene или через entities. Однако расширить список возможно только редактируя файлы, так как внутри не совсем array тип данных, а его другая версия, которые принимает только текстовые или числовые значения. То есть пишем item<t> или item<i> вместо array. Если планируешь поменять лимит, то советуется уже это делать в entities.blk, так как лимиты зависят от первого полученного инженерного молотка.

Можно, а так же сделать подбираемым. Инженерные молотки (building_tool) находится вкладке all. Для того чтобы сделать подбираемым надо добавить постфикс +item_in_world, а затем создать item версию.

2 лайка

Код, меняющий инженерный молоток из лунного события:

ussr_moon_building_tool_gun{
  _override:b=yes


  "buildingLimits:list<i>"{
    item:i=100
    item:i=300
    item:i=600
    item:i=100
    item:i=100
    item:i=200
    item:i=100
    item:i=100
    item:i=100
    item:i=100
    item:i=100
    item:i=100
  }

  "previewTemplate:list<t>"{
    item:t="ri_entity__normandy_bunker_a102_walls_preview"
    item:t="ammunition_box_a_preview"
    item:t="czech_hedgehog_a_preview"
    item:t="sandbags_wall_1_preview"
    item:t="sandbags_wall_3_preview"
    item:t="cannon_germ_20mm_flak38_preview"
    item:t="cannon_germ_towed_at_pak38_no_camo_preview"
    item:t="sandbags_wall_mg_34_preview"
    item:t="sandbags_wall_mg_131_preview"
    item:t="sandbags_wall_ampulomet_preview"
    item:t="czech_hedgehog_a_preview"
    item:t="gaz_67_preview"
  }
}

Код новых построек:

ri_entity__normandy_bunker_a102_walls_preview{
  _extends:t="base_rendinst_builder_preview"
  instantiateTemplate:t="ri_entity__normandy_bunker_a102_walls"
  ri_preview__name:t="normandy_bunker_a102_walls"
  buildingSoundTag:t="fortification"
  building_builder__maxTimeToBuild:r=10.0
  building_menu__text:t="Bunker"
  building_menu__image:t="bunker"
}

ri_entity__normandy_bunker_a102_walls{
  _extends:t="game_rendinst_decor"
  ri_extra__name:t="normandy_bunker_a102_walls"
}

gaz_67_preview{
  _extends:t="base_animchar_builder_preview"
  animchar__res:t="pv_gaz_67_char"
  collres__res:t="pv_gaz_67_collision"
  instantiateTemplate:t="gaz_67"
  buildingSoundTag:t="fortification"
  building_builder__maxTimeToBuild:r=5.0
  building_menu__text:t="gaz_67"
  building_menu__image:t="map_icon_car"
  buildingDistance:r=12.5
  additionalHeight:r=1.0
  avaliableAngles:p2=-30.0, 30.0
}

Если хотим добавить в список построек какой-то rendinst, но его нету в списке Create Entity, то увы нам придется добавить его. В коде добавлен объект с названием ri_entity__normandy_bunker_a102_walls. Внутри свойства ri_extra__name пишем название объекта.

Именно свойство instantiateTemplate создает объект на карте.

2 лайка

В планах открыть все постройки всем отрядам, а не только определенным? Если что за блокировку постройки отряду отвечает свойство building__requireUnlockId. Надо всего лишь поставить -1 у привьюшки. Пример кода:

cannon_germ_20mm_flak38_preview{
  _override:b=yes
  building__requireUnlockId:i=-1
}


Определенные постройки включается в профиле/наборе отрядов, пример которого тебе KpyTou_2022 скинул.

2 лайка

Спасибо.

2 лайка

C советским десантом)

1 лайк

В этой теме есть гайд как это делается: Существуют ли гайды по созданию кастомных отрядов?

Единственное, что добавлю… Для превращения отряда в десантников надо добавить эти строчки в коде отряда: "isParatroopers": true, и "paratrooperBoxUnlocks": [],.
Как это сделано с "engineerUnlocks" : [],.

3 лайка

Это типа вставлять в entities.blk&

1 лайк

Если да, то как его создать?

1 лайк

Создаешь в папке текстовой файл, называешь entities и убираешь txt и пишешь blk

В папке мода?
И вставить туда этот код?

1 лайк

Да

1 лайк

А как называются слоты в инвентаре? Жалко просто слот под 2 оружие молоточком занимать.

Если я не ошибаюсь, то… primary, secondary, tertiary, melee, grenade и special.

1 лайк

как это сделать

У меня не получается. Можно пошагово объяснить, как добавить советский десант.

1 лайк

Нажав на Build Vrom. После этого файл будет создан в папке userGameMods с названием твоего мода.

1 лайк

Было бы неплохо расписать где именно застрял. Или какие моменты тебе не совсем понятны. Пока оставлю все KpyTou_2022, через пару часиков или завтра загляну как у вас все получилось.

1 лайк

У меня вылазит CMD

1 лайк

1 . Скачать файлы

Usadba Profile.rar (20,7 КБ)
2. Распаковать в папку с модом.
3. Зайди в редактор.
4. Жмякаем на вашей чудесной клавиатуре T английскую , выбираем категорию All
пишем custom и видим два нужных нам entity
Спавним их!


5. Пишем в entity custom profile Путь к файлу нашему (просто скопируй выделенное и вставь (Ctrl C и жмём ctrl V) %ugm/МОЙФАЙЛ.json
А для custom bot profile скопируем %ugm/ДЛЯБОТОВ.json
6. Делаем vromfs.bin

Жмём вверху рядом с названием вашей карты Toolbox
Жмём Build commands
Жмём Build Mod VROM
Мод запакуется в один маленький файл.
После нажатия Build Mod VROM вылезет командная строка


Если в строке Finished with status : 0 значит всё нормуль
7. Забираем готовый результат.
8. Заходим На Enlisted Sandbox
9. выкладываем следущим образом:
Название можно своё и описание, но важно сохранить пост с модом с помощи кнопки Save Draft
Также загружаем не scene.blk а наш мод запакованный в vromfs.bin. Он будет сидеть в папке UserGameMods.
image

АЛЬТЕРНАТИВА!
https://sandbox.enlisted.net/post/JeVaGghPTWscPLWx/
Переходим по ссылке и играем (ну в случае если у вас совсем не получается)

Всё правильно! Забери свой мод в UserGameMods

2 лайка

Спасибо! Попытаюсь еще разок. В случае чего отвечу на твой ответ.

1 лайк