MasterGH

Бета-тестинг CE RUS 5.6 ПРЕДЛОЖЕНИЯ

78 сообщений в этой теме

Друзья, вот для вас ещё бета тест.

Бета тест 4. (если нет желания идти к первому посту, то вот ссылка)

Требуется: протестировать авто выравнивание колонок в отладчике, также генерацию проверочных байт.

mira.th.gif

Осталось ещё более менее оформить окно прервавшихся инструкций, сделать в нём пару модификаций, перевести окно настроек...

Если у кого есть желание помочь в исходниках переведите форуму настроек через объектный инспектор, я переводом настроек буду заниматься через дня три.

Вы можете мне очень помочь ещё кое в чём. Накачайте кучу патчев, NoDVD к играм и тестите проверочные байты. Если будет ошибка для некоторых патчей, то скопируйте участки байт (ctrl+c) обоих патчей в отладчике и запостите сюда.

Скрипт генерируется теперь вот так, это стандартный шаблон, будет ещё где-то два или три (вытаскивание указателя, сравненение с указателем, ):

[cod][ENABLE]

aobscan(_faddress,e8xxxxxxxxe9xxxxxxxxxx8bxx83xxxxxxxxxxxx8dxxxxe8xxxxxxxx8bxxxx0f)

alloc(_newmem,2048)

label(_returnhere)

label(_originalcode)

_newmem:

mov [],eax //mov eax,

_originalcode:

call manhunt2.exe+22a423 //старайтесь чтобы не было таких инструкции в выделенной памяти, это же касается

//некоторых прыжков, т.к. "+22a423" в разных патчах меняется. Пока я над этим работаю.

jmp _returnhere

_faddress:

jmp _newmem

_returnhere:

[DISABLE]

aobscan(_faddress,e9xxxxxxxxxx8bxx83xxxxxxxxxxxx8dxxxxe8xxxxxxxx8bxxxx0f)

_faddress-5:

call manhunt2.exe+22a423

dealloc(_newmem)

//Alt: db E8 7D E1 00 00[/cod]

Раньше я думал, что под [DISABLE] не должно быть сканирования, но я ошибался. Игра может изменить место положения инструкции (Игра Русич 13 век).

ps. Указывайте на мои ошибки. Я по русскому не был отличником. Сейчас нашёл в окне "вибирите". Уже исправил.

0

Поделиться сообщением


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

1) с автовыравниванием колонок все в порядке

2) с проверочными байтами так же все в порядке.

на винте есть только одна игра с кучей патчей - Disciples III :lol:

было проверенно на:

NODVD by CFB: 1.03hf7

NODVD by vovan31337: 1.04hf9/hf10, 1.05hf4/hf5/hf7(a)

Если мы делаем инжект в инструкцию, типа

mov eax,[ebp+0000bb78]

все в порядке, но это при условии, что "ebp+0000bb78" не меняется от пача к патчу

А вот если инжектнутся в

8b 47 10           mov eax,[edi+10] <==
50 push eax
68 54 a4 7c 00 push 007ca454


//пример из скрипта (был написан на патче, отличном от того, от которого я привел код выше
_originalcode:
mov eax,[edi+10]
push eax
push disciplesiii.exe+3c839c
jmp _returnhere

и в какой-либо версии "push 007ca454" поменяется на push 00123456 (он и поменялся), то можем увидеть вот такую каку

[sp=кака]33149276.jpg[/sp]

В данном случае у нас все равно 99999 ресурса, т.к. push 007ca454 отвечает только за вывод значения из eax на экран, а не за само значение.

но все это больше для DB на будущее, твоей вины в этом нет.

Но если подобные недоразумения (которые не так часто встречаются) не рассматривать, то трейнер с проверочными байтами будет отлично справляться в 90 случаях из 100.

=========

3) не вижу смысла в автоасеблере в

_newmem:
mov [],eax //mov eax,

не лучше ли будет

_newmem:
// "ваш код" или как-то так

т.к. в 99 случаев из 100, строку "mov [],eax //mov eax," приходится удалять.

4) Копирайт:

Стоит описание переделать

{Игра: spider.exe
Чит-код:
Версия CE: Cheat Engine 5.6 RUS (v 1.0)
Автор: MasterGH 2.12.2010 (c)}

можно поменять на

{Игра: spider.exe
Автор Чит-кода:
Версия CE: Cheat Engine 5.6 RUS (v 1.0) by MasterGH (c)}

А то многие могут не разобраться, что MasterGH - автор CE RUS, а не чит-скрипта.

Около "_faddress:" хорошо бы добавить комментарий с адресом, типа "_faddress: //0123456", чтобы, если понадобиться, мы могли бы знать где расположен данный участок кода. (пример, CE используется только для создания читов и трейнер в нем не делается, а так прийдется все еще отдельно в блокнотик записывать)

=========

[sp=]63607347.jpg

34490522.jpg

ну и мега баг оригинальной программы ;PPP

57821585.jpg[/sp]

небольшой to-do

В идеале, было бы хорошо, если название скрипта можно было назначить/изменить прямо в "Автоассемблере", как в Tsearch

snap4qc.jpg

За счет переименования кнопки "Копирайт" в "(с)" освободилось бы куча места, без необходимости увеличивать ширину окна.

Сейчас название изменить можно только в таблице. (в какой-то версии CE у "Auto assemble cheat" была нумерация, исходя из очереди добавления скрипта в таблицу)

Хорошо бы переименовать класс окон программы, названия окон (в Cheat Engine к примеру, заменить латинские "Е/е" на русские. Хотя по классу/названию/части названия окна CE палят в основном некоторые трейнеры, но и игры, мало, но встречались)

А еще, я сплю и вижу в CE самую главную функцию из TSearch

[sp=]snap5i.jpg[/sp]

но это даже DB реализовывать отказался =/

P.S. и как я понимаю, еще буду добавляться фишки из CE 5.5 RUS в CE 5.6 RUS (например кол-во обращений к инструкции в окне "бряков", поиск проверочных байт через Автоассемблер и др..)?

0

Поделиться сообщением


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

Хорошо, SERGANT, я всё обдумаю над всем :)

0

Поделиться сообщением


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

Хорошо бы еще добавить вызов виндовского калькулятора в автоассемблере (например в виде подменю Функции > Калькулятор или в виде кнопки)

Добавить возможность закрывать созданную вкладку в автоассемблере.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Хорошо бы еще добавить вызов виндовского калькулятора в автоассемблере (например в виде подменю Функции > Калькулятор или в виде кнопки)

Калькулятор можно добавить в меню главного окна: Файл->Настройки->Tools menu. Там же можно назначить хоткей на его вызов

0

Поделиться сообщением


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

Если у кого есть желание помочь в исходниках переведите форуму настроек через объектный инспектор, я переводом настроек буду заниматься через дня три.

Форму меню настроек? Готово. Правда не все настройки понятны, их оставил без перевода.

http://www.filehoster.ru/files/eo9186

0

Поделиться сообщением


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

Спасибо, aliast.

0

Поделиться сообщением


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

Мне одному кажется, что русская версия тип float ищет медленнее оригинала? А ещё кнопка Отмены поиска не фурычит. В оригинале работает

Кстати, отмена поиска работает в версии бета 3, а в последней бета 4 перестал..

0

Поделиться сообщением


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

"Отмена", он же "Возврат" работает.

Чтобы не писать еще 1 пост.

Возможно ли добавить сортировку найденных значений ни только по адресам но и по значению (при нажатии на вкладку "Адрес" сортирует по адресам, при нажатии на "Значение" сортирует по увеличению/уменьшению значения).

[sp=]snap3e.jpg[/sp]

Очень удобное, если отсеивание (неизвестного значения) не очень помогает и будет проще найти нужное на глаз.

0

Поделиться сообщением


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

Кнопка "Отмена" будет нормально работать в следующей бета-версии.

Поиск float одинков. Проверял сейчас на игре на двух версиях: на оригинальной и русской (последней бета). Запускал версии по отдельности.

SERGANT, по поводу добавления утилит в окно отладчика. Мне кажется, что хватает списка утилит в главном окне. Как писал aliast, также же можно назначить горячие клавиши и по ним в окне отладчика вызывать к примеру калькулятор :)

0

Поделиться сообщением


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

В общем вчера (а может и не вчера) даркбайт выложил CE с исправленным косяком нерабочести скриптов при генерации тренеров. Обновил папку с русским CE, но в CE Rus скрипты в тренере по прежнему не пашут... В аглийском CE пашут, да ещё и размер сгенерированного тренера уменьшился до 700 кб, т.е. в 2 раза.

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В общем вчера (а может и не вчера) даркбайт выложил CE с исправленным косяком нерабочести скриптов при генерации тренеров.

А какой это конкретный косяк? :)

Обновил папку с русским CE, но в CE Rus скрипты в тренере по прежнему не пашут... В аглийском CE пашут, да ещё и размер сгенерированного тренера уменьшился до 700 кб, т.е. в 2 раза.

Так же поясни, какие скрипты "не пашут" в каких случаях. Ты имеешь ввиду игру "Дальнобойщики", когда через разные функции происходит внедрение чит-кода?!

На счёт размера... 700 кб это не предел, я смог вместе с jpg картинкой сжать до 240 кб (Xipho дал исходники своего двига и я попробовал прикрутить к нему автоассемблер). Но все равно это много. У меня была мысль создать особый вид трейнера, который будет занимать места почти столько сколько картинка и музыка, и скрипт. А всё остальное будет в виде 240 кб-ной библиотеки, которую необходимо зарегистрировать инсталлятором для CE RUS 5.6 v1.0. Но потом у меня вновь появилась идея, которая перекрыла это всё. Создание TrainerMax. В этом случае от CE не потребуется редактор трейнеродела (и мне не потребуется возится с ним).

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
В общем вчера (а может и не вчера) даркбайт выложил CE с исправленным косяком нерабочести скриптов при генерации тренеров.

А какой это конкретный косяк? :)

Лично у меня вообще во всех тренерах скрипты не пашут, не только в дальнобойщиках. А у вас работают? В русском CE?

По поводу размера согласен конечно, что и 700 много. Просто констатирую факт, что в русском CE последней версии они получаются по 1,1 Мб да ещё и скрипты не активируются.

0

Поделиться сообщением


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

Хм.. да, действительно скрипты не работают даже без проверочных байт.

Я не проверял раньше, т.к. думал, что всё будет работать.

0

Поделиться сообщением


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

Ещё recalculate all address (аналог авто изменения адресов в Artmoney) по умолчанию ставит 0 в смещение и адрес, и новый адрес приходится вбивать ручками. Если вбить, то работает. Но должно ведь само вбиваться :)

PS заработало... но глюк точно был.

0

Поделиться сообщением


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

Давненько не было обновлений, поэтому сделал на скорую руку.

Основные изменения коснулись окна прерывающихся инструкций.

79060530.th.gif

Бета тест 5.

Ссылка на CE RUS

Проверить перевод и нововведения ниже.

1. Переведены настройки (Aliast-ом)

2. Сделал более точное выравнивание колонок в дизассеблере (правда не тестировал как следует)

3. Добавил счётчик хит-коунтов и пользовательские чекбоксы.

Двойной клик по инструкции выводит в дизассемблер.

Изменил расположение элементов в окне прервавшихся инструкций

4. В автоассеблере убраны пустые строки + при генерации шаблона комментируется адрес внедрения.

5. Попытка автоматического реверсинга (пока не работает)

Пока на этом всё.

0

Поделиться сообщением


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

Пока не смотрел особо, но уже нашел один недочет.

Если в окне автоассемблера у нас несколько вкладок, то при попытке закрыть любое из них, СЕ предлагает закрыть только ту вкладку, которая, на данный момент, первая.

P.S. А какой "+" в этих вкладках ? Как по мне, так они полностью бесполезны.

3. Добавил ... пользовательские чекбоксы.

я бы сделал хелп при наведении на чекбокс, кто не знает для чего она, при установки галки будет ждать какого-то "чуда" ;P

P.P.S. CE RUS, давно уже не RUS (т.е. ни только переведен на русский), а уже намного удобнее и функциональнее оригинала, может быть стоит задуматься и двухязыковой версии (рус/инг), ибо данная модификация многих заинтересует.

0

Поделиться сообщением


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

**** Про вкладки *****

Вкладками я тоже не пользуюсь. Я пробовал сделать закрытие вкладки по курсору и даже Дарк Байт пробовал (он закомментировал свои исходники), но мы похоже оба "плюнули" на эту возню - вылазят ошибки, которые исправлять запаришься.

За вкладками есть будущие, поэтому я их оставлю. Например, если в трёх вкладках есть скрипты, то пользователь может их одним нажатием кнопки связать с таблицей - в таблицу добавиться одна запись с группой скриптов... Например, создать группу скриптов под названием "Дать все ресурсы", которая содержит 4 скрипта.

Далее, хочу сделать прописывание скриптов в одну выделенную память... Так же хочу продумать как максимально упростить создание скрипта с помощью новых скриптовых команд "scaninject"":

[ENABLE]

scaninject(8Fxx45345345xxxxxx45, jORIGINALCODE, ORIGINALCODE):

mov eax, #100

jORIGINALCODE // с прыжком назад

[DISABLE]

scaninject(8Fxx45345345xxxxxx45):

ORIGINALCODE // просто оригинальный код

Как мы видим, что тут мы избавляем себя от писанины меток. Два вида scaningect перегружены, одна

scaningect("проверочные байты", "оригинальный код с возвратом", "просто оригинальный код"): возвращает найденный адрес внедрения.

Другая scaningect("проверочные байты"):возвращает найденный адрес внедрения.

А вот этот скрипт, автоматически регистрирует глобальную метку

[ENABLE]

scaninject(8Fxx45345345xxxxxx45, jORIGINALCODE, ORIGINALCODE):

[__pID], #100

jORIGINALCODE

__pID:

dd 0

[DISABLE]

scaninject(8Fxx45345345xxxxxx45):

ORIGINALCODE

А если, нужно чтобы она была не зарегистрирована глобально, то добавить префикс "_"

[ENABLE]

scaninject(8Fxx45345345xxxxxx45, jORIGINALCODE, ORIGINALCODE):

[_pID], #100

jORIGINALCODE

_pID:

dd 0

[DISABLE]

scaninject(8Fxx45345345xxxxxx45):

ORIGINALCODE

У меня много идей - много писать.

**** Про чек-боксы*****

А пускай ждут чуда. Итак понятно, что они нужны для тех, кто найдёт им применение (потом добавлю ещё чек-боксы нопящие инструкции).

**** Про задуматься "о двухязыковой версии (рус/инг)" *****

Когда я сделаю TrainerMax, когда я домодернизирую ChatEngine RUS, когда я заполню более менее базу TrainerMax, тогда я займусь английским переводом обеих программ. Я думал над этим, а пока приоритеты другие. Если кто хочет сделать из CE RUS английскую версию, то я не против, выложу исходники с уговором на то, что английская версия с открытыми исходниками может быть опубликована на нашем сайте gamehacklab.ru.

0

Поделиться сообщением


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

Я только сейчас понял значение опции Append pointerline instead of insert - если галочка стоит и мы что-то пишем на первом уровне указателя (game.exe+12345), а потом нажимаем "Add pointer" чтобы добавить 2 уровень указателя, то запись game.exe+12345 стирается. А если галку убрать, то запись будет держаться на первом уровне указателя. Т.е. все уровни будут "проваливаться" на одну позицию вниз. Как-то так) Не знаю как поточнее сформулировать перевод... Удерживать указатели на своих местах при вставке?

0

Поделиться сообщением


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

Я думаю - "Фиксировать позицию устанавливаемых указателей"

0

Поделиться сообщением


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

Если возможно, то очень хотелось бы, чтобы из CE RUS была убрана дарбайтовская "фишка", которая меня бесит уже фиг знает сколько.

Для примера возьмем пасьянс Паук и совершенно наобум выберем 2 инструкции.

00C7CE67 - 75 10                      - jne 00c7ce79

и

00C7DDB0 - 74 1b                      - je 00c7ddcd

меняем "jne 00c7ce79" на "jmp 00c7ce79" (можно сразу и обратно на jne поменять)

Теперь, пытаемся проделать тоже самое с "je 00c7ddcd" и, как только вместо "е" поставили "m" CE автоматом пишет "jmp 00c7ce79"

snap8n.png

Чтобы такого не происходило, приходиться сначала "je" менять (дописывать) на "jemp" и потом удалять "e". А вот с др. инструкциями - только копипейстом.

0

Поделиться сообщением


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

SERGANT, странно, у меня на XP нет такого эффекта. Может быть, исправлю, но я обещать не буду, т.к. возится с этим не хочется.

В любом случае, я постараюсь доделать свою фишку, возможно, она заменит эффект, который ты описал. Двойным кликом, можно будет делать безусловные прыжки и восстанавливать изменённую инструкцию обратно, также нопить.

0

Поделиться сообщением


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

На ХР у меня тоже самое было.

Причем, эта "фишка" не из-за выставленной опции в СЕ, т.к. иногда все нормально, а иногда она появляется.

Думаю, проблему можно решить, убрав запоминание инструкций в окне "Cheat Engine single-linge assembler".

0

Поделиться сообщением


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

А у всех CE перестаёт работать (искать адреса и активировать скрипты) после запуска сканера указателей? Косяк похоже Дарк байтовский :( приходится каждый раз CE перезапускать

0

Поделиться сообщением


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

У меня нет... Сообщения об ошибках есть?

0

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
Гость
Эта тема закрыта для публикации сообщений.