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

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
2
16
6 лет назад
2
работа скиллов и все их фиши записаны в виртуальной таблице, там около доxyz обработчиков, которые еще и не знаешь, что делают вообще. это никто не разберет, думаю
0
21
6 лет назад
Отредактирован ClotPh
0
Что по редактированию и считыванию полей абилок "Длительность воздействия: герой" и "Длительность воздействия: нормальная"?
Просто DracoL1ch же как-то cdn.dota2.com/apps/dota2/images/items/combo_breaker_lg.png делать надо?
0
16
6 лет назад
0
да любое поле можно редактировать, проблем не вижу
но здесь явно не так решается
0
21
6 лет назад
Отредактирован ClotPh
0
DracoL1ch, а как?
но редактирование и считывание поля в любом случае было бы интересным
просто я самостоятельно все еще адреса не определяю
0
21
6 лет назад
0
С гитхаба
function SetUnitGreenBonusDamage takes unit u, integer i returns nothing
set Memory[GetUnitAttackAbility(u)/4 + 0xAC/4]=i
endfunction
У меня изменения почему-то происходят не с зеленым уроном, а с белым
/////////
Upd: ну перепроверено - благо хоть считается бонусный урон нормально, а вот при попытке задать зеленый у меня почему-то меняется белый на заданное значение зеленого
0
16
6 лет назад
0
есть такое, зеленые цифры нельзя задавать, они пересчитываются постоянно, и при несовпадении переливают недостачу в белое
0
37
6 лет назад
0
Они ведь вычисляются в режиме реального времени. Я уж не говорю про то, что по сети всё сломается.
0
21
6 лет назад
0
ScorpioT1000, что сломается? Мной использована, допустим, функция SetUnitGreenBonusDamage - присчитать текущий бонусный урон и добавить, скажем, 20. В синглплеере эти 20 добавляются к белому. Что будет в сетевой?
Десинк? Но почему? Ведь юнит-то изменяется глобально.
Лаги? Но ведь операция одноразовая...
/
крч, ладно, ппц, выпилена эта функция, раз она все равно норм не действует и фактически белый меняет, можно не отвечать
по старинке зеленый многлвльными абилами на прелоаде буду и/или там еще систему по идее можно запилить как с увеличением макс хп через предметную, мб будет пахать
0
32
6 лет назад
Отредактирован quq_CCCP
0
Ну только по старинке, абилками на урон.
а абилкам когтей мы вроде пока не умеем динамически менять бонусы, что тоже жаль.
0
21
6 лет назад
0
Ладно, зел дамаг проехали, подскажите плз адреса полей для абилок длительность воздействия герой и длительность воздействия нормальная, желательно в формате старого мемхака
2
16
6 лет назад
2
синхронизация здесь отличная
таблица верна для любого скилла с 4 или меньше уровнями, иначе нужно брать ссылками
офсеты вон, dur = 0x60/4 будут
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.