Перейти к содержанию

Cheat Engine. Общие вопросы по работе с программой


Рекомендуемые сообщения

  • Ответов 287
  • Создана
  • Последний ответ

Топ авторов темы

Для BlueStacks, вроде как свой Cheat Engine нужен (в виде .apk).

Хотя можно попробовать в настройках ("Scan Settings" - "Настройки поиска") поставить галочку на MEM_MAPPED, но не факт, что это поможет.

Ссылка на комментарий
Поделиться на другие сайты

как взломать clash of clans с помощью cheat engine.И возмоно ли взломать?Если можно то с какой версии cheat engine.

ps:я играю в clash of clans с  Blue stack app player

Ссылка на комментарий
Поделиться на другие сайты

КАК изменить значение в cheat engine если оно не меняется.Что надо сделать чтобы оно изменилось?И возможно изменить или нет?

alidin00, я же тебе написал, нужно найти ПРАВИЛЬНЫЕ адреса - адреса не с визуальными значениями, а с реальными. И тогда значения будут меняться.

Ссылка на комментарий
Поделиться на другие сайты

Clash of Clans нельзя взломать. Она хранит все свои значения на сервере. И взломать возможно, скорее всего, только через подмену пакетов, и то не факт. К тому же, если я правильно помню, пакеты там идут шифрованные, так что даже сниффер вряд ли поможет. Но попробовать можно.

Ссылка на комментарий
Поделиться на другие сайты

Clash of Clans нельзя взломать. Она хранит все свои значения на сервере. И взломать возможно, скорее всего, только через подмену пакетов, и то не факт. К тому же, если я правильно помню, пакеты там идут шифрованные, так что даже сниффер вряд ли поможет. Но попробовать можно.

Вы не знаете можно ли взломать дурак онлайн?

Ссылка на комментарий
Поделиться на другие сайты

Знаю, разумеется. Я про все игры в мире все знаю. И как взламывать, и как не взламывать. Но я такой жадюга, что никому об этом не рассказываю.

Ссылка на комментарий
Поделиться на другие сайты

  • 11 месяцев спустя...

Здраствуйте. Меня интересует что делать если значения найдено но не изменить не заморозить через Cheat Engine его не получается. Это цифра тамера если быть точным

Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...

Привет, дело в том что -это экранный адрес. Рабочий адрес другой. Возможно надо искать в другом типе данных. Либо реверс. Т. е. на экране уменьшается, а в действительности увеличивается. Как например в "age of empires" так же со временем на чудо света. Об этой теме много написано. Есть видео. Если ищешь по значению на экране, то измени поиск на неизвестное. Экранное значение редко совпадает с реальным. А может значение шифрованное, тогда надо искать через экранное значение. Так же есть видео и статьи как это сделать. Удачи... !:-D

Ссылка на комментарий
Поделиться на другие сайты

В 04.01.2017в16:21, Alexandr7 сказал:

Здраствуйте. Меня интересует что делать если значения найдено но не изменить не заморозить через Cheat Engine его не получается. Это цифра тамера если быть точным

В каком типе данных искал ?

Ссылка на комментарий
Поделиться на другие сайты

  • 11 месяцев спустя...

Здравствуйте.

Пытаюсь использовать СЕ под wine на linux.

Есть проблема: при попытке выделить память под скрипт он выдает ошибку (Failure to allocate memory 4)

Есть ли возможность выделить память под линукс? И если нет, то есть где-то руководство, как найти место куда можно записать в памяти скрипт не рискуя попортить работу программы?

Ссылка на комментарий
Поделиться на другие сайты

19 минут назад, Archmage сказал:

Есть ли возможность выделить память под линукс?

если не заниматься извращениями да.

 

https://github.com/korcankaraokcu/PINCE

Ссылка на комментарий
Поделиться на другие сайты

Цитата

Вообще вопрос про работу с СЕ...

 

Но да натыкался на него пока гуглил, только вот:

Цитата

Code Injection [Working on it].....

потому сразу прошел мимо.

Ссылка на комментарий
Поделиться на другие сайты

12 минут назад, Archmage сказал:

Вообще вопрос про работу с СЕ...

Как бы под линуксом только CE-шный сервер есть и все, если через wine он ищет значения это уже чудо.(так что сам по себе вопрос странный)

 

41 минуту назад, Archmage сказал:

Есть ли возможность выделить память под линукс? И если нет, то есть где-то руководство, как найти место куда можно записать в памяти скрипт не рискуя попортить работу программы?

Был у меня где-то скрипт для PINCE gdb, который находил и записывал скрипт в свободный участок кода и создавал прыжок на него, если найду кину.

Ссылка на комментарий
Поделиться на другие сайты

Цитата

Как бы под линуксом только CE-шный сервер есть и все, если через wine он ищет значения это уже чудо.

То есть чудо?

sudo ./ceserver

В терминале, затем СЕ под wine и network - localhost.

Все ищет и значения и указатели, и меняет код. Занопить можно, только вот не всегда это прокатывает. (Например в FTL:Advanced Edition, если занопить ХП болванчиков(не знающих, что на космическом корабле следует ходить в скафандре) то, увы, и вражины помирать перестают.)

Цитата

Был у меня где-то скрипт для PINCE gdb, который находил и записывал скрипт в свободный участок кода и создавал прыжок на него, если найду кину.

Было бы здорово, потому, как ознакомившись теперь внимательнее, Пинс может делать инекции но только через .so, которые ему нужны на С как я понимаю

Цитата

Compile C files with -g option for gdb to read their symbols.

For example:

"gcc -pthread -shared -g -O2 -o example.so -fPIC example.c"

а это уже не мой уровень.

Ссылка на комментарий
Поделиться на другие сайты

Добрый вечер, друзья :)

Подскажите, пожалуйста, можно ли делать сравнение (для создания фильтров друг/враг) по строке string? 

Если да, то можно пример строки кода, а то что то возникли проблемы с поиском ответа на этот вопрос.

 

И еще один вопрос. Можно ли с помощью скрипта записывать значение в найденный указатель (хоть 4, хоть 10 уровня)?

Тоже возникли проблемы, так как строка инструкции там "ххх.ехе +000АВСD". Не разобрался, можно ли с ней работать и если можно,  то каким образом.

 

P. S. Поковырялся в blood rayne немного, пока времени катастрофически мало, но думаю на выходных выложу некоторые скрипты) (спасибо за совет, неплохая тренировка для начала:) )

Ссылка на комментарий
Поделиться на другие сайты

23 минуты назад, FailMan сказал:

Подскажите, пожалуйста, можно ли делать сравнение (для создания фильтров друг/враг) по строке string? 

Переводи строку в HEX и сравнивай по 4 байта на здоровье.

cmp [eax+xxxxxx],первые 4 байта в HEX
j...  
cmp [eax+xxxxxx+4],вторые 4 байта в HEX   // и т.д. смотря с какой строкой ты хочешь сравнивать.
j...  

Пример скрипта: 

Спойлер

{ Game   : KB.exe
  Version: 
  Date   : 2016-01-18
  Author : Garik66

  This script does blah blah blah
}

[ENABLE]
aobscanmodule(WindowCharacter,KB.exe,8B 4F 0C 8B 2C 81 89) // should be unique
alloc(newmem,$4000)
label(code)
label(return)
label(XAR1)
registersymbol(XAR1)
label(XAR2)
registersymbol(XAR2)
label(XAR3)
registersymbol(XAR3)
label(XAR4)
registersymbol(XAR4)
label(XAR5)
registersymbol(XAR5)
label(XAR6)
registersymbol(XAR6)
label(XAR7)
registersymbol(XAR7)
label(XAR8)
registersymbol(XAR8)
label(XAR9)
registersymbol(XAR9)
label(XAR10)
registersymbol(XAR10)
label(XAR11)
registersymbol(XAR11)
label(XAR12)
registersymbol(XAR12)
label(XAR13)
registersymbol(XAR13)
registersymbol(WindowCharacter)

newmem:
  db 8B 4F 0C 8B 2C 81
  push eax
  mov eax,[edi+04]
  cmp [eax+14],61747461  // attack
  jne @f
  cmp [eax+14+4],00006B63
  jne @f
  mov [XAR1],ecx
  jmp code

@@:
  cmp [eax+14],6B6F6F62  // booksize
  jne @f
  cmp [eax+14+4],657A6973
  jne @f
  mov [XAR2],ecx
  jmp code

@@:
  cmp [eax+14+28],6B6F6F62  // booksize
  jne @f
  cmp [eax+14+28+4],657A6973
  jne @f
  mov [XAR2],ecx
  jmp code

@@:
  cmp [eax+14],73797263  // crystals
  jne @f
  cmp [eax+14+4],736C6174
  jne @f
  mov [XAR3],ecx
  jmp code

@@:
  cmp [eax+14],65666564  // defense
  jne @f
  cmp [eax+14+4],0065736E
  jne @f
  mov [XAR4],ecx
  jmp code

@@:
  cmp [eax+14],65707865  // experience
  jne @f
  cmp [eax+14+4],6E656972
  jne @f
  cmp [eax+14+8],00006563
  jne @f
  mov [XAR5],ecx
  jmp code

@@:
  cmp [eax+14],65746E69  // intellect
  jne @f
  cmp [eax+14+4],63656C6C
  jne @f
  cmp [eax+14+8],00000074
  jne @f
  mov [XAR6],ecx
  jmp code

@@:
  cmp [eax+14],6461656C  // leadership
  jne @f
  cmp [eax+14+4],68737265
  jne @f
  cmp [eax+14+8],00007069
  jne @f
  mov [XAR7],ecx
  jmp code

@@:
  cmp [eax+14],616E616D  // mana
  jne @f
  mov [XAR8],ecx
  mov eax,[ecx]
  mov [eax+08],64
  jmp code

@@:
  cmp [eax+14],656E6F6D  // money
  jne @f
  cmp byte ptr [eax+18],79
  jne @f
  mov [XAR9],ecx
  jmp code

@@:
  cmp [eax+14],65676172  // rage
  jne @f
  mov [XAR10],ecx
  mov eax,[ecx]
  mov [eax+08],64
  jmp code

@@:
  cmp [eax+14+28],65676172  // rage
  jne @f
  mov [XAR10],ecx
  mov eax,[ecx]
  mov [eax+08],64
  jmp code

@@:
  cmp [eax+14],656E7572  // rune_magic
  jne @f
  cmp [eax+14+4],67616D5F
  jne @f
  cmp [eax+14+8],00006369
  jne @f
  mov [XAR11],ecx
  jmp code

@@:
  cmp [eax+14],656E7572  // rune_might
  jne @f
  cmp [eax+14+4],67696D5F
  jne @f
  cmp [eax+14+8],00007468
  jne @f
  mov [XAR12],ecx
  jmp code

@@:
  cmp [eax+14],656E7572  // rune_mind
  jne code
  cmp [eax+14+4],6E696D5F
  jne code
  cmp [eax+14+8],00000064
  jne code
  mov [XAR13],ecx

code:
  pop eax
  jmp return

XAR1:
dd 0
XAR2:
dd 0
XAR3:
dd 0
XAR4:
dd 0
XAR5:
dd 0
XAR6:
dd 0
XAR7:
dd 0
XAR8:
dd 0
XAR9:
dd 0
XAR10:
dd 0
XAR11:
dd 0
XAR12:
dd 0
XAR13:
dd 0

WindowCharacter:
  jmp newmem
  db 90
return:

[DISABLE]
WindowCharacter:
  db 8B 4F 0C 8B 2C 81

unregistersymbol(XAR1)
unregistersymbol(XAR2)
unregistersymbol(XAR3)
unregistersymbol(XAR4)
unregistersymbol(XAR5)
unregistersymbol(XAR6)
unregistersymbol(XAR7)
unregistersymbol(XAR8)
unregistersymbol(XAR9)
unregistersymbol(XAR10)
unregistersymbol(XAR11)
unregistersymbol(XAR12)
unregistersymbol(XAR13)
unregistersymbol(WindowCharacter)
dealloc(newmem)

{
// ORIGINAL CODE - INJECTION POINT: "KB.exe"+465A1

"KB.exe"+46582: E8 09 C4 FC FF     -  call KB.exe+12990
"KB.exe"+46587: 8B F8              -  mov edi,eax
"KB.exe"+46589: 85 FF              -  test edi,edi
"KB.exe"+4658B: 0F 84 6D FF FF FF  -  je KB.exe+464FE
"KB.exe"+46591: 8B 74 24 3C        -  mov esi,[esp+3C]
"KB.exe"+46595: 56                 -  push esi
"KB.exe"+46596: 8B CF              -  mov ecx,edi
"KB.exe"+46598: E8 A3 79 1E 00     -  call KB.exe+22DF40
"KB.exe"+4659D: 85 C0              -  test eax,eax
"KB.exe"+4659F: 7C 0C              -  jl KB.exe+465AD
// ---------- INJECTING HERE ----------
"KB.exe"+465A1: 8B 4F 0C           -  mov ecx,[edi+0C]
"KB.exe"+465A4: 8B 2C 81           -  mov ebp,[ecx+eax*4]
// ---------- DONE INJECTING  ----------
"KB.exe"+465A7: 89 6C 24 18        -  mov [esp+18],ebp
"KB.exe"+465AB: EB 06              -  jmp KB.exe+465B3
"KB.exe"+465AD: 89 5C 24 18        -  mov [esp+18],ebx
"KB.exe"+465B1: 8B EB              -  mov ebp,ebx
"KB.exe"+465B3: 0F B6 16           -  movzx edx,byte ptr [esi]
"KB.exe"+465B6: 8B 44 24 1C        -  mov eax,[esp+1C]
"KB.exe"+465BA: 52                 -  push edx
"KB.exe"+465BB: E8 D0 AE 00 00     -  call KB.exe+51490
"KB.exe"+465C0: 84 C0              -  test al,al
"KB.exe"+465C2: 0F 84 E4 00 00 00  -  je KB.exe+466AC
}

 

 

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...
1 час назад, Kiorn сказал:

Как в скрипте перейти к сравнению выделенной(красным) строки?

 

Не совсем понял, что ты имеешь в виду. К какому сравнению нужно перейти? Где-то в коде сравнивается эта строка с чем-то или что? 

Ссылка на комментарий
Поделиться на другие сайты

1 час назад, Kiorn сказал:

Как в скрипте перейти к сравнению выделенной(красным) строки?

Берешь регистр незанятый и пишешь
eax - незанятый регистр
ebx - регистр где хранится начало твоей структуры
+XX - смещения
mov eax,[ebx+11C]
cmp [eax+0C],'Play_SndIv'

Надеюсь я тебя правильно понял.

Изменено пользователем ReWanet
Ссылка на комментарий
Поделиться на другие сайты

4 минуты назад, ReWanet сказал:

Берешь регистр незанятый и пишешь
eax - незанятый регистр
ebx - регистр где хранится начало твоей структуры
+XX - смещения
mov eax,[ebx+11C]
cmp [eax+0C],'Play_SndIv'

Надеюсь я тебя правильно понял.

Правильно понял)

Спасибо! Но не катит, игра падает.

Способ только один?

 

Изменено пользователем Kiorn
Добавление текста
Ссылка на комментарий
Поделиться на другие сайты

26 минут назад, Xipho сказал:

 

Не совсем понял, что ты имеешь в виду. К какому сравнению нужно перейти? Где-то в коде сравнивается эта строка с чем-то или что? 

Сравнение, в данном случае, не важно. Можно заменить другой командой.

Гражданин ReWanet узрел суть вопроса).

Этот способ мне известен, но не подходит....

Есть ли другой вариант?

Изменено пользователем Kiorn
ошибка
Ссылка на комментарий
Поделиться на другие сайты

3 часа назад, Kiorn сказал:

Как в скрипте перейти к сравнению выделенной(красным) строки?

Приведи свой скрипт - > объясню где у тебя ошибка и почему валится игра.

В своих уроках я неоднократно этот вопрос затрагивал и показывал.

Ссылка на комментарий
Поделиться на другие сайты

  • MasterGH закрыто и откреплено это тема
Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.