2

» WarCraft 3 / "пинг" по юнитам.

quq_CCCP и Melissa предложили самые простые и эффективные варианты. С флагом будет хорошо заметно. Тимколорные флаги наверняка есть здесь на сайте в моделях. Сам флаг создать так, как написал 16GB.
Вроде на вид условие корявое. И все игроки в течение цикла попадают под GetLocalPlayer(). Хотя, может показалось. При создании просто создать эффект функцией, которую напечатали в первом сообщении. А в функции, которая предложена, перебираются все мины на карте.. Это периодик? Даже если мины создаются всего 1 раз за игру целой пачкой, всё равно проще отдельно каждой мине создавать спецэффект сразу при создании.
2

» WarCraft 3 / Возможно ли триггерно добавлять способности предметам?

То - ДА - это можно сделать. каждый предмет делаешь структурой. его свойства забиваются в структуру.
То есть при создании предмета происходит случайная генерация его свойств с учётом определённого алгоритма (уровня предмета, его возможных свойств, удачливости героя и т.п.). И эти свойства записываются в структуру предмета. В таком случае варианты возможных свойств хоть и являются конечным числом, но будут огромными по своему разнообразию. В итоге в РО достаточно будет сделать предмет "Кожаная броня". А то, что она будет давать, сгенерируется уже по факту. Это я просто для пояснения напечатал, если вдруг было непонятно, что я предложил.
2

» WarCraft 3 / Мультиборд,либо система.

Принятый ответ
Отслежка через событие UnitDamaged. Записывать в структуры, либо тупо в хэш.
При получении урона обновлять мультиборд. Лечение делается триггерно. И так же тупо и без всяких премудростей обновляется в мультиборде.
ДПС - урон в секунду - рассчитывается через искусственные временные границы начала и конца битвы. В Kingdom of Kaliron так сделана стата ДПС
2

» WarCraft 3 / Возможно ли триггерно добавлять способности предметам?

Принятый ответ
Если надо, как в Диабло - типа выпал шлем. Он может давать [+1 к защите], а может [+ 3 к мане и + 1 к защите] и т.д. до бесконечности....
То - ДА - это можно сделать. каждый предмет делаешь структурой. его свойства забиваются в структуру. При получении предмета происходит модификация урона/защиты/скорости атаки/хпрегена и тд. (смотря, что даёт). Для этого нужна система модификаций. На xgm вроде бы были такие. Опять же такая система есть в YouTD, в devel.Kit, который есть на оф.сайте карты. Когда предмет убирается - бонусы снимаются. всё.
Описание свойств предмета получать Тексттагом или любым другим способом. Можно, как в Kingdom of Kaliron сделать. Типа система инвентаря. В принципе, в варике много чего можно сделать.
2

» WarCraft 3 / Поглощение урона вызванным существом

при создании этого демона, можно отследить, короче, кастера, дать лично ему событие "юнит получает урон" (если система отлова по сути не нужна). и сделать так, как написал Obelick в первом ответе: просто лечить вызывателя, и наносить урон демону.
2

» WarCraft 3 / Loop и индекс

Принятый ответ
есть событие - юнит получает урон. в нём отслеживается как жертва, так и наносящий урон. можно хоть через хэш, хоть через структуру Юнита записывать всё, что угодно. Кто от кого конкретно сколько получил урона, кто кому сколько нанёс, сколько провисел на ком-то бафф яда и т.п. (Сначала был loop, а теперь периодический триггер). Каждые N секунд, перебираешь всех юнитов в массиве или списке, и отслеживаешь всё, что надо.
Структура - Unit. У неё есть двойной список с юнитами и уроном от яда (полученным или нанесённым - зависит от того, у кого будет этот список - у жертв или у тех, кто наносит яд). Типа DoubleList. В DoubleList есть элементы DoubleElement. В каждом таком элементе записаны unit и real (урон от яда от этого юнита). При получении урона от яда перебирается список, если юнит уже есть, урон от него (или ему) прибавляется. Если нет, то создаётся новый элемент с новым юнитом.
Периодически у нужных юнитов эти списки перебираются. Всё.
2

» WarCraft 3 / Туман войны и черная маска

Принятый ответ
Пробовать не хочу, но предложу вот, что:
Если цель - защитить карту от подглядывания. То при старте игры или инициализации (если получится) можно запустить триггер с условием Вид: карта разведана is Set == да (процитировал текст условия из Гуи), действие - замкнутый цикл, или вызвать фатальную ошибку, вылет и т.д. Суть в том, что когда игрок запустит карту с такими параметрами, то тупо закрашить варик.
2

» WarCraft 3 / Плавающий текст

Принятый ответ
Нюх подсказывает, что отсутствуют локальные переменные... и всё делается через LastCreatedFloatingText, и возможно даже все тексты при создании заносятся в одну глобальную переменную.
2

» WarCraft 3 / Loop и индекс

не пытайся сломать людям мозг невнятными вопросами. либо тупо не поймут, либо пошлют. у юнитов есть UserData, есть PointValue. Есть ID. Какой индекс у юнита??
2

» WarCraft 3 / Применение спела через цифровой код

Принятый ответ
getSpellAbilityId получает этот код. типа 'A0=1' . он и отображается при ctrl+d. другого, вроде-то и нет. Чтобы написать его в 4-символьном виде нужна функция, переводящая это число в строчку. А иначе напишется число вроде 17839483. GetUnitCurrentOrder получает текущий приказ. Напрямую приказать использовать способность по её ID вроде нельзя было никогда. То есть можно отлавливать приказ и приказывать его же в нужной ситуации.
Если же вопрос заключается тупо в том, чтобы создать триггер с применением уже заранее известной способности, то это делается через приказ. То есть Issue разные Order. Приказ настраивается и смотрится в редакторе объектов у самой способности.
А так кроме ID у способности нет никаких цифровых кодов больше.
2

» StarCraft 2 / Ищу карту

Кстати, такие карты тоже не встречал. Чтобы именно melee.
2

» WarCraft 3 / вопрос

Короче, если "структуры", то можно юниту приказывать бегать по точкам маршрута. При этом все точки маршрута занесены в массив для каждого юнита. А лучше в список.
struct Unit
	static List locs - в него заносятся все точки - в моём примере это переменные WayLoc
	List locsToCheck - в него заносятся точки, которые ещё не проверены. Изначально в него заносятся все точки
использую wurst, так что забыл, как точно записывается в vJass.
В структуре WayLoc будет:
struct WayLoc
	real x
	real y
	WayLoc next
	WayLoc prev
	rect r - регион, к примеру, который будет привязан к точке.
next и prev - это след. и предыд. точки маршрута.
Когда юнит забегает в определённый радиус от точки, или тупо в какую-то область, точка убирается из списка для проверки, и юнит бежит дальше по маршруту туда, где ещё не проверил. Стартует таймер - через какое-то время точка опять отмечается как непроверенная - например, 30 секунд. Т.е. добавляется в список для проверки. И юнит так и бегает, проверяя точки. Если маршруты могут разветвляться, то можно сделать парочку переменных next1 и next2 и т.д. Вот так вполне реально можно сделать своего рода систему поиска с учётом мест, которые уже проверены. Если систему развивать, то можно сделать проверку на перекрёстках оптимального места для поиска на основе количества непроверенных точек на каждом участке пути.
В итоге, система получится очень простая. Зато интересная.
2

» WarCraft 3 / Области перехода.

чтобы не плодить триггеры, можно сделать массив областей - индекс массива будет соответствовать ID игрока. У красного он - 0, у Синего - 1 и т.д. В итоге просто при входе в область, юнит перемещается в область из массива. Индекс ставится по владельцу.
2

» WarCraft 3 / Поглощение урона вызванным существом

Принятый ответ
самая лучшая, на мой взгляд, связка - это отлов урона + список событий, привязанный к каждому юниту. Так сделано в YouTD, к примеру. Там даже карта есть DevKit (для создания своих башен) с открытым кодом всех систем. Там можно посмотреть, как это сделано. А так - лучше не бежать от jass, как чёрт от ладана, а сразу разобраться в нём. я в своё время разобрался в нём за пару дней, хотя к программированию вообще не имею никакого отношения. А можно делать всё в wurst сразу, а не в vjass. Короче - привычка делать всё на гуи принесёт потом проблемы, если из карты что-то приличное сделать хочется, потому что всё равно придётся всё переделывать. Да и чё такого страшного в джассе? Душу вроде никому продавать не надо за его изучение.
2

» WarCraft 3 / Нужна наработка

Если инициатива сделана на основе списка с next, prev, то при оглушении переносишь в конец списка или на какое-то конкретное место. Собственные криты можно сделать при отлове урона. Полученный урон умножается на коэффициент крита и дополнительный урон наносится отдельно с отключенным триггером отслеживания урона. Отравление - каждому юниту в его структуру (vjass) или класс (wurst) добавляешь 2 значения - урон от яда (X) и количество шагов (Y). При каждом ходе наносится урон X, если Y > 0 и делается Y--. Если нет желания использовать vjass, то сделать через хэштаблицу эти записи.
2

» WarCraft 3 / DisplayTimedTextToPlayer - объяснте пожалуйста. DotA

Принятый ответ
Показывает текст для определённого игрока и в отличие от DisplayTextToPlayer - на определённое время. Текст появляется на экране, а не на земле. При x = 2 и y = 1 у меня текст в правой части сверху, при х = 0, y = 0 - в левой снизу.
2

» WarCraft 3 / Буфер

Принятый ответ
В триггерах Return перед всеми действиями нужно добавить действие Буфер игры - Reload all game cache data from disk
После этой манипуляции у меня всё заработало. Проверьте.
Загруженные файлы
2

» WarCraft 3 / Воскрешение нейтрально-враждебного героя

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