HETMAN - Artificial Leader - это модификация которая добавляет в Арму командира/лидера который автоматически может командовать всеми типами юнитов. Разведка, атака, транспортировка отрядов до цели, ремонт поврежденной техники с помощью ремонтных грузовиков и многое другое.
Я хочу совместить режим Контроль Секторов с этой модификацией. У меня есть одна идея и она работает с простыми консольными командами.
Чтобы командир знал какие точки и города ему надо атаковать и удерживать используется модуль "Objective (Simple Mode)" Как только определенное количество юнитов некоторое время находится в радиусе, эта точка считается захваченной. В настройках командира есть опция, которая отключает возможность командиру захватывать точки (Objective (Simple Mode)), но он все равно будет продолжать посылать юнитов в эту точку для захвата(с этой опцией командир это точку никогда не захватит в независимости сколько там будет юнитов)
Моя идея - это разместить "Objective (Simple Mode)" и модуль ванильного сектора рядом. Каждый раз, как только какой-нибудь сектор был захвачен должен сработать скрипт (наверное, это должно называться event handler) Скрипт должен проверить все сектора на карте и запомнить какая сторона контролирует какой сектор.
Есть 3 командира: "LeaderHQ" - Blufor, "LeaderHQb" - Opfor, "LeaderHQc" - Independent
После того как скрипт соберет данные от том какая сторона контролируют какой сектор он должен вставить в этот код названия секторов выполнить его.
(group LeaderHQ) setVariable ["rydhq_taken", []]; (group LeaderHQb) setVariable ["rydhq_taken", []]; (group LeaderHQc) setVariable ["rydhq_taken", []];
Для примера, если если сектор Alpha захвачен Синими - а все остальные еще нейтральные, скрипт должен выполнить эту команду
(group LeaderHQ) setVariable ["rydhq_taken", [Alpha]]; (group LeaderHQb) setVariable ["rydhq_taken", []]; (group LeaderHQc) setVariable ["rydhq_taken", []];
Aplha захвачен Синими, Bravo красными, Charlie независимыми
(group LeaderHQ) setVariable ["rydhq_taken", [Alpha]]; (group LeaderHQb) setVariable ["rydhq_taken", [Bravo]]; (group LeaderHQc) setVariable ["rydhq_taken", [Charlie]];
Все 3 сектора захвачены синими
(group LeaderHQ) setVariable ["rydhq_taken", [Alpha,Charlie,Bravo]]; (group LeaderHQb) setVariable ["rydhq_taken", []]; (group LeaderHQc) setVariable ["rydhq_taken", []];
Я протестировал эти коды в консоле - все работает без каких-либо проблем, командиры реагируют на эти команды.
Я обожаю эту модификацию, она позволят очень легко создавать динамичные и непредсказуемые сценарии с юнитами из любого мода или DLC.
Я буде очень рад и благодарен если мне кто поможет с этим скриптом, мое понимание скриптинга околонулевое сам я такой скрип никогда не напишу.
Спасибо !
Сообщение отредактировал ArMoc: 07 March 2022 - 11:32