PT153, ну это понятно. если всем дать, то тогда они через друг друга проходят. Я просто думал юнит сможет ходить через всех, но это не так, через тех, у кого нет этой абилы, не пройдешь
BrEd Pitt, у меня карта тестовая, абсолютно пустая, в ней ничего нет.
просто взял лучницу и дал это огненное дыхание. пробовал через панду, все такое же. Выяснил короче, что не работает анимация дистанционной атаки: Огненное дыхание (Дальний бой). Заменил на ледяное дыхание (дальний бой) заработало.
Дело в
Abilities\Spells\Other\BreathOfFire\BreathOfFireMissile.mdl
Пробовал дать эту анимацию в абилке "Ледяное дыхание" не работает. Вывод в этой моделе Maniac_91, на максимуме quq_CCCP, не в этом деле скорее, на других тоже ничего
Что это могло быть. У вас она работает? мб дело в варике
PT153, у меня даже через обычных не проходит, обходит их.
Единственное. что выяснил случайно: Моя тень не может проходить насквозь юнитов, а вот другие юниты могут через мою тень ходить.
вот галочка "ближний бой", "дальний бой (третья галочка)", "заклинание" работают. А вторая галочка "дальний бой" нет
проверял на silence (безмолвие 'ACsi'), на винные пары
quq_CCCP~~, у рабочего стоит в целях второй атаки "дерево". Поставил в ро в атаке - "только 2 атака". Заставил бота накинуть дебафф. Скрывает эту кнопку "атаковать"/"стрелять в точку (артиллерия)". Но рубить дерево ему не мешает из-за способности "рубить, добывать ресурсы". На обычных юнитов с автокастовыми орбами не работает (пробовал огненные стрелы дать лучнице), подходил к нему, кастовал, и ничего такого. ибо дебафф на юнита не накидывает.
PT153, эти точно на проходимость через всех юнитов влияет?
просто тестировал, вот что получилось
Постоянная невидимость 'Apiv' - есть одно поле "Автонахождение целей атаки" и указано время ухода в инвиз. Используется Духом Волка третьего уровня.
Дух(видимый) 'Aeth' - имеет только два поля "Иммунитет к эффектам трансформации" и "Не блокирует здания". Используются невидимыми вардами (духами наблюдателями). Эта пассивка не делает юнита невидимым, а просто добавляет юниту настройки (иммунитет к трансформации, и блокировка здании). Наделяет невидимостью активная способность "Невидимый страж" 'Aeye' автоматически добавляет вызванной боевой единице постоянную невидимость.
Дух 'Agho' - имеет все три поля. Используется тенью нежити, которая не умеет даже атаковать.
"Данные - Автонахождение целей атаки" - эта настройка позволяет нападать на противника самостоятельно как заметит противника (если у него включена атака), и при этом придеться выйти из инвиза. Обычно юниты, находящиеся в инвизе не нападают сами (нужно отдавать приказ на атаку и прочее). Ищет противников в поле видимости юнита. Пример скила "Постоянная невидимость".
"Данные - Имунитет к эффектам трансформации" - невидимого юнита нельзя будет мини-морфнуть в овечку или курицу (полифорф, сглаз)
"Данные - Не блокирует здания": "да" - на этом юните можно построить, "нет" - не даст построить (Если у него есть ноги, отойдет. тестировал, и точно не мог понять, что значит это).
Кроме того, есть еще параметр отвечающий за время ухода в инвиз: в этом спеллах 'Apiv' и 'Agho' найди параметры Длительность: нормальная и Длительность воздействия: герой (там изначально стоит 2), меняй как тебе надо. Если поставить ноль, остаются невидимыми, даже, когда атакуют.
короче ничего не делает, у рабочего стоит в целях второй атаки "дерево". Скрывает эту кнопку "атаковать". Мне просто неведомо, что делает. Мб близзарды забыли
Короче за смешение камеры с помощью пробела отвечает исходная стартовая локация игрока StartLocation. Если не ошибаюсь. А вот придется как-то извращаться с этим, типа передвигать. =( пробуй наработку найти как советовали выше, посмотреть как там
раскрыть
native DefineStartLocation takes integer whichStartLoc, real x, real y returns nothing
native DefineStartLocationLoc takes integer whichStartLoc, location whichLocation returns nothing
native ForcePlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing
native GetPlayerStartLocation takes player whichPlayer returns integer
constant native GetStartLocationLoc takes integer whichStartLocation returns location
constant native GetStartLocationX takes integer whichStartLocation returns real
constant native GetStartLocationY takes integer whichStartLocation returns real
native SetPlayerStartLocation takes player whichPlayer, integer startLocIndex returns nothing
с чего ты взял что парящий получает меньше урона? На уменьшение урона влияют константы (там таблицу смотри: тип атаки по типу брони), защита, способности-резисты
SNART, утечка в BJ-функции. ты обо всех видимых утечках позаботился. А вот группу не удалил, не обнулил локалки. Это где "Юниты в радиусе в .... " - это группа создается при каждом вызове этой команды, и остается не удаленной, Не обнуляются внутри локалки NazarPunk, ежесекундно утекает группа GetUnitsInRectAll(GetPlayableMapRect()), так как каждый раз создается новая группа, и будет огромное кол-во срзданных групп, и локалки не обнуляются
хотя никогда не пользовался set bj_wantDestroyGroup = true - надо видеть, где это работает ссылка
отключай паффинг через триггеры или в ро поставь тип движения = нет. может проходить через все преграды (декор, юнит, здания, ланд). есть еще винд волк у орка-самурая (время захода в инвиз = -1, и тогда он станет видимым, но может проходить сквозь юнитов. но через декор и здания не может)
если нужно чтобы был невидимым
смотрите у призываемого волка Орды 3 уровня, или у нежити у тени "дух". как сделать юнита невидимым даже при атаке? нужно ставить время захода в инвиз на ноль (см. у абилки длительность).
если нужна просто прозрачность, а не невидимость
меняем цвет в триггерах, там альфа отвечает за эту прозрачность. в разделе анимация
ну на способности влияет на некоторые (вы уже описали)
есть еще например
Ледяная броня 'AUfa'/'AUfu' (Aufu - автокастовая, а Aufa - обычная) - окружает указанного юнита ледяным щитом, которая повышает защиту. Автоприменение работает только при атаке противника на вас, накидывая защитную броню. Может движение окружающих поблизости противников сковывать (точнее замедляются все их движения, по аналогии со способностью "Сила льда"). Только "замедление" от холода накидывается только тогда, когда противник атакует вас (иначе сколько не бегай около враждебных, не обтирайся об них, замедления не получают). И еще это работает только на воинов ближнего боя (радиус действия не указан, но работает на атакующих), по логике вещей издалека лучники не могут получать ущерб от холода, далеко от него типа, на самом деле насколько далеко или близко расположен - это не играет (у атакующих должен быть тип оружия "обычная", не путать с типом атаки). Замедление нельзя указать в абилке, но можно в константах "Заклинание - снижение скорости атаки от холода" и "Заклинание - снижение скорости движения от холода".
тип оружия смени на "дальний бой" (не путать с типом атаки)
думал, что за анимацию атаки отвечают (снаряды и прочее), Но заметил это еще у некоторых пассивных абилок мб не работать
Разрывные снаряды - работает только с типами оружия "мгновенное" (тогда не отображается полеты снарядов, заменяются на снаряды абилки) и "обычное" (для милишников, снаряды тоже не отобразятся). С остальными не работает. Милишник сможет сплэшовать
Картечь - только с типом оружия артиллерия, добавляет кнопку стрелять по местности, похожа на разрывные снаряды
ракеты - тип оружия дальний бой, тогда даже милишник сможет в ближнем бою пускать ракеты
горючая смесь - тип оружия артиллерия, дальний бой, снаряд (взрыв)
и другие, не проверял и не находил пока
а почему так? отравленное оружие настраивает на сколька понизить в %. а сколько не ставь, все одно. мб что-то не правильное. абилка что ли бракованная
все врубился, понял формулу: скорость = Текущая скорость - (Текущая скорость * процент снижения)
слишком большие проценты ставил, в результате не видел, и выходило ниже скорость. А так как стоят ограничения в скорости (мин = 150, макс = 400 в константах), то упиралась в минималку, и не видел изменения, из-за чего ошибочно начал теории строить.
в абилках "отравленное оружие" и "яд" дриады - поля "Данные - Фактор скорости атаки" и "Данные - Фактор скорости перемещения" - перепутаны, в "фактор скорости атаки" указывают понижение в процентах скорости движения, а в "фактор скорости перемещения" указывают понижение в процентах скорости атаки .
поиском пользоваться не умеешь? не раз задавали этот вопрос. там и нет строкового приказа
дебагом попробуй выведи ид-приказ
есть Id-номер приказа, все строковые приказы - имеют номера ид приказов
у портала есть классификация "может ходить", предполагалось что может ходить сквозь, но что-то не то. Видимо что-то другое. У портала есть текстура пути, она вот и позволяет ходить сквозь портала.
еще стандарт
тут создаются две области. а в самом редакторе можно установить порт - куда портироваться, тут выбирает область, а портируемся в центр области.
Alexey103, лучше это на сайт закинуть. а то ссылка на файл и сам файл со временем затираются/удаляются. Но что-то уникального нету ничего.
поиск на сайте вообще не работает (работает, но криво, что-то какие-то темы умышленно пропускает или не находит. бывает нубы задают вопросы, и чтобы мне заново не отвечать ищу и скидываю ссылку на эту тему, и не могу найти. хотя точно помню названия. Приходится в своих же комментах искать тему). работает норм только на форуме. чтобы что-то найти нужно в гугл вбивать "xgm.guru перевод карты"
разве в стандартном стальном вихре притягиваются? а не все, не притягиваются, проверил. значит триггерный аналог будет притягивать. и что за коэффициент 0.00128. Понял. Этот множитель уменьшает расстояние, чем больше расстояние тем больше вычитает. Необычная и интересная фишка: чем объект ближе, тем медленнее он вращается и притягивается.
мб поможет
еще вот это
еще это
да автор хочет все готовое. сам понимать и учиться не хочет, и поэтому сделать не сможет. еще поиском юзать не хочет. вбей это название, посмотри. есть кстати раздел - заклинание на заказ
этот спел использует хитрую математику отличающую от типичного движения. Это JASS
Ax, Ay - координаты точки кастера
Cx, Cy - координаты точки цели (если цель-юнит пустой, берем точку)
создаем двух даймиков: lAxe1 и lAxe2
создаем два таймера: lTimer1 и lTimer2 и аттачим на их хэндлы все: ID1 и ID2. хэндл - номер объекта
даймиков то мы создали, теперь нужно нам получить начальные точки смещения даймиков (смещаем 300 вперед по углом 45 градусов. одного влево +45, другого вправо -45):
set angle = Atan2(Cy-Ay,Cx-Ax) Аркстангенс, угол между двумя точками, возвращает радианы
координаты для первого даймика
set x3 = (Ax+300*Cos(angle+45))
set y3 = (Ay+300*Sin(angle+45))
координаты для второго даймика
set x4 = (Ax+300*Cos(angle-45))
set y4 = (Ay+300*Sin(angle-45))
получаем и смещаем даймиков под эти координаты
даем им абилку ворона - чтоб летал, и немножко приподнимаем (для красоты видимо, топоры летят же)
теперь сохраняем в хэш-таблицу данные для каждого даймика (вы должны заранее инициировать ее)
сохраняем кастера
самого даймика
координаты кастера (могли и не сохранять, можно напрямую у кастера брать нативками корды. но кастер может переместиться, и позиция будет не та, и вся система может сбиться, поэтому запоминаем позицию каста)
координаты цели (конечная цель, тоже самое, чтоб не сбилось)
координаты даймика x3, y3 или x4, y4 в зависимости от того какого даймика храним
сохраняем единицу (a=1). так понял это с каждым тиком таймера на 0.2 становится меньше или больше. Короче это не совсем радиан, как я думал, а множитель. Такая хитрая математика. Пропорция короче. 1.00 = 100% в одну сторону становится меньше, а когда дойдет до нуля, то обратно будет увеличиваться до 1.
сохраняем угол. Если даймик был смещен слева под углом 45, то сохраняем -45 (короче будем вычитать). Если второй даймик был смещен слева под углом -45, то сохраняем 45 (короче будем прибавлять).
сохраняем группу g. (для работ и вычислении всяких)
сохраняем логическую истину. RD2 = true
все сохранили, запускаем периодичные таймеры
каждый раз/через каждый период времени запускаем функцию
загружаем из хэш-таблицы по хэндлу таймера:
юнита и даймика, группу
A - точка кастера (не текущая). Ax, Ay - координаты
C - точка цели. Cx, Cy - координаты
B - третья точка = смещенная точка Cx, Cy - координаты (это координаты x3, y3 или x4,y4)
a - процент выгружаем из хэша (он каждый раз меняется)
RD2 - логическая для проверки, истина говорит, что движемся к цели. когда дойдет до цели, мы изменим на ложь, перевернем даймиков. И теперь будем двигать обратно к цели
далее вычисления
b = 1 - a
новые координаты ниже, смещаем по этим координатам. Меня вот эти ниже заинтересовали, очень похоже на квадрат суммы, откуда эти вычисления координат. порылся, ничего не нашел.
по этим координатам выделяем в группу, наносим урон, выделяем деревья и уничтожаем их
далее в конец каждый раз проверки идут
function RMaxBJ takes real a, real b returns real
if (a < b) then
return b
else
return a
endif
endfunction
//функция PAI вычисляет расстояние
function PAI takes real x1,real y1,real x2,real y2 returns real
return SquareRoot(((x1-x2)*(x1-x2))+((y1-y2)*(y1-y2)))
endfunction
//тут RE2 - выбирает макс. время между полученным и 0.4 сек. короче расстояние PAI поделенное на скорость 1300.
local real RE2=RMaxBJ(PAI(Ax,Ay,Cx,Cy)/1300,0.4)
если RD2 истинно, то изменяем и сохраняем только "a", иначе, еще и кастера
если a становится меньше нуля, то переворачиваем даймиков и RD2 = false
if(a<0 and RD2)then
call SaveBoolean(udg_Hash,(id),(291),(false)) //это RD2
//пересохраняем координаты третьей точки, короче та что смещается под углом
//тут изменились координаты, так как мы прибавили или убавили угол на 45
call SaveReal(udg_Hash,(id),(288),((Ax+300*Cos(Atan2(Cy-Ay,Cx-Ax)+(LoadReal(udg_Hash,(id),(292)))))*1.0))
call SaveReal(udg_Hash,(id),(289),((Ay+300*Sin(Atan2(Cy-Ay,Cx-Ax)+(LoadReal(udg_Hash,(id),(292)))))*1.0))
endif
» WarCraft 3 / Почему у огненного дыхания пропало пламя?
» WarCraft 3 / Есть здесь кто в формулах движения даммиков шарит?
» WarCraft 3 / Как сделать прозрачный (бестелесный) юнит?
Ред. MpW
» WarCraft 3 / Почему у огненного дыхания пропало пламя?
просто взял лучницу и дал это огненное дыхание. пробовал через панду, все такое же. Выяснил короче, что не работает анимация дистанционной атаки: Огненное дыхание (Дальний бой). Заменил на ледяное дыхание (дальний бой) заработало.
Дело в
Abilities\Spells\Other\BreathOfFire\BreathOfFireMissile.mdl
Пробовал дать эту анимацию в абилке "Ледяное дыхание" не работает. Вывод в этой моделе
Maniac_91, на максимуме
quq_CCCP, не в этом деле скорее, на других тоже ничего
Что это могло быть. У вас она работает? мб дело в варике
Ред. MpW
» WarCraft 3 / Как сделать прозрачный (бестелесный) юнит?
Единственное. что выяснил случайно: Моя тень не может проходить насквозь юнитов, а вот другие юниты могут через мою тень ходить.
Ред. MpW
» WarCraft 3 / Безмолвие, туман
проверял на silence (безмолвие 'ACsi'), на винные пары
Ред. MpW
» WarCraft 3 / Безмолвие, туман
Ред. MpW
» WarCraft 3 / Безмолвие, туман
Ред. MpW
» WarCraft 3 / Как сделать прозрачный (бестелесный) юнит?
Дух(видимый) 'Aeth' - имеет только два поля "Иммунитет к эффектам трансформации" и "Не блокирует здания". Используются невидимыми вардами (духами наблюдателями). Эта пассивка не делает юнита невидимым, а просто добавляет юниту настройки (иммунитет к трансформации, и блокировка здании). Наделяет невидимостью активная способность "Невидимый страж" 'Aeye' автоматически добавляет вызванной боевой единице постоянную невидимость.
Дух 'Agho' - имеет все три поля. Используется тенью нежити, которая не умеет даже атаковать.
"Данные - Имунитет к эффектам трансформации" - невидимого юнита нельзя будет мини-морфнуть в овечку или курицу (полифорф, сглаз)
"Данные - Не блокирует здания": "да" - на этом юните можно построить, "нет" - не даст построить (Если у него есть ноги, отойдет. тестировал, и точно не мог понять, что значит это).
Ред. MpW
» WarCraft 3 / Безмолвие, туман
Ред. MpW
» WarCraft 3 / Как отследить нажатие пробела?
Ред. MpW
» WarCraft 3 / Странное условие
» WarCraft 3 / Парящий тип передвижения и получаемый ими урон от АОЕ магии
Ред. MpW
» WarCraft 3 / Парящий тип передвижения и получаемый ими урон от АОЕ магии
Ред. MpW
» WarCraft 3 / На счёт утечек памяти
NazarPunk, ежесекундно утекает группа GetUnitsInRectAll(GetPlayableMapRect()), так как каждый раз создается новая группа, и будет огромное кол-во срзданных групп, и локалки не обнуляются
хотя никогда не пользовался set bj_wantDestroyGroup = true - надо видеть, где это работает
ссылка
Ред. MpW
» WarCraft 3 / Как сделать прозрачный (бестелесный) юнит?
Ред. MpW
» WarCraft 3 / Ледяные стрелы на войсках ближнего боя
есть еще например
Ледяная броня 'AUfa'/'AUfu' (Aufu - автокастовая, а Aufa - обычная) - окружает указанного юнита ледяным щитом, которая повышает защиту. Автоприменение работает только при атаке противника на вас, накидывая защитную броню. Может движение окружающих поблизости противников сковывать (точнее замедляются все их движения, по аналогии со способностью "Сила льда"). Только "замедление" от холода накидывается только тогда, когда противник атакует вас (иначе сколько не бегай около враждебных, не обтирайся об них, замедления не получают). И еще это работает только на воинов ближнего боя (радиус действия не указан, но работает на атакующих), по логике вещей издалека лучники не могут получать ущерб от холода, далеко от него типа, на самом деле насколько далеко или близко расположен - это не играет (у атакующих должен быть тип оружия "обычная", не путать с типом атаки). Замедление нельзя указать в абилке, но можно в константах "Заклинание - снижение скорости атаки от холода" и "Заклинание - снижение скорости движения от холода".
Ред. MpW
» WarCraft 3 / Ледяные стрелы на войсках ближнего боя
думал, что за анимацию атаки отвечают (снаряды и прочее), Но заметил это еще у некоторых пассивных абилок мб не работать
Разрывные снаряды - работает только с типами оружия "мгновенное" (тогда не отображается полеты снарядов, заменяются на снаряды абилки) и "обычное" (для милишников, снаряды тоже не отобразятся). С остальными не работает. Милишник сможет сплэшовать
Картечь - только с типом оружия артиллерия, добавляет кнопку стрелять по местности, похожа на разрывные снаряды
ракеты - тип оружия дальний бой, тогда даже милишник сможет в ближнем бою пускать ракеты
горючая смесь - тип оружия артиллерия, дальний бой, снаряд (взрыв)
и другие, не проверял и не находил пока
Ред. MpW
» WarCraft 3 / Скорость передвижения в мем хаке
скорость = Текущая скорость - (Текущая скорость * процент снижения)
слишком большие проценты ставил, в результате не видел, и выходило ниже скорость. А так как стоят ограничения в скорости (мин = 150, макс = 400 в константах), то упиралась в минималку, и не видел изменения, из-за чего ошибочно начал теории строить.
Ред. MpW
» WarCraft 3 / Как заставить дамми применить способность
дебагом попробуй выведи ид-приказ
есть Id-номер приказа, все строковые приказы - имеют номера ид приказов
попробуй через руну, можно триггерно дать руну
GetTriggerUnit() - цель
» WarCraft 3 / Скорость передвижения в мем хаке
Ред. MpW
» WarCraft 3 / Порталы
- даешь специальную способность портала или заранее отдай
Awrp (Перемещение через портал)- есть команды триггерные (нативки) - куда телепортировать и на включение
call WaygateSetDestination(u, GetUnitX(target), GetUnitY(target)) устанавливаем точку телепортаcall WaygateActivate(u, true) тут включаем
Ред. MpW
» WarCraft 3 / Перевод карты
Ред. MpW
» WarCraft 3 / Движение по спирали
Ред. MpW
» WarCraft 3 / Как сделать спелл Wild Axes?
еще вот это
еще это
да автор хочет все готовое. сам понимать и учиться не хочет, и поэтому сделать не сможет. еще поиском юзать не хочет. вбей это название, посмотри. есть кстати раздел - заклинание на заказ
- set x3 = (Ax+300*Cos(angle+45))
- set y3 = (Ay+300*Sin(angle+45))
координаты для второго даймика