Проблема с фильтром "свой чужой"
-
Всем привет. Вышла игруля Warhammer 40,000 Dawn of War - Definitive Edition. Читов пока нет. Решил попробовать сам. Но столкнулся с проблемой. На изображении синие это игрок, а красные враги. Я хотел сделать фильтр на первый 0 в столбце (если он вообще сработает). Но там 2 оффсета и я не знаю, что с ними делать. Обычно мне приходилось работать только с одним и срабатывало. А тут мне не хватает опыта, чтобы сделать фильтр с двумя и более оффсетами. Если важно, то функция movss [rcx+28], xmm0. И эти оффсеты из rcx.
-
@Haarfus А в 7.5 такое окно есть?
Впервые вижу 😅
На сколько помню по старой версии и Dark Crusade, там 2 или 3 id по которым определяется мы и враги, вот id старой версии: 1000-1007, 1101, 50000-50007 или 50010 -
@DieVis мне важно разобраться, как записать в скрипт именно несколько оффсетов которые на скриншоте.
-
@Haarfus Типа такого?
{$lua} [ENABLE] local function set_coords(timer) Speedhack = readFloat('[[["game.exe"+69B2F8]+4]+50]-320') if (IsKeyPressed(96)) then writeFloat('[[["game.exe"+69B2F8]+4]+50]-320',5) end if (IsKeyPressed(97)) then writeFloat('[[["game.exe"+69B2F8]+4]+50]-320',5.5) end if (IsKeyPressed(98)) then writeFloat('[[["game.exe"+69B2F8]+4]+50]-320',9) end if (IsKeyPressed(99)) then writeFloat('[[["game.exe"+69B2F8]+4]+50]-320',18) end end stepTimer = createTimer(nil, false) stepTimer.Interval = 1 stepTimer.OnTimer = set_coords stepTimer.Enabled = true [DISABLE] stepTimer.destroy()
-
@DieVis Не знаю. Я в луа не силен. Но типа да, надо записать указатель, чтобы отделить игрока от врага.
-
@Haarfus
вот на видео чувак показует 2 смещения для фильтра
https://www.youtube.com/watch?v=fFHrJPnAY_g -
@lagarium https://www.youtube.com/watch?v=KVTOD0YWuSM
Тут правильнее показано и с объяснениями) Но я теперь понял...почти...как это делается правильно) Но не работает) Игра закрывается) Но принцип понял) -
@Haarfus может с регистрами на химичил и вылетает игра
-
Это сообщение удалено! -
Это сообщение удалено! -
Это сообщение удалено! -
Это сообщение удалено! -
Это сообщение удалено! -
@lagarium Тут проблема вылезла в том, что солдаты бессмертны) Враги нет) Но когда строишь здание, то игра вылетает) Я так понял для зданий надо искать что то другое) А для солдат отдельное) Принцип записи указателя в скрипт, я понял) Буду думать) Хотя понял не до конца и было бы прекрасно, если бы кто то из русских написал, как правильно вписывать указатели в скрипт где надо делать фильтр)
C регистрами тоже мог накосячить) В видео говорится, что можно брать любой, кроме используемого в данный момент) Я вместо ECX взял на обум EBX) Мужик в видео сказал, что разницы то особо нет) Можно брать любой)
И вот еще странность есть. Даже без указателей есть явные отличия игрока от врага. Но когда ставишь цифру в фильтр, то все равно и игрок и враг бессмертны. Хотя отличия по значениям явные. Почему враг тоже бессмертен, хотя цифра у него другая, не понятно. -
@Haarfus Покопался чуток,
Я сделал вот так.cmp [rsi+8],#1000 //Me jne @f mov [S_P],rsi @@: cmp [rsi+8],#1003 //Neutral jne @f mov [S_P_N],rsi @@: cmp [rsi+8],#1001 //Enemy jne code mov [S_P_E],rsi
Можешь глянуть таблицу для Rimworld от mece
У него в скриптах может быть то что тебе нужно. -
@DieVis Спасибо. Тему можно закрывать. Указатели вписывать в скрипт я научился, осталось только разобраться с флагами, которые ты используешь. Как, когда и зачем их использовать. Но это уже другой вопрос и думаю разберусь.
-
Пользователь @Haarfus написал в Проблема с фильтром "свой чужой":
Указатели вписывать в скрипт
Можешь привести пример, чему ты научился?
Для других пользователей, коим будет интересно. -
@DieVis Допустим мне надо сделать фильтр по указателю в регистре RCX - 108 4F8 BE4 где игрок это 503, а враги 0 (третья строка снизу на скриншоте).
Если правильно понял, то запишется это вот так:
newmem: push rbx mov rbx,[rcx+108] mov rbx,[rbx+4F8] cmp [rbx+BE4],#503 pop rbx jne code jmp return code: movss [rcx+28],xmm0 jmp return
За место RBX можно использовать любой регистр, который не участвует в данный момент или лучше даже свободный. Надеюсь все правильно.
-
Это сообщение удалено!