Добавлен , опубликован
Алгоритмы, Наработки и Способности
Способ реализации:
vJass
Тип:
Наработка
Версия Warcraft:
1.26 и ниже
Собственно тот знаменитый хак на память который нам радостно предоставил DracoL1ch, который позволяет нам больше не морочится с системами отлова урона, или вовсе узнать координаты курсора без стороннего по.
Для сохранения требуется: экспериментальная версия pjass.exe
Причём не все подходят, меньше всего проблем было с этой версией
В хаке присутствует только 1 пример на изменение белой атаки у героя, остальные готовые функции можно найти на:
Хайве
Гитхабе
Просто копируем саму функцию, все остальное для её работы есть в наработке и сохраняем.
Так же на хайве есть инструкция по созданию собственных функций для чтения\изменения данных в памяти игры.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
21
7 лет назад
0
Чисто теоретический пока интерес: что возвращает IsUnitAbilityOnCooldown (или как-то там) для пассивок?
Ну и не очень понимаю по шапке. Вот есть, допустим, чистый лицензионный вар + допустим, уже JNGP.
Хочется поставить сабж.
Что делать?
В нестандартный код копипаст либ и функций не прокатывает (что, собственно, и писалось) - не запускается карта.
Можно всё по шагам, чтобы пятилетний понял?
С использованием функций-то уж потом как-нибудь разобраться получится.
7
32
7 лет назад
7
Качаем pjass по ссылке и распаковываем в папку с jngp ( папка с JNGP \ jasshelper\pjass.exe) копируем папку из приложенной карты к себе в карту и сохраняем, потом копируем интересующие функции к себе в карту, сохраняём, проверяем.
Вот и всё.
Кулдауна у пассивок нету, попытка запустить кд у пассивки (кроме перерождения) заканчивается фатальной ошибкой.
0
21
7 лет назад
Отредактирован ClotPh
0
"Кулдауна у пассивок нету, попытка запустить кд у пассивки (кроме перерождения) заканчивается фатальной ошибкой" - это уже в теме было написано, знаю, там вопрос был немного не про это.
Как раз и интересует, есть ли удобный способ определения, пассивная или активная способность, для предотвращения подобных фаталов.
А вообще, если планируются улучшения сабжа, хорошо бы, чтобы уже сама функция при отстутствии юнита/пассивной способности итп возвращала ноль или пустое значение, а не выдавала фатал (понятно, что работа и так зшбс проделана, но ведь все можно улучшать и дальше).
По ответу на другой вопрос спасибо, попробую.
2
32
7 лет назад
Отредактирован quq_CCCP
2
ClotPh, Есть функция которая возвращяет ид приказа абилки - ид == 0 значить кулдаун не запустить, возвращяем false.
Ну а так надо быть упоротым чтобы умышленно запускать кд у способности которая при этом фаталит, будто ты не знаешь что ты за способность импользуешь...
0
21
7 лет назад
0
^ Ну вот и решение, перестроить в обновлении хака, если такое будет, функцию с учетом этого, а пока так, норм, идеальное определение.
А обстоятельства разные могут быть, не обязательно конкретная способность, вдруг там после выучивания, например, надо любому герою любую активную способность в кулдаун отправлять... Короче, спс, разберусь
0
32
7 лет назад
0
Вот кулдаун абилок
    function StartAbilityCooldown takes unit whichUnit, integer abilityId, real cd returns boolean
        local integer pAbility = 0
    
        if whichUnit == null or GetUnitAbilityLevel( whichUnit, abilityId  ) < 1 or cd == 0.00  then
            return false
        endif
    
        set pAbility = GetUnitAbilityForAddresss( ConvertHandle( whichUnit ), abilityId )
    
        if pAbility == 0 then
            return false
        else
            set Memory[pReserverdIntArg1 / 4] = cleanInt( realToIndex( cd ) )
            call CallThisCallWith2Args( pStartAbilityCD, pAbility, pReserverdIntArg1 )
            return IsAbilityOnCooldown( pAbility )
        endif
        
        return false
    endfunction
2
21
7 лет назад
2
***
Вот, кстати, и готовая идея для абилы. Ульта - заклинания вражеских героев после изучения сразу уходят в перезарядку.
Этому же чару - АоЕ нюк через всю карту со смешным уроном, но по попавшим временно увеличивает перезарядки их заклинаний на 4 секунды.
То есть какая-нибудь квопа ульт учит, он у нее на перезарядку уходит, закидываем квопу нюками этими и ульт она никогда не прокастит, а если уж там еще войда с Time Dilation подключить, вообще порнуха начинается.
Шлите Гейбу с жабой, новая мета будет в стиле колоды "Stasis" в Magic the Gathering - заклинания у героев есть, они не под салом, а прокастить их не могут и дико бесятся.
Там сейчас вообще эти модификации перезарядок - поле непаханое даже во второй доте, можно столько зависимостей и комбинаций ввести, что ппц.
0
32
7 лет назад
0
Мне бы кто дал идеи для оригинальных дизейблов, то щяс почти все можно а придумать немогу... Сделал пока аналог ульта сларка для предмета (получилось неплохо).
0
21
7 лет назад
0
Можно попробовать этим поупарываться
Обычно идей появляется больше, чем надо, некоторые трудности как раз в реализации
0
20
7 лет назад
0
Все годное уже давно придумали близы. Ну и модмейкеры. Правда близы никогда не делали сложных механик...бтв, тут вроде писалось что можно отдельный скилл в сало закинуть. Чисто способность инвентаря 2 лвла в него закинуть удастся?
Нвм, сразу на ум пришел нужный. Костыль)
0
32
7 лет назад
0
ClotPh:
Можно попробовать этим поупарываться
Обычно идей появляется больше, чем надо, некоторые трудности как раз в реализации
Вот у меня пока нету что то...
Diaboliko:
Все годное уже давно придумали близы. Ну и модмейкеры. Правда близы никогда не делали сложных механик...бтв, тут вроде писалось что можно отдельный скилл в сало закинуть. Чисто способность инвентаря 2 лвла в него закинуть удастся?
Нвм, сразу на ум пришел нужный. Костыль)
Можно даже атаку или перемещение.
2 или 3 вида сала есть.
Сало сферы к примеру не отключает автоатаку а тупо нёдает нажать кнопку.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.