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

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

Как сделать чтобы скрипт вкл/выкл? он у меня включается одним нажатием на таблице хоткеем toogle script, а если ещё раз нажать он не выключается а по идеи должен одной клавишей вкл/выкл
 

[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
nop
nop
nop
inc eax
mov [edi+28],eax

exit:
jmp returnhere

065DB2F7:
jmp newmem
nop
nop
returnhere:

[DISABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
mov eax,[edi+28]
inc eax
mov [edi+28],eax

exit:
jmp returnhere

065DB2F7:
jmp newmem
nop
nop
returnhere:

 

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

Странно, что он вообще работает. В newmem пишешь код который надо изменить, оригинальный не трогаешь, чтобы после выключения он восстановился. После Disable у тебя должна выгружаться выделенная память и восстанавливаться оригинальный код. И на будущее, скрипты с нопами считаются дурным тоном и часто приводят к вылетам. Вот как-то так должен выглядеть твой код.

Скрытый текст

[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem:
nop
nop
nop
inc eax

originalcode:
mov eax,[edi+28]
inc eax
mov [edi+28],eax

exit:
jmp returnhere

065DB2F7:
jmp newmem
nop
nop
returnhere:

[DISABLE]
dealloc(newmem,2048)
065DB2F7:
mov eax,[edi+28]
inc eax

 

 

 

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

8 минут назад, partoftheworlD сказал:

Странно, что он вообще работает. В newmem пишешь код который надо изменить, оригинальный не трогаешь, чтобы после выключения он восстановился.

 

А как сделать чтобы NOP илась инструкция на Клавишу и и востонавливалась???

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

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

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

47 минуты назад, Recpec158 сказал:

по идеи должен одной клавишей вкл/выкл

Как вообще ты сумел такой скрипт скомпилировать в СЕ? :blink:

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

6 минут назад, partoftheworlD сказал:

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

alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
mov [edi+28],eax
mov eax,[edi+08]

exit:
jmp returnhere

067CB5DB:
jmp newmem
nop
returnhere:

 

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

11 час назад, partoftheworlD сказал:

Вот как-то так должен выглядеть твой код.

Не верно - 100 пудово. Сам посмотри скрипт.

 

11 час назад, Recpec158 сказал:

А как сделать чтобы NOP илась инструкция на Клавишу и и востонавливалась???

Кинь  сюда АА скрипт от своей инструкции без изменений, покажем.

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

2 минуты назад, Garik66 сказал:

Не верно - 100 пудово. Сам посмотри скрипт.

 

Кинь  сюда АА скрипт от своей инструкции без изменений, покажем.

alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
mov [edi+28],eax
mov eax,[edi+08]

exit:
jmp returnhere

067CB5DB:
jmp newmem
nop
returnhere:

Это и есть инструкция которая меняет значение в игре, я её нашё при "Брекпоинт на запись" я хочу чтобы она NOPилась клавишей и восстанавливалась. обычную заморозку не предлагать

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

11 час назад, partoftheworlD сказал:

Garik66

:offtopic:Школа чародейства и волшебства не иначе:D

default_offtopic.gif Точно ;)

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

Просто не понятно, сначала у тебя скрипт работает с одной инструкцией, теперь с другой.

Ну вот 2 инструкции затер. Так?

alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem:
nop
nop
nop
nop
nop
nop
jmp returnhere

originalcode:
mov [edi+28],eax
mov eax,[edi+08]

exit:
jmp returnhere

067CB5DB:
jmp newmem
nop
returnhere:

 

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

5 минут назад, Recpec158 сказал:

Это и есть инструкция которая меняет значение в игре

Ты нас путаешь. Кинь скрипт, который создаёт сама СЕ без изменений, лучше с аобсканом.

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

Только что, Garik66 сказал:

Ты нас путаешь. Кинь скрипт, который создаёт сама СЕ без изменений, лучше с аобсканом.

Я фиг знает как это сделать и где это найти(( может подскажете

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

11 минуту назад, Recpec158 сказал:

Я фиг знает как это сделать и где это найти(( может подскажете

Практически на любом видео по взлому игр с помощью СЕ это есть.

А устно описывать долго.

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

Пааааааарнииииии!!! Вы что...вот так это делается:

Типа скрипт:

[ENABLE]

067CB5DB:

NOP

NOP

NOP

[DISABLE]

067CB5DB:

mov [edi+28],eax

 

 

А инструкция mov eax,[edi+08] нужна была для занопивиния, так как прыжок занимает 5 байт в АА скрипте.

mov [edi+28],eax - занимает 3 байта и mov eax,[edi+08] тоже занимает 3 байта.

 

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

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

Как сделать чтобы скрипт вкл/выкл?

Попробую сделать из самого верхнего скрипта. 

Скрытый текст

[ENABLE]
alloc(newmem,2048)
label(returnhere)
label(originalcode)
label(exit)

newmem: //this is allocated memory, you have read,write,execute access
//place your code here

originalcode:
nop
nop
nop
inc eax
mov [edi+28],eax

exit:
jmp returnhere

065DB2F7:
jmp newmem
nop
nop
returnhere:

[DISABLE]
065DB2F7:
mov eax,[edi+28]
inc eax
mov [edi+28],eax
dealloc(newmem)

 

 

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

7 минут назад, krocki сказал:

Пааааааарнииииии!!! Вы что...вот так это делается:

Типа скрипт:

[ENABLE]

067CB5DB:

NOP

NOP

NOP

[DISABLE]

067CB5DB:

mov [edi+28],eax

 

 

А инструкция mov eax,[edi+08] нужна была для занопивиния, так как прыжок занимает 5 байт.

mov [edi+28],eax - занимает 3 байта и mov eax,[edi+08] тоже занимает 3 байта.

 

Попробывал работает спасибо!

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

6 минут назад, krocki сказал:

А инструкция mov eax,[edi+08] нужна была для занопивиния

В первом сообщении в скрипте вообще эта инструкция не упоминалась.

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

Правда тебе ещё понадобиться АобаСкан, поскольку нет модуля игры у тебя, а только смещение 067CB5DB...

Наверняка после перезапуска игры смещение будет другим.

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

7 минут назад, krocki сказал:

Пааааааарнииииии!!! Вы что...вот так это делается:

А то что ты сделал, это просто угадайка, толи хотел пользователь или нет.

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

1 минуту назад, Garik66 сказал:

В первом сообщении в скрипте вообще эта инструкция не упоминалась.

В первом скрипте вроде она есть...только расставлен скрипт не правильно.

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

×
×
  • Создать...

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

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