Автоматизация и боты

 Помощь      Поиск      Пользователи
Сайт Кибор     Программируемый кликер Кибор     Видео обучение     Заказать бот

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

> Без описания
Nexur
Отправлено: 03 Февраля, 2014 - 17:34:49
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Янв. 2014  
Репутация: 1




Написал функцию поиска пути от точна А к точке Б игрока для игры Warspear. Поле[28][28] при тесте очень долго ищет этот путь. Писал в C# там работает все точно ищет доли секунды. В чем проблема?
CODE:
function MoveTrue(int t1, int t2)
{
Kx = t1; Ky = t2; //Конечная точка пути
int i, j, x, y;
int findZ; // метка нашли путь или нет
Nh = 1; // Номер хода
i31:
i =0; i30: if (i<28)
{
j = 0; j30: if (j<28)
{
V[i][j] = Pole[i][j] * -1; // Переносим в временный массив основное поле
j++; goto j30;
}
i++; goto i30;
}
V[Xr][Yr] = 1; //позиция игрока на карте
move10:
findZ = 0;
x =0; x10: if (x<28)
{
y = 0; y10:
if (y<28)
{
if (V[x][y] == Nh)
{
i =0; i40: if (i<4)
{
if ((x + dx[i] < 0) || (x + dx[i] == 28)) { i++; goto i40; }
if ((y + dy[i] < 0) || (y + dy[i] == 28)) { i++; goto i40; }

if (V[x + dx[i]][y + dy[i]] == 0 )
{
findZ = 1;
V[x + dx[i]][y + dy[i]] = Nh + 1;
if ((x + dx[i]) == Kx)
{
if ((y + dy[i]) == Ky)
{
// messagebox("Find Move");
return 1;
}
}
}

i++; goto i40;
}
}
y++; goto y10;
}
x++; goto x10;
}

Nh++;
if (findZ == 1) goto move10;
//messagebox("MoveTrue 000");
return 0;
}
 
 Top
Kibor
Отправлено: 03 Февраля, 2014 - 17:55:19
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8226
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




В том что в С Вы создавали готовый исполняемый файл в котором находятся команды процессору.
Кибор работает совсем по другому. Его быстродействие нельзя сравнивать с компилируемыми программами. На высокое быстродействие могут претендовать только встроенные функции из которых как из кирпичей строятся необходимые алгоритмы.
Я постоянно расширяю возможности программы такими модулями и добавлю поиск кратчайшего пути к ним.

Сори за фтопик Зачем в варспе поиск пути? Сама игра же отвечает за это
 
 Top
Nexur
Отправлено: 03 Февраля, 2014 - 18:02:27
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Янв. 2014  
Репутация: 1




Хочеться чтобы перс сам выбирал куда ему бежать. В магазин продавать лут или к мобам которых надо убивать. Убили 20 мобов 1 типа побежали в другую локацию к другим и тд... Улыбка Сама игра находит путь только на экране. Буду выходить из положения запуская из консоли испольняющий файл написанный в с и записывать путь в файл а в кибере уже из него считывать куда бежать.
 
 Top
Kibor
Отправлено: 03 Февраля, 2014 - 18:10:04
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8226
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




Если уж пишете для варспы бот, то можете работать с памятью игры. В Кибор есть возможность. И сама игра легкая для написания такого бота.
Я начал писать бота для нее в Кибор через память, фармил мобов и боссов с первым агром. Плюс читерские штучки. Работал только через процесс.
Только никак не мог закончить все что то отвлекало.
 
 Top
Nexur
Отправлено: 03 Февраля, 2014 - 20:22:24
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Янв. 2014  
Репутация: 1




Изучал работу с памятью Cheat Engine. Нашел хп, ник. Дальше непойму как искать мобов положение в локе. Кто разбирался в этом? Подскажите как да что) Если есть наработки по варспе могу приобрести Улыбка
 
 Top
Kibor
Отправлено: 03 Февраля, 2014 - 20:46:59
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8226
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




Данные о мобе возле ника его
Ищите ник.
Он так записан в варспе, после каждой буквы стоит 0.
(Добавление)
Или ошибаюсь.. Может не 0. Не помню

Можете найти с помощью такого кода. findmemorymask

CODE:
char poisk[5];
char poiskmask[5];
int adr[99999];
poisk[0]='n'; poisk[2]='i'; poisk[4]='k';
poiskmask[0]=formatic(1); poiskmask[1]=formatic(0); poiskmask[2]=formatic(1); poiskmask[3]=formatic(0); poiskmask[4]=formatic(1);

win w=window ("Warspear Online", "Warspear", -1);
int prc=openprocess(w);

int k=findmemorymask (-1, #poisk[0], 5, #adr[0], 0, #poiskmask[0], 100, prc);

int n=0;
s: if (n<k)
{
messagebox (adr[n]);
n++;
goto s;
}
 
 Top
obm
Отправлено: 04 Февраля, 2014 - 21:44:49
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 47
Дата рег-ции: Янв. 2014  
Репутация: 1




Какое-то высокоуровневое программирование)
Можно подобные методы использовать в написании бота для аукциона архейджа))? Все руки не доходят добить то что делал.
 
 Top
Kibor
Отправлено: 04 Февраля, 2014 - 21:52:25
Post Id



Администратор
Эксперт


Покинул форум
Сообщений всего: 8226
Дата рег-ции: Март 2013  
Откуда: Одесса
Репутация: 357




 obm пишет:
Можно подобные методы использовать в написании бота для аукциона архейджа

Не... Тут надо изучать игру с помощью Cheat Engine. Потом исходя из полученных данных уже получать данные с памяти с помощью специальных в Кибор функций.
 
 Top
obm
Отправлено: 05 Февраля, 2014 - 13:45:43
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 47
Дата рег-ции: Янв. 2014  
Репутация: 1




 Kibor пишет:
Не... Тут надо изучать игру с помощью Cheat Engine. Потом исходя из полученных данных уже получать данные с памяти с помощью специальных в Кибор функций.
хм, то есть теоретически, я могу попробовать "выкусить" инфу о таймере прямо из памяти, если она, конечно, там есть? сегодня качну этот чит энжн

и еще вопрос по поиску пути - в архейдже нужно провести чара на боте с одной локи в другую и сдать груз, путь большой, мин 20-30 вручную. Я думал, как можно ориентироваться по графике - никаких идей, даже с открытой картой. Ваше мнение, возможно ли в киборе реализовать подобный алгоритм перемещения и ориентировки персонажа?
 
 Top
Nexur
Отправлено: 05 Февраля, 2014 - 17:44:49
Post Id



Пользователь
Наблюдатель


Покинул форум
Сообщений всего: 25
Дата рег-ции: Янв. 2014  
Репутация: 1




Где можно найти хоть какой учебник по Cheat Engine на русском? Все что нашел в гугле это увеличение денег да хп и тп и тд. По работе с персом и окружающими предметами ненашел Недовольство, огорчение. Сам так и не понял толком. findmemorymask с кодом выше выдает ошибку. Мож надо начинать изучать не Cheat Engine а работу программ с памятью? Не понял
(Добавление)
 Цитата:
Я думал, как можно ориентироваться по графике - никаких идей, даже с открытой картой.
Мож по пути искать ориентиры в ландшафте которые не меняются? С игрой не знаком. И контролировать путь по значку персонажа на карте?
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы и решение проблем »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 




Powered by