Jump to content

Помощь разработчику миссий


Recommended Posts

Posted (edited)
Как можно уже в готовой миссии сменить или добавить коалицию???

 

Тоже часто сталкиваюсь с такой проблемой!

 

P.S это нужно в хотелки написать)

Edited by BlackLion161

[sIGPIC][/sIGPIC]

Posted
Слышал что меняют ковыряя файлы! Может кто подскажите гди и какой файл

 

Файл mission в контейнере с твоей миссией. Контейнер можно открыть архиватором или тотал коммандером (удобнее), а сам файл миссии - блокнотом (удобней notepad++).

  • ED Team
Posted

Пробовал недавно править коалиции миссии в командере. Поменял в списке миссий так, как это бы выглядело в миссии созданной с нуля. Но не сработал фокус - где-то там надо править ещё, окромя списка. Вылетает миссия с ошибкой.

Posted

Там, где юниты, если не запамятовал. Но я делал это еще до обновленной версии контейнера миссий.

Posted
Там, где юниты, если не запамятовал. Но я делал это еще до обновленной версии контейнера миссий.

Открываем Notepad++, из контейнера миссий зажав Лкм перетаскиваем файл mission в нотпад, файл должен открыться. В кодировка выставляем UTF-8 без BOM, дальше в Синтаксис выставляем Lua. Код расцветится по синтаксису. Далее правка/выделить все и нажать Alt + 0, текст свернется по блокам. Кликнув по + слева в первой строке развернул на первый уровень. Там будет два блока coalition (это список стран) и дальше coalitions (там уже описание групп и юнитов) вот в этих двух блоках блоки с необходимой страной следует перенести в другую коалицию.

  • Like 1
Posted

А что дает "граничное условие", то есть например если "правила" вдруг нарушается - то и "действие" пропадает, пока снова не восстановятся правила?

[sIGPIC][/sIGPIC]

Core i5, 16GB RAM, GF-760, SSD

Posted

Ничего не понял из вопроса, но граничное условие - тип триггера, который вызывается, когда объект (любой) пересекает границу триггера (любого) (входит в триггерную зону или выходит из нее). Затем проверяется условие и выполняется действие, при истинности условия. В отличие от триггеров "один раз" и "повторяющийся" условие будет проверятся только при пересечении триггерной зоны, а не каждую секунду.

 

Например, граничное условие - группа 1 в (вне) триггерной зоне - действие.

Или, граничное условие - время более 60 - действие.

Posted
Ничего не понял из вопроса, но граничное условие - тип триггера, который вызывается, когда объект (любой) пересекает границу триггера (любого) (входит в триггерную зону или выходит из нее). Затем проверяется условие и выполняется действие, при истинности условия. В отличие от триггеров "один раз" и "повторяющийся" условие будет проверятся только при пересечении триггерной зоны, а не каждую секунду.

 

Например, граничное условие - группа 1 в (вне) триггерной зоне - действие.

Или, граничное условие - время более 60 - действие.

 

Я это и имел ввиду. То есть при соблюдении условий (юнит, группа) в зоне ставим действие - флаг 111. Если юнит вне зоны - флаг 111 выключается. Если снова в зоне - то снова включается. Да и если кроме флага добавить другие действия - они так же выключатся, потому что граничное условие не соблюдено. Я правильно понял?

[sIGPIC][/sIGPIC]

Core i5, 16GB RAM, GF-760, SSD

Posted

Не. Нужно конкретно прописывать:

Триггер №1: граничное условие - юнит в зоне такой-то - флаг 111 истина.

Триггер №2: граничное условие - юнит вне зоны такой-то - флаг 111 ложь.

 

Т.е., все, как и для других триггеров. Разница только в способе вызова самого триггера.

 

Как пример.

1) Есть триггерная зона 1, есть юнит 1, который находится вне ее пределах.

Пишешь триггер: граничное условие - юнит 1 вне зоны 1 - флаг 111 истина.

Таким образом, флаг установится только когда юнит влетит в зону и вылетит из нее.

 

2) Есть триггерная зона 2, есть юнит 2, который находится вне ее пределах.

Пишешь триггер: один раз - юнит 2 вне зоны 2 - флаг 222 истина.

Таким образом, флаг установится сразу, в начале миссии, ведь юнит по факту вне зоны.

Posted

Граничное условие это значит что триггер сработает ТОЛЬКО В ТОТ МОМЕНТ, когда условие станет истинным. Пример: "группа abc в зоне xxx" -- действие выполнится один раз в момент, когда все живые юниты группы abc ВОЙДУТ в зону xxx. Если при старте миссии вся группа УЖЕ находилась в зоне, то триггер не сработает пока хотя бы один из юнитов не покинет зону и не вернется в нее снова.

Posted

Триггер один раз - в соответствии с названием отрабатывает всего 1 раз? То есть например:

 

Если вертолет группы 1, вошел в зону A => действие - сигнальная ракета. То есть если другой вертолет из этой группы войдет снова в зону А - действия не будет, так как триггер уже отработал.

 

Если поставить повторяющийся, тогда ракета будет выстреливать все то время пока вертолет группы 1 находится в зоне А, но если он ее покинет и снова вернется то уже отработанный триггер работать не будет? Тоже самое и по всем другим действиям так?

Если действие 1 раз сработало - триггер больше не работает?

[sIGPIC][/sIGPIC]

Core i5, 16GB RAM, GF-760, SSD

Posted

Оба повторяющиеся. Флаг "заглушку" ставь с проверкой пока вертолет в зоне флаг = 1 и ракета - вертолет в зоне и флаг=0 то отстрел. пока флаг 1 отстрела не будет. Первым триггер ракета, вторым флаг. Работать будет по кругу. Улетел прилетел.

[sIGPIC][/sIGPIC]

АКА =TMS= Count _ Полеты на = T M S = dedicate server На точке работает РП (РП+РПП)

Набор вирпилов на вертикальную, штурмовую и истребительную авиацию со времен ВОВ и по настоящее время

Комсостав и инструкторы - летавшие в горячих точках (и не только) и действующие летчики.

Posted
Триггер один раз - в соответствии с названием отрабатывает всего 1 раз?

 

Да. Отработал (условие истинно) - все, больше его игра не трогает.

 

То есть например:

Если вертолет группы 1, вошел в зону A => действие - сигнальная ракета. То есть если другой вертолет из этой группы войдет снова в зону А - действия не будет, так как триггер уже отработал.

 

Там обрати внимание, есть вся "группа в зоне", есть "часть группы".

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

 

Если поставить повторяющийся, тогда ракета будет выстреливать все то время пока вертолет группы 1 находится в зоне А, но если он ее покинет и снова вернется то уже отработанный триггер работать не будет? Тоже самое и по всем другим действиям так?

Если действие 1 раз сработало - триггер больше не работает?

 

Триггер "повторяющийся" будет работать всегда при истинности его условий. Хоть сейчас юнит в зоне, хоть через час он там окажется повторно. 25 раз за игру войдет в зону - 25 раз будет отрабатывать триггер действия. Причем, он проверяется раз в секунду, т.е., будет юнит в зоне находится минуту, то каждую секунду будут стрелять ракеты. Выйдет из нее - ракеты перестанут стрелять, через час снова войдет в зону, снова ракеты полетят.

Posted (edited)
Триггер "повторяющийся" будет работать всегда при истинности его условий. Хоть сейчас юнит в зоне, хоть через час он там окажется повторно. 25 раз за игру войдет в зону - 25 раз будет отрабатывать триггер действия. Причем, он проверяется раз в секунду, т.е., будет юнит в зоне находится минуту, то каждую секунду будут стрелять ракеты. Выйдет из нее - ракеты перестанут стрелять, через час снова войдет в зону, снова ракеты полетят

 

То есть фактически его можно использовать, как "проверочный" и сделать из него переключатель флага при определенном условии? Например я ставлю определенные правила: Юнит в "Зоне А" - Флаг 111.

Юнит вне "зоны А" - Флаг 111 - выкл. Юнит снова зашел в "зону А", флаг 111 снова вкл ? В отличии о граничного, который в таком случае один раз отработает и все, тут будет срабатывать каждый раз по условиям (правилам), которые в данном случае предполагают наличие юнита в "Зоне А".

 

Еще такой вопрос, касаемо производительности - есть ли разница на быстродействие и производительность в зависимости от того это "живой юнит (группа)" или же это статик?

Edited by Neuman

[sIGPIC][/sIGPIC]

Core i5, 16GB RAM, GF-760, SSD

Posted
То есть фактически его можно использовать, как "проверочный" и сделать из него переключатель флага при определенном условии? Например я ставлю определенные правила: Юнит в "Зоне А" - Флаг 111.

Юнит вне "зоны А" - Флаг 111 - выкл. Юнит снова зашел в "зону А", флаг 111 снова вкл ? В отличии о граничного, который в таком случае один раз отработает и все, тут будет срабатывать каждый раз по условиям (правилам), которые в данном случае предполагают наличие юнита в "Зоне А".

 

В любом случае, понадобится два триггера - один для проверки наличия юнита в зоне и установки флага, другой - для проверки отсутствия юнита в зоне и уборки флага.

Одним триггером нельзя поставить и убрать флаг. Можно, конечно, но это бессмысленно.

Тут лучше как раз использовать граничное условие. Потому что повторяющийся триггер каждую секунду будет устанавливать флаг, пока юнит в зоне (или убирать). Либо в проверку наличия юнита в зоне/вне зоны, включать флаг. Т.е.

1) Повторяющийся - юнит 1 в зоне 1, флаг 1 ложен - флаг установить.

2) Повторяющийся - юнит 1 вне зоны 1, флаг 1 истинен - флаг убрать.

Куда короче:

1) Граничный - юнит 1 в зоне 1 - флаг установить.

2) Граничный - юнит 1 вне зоны 1 - флаг убрать.

Posted

Спасибо за разъяснения. А есть ли возможность устанавливать флаги по завершению действий юнита?

 

Пример группа достигла ППМ-3 - флагN (тут конечно можно сделать при помощи зоны). Или же бомбардировщик сбросил бомбы - Флаг N.

  • Like 1

[sIGPIC][/sIGPIC]

Core i5, 16GB RAM, GF-760, SSD

Posted

Нет нельзя. Для отслеживания сброса бомб есть условие "Бомба в зоне", но высота не учитывается. То есть если бомба в триггерной зоне условие сработает независимо от высоты.

  • Like 1

Mi-8MTV2 The border campaign

Ka-50 2 Pandemic campaign

Mi-24P The border - prequel campaign

 

Asus ROG Strix Z-590f, i7-11700K, SSD M2 NVME 2Tb, HDD 4Tb, RTX 3090, RAM 32GB, Meta Quest 3, Mi Redmi 3440x1440.

Posted
Пример группа достигла ППМ-3 - флагN (тут конечно можно сделать при помощи зоны).

 

ППМ - расширенные действия - выполнить команду - выполнить скрипт - скопировать в поле: trigger.action.setUserFlag(1,1)

где первая "1" это флаг

вторая "1" его значение

 

Или же бомбардировщик сбросил бомбы - Флаг N.

 

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

Posted

Можно ли высаживая десант по скрипту заставить его работать JTAC тоже по скрипту?

То есть я хочу подобрать десант высадить его и что бы он начал подсвечивать цели?

=БК= Наши сервера и статистика: https://aviabk.ru/

Posted
Можно ли высаживая десант по скрипту заставить его работать JTAC тоже по скрипту?

То есть я хочу подобрать десант высадить его и что бы он начал подсвечивать цели?

 

Теоретически можно.

Posted

Сейчас существует несколько вариантов объект, юнит, юнит группы, группа, коалиция. Это все замечательно подходит для различных действий в создании триггеров для одиночной игры.

 

Но ведь в мультиплеере, игроки приходят со своими именами, то есть "имя пилота" уже не работает. Группа так же понятие растяжимое так как может принадлежать 4 разным самолетам. То есть для более корректной и персонифицированной работы триггеров в мультиплеерной миссии надо делать 1 самолет-1 группа? Ведь кроме группы и имён игроков тут есть ещё так называемый идентификатор.

[sIGPIC][/sIGPIC]

Core i5, 16GB RAM, GF-760, SSD

Posted
Но ведь в мультиплеере, игроки приходят со своими именами, то есть "имя пилота" уже не работает. Группа так же понятие растяжимое так как может принадлежать 4 разным самолетам. То есть для более корректной и персонифицированной работы триггеров в мультиплеерной миссии надо делать 1 самолет-1 группа? Ведь кроме группы и имён игроков тут есть ещё так называемый идентификатор.

 

Нет

Posted (edited)

А как тогда сделать более гибкие сценарии по триггерам в MP миссиях, когда нужно например чтобы триггер, флаг, сообщение, действие - срабатывал на конкретное лицо, кто этот триггер активировал? Взять например начисление очков, раз они начисляются, значит программно ведь в любом случае каждому игроку присваивается какой то идентификатор.

Edited by Neuman

[sIGPIC][/sIGPIC]

Core i5, 16GB RAM, GF-760, SSD

Posted (edited)
А как тогда сделать более гибкие сценарии по триггерам в MP миссиях, когда нужно например чтобы триггер, флаг, сообщение, действие - срабатывал на конкретное лицо

Вооружаться документацией

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

 

Что касается очков они начисляются не при помощи скриптового движка, а при помощи DCS API. Это другое. Но при помощи скриптового движка даже это можно продублировать. Я даже как-то считал килы игроков при помощи SSE и записывал их в CSV файлик, когда не знал про DCS API. Изврат конечно был тот ещё, но ниче, работало :D

Edited by eekz
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...