Кибор » Кибор - Интегрированная среда разработки ботов » Вопросы и решение проблем » Вопрос, как реализовать передвижение бота и игре

Страниц (1): [1]
 

1. OKStyle - 26 Декабря, 2022 - 13:11:54 - перейти к сообщению
Приветствую! Нужна Ваша помощь в одном вопросе.
Может сможет кто подсказать, в каком направлении начинать изучать. Правда, буду очень Вам благодарен!


Вопрос собственно вот в чем:
1. Как получать координаты от игры, где сейчас находится персонаж (В некоторых играх например как GTS SA (Как и большинство шутеров) нет миникарты с координатами.)
2. Каким образом лучше реализовывать передвижение, чтобы бот доходил от точки А до точки Б.

Надеюсь понятно, что это и для чего это нужно. Просто чтобы бот сам доходил до нужной локации, после чего уже приступит к выполнению поставленной задачи.
Может быть вопрос покажется глупым, но еще никогда не занимался этим.
2. Nik2 - 26 Декабря, 2022 - 13:41:24 - перейти к сообщению
В 3D игре реализовать адекватный "автопилот" через визуал не возможно, помоему.
Координаты персонажа хранятся в памяти игры. А имея возможность получать текущие координаты персонажа и зная конечные координаты места куда нужно прибежать - можно написать путь по которому он будет бегать.

Радость штука должно быть мегаинтересная, но к сожалению работа с памятью для меня темный лес.

Например в New World, я полагаю, бот для фарма дерева и руды работал именно по текущим координатам персонажа и прописанному пути. Просто вбегал в прописанную дорожку из координат и по кругу гонял...
3. OKStyle - 26 Декабря, 2022 - 13:53:52 - перейти к сообщению
 Nik2 пишет:
В 3D игре реализовать адекватный "автопилот" через визуал не возможно, помоему.

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



 Nik2 пишет:
Например в New World, я полагаю, бот для фарма дерева и руды работал именно по текущим координатам персонажа и прописанному пути. Просто вбегал в прописанную дорожку из координат и по кругу гонял...

Вот именно это мне и нужно, хочу этому научиться.
Пока разобрался как можно найти координаты текущие. Но как заставить персонажа бегать от одной координаты до другой - огромный вопрос Плач
Темболее, как подружить их с Kibor. Чтобы проверять координаты быстро.
4. Nik2 - 26 Декабря, 2022 - 14:01:46 - перейти к сообщению
[quote=OKStyle]
Если повороты камеры в игре через Kibor работают адекватно, то можно попробовать записать сначала дорожку из точек координат с какой-то переодичностью. А потом встать в начало пути, получить текущие координаты и зная первую точку в дорожке, отталкиваться от текуших координат и смотреть куда надо повернуть камеру, чтобы войти в начало дорожки... Но я не знаю на деле что из этого выйдет.

Возможно еще через память игры можно заставить персонажа встать в нужную координату (но возможно так откроется телепорт Радость ), если в игре есть боты (НПС), то они же бегают как-то. Возможно и персонаж может бегать так же, по заданным координатам.
5. OKStyle - 26 Декабря, 2022 - 14:12:54 - перейти к сообщению
 Nik2 пишет:

Если повороты камеры в игре через Kibor работают адекватно, то можно попробовать записать сначала дорожку из точек координат с какой-то переодичностью. А потом встать в начало пути, получить текущие координаты и зная первую точку в дорожке, отталкиваться от текуших координат и смотреть куда надо повернуть камеру, чтобы войти в начало дорожки... Но я не знаю на деле что из этого выйдет.

Да, с помощью Кибор можно вращать камеру (С помощью клавиатуры легко реализовать).
Но при таком способе, возникает проблема - очень проблематично повернуть камеру точно и чтобы это работало быстро. Если каждый разворот будет занимать N-ое время, все игроки вокруг быстро спалят что это бот.

 Nik2 пишет:
Возможно еще через память игры можно заставить персонажа встать в нужную координату (но возможно так откроется телепорт Радость ), если в игре есть боты, то они же бегают как-то. Возможно и персонаж может бегать так же, по заданным координатам

Как минимум, думаю можно выставить направление камеры в нужную сторону. Только пока не могу понять, как можно подружить CE и Kibor
6. Nik2 - 27 Декабря, 2022 - 01:27:51 - перейти к сообщению
 OKStyle пишет:
Как минимум, думаю можно выставить направление камеры в нужную сторону. Только пока не могу понять, как можно подружить CE и Kibor



Найди "Открытие процессов. Чтение и запись в память других программ".
https://kibor-bot.com/forum/topi...=14&topic=13
7. OKStyle - 27 Декабря, 2022 - 03:33:23 - перейти к сообщению
 Nik2 пишет:

Найди "Открытие процессов. Чтение и запись в память других программ".
https://kibor-bot.com/forum/topi...=14&topic=13


Благодарю! Тоже вчера лазил по форуму и нарвался на эту тему.
Как обычно, когда вникаешь в что-то новое - все не понятно. Но примеров достаточно, думаю почитав на свежую голову - разберусь.
8. Martin - 01 Января, 2023 - 06:53:58 - перейти к сообщению
Тоже вопрос про передвижение в игре
Вот я получил координаты героя 400, 500 как мне переместится на 400+10,500-10 ?
Управление кликом мышки.
9. Zireael - 01 Января, 2023 - 07:41:18 - перейти к сообщению
 Цитата:
Вот я получил координаты героя 400, 500 как мне переместится на 400+10,500-10 ?

Если нужно кликнуть, со смещением, то так:
CODE:
int posX = 400;
int posY = 500;
mouse(LEFT, posX+10, posY-10); // клик левой кнопкой мыши

// всё что ниже можно убрать
int x, y;
getmouse(x, y); // получить координаты курсора
messagebox("Координаты курсора: " + format(x) +", " + format(y));

Powered by ExBB FM 1.0 Final