laltest |
Отправлено: 11 Января, 2024 - 07:22:02
|
Прохожий
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2024
Репутация: 0
|
Здрасьте, вопрос, реально ли реализовать в кибор для ммо рпг от первого лица::
1) Определение координат персонажа (своего)
2) Перемещение по координатом (аля по линии) добавив проверки, откланяется ли персонаж от заданной линии координат движении или нет, если да то нажать A или S (т.к персонажа будет шатать при передвижении по "прямой" в права и в лево)
3) При достижении определенных координат (куда нужно дойти) нажать на кнопку действия "F" и после получения текста на экране отжать кнопку.
4) После получения строки на экране зажать кнопку A на 2 секунды и отжать, вместе с этим повернуть курсор в "право" и нажать на действие "F" после получения текстового сообщение от игры на экране отжать "F" и двигаться по другим заданным координатам и делать те же действия.
Есть вариант как это реализовать? моих мозгов не хватает на такое, но я еще не все изучил на форуме в обучениях.
Термен Контролл не понятен (в программировании я плох, но в голове есть алгоритм выполнения действий, но знаний для реализования нет)
Можно ли кого то попросить написать код (или визуальный код ) в кибор для определенной игры с комментами к коду или просто пояснение что за что отвечает и т д, Платно либо же бесплатно. Заранее спасибо.
Буквально день назад узнал о данном редакторе, пока ничего не понятно, но очень интересно. было бы неплохо слепить свой "adrenalin" как в л2 только для различных игр.(Отредактировано автором: 11 Января, 2024 - 07:29:05) |
|
|
Ilya001 |
Отправлено: 11 Января, 2024 - 14:50:22
|
Эксперт
Покинул форум
Сообщений всего: 459
Дата рег-ции: Май 2020
Репутация: 23
|
laltest пишет: а есть ссылочки где можно почитать как работать с памятью игры?) мне сразу пришла идея о том чтобы добавить какой нибудь радар, где будут другие игроки показаны (аля точкой) ну и ресурсы
Вообще, было бы неплохо найти на данном форуме сенсейя) можно и на платной основе)
а то с нуля гораздо больше времени уйдет на изучение чего либо.
В ютубе можешь поискать видеоуроки по cheat engine, для начала нужно научиться находить нужных адресов с координатами. Вообще это сложный путь, игр много и к каждому свой подход, тебе повезет если в игре не будет античита, иначе не получишь доступа к памяти игры, и в некоторых играх данные зашифруется, это тоже усложнить задачу.
Крч изучай материалы с гугла и с ютуба.(Отредактировано автором: 11 Января, 2024 - 14:52:06) |
|
|
laltest |
Отправлено: 11 Января, 2024 - 18:19:12
|
Прохожий
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2024
Репутация: 0
|
[quote=Ilya001] laltest пишет: Через кибор тоже можно реализовать бота который будет работать с памятью игры, это так информация.
Полезная инфа) но это мне кажется можно реализовать посредством кодинга а не функионалом программы, в кодинге я нуль) значет нужно копать) лучше конечно если разраб разьяснит, но поддерживает ли он свое чудо сейчас хызы.
Есть такой код по GPS передвиженнию из Adrenalin`a
Хз как он будет работать если чисто вставить в кибор и чутка подредактировать (пока хз как)
uses SysUtils;
function GPS_MoveTo(x, y, z: integer): boolean; overload; // GPS движение по координате
var dist: single; i: integer;
begin
result:= false;
// для начала вычисляем маршрут между нашим текущим местоположением и точкой, куда нам нужно
// вызов этой функции записывает точки в GPS.Items, а в dist мы присваиваем длину построенного маршрута
dist:= GPS.GetPath(User.X, User.Y, User.Z, x, y, z);
if (GPS.Count > 0) then begin // если маршрут построился, то
Print(Format('[GPS] Бегу в точку (x=%d, y=%d, z=%d), дистанция: %n м, всего %d точек', [x, y, z, dist, GPS.Count]));
// для каждой точки из построенного маршрута...
for i:= 0 to GPS.Count-1 do begin
// проверяем исключительные ситуации, и если что досрочно прерываем движение, можно добавить свои условия
if (User.Dead) then begin
Print('[GPS] Умер во время движения...';
exit;
end;
// пробуем двигаться в очередную точку маршрута, и если у нас не получается, то можно предпринять какие-то меры
if (not Engine.MoveTo(Round(GPS.Items(i).X), Round(GPS.Items(i).Y), Round(GPS.Items(i).Z))) then begin
Print(Format('[GPS] Ошибка при движении в точку #%d (x=%d, y=%d, z=%d)', [i, x, y, z]));
// тут можно пытаться двигаться в предыдущую точку, или заюзать СОЕ и перезапустить скрипт
exit;
end;
end;
result:= Engine.MoveTo(x, y, z) or (User.DistTo(x, y, z) < 150);
end else Print('[GPS] Не смог найти нужный маршрут'; // если же маршрут не построился, то пишем об этом
end;
function GPS_MoveTo(spot_name: string): boolean; overload; // GPS движение по названию точки
var dist: single; i, last: integer;
begin
result:= false;
// единственное отличие этой функции от предыдущей - только в вызове другой функции для построения маршрута
dist:= GPS.GetPathByName(User.X, User.Y, User.Z, spot_name);
if (GPS.Count > 0) then begin
Print(Format('[GPS] Бегу в точку <%s>, дистанция: %d м, всего %d точек', [spot_name, dist, GPS.Count]));
for i:= 0 to GPS.Count-1 do begin
if (User.Dead) then begin
Print('[GPS] Умер во время движения...';
exit;
end;
if (not Engine.MoveTo(Round(GPS.Items(i).X), Round(GPS.Items(i).Y), Round(GPS.Items(i).Z))) then begin
Print(Format('[GPS] Ошибка при движении в точку #%d (x=%d, y=%d, z=%d)', [i, GPS.Items(i).X, GPS.Items(i).Y, GPS.Items(i).Z]));
// тут можно пытаться двигаться в предыдущую точку, или заюзать СОЕ и перезапустить скрипт
exit;
end;
end;
last:= GPS.Count-1;
result:= Engine.MoveTo(Round(GPS.Items(last).X), Round(GPS.Items(last).Y), Round(GPS.Items(last).Z))
or (User.DistTo(Round(GPS.Items(last).X), Round(GPS.Items(last).Y), Round(GPS.Items(last).Z)) < 150);
end else Print('[GPS] Не смог найти нужный маршрут';
end;
procedure GPS_LoadMap(path: string); // функция-обертка для загрузки GPS карты
var count: integer;
begin
if FileExists(path) then begin
count:= GPS.LoadBase(path);
Print('[GPS] Загружено: '+IntToStr(count)+' точек';
end else begin
Print('[GPS] Не смог найти карту! Остановка скрипта';
Print('[GPS] Проверьте ее наличие: '+path);
Script.Stop;
end;
end;
begin
GPS_LoadMap(ExePath+'\gps_map.db3'; // Загружаем карту на этапе инициализации скрипта
// code..
// и далее в коде уже под нужными условиями вызываем
GPS_MoveTo(-91036, 248044, -3560);
// или
GPS_MoveTo('Elf_Newbie_Helper';
end.(Отредактировано автором: 11 Января, 2024 - 18:34:06) |
|
|
laltest |
Отправлено: 11 Января, 2024 - 18:38:12
|
Прохожий
Покинул форум
Сообщений всего: 8
Дата рег-ции: Янв. 2024
Репутация: 0
|
Kibor пишет: Я могу пояснить что не получается при работе с Кибор.
Пояснить как искать что то в памяти я не могу. Этой информации много в сети.
Спасибо за овтет, я уже проштудировал видео так 5-6 связанные с Cheat Engine, мне кажется они сомнительны, я бы хотел сделать чтобы это работало в моей ПО, не использовая сторонее, как это реализованно в других ботах, скорее всего это делается не так трудно, к сожалению не для меня))
Я так понимаю что тем же Чит енжином можно просто найти нужное "занчение" которые отвечают за координаты и после просто скопировать их в свою программку с какой то функцией. или не так все просто?)
Не совсем понимаю как внедрить в игру нужные мне "значения" чтобы банально отслеживать свои координы персонажа в игре по нажатию кнопки в ПО(вывести по верх игры на экране x.y.z)(Отредактировано автором: 11 Января, 2024 - 18:48:58) |
|
|
|