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

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

в идеале хочу написать скрипт или трейнер, где при нажатии кнопки перемещения + шифт, скорость увеличивается в разы, в данной игре этого нету.

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

нашел перемещение по оси х. почему то два адреса. первый адрес, при заморозке, возвращает после нажатия клавиши ГГ на место. второй адрес - заморозка, после нажатия, циклично возвращает и перемещает ГГ.

 

при изменении кода игры, сделать инструкцию неактивной, вылетает игра. может из-за того, что эта инструкция отвечает не только за мое перемещение, не знаю. в принципе, понятно что происходит, в eax находятся мои координаты по оси Х и они копируются в адрес [edi+8].

но как что-либо поменять не пойму

картинка 1

картинка 2

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

Привет. Я думаю ты прав и эта инструкция работает с несколькими адресами.

Возможно тебе поможет видео от Garik66, в котором он объясняет как можно написать фильтр для такой инструкции: 

  Показать контент

 

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

 

  В 26.02.2017 в 18:05, srg91 сказал:

Привет. Я думаю ты прав и эта инструкция работает с несколькими адресами.

Возможно тебе поможет видео от Garik66, в котором он объясняет как можно написать фильтр для такой инструкции: 

  Показать контент

 

Показать  

 

а как в будущем, сделать комбинацию стрелка+шифт. если шифт вообще не задействован в игре. и чтобы не только по оси Х, но и У. и что все-таки за два адреса отвечающие за перемещение по оси Х? так же и с осью У. там вообще разные координаты. одна как бы отвечает за перемещение на локальнйо карте, там значение небольшое, второе измеряется в тысячах, но не пойму, почему при заморозке адреса, ГГ циклично перемещается туда сюда(

я пробовал найти базовый адрес, вообще не получилось, первый адрес со смещением, значение адресов совпадает. второй - значения отличаются.

 

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

  В 26.02.2017 в 18:16, Vasabist сказал:

 

 

а как в будущем, сделать комбинацию стрелка+шифт. если шифт вообще не задействован в игре. и чтобы не только по оси Х, но и У. и что все-таки за два адреса отвечающие за перемещение по оси Х? так же и с осью У. там вообще разные координаты. одна как бы отвечает за перемещение на локальнйо карте, там значение небольшое, второе измеряется в тысячах, но не пойму, почему при заморозке адреса, ГГ циклично перемещается туда сюда(

я пробовал найти базовый адрес, вообще не получилось, первый адрес со смещением, значение адресов совпадает. второй - значения отличаются.

 

Показать  

 

Не уверен, что подскажу про разные координаты, но с SHIFT сделать довольно просто.

Сначала думал написать про хоткеи на скрипт, но они переключают скрипт каждые сколько-то миллисекунд.

 

В общем если ты сделаешь правильную фильтрацию, предлагаю тебе вынести значение скорости в отдельную "переменную" (в скрипт speedUp).

После чего по таймеру проверять - нажат ли SHIFT:

  Показать контент

 

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

srg91, Серег, спасибо, но мне пока рано с луа. видимо у меня, просто непонимание самого перемещения по оси х и по оси у. раньше рассказывал, что на данной локации, по оси х нашел 2 разных адреса. один при заморозке пытается идти в сторону и возвращается на место. прибавляется +2 и отнимается. 

второй адрес при заморозке. перемещается циклично при единичном нажатии на кнопку. прибавляется +256 и отнимается циклично

 

при перемещении на другую локацию, эти адреса меняют свои данные,.. то есть было [31,31]. (правая вертикальная грань прямоугольника, середина) при перемещение стало [1,51]. (ось оХ, координата левой грани, сторона прямоугольника по оси ОУ увеличились и поэтому значение середины оси оУ стало больше), но это все локальные значения,.. хотя мне и нужно увеличение скорости на локальных значениях.. там в игре кстати есть телепорт, перемещение с одной локации на другую, тоже интересно.

 

сделать скрипт на увеличение координаты не получается, вылетает.

push edx

mov edx,eax

cmp edx, адрес

pop edx

je returnhere

 

вот так скрипт работает, но при написании дополнительной строчки, просто еще раз там pop edx или inc edx - вылет

 

найти вроде скорость ГГ возможно, в cheat engine есть спидхак. но не факт, что  не будет опять вылета. и инструкция анверно будет общей( с телепортом. вроде как можно 

 

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

 

игра - легенда о царице опале

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

Я думаю тут проще отталкиваться от самого RPG Maker в виду того что все классы и модули доступны для редактирования и изучения, но единственный минус это язык на котором написан Редактор это Ruby.

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

  В 27.02.2017 в 17:21, saiberpro сказал:

Я думаю тут проще отталкиваться от самого RPG Maker в виду того что все классы и модули доступны для редактирования и изучения, но единственный минус это язык на котором написан Редактор это Ruby.

Показать  

 

Собственно это я и хотел предложить :) 

Для затравки кину данный скрипт, ну и пока сам попробую накидать изменение move_speed скриптом:

  Показать контент

 

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

  Показать контент

 

Привет. Получилось сделать через Ruby, лови скрипт:

  Показать контент

 

Собственно пример использования:

  Показать контент

 

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

А так же будущие сохранения можно будет загрузить только предварительно включив чит.

Я думаю можно это обойти, но увы, на это у меня не было времени и скрипт превращается в кракозябры. Возможно немного позже :) 

Если надоест звук - просто убери строчку:

db '    $game_system.se_play($data_system.escape_se)' #13 #10

 

Плюс расписал подробно, что делал - в статье.

Спасибо тебе, что поднял эту тему - было интересно.

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

  В 27.02.2017 в 22:36, srg91 сказал:
  Показать контент

 

Привет. Получилось сделать через Ruby, лови скрипт:

  Показать контент

 

Собственно пример использования:

  Показать контент

 

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

А так же будущие сохранения можно будет загрузить только предварительно включив чит.

Я думаю можно это обойти, но увы, на это у меня не было времени и скрипт превращается в кракозябры. Возможно немного позже :) 

Если надоест звук - просто убери строчку:

db '    $game_system.se_play($data_system.escape_se)' #13 #10

 

Плюс расписал подробно, что делал - в статье.

Спасибо тебе, что поднял эту тему - было интересно.

Показать  

 

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

 

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

 

пы.сы. мне только расписывать не надо) итак неделю читать буду по буквам) кратко, да, нет. одним  CE взломать можно? базовый адрес получилось найти? почему у меня вылетало при написании скрипта? 

скрипт подсоединить к инструкции ху? и пойду читать краткий мануал по раби

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

  В 27.02.2017 в 23:36, Vasabist сказал:

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

Показать  

 

у меня что-то не получается :) может кто еще подскажет. в целом нужно выйти на move_speed, но это всё ruby-объекты и я не уверен как они выглядят в памяти. 

 

Опять же, получилось сделать небольшой скрипт, который можно использовать в любом месте игры. Просто добавь его через Memory Viewer - Tools - AutoAssembler, вставляешь текст и жмешь - File - Assign to current cheat table.

  Показать контент

 

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

  В 28.02.2017 в 06:48, srg91 сказал:

 

у меня что-то не получается :) может кто еще подскажет. в целом нужно выйти на move_speed, но это всё ruby-объекты и я не уверен как они выглядят в памяти. 

 

Опять же, получилось сделать небольшой скрипт, который можно использовать в любом месте игры. Просто добавь его через Memory Viewer - Tools - AutoAssembler, вставляешь текст и жмешь - File - Assign to current cheat table.

  Показать контент

 

Показать  

да спасиб за это, не все же сразу должно получаться, у меня вообще ничего. а про что игру делал на мейкере? видел же в той боевку? еще одну какую то запускал, так там вообще была анимация супер скилл приемов в боевке. вроде как флеш анимация, но я на вскидку, так как поверхностно только паскаль и си знаю, чтобы hello world написать)

 

вообще, в CE как то подстраивается спидхак к игре, может с этой стороны смотреть. как написан сам этот спидхак... а адреса наверно в CE не все показывает именно от этой игры, мне в начале по оси Ох что читает вообще не показывал, может блокировка какая то стоит, не знаю, но вылетало при изменении ассебмлерского кода постоянно. может сама CE не идеальна

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

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

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

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