Jump to content

Recommended Posts

Posted

С граничным триггером работают только два события - "в зоне" и "вне зоны"? Какой-либо реакции на остальные события просто не будет? То есть добавлять их к событию например "в зоне" просто бесполезно?

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

  • Replies 142
  • Created
  • Last Reply

Top Posters In This Topic

Posted
С граничным триггером работают только два события - "в зоне" и "вне зоны"? Какой-либо реакции на остальные события просто не будет? То есть добавлять их к событию например "в зоне" просто бесполезно?

 

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

 

2. По моему можно . Завтра скажу точнее.

Будьте осторожнее в своих желаниях.

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

Posted (edited)
Не совсем так. К примеру на граничное условие можно завязать ,, высота менее,, и каждый при выполнении будет срабатывать тригер.

 

2. По моему можно . Завтра скажу точнее.

 

Не работает.

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

 

Сделал новую тестовую миссию, где поставил граничный триггер с правилами: объект в зоне и скорость менее 250км/ч. Ноль эмоций. Срабатывает при влёте в зону на любой скорости.

 

Граничный триггер в принципе не должен работать с другими правилами кроме "в зоне" и "вне зоны".

НО! имхо неправильно, если я задаю дополнительные правила к "в зоне" и "вне зоны", а они не соблюдаться.

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

 

PS добавил высоту - сработало, а со скорость не выходит....ничего не понимаю!

Edited by zetetic

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

  • ED Team
Posted
Не работает.

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

 

Сделал новую тестовую миссию, где поставил граничный триггер с правилами: объект в зоне и скорость менее 250км/ч. Ноль эмоций. Срабатывает при влёте в зону на любой скорости.

 

Граничный триггер в принципе не должен работать с другими правилами кроме "в зоне" и "вне зоны".

НО! имхо неправильно, если я задаю дополнительные правила к "в зоне" и "вне зоны", а они не соблюдаться.

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

 

PS добавил высоту - сработало, а со скорость не выходит....ничего не понимаю!

 

Скорость в правильном формате задана? В триггере метры в секунду.

[sIGPIC][/sIGPIC]

Posted (edited)
Скорость в правильном формате задана? В триггере метры в секунду.

 

тьфу:(

Благодарю!

 

Тем не менее не работает. Условия не учитываются логикой.

Вроде всё правильно делаю.

Глянь скриншоты.

Сирена всё равно срабатывает, несмотря на то что я не снижаю скорость в зоне ниже 10м/с и не снижаюсь ниже 470 м (абсолютная высота)

Контроль идёт только по пересечению границы зоны.

 

Очерёдность расположения правил и действий имеет значение?

Edited by zetetic

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted (edited)

Триггер граничное условие именно граничное - там либо четко либо диапазон, при невыполнении какого либо условия работать не будет. При использовании зон в таком виде есть некоторые хитрости (по крайней мере были). Так что нужно очень четко представлять - что хочешь и какие диапазоны и чего проверяешь. К тому же можно разделить на несколько проверок с выставлением флагом и потом проверить эти флаги. Решение можно найти всегда.

Расположения особо не влияет на некоторые вещи, но если делать красиво - блоки лучше логически по порядку делать, да и они в списки по порядку идут в обработку.

Edited by edwardpashkov

[sIGPIC][/sIGPIC]

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

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

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

Posted (edited)
Триггер граничное условие именно граничное - там либо четко либо диапазон, при невыполнении какого либо условия работать не будет. При использовании зон в таком виде есть некоторые хитрости (по крайней мере были). Так что нужно очень четко представлять - что хочешь и какие диапазоны и чего проверяешь. К тому же можно разделить на несколько проверок с выставлением флагом и потом проверить эти флаги. Решение можно найти всегда.

Расположения особо не влияет на некоторые вещи, но если делать красиво - блоки лучше логически по порядку делать, да и они в списки по порядку идут в обработку.

 

Это мне известно, спасибо!

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

Вот выше я привёл конкретный случай, где я максимально упростил реализацию задумки, но ничего не получается. Упростил - я имею в виду исключил флаги и их проверку.

 

С диапазонами правил всё в порядке, но эти правила не соблюдаются.....почему то.

Edited by zetetic

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted
тьфу:(

Благодарю!

 

Тем не менее не работает. Условия не учитываются логикой.

Вроде всё правильно делаю.

Глянь скриншоты.

Сирена всё равно срабатывает, несмотря на то что я не снижаю скорость в зоне ниже 10м/с и не снижаюсь ниже 470 м (абсолютная высота)

Контроль идёт только по пересечению границы зоны.

 

Очерёдность расположения правил и действий имеет значение?

 

Ну я, по крайней мере, заметил 1 косяк в твоих триггерах.

У тебя стоит так:

Если твой самолет в зоне

Если его высота менее, чем ХХХ

Если его скорость менее, чем ХХХ

И при этом в зоне находится конкретный вражеский борт

=>

срабатывает сирена

 

ИЛИ

если в зоне просто находится второй вражеский борт (Пилот США МиГ-15-2)... и все! После первого же ИЛИ идет проверка только на наличие вражеского борта в зоне. Там уже не учитывается, есть ли ты в зоне, какая у тебя скорость и какая высота. Условие выполнится, если в зону влетел второй ... n'ный вражеский борт.

 

ПОТОМУ

у тебя может быть так, что ты влетел в зону, сбросив высоту, скорость, а того конкретного борта (Пилот США МиГ-15-1) в зоне нет, то сирены не будет. Или если в зону влетит "Пилот США МиГ-15-2 ... n", то сирена сработает лишь по той причине, что он в зоне, и ему не важна твоя высота, скорость и твое наличие в зоне

 

СЛЕДОВАТЕЛЬНО

Тебе нужно к каждому пункту после каждого ИЛИ добавить такой же блок условий, что и в самом начале. Т.е., что ты в зоне, скорость ниже чем, высота ниже чем, объект в зоне Пилот США МиГ-15-2. Потом то же самое, но в конце "... МиГ-15-3" и т.д.

Posted

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

В миссии есть наземка? Может, проще указывать не конкретные объекты, а "часть коалиции в зоне/вне зоны"?

Posted
Ну я, по крайней мере, заметил 1 косяк в твоих триггерах.

У тебя стоит так:

Если твой самолет в зоне

Если его высота менее, чем ХХХ

Если его скорость менее, чем ХХХ

И при этом в зоне находится конкретный вражеский борт

=>

срабатывает сирена

 

ИЛИ

если в зоне просто находится второй вражеский борт (Пилот США МиГ-15-2)... и все! После первого же ИЛИ идет проверка только на наличие вражеского борта в зоне. Там уже не учитывается, есть ли ты в зоне, какая у тебя скорость и какая высота. Условие выполнится, если в зону влетел второй ... n'ный вражеский борт.

 

ПОТОМУ

у тебя может быть так, что ты влетел в зону, сбросив высоту, скорость, а того конкретного борта (Пилот США МиГ-15-1) в зоне нет, то сирены не будет. Или если в зону влетит "Пилот США МиГ-15-2 ... n", то сирена сработает лишь по той причине, что он в зоне, и ему не важна твоя высота, скорость и твое наличие в зоне

 

СЛЕДОВАТЕЛЬНО

Тебе нужно к каждому пункту после каждого ИЛИ добавить такой же блок условий, что и в самом начале. Т.е., что ты в зоне, скорость ниже чем, высота ниже чем, объект в зоне Пилот США МиГ-15-2. Потом то же самое, но в конце "... МиГ-15-3" и т.д.

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

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted
Чтобы один и тот же блок условий не прописывать, как раз-таки и проще использовать флаг. А затем проверять наличие этого флага с другим условием.

В миссии есть наземка? Может, проще указывать не конкретные объекты, а "часть коалиции в зоне/вне звоны"?

 

Да, тогда флаг нужен!:thumbup: , чтобы не заниматься лишней писаниной.

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted
:thumbup: Вот по расположению у меня и было подозрение, а именно, как в том пакете правил они будут взаимодействовать между собой. То есть правила надо читать, так как они расположены.....я пытаюсь понять законы отработки, чтобы потом проще было писать.

 

Суть в том, что каждое правило после [ИЛИ] - это отдельное правило, которому требуется свой набор условий. В твоем примере, я так понял, ты решил, что условия первого блока правил будут проверяться и вставляться в каждое твое правило после ИЛИ, а меняться будет только наличие определенного пункта. Проще говоря, после каждого ИЛИ, ты указал тот пункт, который требует изменений. А первые 3 пункта решил, что будут браться из первого блока. Но на самом деле, как и в твоем примере, после каждого ИЛИ все условия должны повторяться и уже там ты должен менять тот пункт, который требует изменений. В твоем примере после ИЛИ должны идти все 4 проверки. Т.е.:

1) Ты в зоне

2) Твоя скорость ниже, чем ХХХ

3) Твоя высота ниже, чем ХХХ

4) Какой-то конкретный объект в зоне (это правило меняется)

 

П.С.: Я так понимаю, все эти истребители появляются один за другим? Сбит один, прилетает второй, сбит второй, прилетает третий и т.д.?

Posted

В наборе правил для триггеров в DCS не получится использовать все возможные логические конструкции рационально. Т.е.:

Можно создать такую конструкцию:

"условие 1" И "условие 2" ИЛИ "условие 3" ...

где триггер сработает, когда истинными окажутся условия 1 и 2 одновременно или только условие 3, или все три условия (но тут не имеет смысла, т.к. триггер сработает уже по истинности условия 1 и 2).

А вот такую конструкцию уже создать сложнее:

"условие 1" И ("условие 2" ИЛИ "условие 3" ...)

т.к., в правилах нельзя использовать скобки, соответственно, "условие 1" нужно будет прописывать ко все остальным условиям, что будет громоздко. Потому поможет флаг.

Но скобки уже можно использовать в скрипте.

Posted (edited)
Суть в том, что каждое правило после [ИЛИ] - это отдельное правило, которому требуется свой набор условий. В твоем примере, я так понял, ты решил, что условия первого блока правил будут проверяться и вставляться в каждое твое правило после ИЛИ, а меняться будет только наличие определенного пункта. Проще говоря, после каждого ИЛИ, ты указал тот пункт, который требует изменений. А первые 3 пункта решил, что будут браться из первого блока. Но на самом деле, как и в твоем примере, после каждого ИЛИ все условия должны повторяться и уже там ты должен менять тот пункт, который требует изменений. В твоем примере после ИЛИ должны идти все 4 проверки. Т.е.:

1) Ты в зоне

2) Твоя скорость ниже, чем ХХХ

3) Твоя высота ниже, чем ХХХ

4) Какой-то конкретный объект в зоне (это правило меняется)

 

П.С.: Я так понимаю, все эти истребители появляются один за другим? Сбит один, прилетает второй, сбит второй, прилетает третий и т.д.?

 

Да всё верно ты понял, именно такой логикой я и руководствовался, так как считал поле правил единым блоком.

Самолёты появляются звеньями по четыре, но действие должно произойти при влёте одного из них, ну и при определённых правилах у ЛА игрока.

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

Edited by zetetic

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted
В наборе правил для триггеров в DCS не получится использовать все возможные логические конструкции рационально. Т.е.:

Можно создать такую конструкцию:

"условие 1" И "условие 2" ИЛИ "условие 3" ...

где триггер сработает, когда истинными окажутся условия 1 и 2 одновременно или только условие 3, или все три условия (но тут не имеет смысла, т.к. триггер сработает уже по истинности условия 1 и 2).

А вот такую конструкцию уже создать сложнее:

"условие 1" И ("условие 2" ИЛИ "условие 3" ...)

т.к., в правилах нельзя использовать скобки, соответственно, "условие 1" нужно будет прописывать ко все остальным условиям, что будет громоздко. Потому поможет флаг.

Но скобки уже можно использовать в скрипте.

 

Мда, но до скриптов я ещё не дорос, а учитывая что на всё требуется время, которого нету........:)

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted (edited)

В таком случае, могу дать 2 совета по поводу миссии:

 

1) Заместо того, чтобы для одного звена писать по 4 отдельных блока правил, в каждом из которых 4 пункта проверки, и меняется лишь последнее, в котором указывается, какой конкретно объект в зоне - используй триггер "Часть группы в зоне". Т.е. у тебя это будет выглядеть так:

1. Ты в зоне

2. Скорость ниже, чем ХХХ

3. Высота ниже, чем ХХХ

4. Часть группы в зоне (указываешь звено).

В п. 4. будет проверка на наличие каждого из самолетов звена в определенной зоне. И если любой из этих 4-ех залетит в зону - сработает твой триггер. Эта самая "часть группы в зоне" уменьшает твой блок правил в 4 раза почти. Меньше мороки.

 

2) Где-то в соседней теме, мы обсуждали, как игра просчитывает триггеры. И пришли к мнению, что блок правил проверяется сверху-вниз по порядку. Т.е., если первое условие невыполнено, то игра не будет проверять, выполнено ли второе, третье, четвертое и т.д. Если первое выполнено - будет проверять следующее. В твоей миссии, игра с самого начала проверяет наличие ВСЕХ звеньев, что есть в миссии, в зоне они сейчас или нет. Т.е., если у тебя, к примеру, в игре 5 звеньев по 4 самолета, игра проверит где находится каждый самолет из звена №1 и попадает ли он в определенную зону или нет. Сразу же потом проверяет наличие каждого из самолетов звена №2, в зоне оно или нет. и т.д. Грубо говоря - ест ресурсы сервера. А проверка происходит каждую секунду .В связи с этим, рекомендую сделать установку флага на каждое уничтожение звена самолетов противника. т.е.:

ОДИН РАЗ - ГРУППА РАЗБИТА (Звено МиГ-15) - ФЛАГ УСТАНОВИТЬ (1)

ОДИН РАЗ - ГРУППА РАЗБИТА (Звено МиГ-21) - ФЛАГ УСТАНОВИТЬ (2)

ОДИН РАЗ - ГРУППА РАЗБИТА (звено F-86F) - ФЛАГ УСТАНОВИТЬ (3)

 

А логика правил будет выглядеть следующим образом (к примеру)

ОДИН РАЗ - Твоя скорость ниже, чем ХХХ \ Твоя высота ниже, чем ХХХ \ Ты в зоне \ Часть группы в зоне (звено МиГ-15) - срабатывает сирена.

Тут ты воюешь, всех героически побеждаешь. Звено МиГ-15 разбито - ставится флаг (1). Затем:

ОДИН РАЗ - Флаг истинен (1) \ Твоя скорость ниже, чем ХХХ \ Твоя высота ниже, чем ХХХ \ Ты в зоне \ Часть группы в зоне (МиГ-21) - срабатывает сирена

Ты опять всех побеждаешь, сбиваешь звено МиГ-21, в результате чего ставится флаг (2), затем:

ОДИН РАЗ - Флаг истинен (2) \ Твоя скорость ниже, чем ХХХ \ Твоя высота ниже, чем ХХХ \ Ты в зоне \ Часть группы в зоне (F-86F) - срабатывает сирена

 

ВАЖНО: главное, чтобы проверка флага стояла всегда самой первой в каждом блоке правил

 

Для чего это нужно? В данном случае, игра с самого начала будет проверять только лишь наличие каждого самолета из звена МиГ-15 в определенной зоне. Все остальные звенья будут проверяться не будут, т.к. первой стоит проверка флага, т .к. звено МиГ-15 еще не разбито - Флаг №1 ложен. А значит, проверять наличие каждого самолета из звена МиГ-21 и F-86F игра не будет, тем самым, значительно экономя ресурсы сервера. Игра проверит только "истинен или ложен флаг №1" И т.к. он ложен, он не будет тратиться на проверку тех других ресурсоемких правил, что идут после проверки флага.

Edited by Soviet
Posted (edited)

Soviet, БЛАГОДАРЮ!

А наличие истинных флагов в системе, даже если они не работают, как то съедает ресурсы?

Edited by zetetic

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted
если первое условие невыполнено, то игра не будет проверять, выполнено ли второе, третье, четвертое и т.д. Если первое выполнено - будет проверять следующее.

 

Это не совсем так, иначе логика просто не срабатывала бы. Все зависит от логического оператора.

В конструкции "условие 1" И "условие 2" второе условие будет проверятся только при истинности первого.

В конструкции "условие 1" ИЛИ "условие 2" второе условие будет проверятся только при ложности первого.

Posted

Выходит, что каждую конструкцию "условие 1" И "условие 2""условие 1" И "условие 3""условие 1" И "условие 4" надо разделять на отдельные триггеры, а при записи их вместе, в одном окне правил они будут неработоспособны.

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted
Это не совсем так, иначе логика просто не срабатывала бы. Все зависит от логического оператора.

В конструкции "условие 1" И "условие 2" второе условие будет проверятся только при истинности первого.

В конструкции "условие 1" ИЛИ "условие 2" второе условие будет проверятся только при ложности первого.

 

Честно говоря, по поводу твоего условия с ИЛИ в сообщение не до конца понял. Т.е., имеешь ввиду, что если не ставить проверку на флаги, которые ставятся по уничтожению групп самолетов, и оставить миссию в том виде, что она была, то игра не будет проводить проверку ВСЕХ звеньев самолетов, что есть в миссии, в определенной они зоне или нет, а будет производить по порядку? Т.е., если группа №1 не в зоне, то проверяется наличие группы №2 в зоне и т.д. Если же группа №1 в зоне (условие выполнено), то проверяться наличие группы №2 не будет?

Posted
А наличие истинных флагов в системе, даже если они не работают, как то съедает ресурсы?

 

Вот этого не знаю. Видел твой вопрос об этом, но сказать ничего не могу, т.к. сам ждал, что, быть может, кто-нибудь сведущий ответит :). Самому интересно.

Posted
Честно говоря, по поводу твоего условия с ИЛИ в сообщение не до конца понял. Т.е., имеешь ввиду, что если не ставить проверку на флаги, которые ставятся по уничтожению групп самолетов, и оставить миссию в том виде, что она была, то игра не будет проводить проверку ВСЕХ звеньев самолетов, что есть в миссии, в определенной они зоне или нет, а будет производить по порядку? Т.е., если группа №1 не в зоне, то проверяется наличие группы №2 в зоне и т.д. Если же группа №1 в зоне (условие выполнено), то проверяться наличие группы №2 не будет?

 

Да, хороший вопрос.

Вот может быть тогда стоит эти триггеры разделять и отдельно прописывать? Чтобы не заморачиваться.

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted (edited)
Да, хороший вопрос.

Вот может быть тогда стоит эти триггеры разделять и отдельно прописывать? Чтобы не заморачиваться.

 

Не стоит. Потому что если в миссии много триггеров, потом не найдешь нужный. У меня много миссий, в которых, как правило, в блоках правил идет 2 или 3 блока правил через [ИЛИ]. Всегда срабатывали адекватно, ни одной осечки. Можешь сделать свою миссию так, как я сказал, и проверить. Все будет работать с вероятностью в 95%. А 5% оставим на всякий случай :)

 

П.С.: на этом скриншоте, у тебя идет проверка того, что все объекты (все самолеты каждого звена) вне зоны. Для упрощения, можешь использовать так же триггер "Вся группа вне зоны (группа\зона)". Опять же, объем условий в блоках правил упадет в 4 раза.

Edited by Soviet
Posted
Не стоит. Потому что если в миссии много триггеров, потом не найдешь нужный. У меня много миссий, в которых, как правило, в блоках правил идет 2 или 3 блока правил через [ИЛИ]. Всегда срабатывали адекватно, ни одной осечки. Можешь сделать свою миссию так, как я сказал, и проверить. Все будет работать с вероятностью в 95%. А 5% оставим на всякий случай :)

 

П.С.: на этом скриншоте, у тебя идет проверка того, что все объекты (все самолеты каждого звена) вне зоны. Для упрощения, можешь использовать так же триггер "Вся группа вне зоны (группа\зона)". Опять же, объем условий в блоках правил упадет в 4 раза.

 

В принципе, если элемент ИЛИ гарантированно разделяет блоки правил, то лучше писать более компактно.

 

Ещё один вопрос.

ГРАНИЧНЫЙ триггер должен срабатывать только при пересечении окружности зоны. Тот факт, что ЛА уже находится ВНЕ или ВНУТРИ этой зоны не должны приводить к его сработке?

HYPERPC LUMEN_MSI RTX 5070 Ti VENTUS_AMD Ryzen 7 9800X3D_MSI MAG X870 TOMAHAWK_DeepCool LE360 V2_G.SKILL TRIDENT Z5 DDR5  6400MHz, 2x32GB_2TB Samsung 9100 PRO_1000W DeepCool_Microsoft Windows 11 Home

Posted
В принципе, если элемент ИЛИ гарантированно разделяет блоки правил, то лучше писать более компактно.

 

Насколько я знаю и насколько я сам в этом убедился, создавая миссии - именно так и есть. Он разделяет блоки правил, в каждом из которых какие-то свои условия.

 

Ещё один вопрос.

ГРАНИЧНЫЙ триггер должен срабатывать только при пересечении окружности зоны. Тот факт, что ЛА уже находится ВНЕ или ВНУТРИ этой зоны не должны приводить к его сработке?

 

Нет. Что касается конкретно граничного триггера и его работы с триггерными зонами, то картина выглядит следующим образом. Если у тебя стоит такой триггер "ГРАНИЧНОЕ УСЛОВИЕ - ОБЪЕКТ (или вся группа, или часть группы, или часть коалиции) В ЗОНЕ - ЗВУК ВСЕМ (Сирена, к примеру), то:

* Если объект появился вне зоны и потом пересек границу триггерной зоны - сработает сирена. Если объект пересек границу зоны в обратном направлении, т.е. вылетел из нее, триггер не сработает, т.к. проверка стоит на ОБЪЕКТ В ЗОНЕ. Если потом опять залетит, то триггер сработает, т.к. ОБЪЕКТ В ЗОНЕ и так до бесконечности.

* Если Объект появился уже в триггерной зоне, то триггер не сработает, т.к. он проверяет только пересечение границы триггерной зоны, и только при условии, что в нее кто-то влетел, а не вылетел (если таковая проверка не стоит)

* Если объект появился вне триггерной зоны, то, само собой, триггер не сработает.

  • Recently Browsing   0 members

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