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

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
0
32
5 лет назад
0
MKDimon, я тут недавно научился читать содержимое интернет страницы в текстовую переменную варкрафта, без использования каких либо длл, возможно это будет полезно, можно допустим на интернет странить файл с датой редактирования, а мемхаком считывать у карты дату редактирования, а эту дату предварительно перевести в число и зашифровать, ну и проверять и сразу дропать игроков которые играют без интернет соединения или у которых не совпадает это число..
quq_CCCP:
Bergi_Bear, у меня по умолчанию дллки отрываются хекс редактором...
и что ты там видишь?
NazarPunk:
Осталось сделать интересную карту, в которую будут играть))
Ну у человека большие проблемы, его вечно пытаются хакнуть, зато он умеет делать карты достойные взлома
0
29
5 лет назад
0
я тут недавно научился читать содержимое интернет страницы в текстовую переменную варкрафта, без использования каких либо длл, возможно это будет полезно, можно допустим на интернет странить файл с датой редактирования
И как только ломальщики раскусят фокус, будут успешно с 127.0.0.1 отдавать карте нужную инфу)
0
32
5 лет назад
0
NazarPunk, щяс ждемс пока IсeFog допилит свою тулу, и тогда будет ой как не просто раскусить это.
0
29
5 лет назад
0
quq_CCCP:
NazarPunk, щяс ждемс пока IсeFog допилит свою тулу, и тогда будет ой как не просто раскусить это.
Или пока близы завезут в Reforged хранение карт на серверах)
0
32
5 лет назад
0
NazarPunk, ну так нужно будет ещё и скрипт считывания редактировать, а то откуда он берёт проверочный файл спрятать за паролем под базовой аутентификацией (прося логин пароль)
а внутри варкрафта пароль зашифровать алгоритмом XD, я не хакер и далёк от этого... но чем нагроможденней система тем сложнее взлом
Можно на xgm миниигру, я буду шифровать всячески редактирование карты и выкладывать карту, а пользователи Xgm будут искать лозейки в получении к ней доступа, или любой желающий может предоставить свой алгоритм, (победит конечно IсeFog)
0
29
5 лет назад
0
Bergi_Bear, а можно вообще написать свой лаунчер и хранить в карте .dll, как дота на айкапе)
2
28
5 лет назад
2
Можно сделать свою игру.
0
32
5 лет назад
0
NazarPunk, зачем лаунчер, надо чтобы на гарене работало, сделать своё это слишком просто "да и не интересно"
0
32
5 лет назад
0
NazarPunk:
Bergi_Bear, а можно вообще написать свой лаунчер и хранить в карте .dll, как дота на айкапе)
Ну вот это дело и делает IseFog. Свой лаунчер, изначально для ускорение функционала мемхака, но не взлетело, оказалось как у айкапа для защиты публике важнее... Кто бы мог подумать?
0
16
5 лет назад
Отредактирован Naadir
0
quq_CCCP:
функции для работы с сайленсом, позволяют задать разные типы сайленса (от обычного безмолвия, то паузы, когда способности скрываются с карты комманд)
код
(( код jass
set pAddSilenceOnAbility=GameDLL+0x052B60 оффсет для 1.26
set pRemoveSilenceFromAbility=GameDLL+0x052BC0 оффсет для 1.26
set pAddSilenceOnAbility = GameDLL + 0x3E9FA0 оффсет для 1.27
set pRemoveSilenceFromAbility = GameDLL + 0x3EE3C0 оффсет для 1.27
function AddSilenceToAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pAddSilenceOnAbility, a, 0, 1 )
0 for hide, 1 for silence
endif
endfunction

function RemoveSilenceFromAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pRemoveSilenceFromAbility, a, 0, 1 )
endif
endfunction

function AddSilenceHideToAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pAddSilenceOnAbility, a, 1, 1 )
endif
endfunction

function RemoveSilenceHideFromAbility takes integer a returns nothing
if a > 0 then
call CallThisCallWith3Args( pRemoveSilenceFromAbility, a, 1, 1 )
endif
endfunction
))
Что именно передаётся в функции? Что такое integer a?

UPD. разобрался по чистой случайности. Е-е-е!:)

UPD2. Вот такой код вызывает не "переключение" абилок между собой, а нечто другое: первый раз юзаем первую абилку => она сайленсится, затем юзаем вторую вбилку => первая выходит из сайленса, но вторая в него не входит, втф?
<...>
function Trig_ToMelee_Actions takes nothing returns nothing
    call AddSilenceToAbility(GetUnitAbility(GetSpellAbilityUnit(),'A048'))
    call RemoveSilenceFromAbility(GetUnitAbility(GetSpellAbilityUnit(),'A049'))
endfunction
<...>
function Trig_ToRange_Actions takes nothing returns nothing
    call AddSilenceToAbility(GetUnitAbility(GetSpellAbilityUnit(),'A049'))
    call RemoveSilenceFromAbility(GetUnitAbility(GetSpellAbilityUnit(),'A048'))
endfunction
<...>
А вот такой код с тем же алгоритмом вызывает последовательный сайленс обеих абилок.
<...>
function Trig_ToMelee_Actions takes nothing returns nothing
    call AddSilenceToAbility(GetUnitAbility(GetSpellAbilityUnit(),'A048'))
    call RemoveSilenceFromAbility(GetUnitAbility(GetSpellAbilityUnit(),'A049'))
    call AddSilenceToAbility(GetUnitAbility(GetSpellAbilityUnit(),'A048'))
endfunction
<...>
function Trig_ToRange_Actions takes nothing returns nothing
    call AddSilenceToAbility(GetUnitAbility(GetSpellAbilityUnit(),'A049'))
    call RemoveSilenceFromAbility(GetUnitAbility(GetSpellAbilityUnit(),'A048'))
    call AddSilenceToAbility(GetUnitAbility(GetSpellAbilityUnit(),'A049'))
endfunction
<...>
0_о
0
32
5 лет назад
0
Naadir, нужен таймер на 0.00 сек, после каста абилки, чтобы корректно накладывать на неё сайленс, снимать сайленс, то же самое с кулдауном, ибо триггер срабатывает немного раньше чем ты реально применил способность, и получается что сайленс прилетел до того как ты нажал кнопку абилки.
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.