Хочется реализовать механику отключения пассивок на время в виде дебафа, на карте жанра Hero Arena.
Посоветуйте как лучше реализовать это механику, при учете того что пассивных навыков довольно таки много. Стоит ли каким-то образом блокировать и отключать предметные способности по типу : критов, баша, вампиризма, сплеша, уклонения или ограничиться только отключением всех триггерных эффектов. Какие есть варианты реализации?
Пример : Silver Edge из доты.
Атака, прерывающая невидимость, дополнительно нанесёт 175 физического урона и отключит пассивные способности жертвы. Длительность эффекта: 4 сек.
Патч War3 1.26 Jass
Переход на Lua не интересует.

Всё просто создаём бафф на основе торнадо, который будет идентификатором что есть наш бафф отключения пасивок, допустим бафф будет B000
Далее создам полностью триггерные аналоги критов, баша, уворота, сплеша. И в условиях их работы ставим GetUnitAbilityLevel(unit,"B000")==0. В качестве идентификатора деффа не обязательно использовать дебафф торнадо, можно просто любую переменную + эфффект над головой.
Можно сделать на любом патче даже на гуи.
Требуется система отлова урона для контроля триггерных пассивок, для начала рекомендую почитать стати
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
10
Bergi_Bear, а если человек захочет 2 таких похожих способности? а если 3? А если пассивок около 40? во всех предлагаешь это условие тыкать?
Все намного проще:
  1. в базу записываешь все пассивки которые есть в игре (по сути во всех норм картах и так такие массивы есть, так что работы прибавиться не должно)
  2. при использовании способности - делаешь проверку по этой базе у цели, запоминаешь в хэш или временный массив их уровень/код и удаляешь у конечной цели
  3. запускаешь таймер на 4 секунды (на крайний случай TriggerSleepAction )
  4. через 4 секунды с помощью тоже же хэша (массива) возвращаешь
Изи, и не надо мудрить с доп условиями во все скиллы
12
Bergi_Bear, Не все стандарт пассивки можно повторить в точности. Я не исключаю что в этом есть больше возможностей.
Bergi_Bear:
Далее создам полностью триггерные аналоги критов, баша, уворота, сплеша.
триггерный вариант уклонения не будет таким же , дело в том , это это подхил - блок урона ( что уже немного другое) будет , а на уклонение в момент прока на цель не будут накладываться модификаторы атаки ,триггерный сплеш тоже не очень тема , при каждой тычке от юнита пикать группы и перебирать юнитов. Плюс возможности абузов.
У меня есть такой отдельный крит на отлове урона, но разница в том что если стандартный не учитывает броню атакованного юнита , то нестандартный при снижении брони жертвы может выдавать совсем заоблачные значения критов.
Так что из всего этого вариант только крит и баш лучше делать нестандартным.
28
при использовании способности - делаешь проверку по этой базе у цели, запоминаешь в хэш или временный массив их уровень/код и удаляешь у конечной цели
Не уверен, что это будет нормально работать со способностями героев.
10
PT153:
при использовании способности - делаешь проверку по этой базе у цели, запоминаешь в хэш или временный массив их уровень/код и удаляешь у конечной цели
Не уверен, что это будет нормально работать со способностями героев.
На героях не сработает конечно, забранные умения опять уйдут в неизученные, тогда варианта 3
  1. Если герой только 1 и его умения уникальны, то можно тупо запрещать игроку умения, на пассивки вроде тоже работает.
  2. Сделать систему изучения способностей героев - нестандартную. Убьешь 2-х зайцев сразу, можно будет и отменять их легко и больше 4-х скилов впихнуть в изучение.
  3. Если используешь мемхак, то там вообще легко запрещаются умения любые по той же схеме
33
это это подхил - блок урона
нет, на мемхаке можно имитировать мисы
а на рефордже вообще можно манипулировать уроном на прямую, превратив его в 0
Konstantin19:
Все намного проще:
в базу записываешь все пассивки которые есть в игре (по сути во всех норм картах и так такие массивы есть, так что работы прибавиться не должно)
при использовании способности - делаешь проверку по этой базе у цели, запоминаешь в хэш или временный массив их уровень/код и удаляешь у конечной цели
запускаешь таймер на 4 секунды (на крайний случай TriggerSleepAction )
через 4 секунды с помощью тоже же хэша (массива) возвращаешь
и где же тут вообще отключение способностей то? давай отключи абилку дефолт критов без рефа и мемхака, где у тебя нет функции DisableAbility. Тебе придётся её удалять и давать пустышку с той же иконкой, а что делать с предметными своствами?
по сути во всех норм картах и так такие массивы есть
Если в карте используется некий массив такой, то увы эта карта уже не нормальная и скорее всего или из прямиком 2005 или с механиками из 2005

А если пассивок около 40? во всех предлагаешь это условие тыкать?
если они однотипные то лишь 1 раз, по 1 разу на 5 типов абил. Тобишь уворот на 10% и уворот на 30% это одна как бы одна и таже абилка.
Ребята, оставаясь на старых механиках варкратфа не стоит замахиваться на карты типа арен, с таким рвением стоит делать товердефенсы и милишки
32
Простых путей нет, нужно пилить все пассивки с оглядкой на отключение, те же ауры по механике варкравта не отключаются, даже продвинутый сайленс в мемхаке не отключает их, и нужно делать 2 версии, для подмены. Потом в доте десятки пассивок которые не связаны со способностью, та же пассивка снайпера которая лишь пустышка, а ап ренжа апгрейд на дальность атаки.
12
Если в карте используется некий массив такой, то увы эта карта уже не нормальная и скорее всего или из прямиком 2005 или с механиками из 2005
Вот сейчас ты принижаешь и обесцениваешь практически все старые карты, которые были сделаны до появления новых патчей. Нужно лучше ознакомиться с картами 2005 года.
Ребята, оставаясь на старых механиках варкратфа не стоит замахиваться на карты типа арен, с таким рвением стоит делать товердефенсы и милишки
А потом жалуетесь почему на иринаботе только тдшки и милишки. Может тогда вовсе не стоит заниматься картоением если не нацеленные писать полностью с нуля движок и все механики и управление. Определитесь уже
33
Вот сейчас ты принижаешь и обесцениваешь практически все старые карты, которые были сделаны до появления новых патчей. Нужно лучше ознакомиться с картами 2005 года.
так и есть но это старые карты, а ты делаешь новую, если я захочу поиграть в старую карту, то он должна быть такой же как и 15 лет назад, а новая карта должны быть новой
Daro:
А потом жалуетесь почему на иринаботе только тдшки и милишки
я вообще не играю в варкрафт потому-то тут не во что играть, все стандарт как жмых по кругу прогоняют.
Daro:
Может тогда вовсе не стоит заниматься картоением
может быть тебе и не стоит, ты либо придумал офигенную механику и реализовываешь её как надо это надо слушая советы. Или остаешься на дефолт боёвке варкрафта, забыв про такую вещь как "отключение пассивок"
Daro:
писать полностью с нуля движок и все механики и управление
я умудрился использовать в последних 4х проектах полною кастомизацию, от повторения дефолтного интерфейса с касмотмными кулдаунами, до полностью кастомного движения. Где я могу сделать и по Z движение и скорость выше 522. И сайленсить пассивки.
Daro:
Определитесь уже
Вот ты и определись, хочешь ли ты выйти за рамки в своих желаниях или нет, мы уже давно для себя определились
21
quq_CCCP:
Простых путей нет, нужно пилить все пассивки с оглядкой на отключение, те же ауры по механике варкравта не отключаются, даже продвинутый сайленс в мемхаке не отключает их, и нужно делать 2 версии, для подмены. Потом в доте десятки пассивок которые не связаны со способностью, та же пассивка снайпера которая лишь пустышка, а ап ренжа апгрейд на дальность атаки.
Согласен!
Вся проблемма нашего варика лишь в том, что нельзя убрать способность, которая получена как тип герой, только воин и предмет. То есть не создавать велосипед, а вообще все пассивки давать через канал, с возможностью их подмены на такую же пустышку с картинкой зачеркнутой абилкой( типа сало ) Вам лайк от меня!👍👍👍
33
чё вы несёте, какие каналы, каналы прожимаются и прокликиваются, пассивного канала не бывает.
SсRealm:
Вся проблемма нашего варика лишь в том, что нельзя убрать способность
Вся проблема нашего варика в том что картоделы не хотят развиваться что новые что старые, не используют наработки проверенные годами или успешно проверенные другими людьми. Используют такие костыли, что не приведи господь, конкретно то до чего 20 лет назад мы будучи 10 летними догадались. И выставляют как какая-то фишка, Вам официально дали: BlzUnitDisableAbility и не официально, возьми ж ты используй 1 строчку, нет он готов сделать 40 изучаемых пустышек, 40 каналов заглушек и 40 реальных не геройских пасивок. Вот поэтому нормальные люди и уходят из варкрафт, потому что у тех кто тут есть вот такое-вот ДУБОВОЕ мышление
Вон она истинная проблемма нашего варика
21
Bergi_Bear:
чё вы несёте, какие каналы, каналы прожимаются и прокликиваются, пассивного канала не бывает.
SсRealm:
Вся проблемма нашего варика лишь в том, что нельзя убрать способность
Вся проблема нашего варика в том что картоделы не хотят развиваться что новые что старые, не используют наработки проверенные годами или успешно проверенные другими людьми. Используют такие костыли, что не приведи господь, конкретно то до чего 20 лет назад мы будучи 10 летними догадались. И выставляют как какая-то фишка, Вам официально дали: BlzUnitDisableAbility и не официально, возьми ж ты используй 1 строчку, нет он готов сделать 40 изучаемых пустышек, 40 каналов заглушек и 40 реальных не геройских пасивок. Вот поэтому нормальные люди и уходят из варкрафт, потому что у тех кто тут есть вот такое-вот ДУБОВОЕ мышление
Вон она истинная проблемма нашего варика
Я про 1. 26, где еще нет функции убрать способку. Неужели я должен тебе объяснять, что на основе канала мы только делаем имитацию изучения пассивки, потом даем пассивку, потом подменяем ее. Берги бир, ну ты слишком хорош для этого. Не должен я тебе такие мелочи объяснять(
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.