XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > StarCraft (только чтение)> Галактическая академия
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

 
Харгард
Epic
offline
Опыт: 7,829
Активность:
Валидатор, угол направления кастера и цели.
Информации по теме не нашел даже на англицком, кто делал нечто подобное без тригеров, чиркните.

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

Делается это так:
1. Отключить в Фильтре Поиска всех владельцев: Игрока, Союзника, Нейтрального и Противника.
2. Добавить во Включаемые значения (Заклинателя).
3. В Место запуска и Расположение выбрать (Целевую единицу).
4. Задать Сектор и Радиус области поиска (90 и 9 соответсвенно). Указать Количество единиц (-1).
5. Указать Оператор сравнения (не тот который в Области!) и требуемое Количество искомых единиц. (Больше 0)

Отредактировано GraTuraL, 30.04.2012 в 11:43.
Старый 25.04.2012, 09:47
Zolden

offline
Опыт: 1,588
Активность:
Могу предположить такую систему.
У цели есть аура, которая ищет по побласти с дугой в 90 градусов, ищет носителя алгоритма A. Этот алгоритм должен быть всегда на кастере. Если цель находит носителя алгоритма А, она на себе включает алгоритм Б. И именно на этот алгоритм будет реагировать валидатор.
Старый 25.04.2012, 15:12
Харгард
Epic
offline
Опыт: 7,829
Активность:
Zolden, не подойдет:
а. Кажется громозким и запутаным
б. Кастер и цель могут быть одинаковыми юнитами, и даже принадлежать одному игроку
в. Целей может быть и несколько
г. Валидатор используется для нескольких абилок
Пытаюсь сделать через валидатор "Подсчет по области" (Enumerate Area), который по легенде, может подсчитывать количество юнитов в регионе.
Текущие настройки:
Расположение (impact location?) - Целевой юнит
Условие: число Юнитов-кастеров в секторе 120* равно 0.
Фильтры поиска: Исключены - на себя, снаряд, смерть неуязвимый.
Флаги: Смещение - развернуть область
Макс кол-во в области: -1
Но что-то или я чего то не доганяю, или он забагован.
Черт. А в примере us.battle.net/sc2/en/forum/topic/1920719562 логика вообще инопланетянская. Что за бред! Как это работает!?
GraTuraL добавил:
Ребят, у кого англ эдитор, сделайте скрин полей валидатора "Enumerate area" с включенными названиями переменных (Ctrl+D)

Отредактировано GraTuraL, 28.04.2012 в 15:35.
Старый 28.04.2012, 13:29
Zolden

offline
Опыт: 1,588
Активность:
чтоб исключить себя, надо в поле "исключаемое+" добавить "кастер"
"оператор сравнения" - больше, "количество" - 0, тогда валидатор будет истинным если в поле поиска будет хоть кто-то
обрати внимание, внутри поля "область+" есть оператор сравнения - это не тот оператор сравнения, который считает юнитов
а чтобы увидеть названия полей по-английски, надо нажать Ctrl+D
Старый 28.04.2012, 17:36
Харгард
Epic
offline
Опыт: 7,829
Активность:
Контрол+Д показывает не англ поля, а название переменных, а они не совпадают.
Оператор сравнения в области знаю, обжигался.

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

Сейчас сделал так.

Включить: кастера
Место запуска и расположение: целевой юнит
Условие: более 0
Фильтр поиска: исключено игрок, союзник, нейтрал, противник (Оо)


Все замечательно работает.
Даже если перед целью юнит того же типа что и кастер.
И даже в область.

Все дело было в фильтре поиска.

Отредактировано GraTuraL, 28.04.2012 в 18:49.
Старый 28.04.2012, 18:38
Zolden

offline
Опыт: 1,588
Активность:
Обычно названия полей в английском редакторе совпадают или близки тому, что мы видим когда включаем режим необработанных данных. Так что можно понять, что имелось в английском туториале.
Тут, кстати, легко запутаться. Ты можешь называть кастером своего колдуна, но если поиск осуществляется целью, то для валидатора кастер - тот юнит, который для твоего колдуна цель.
Уточни, для какого эффекта ты используешь этот валидатор.
Верно ли, что этот валидатор говорит твоему колдуну, на кого кастить? Типа, если цель видит колдуна, то на негно можно кастить?
Если так, то валидатор должен иметь в поле "исключить" все значения, кроме "заклинатель". А конус поиска должен происходить от оцениваемого юнита. Я сейчас попробую это изобразить в редакторе.
Старый 28.04.2012, 19:05
Харгард
Epic
offline
Опыт: 7,829
Активность:
Обычно поля действительно совпадают, но некоторые приходится находить методом тыка. Или интуицией.

Мне нужно было, чтобы сзади, цель получала в 2 раза больше урона.
В реале в абилку вложен эффект сэт с несколькими эффектами урона.
Поиск цели производится в эффекте "урон".
Как оно работает в действительности, мне если честно, не ясно :). Инфы нет, описание полей тоже никакое.

Вот вариант, аналогичный моему.
Спереди зилот наносит обычную атаку - 2 раза по 8 урона.
А сзади - один удар в 32 единицы.
Прикрепленные файлы
Тип файла: sc2map BackStab.SC2Map (14.7 Кбайт, 0 просмотров )
Старый 28.04.2012, 19:43
Zolden

offline
Опыт: 1,588
Активность:
Есть ли у твоего колдуна уникальный атрибут, который можно было бы использовать как фильтр цели?
Старый 28.04.2012, 20:07
Харгард
Epic
offline
Опыт: 7,829
Активность:
Нет.
Более того, кастер может быть таким же юнитом, как и цель, они оба могут принадлежать одному игроку, и возможно кастер будет юзать абилку на себя.
Старый 28.04.2012, 20:11
Zolden

offline
Опыт: 1,588
Активность:
Сделал.
В твоём случае можно сделать так: атака колдуна даёт цели алгоритм. Этот алгоритм причиняет цели эффект-набор. Набор содержит эффекты-уроны. Каждый из них имеет валидатор типа подсчёт по побласти. У этого подсчёта по области фильтр цели исключает всех, но поле "включить" содержит "Заклинатель". Таким образом, этот валидатор считает только колдуна. У этого валидатора поля "расположение" и "место запуска" = "исходная боевая единица", чтобы область поиска совпадала с направлением взгляда цели. Валидатор для атаки спереди содержит "больше" 0. А для атаки сзади "равно" 0.
В приведённом мной примере вместо атаки колдуна - аура, которая раздаёт алгоритм всем в радиусе 10. Свидетельство этого инициализирующего алгоритма - наличие линга над головой цели. Этот алгоритм надевает на цель второй алгоритм в том случае, если цель видит колдуна. Об этом свидетельствует бэйнлинг над головой цели.
upd: знаешь, я тут подумал, инициализирующий алгоритм на цель накладывать не надо, можно сразу применять набор с уронами, а у уронов - валидаторы.
Прикрепленные файлы
Тип файла: sc2map do_they_see_the_caster.SC2Map (24.0 Кбайт, 1 просмотров )

Отредактировано Zolden, 28.04.2012 в 20:58.
Старый 28.04.2012, 20:34
Харгард
Epic
offline
Опыт: 7,829
Активность:
Zolden, а есть принципиальная разница, использования для расположения и места запуска Таржет и Соурс юнитов?

С отключением всего и вся в фильтре поиска это конечно, задумано жестоко.
Как и с занесением кастера во включенные. Сам к этому не придешь никогда.

Этот валидатор отлично работает и без инициализации, достаточно его запхать в валидаторы эффекта урона.

Отредактировано GraTuraL, 28.04.2012 в 21:14.
Старый 28.04.2012, 21:03
Zolden

offline
Опыт: 1,588
Активность:
Да, разница есть, но зависит от ситуации использования. Иногда цель и источник - это один и тот же юнит, если идёт каст на себя.
Или, напрмиер, источник и заклинатель - одно и то же для исходного колдуна, а для цели источник - цель, а заклинатель - колдун.
А в случае с поиском цель не определена, так как поиск направлен не на цель, а на область.
Старый 28.04.2012, 21:28
Харгард
Epic
offline
Опыт: 7,829
Активность:
Zolden, ну спасибо тебе. Сам бы не разобрался.
Старый 28.04.2012, 22:19

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 17:48.