Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.05.27;
Скачать: CL | DM;

Вниз

Боты для игр   Найти похожие ветки 

 
delphiman2006   (2006-06-24 21:58) [0]

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


 
XProger ©   (2006-06-24 22:21) [1]

Что нужно игре от игроку? Правильно, нажатые клавиши!
Что должен делать бот? Правильно, нажимать клавиши! Делать те же действия что и игрок, оценивать обстановку вокруг и принимать решение.
Для своей игры писал интеллект ботов в dll библиотеках, остался доволен :)


 
antonn ©   (2006-06-25 05:40) [2]

delphiman2006   (24.06.06 21:58)
игра "чужая"? или своя?


 
delphiman2006   (2006-06-25 11:04) [3]

Игра, не моя. Нажимать кнопки то можно, но как оценить ситуацию, не знаю.


 
RzCoDer ©   (2006-06-25 11:27) [4]

а как бы ты её сам оценил??? Так и пиши


 
XProger ©   (2006-06-25 11:44) [5]

delphiman2006,
бот должен знать:
1) Проходимость той или иной области карты
2) Положение всех итемсов
3) Местонахождение других игроков/врагов


 
RzCoDer ©   (2006-06-25 11:45) [6]


> XProger

Оговорка, это всё в зоне видимости бота


 
delphiman2006   (2006-06-25 17:06) [7]

План понятен, но я никогда не писал ботов, хотелось бы увидеть примеры или может исходники.


 
antonn ©   (2006-06-25 17:09) [8]

если игра "чужая", какие могут быть исходники?? даже игру не озвучил...


 
Kobik..   (2006-06-25 17:39) [9]

мда. Бот понятие растяжимое.
1) Сделать бота для какой-нибудь FPSки, в которой игра с ботами не предусмотрена - нереально.
2) Сделать, вернее "модифицировать" бота для какой-нибудь игры, где боты используются.
3) Боты на подобие автоматизации примитивных действий в онлайн играх.
4) Автор про свою игру говорит.

1-Даже глупо было такой вопрос задавать.
2,3 - все от конкретной игры зависит.
4- эх... долго расписывать, да и обсуждалось уже сто раз на этом форуме.


 
delphiman2006   (2006-06-25 22:38) [10]


> мда. Бот понятие растяжимое.
> 1) Сделать бота для какой-нибудь FPSки, в которой игра с
> ботами не предусмотрена - нереально.
> 2) Сделать, вернее "модифицировать" бота для какой-нибудь
> игры, где боты используются.
> 3) Боты на подобие автоматизации примитивных действий в
> онлайн играх.
> 4) Автор про свою игру говорит.


Я имею в виду 3 вариант.


>  даже игру не озвучил...

Игра Ragnarok Online.
В этой игре я уже видел ботов, которые, или сами качались, или на ГильдВойнах делали частые действия(типа лечения,огненные стены).


 
Cerberus ©   (2006-06-25 22:57) [11]


> [10] delphiman2006   (25.06.06 22:38)

Не не знаю как в Ragnarok Online.
Но в Ultime Online боты висели на серваке а не на клиенте.
Хотя клиентом тоже как то можно былу управлять (что в принципе доказывает что бота можно запустить у клиента). Но в такие подробности невникал.


 
antonn ©   (2006-06-26 05:37) [12]

delphiman2006   (25.06.06 22:38) [10]
за это, м/у прочим, аккаунт банят...


 
Kobik..   (2006-06-26 07:38) [13]

>Но в Ultime Online боты висели на серваке а не на клиенте.
хзхз. Где там на серваке?
Есть проги (легко и самому написать), которые по скрипту тыкают мышкой и на кнопки в нужное окно. Например, для Ультимы есть специальный UoPilot.

Загоняешь в него скрипт типа

send f11
wait 2200
Double_Left 80,80
wait 1800
Double_Left 80,80
wait 8000
repeat 3
send insert
wait 5200
EndRepeat

и перс будет тебе всю ночь свитки с заклинаниями рисовать :)

Далее встает вопрос,
1) Автор хочет научиться писать скрипты под готовый "пилот" =)
2) Автор хочет написать свой "пилот"
3) Автор хочет написать новый клиент с ботом (всего то и надо знать, что содержится в пакетах между клиентом и сервером) :) В OU таких шняг полно. Типа Инжект, ВКпилот...
4) Автор сам не знает чего он хочет. Ему просто халява нужна.


 
delphiman2006   (2006-06-26 09:08) [14]


> Далее встает вопрос,
> 1) Автор хочет научиться писать скрипты под готовый "пилот"
> =)
> 2) Автор хочет написать свой "пилот"
> 3) Автор хочет написать новый клиент с ботом (всего то и
> надо знать, что содержится в пакетах между клиентом и сервером)
> :) В OU таких шняг полно. Типа Инжект, ВКпилот...
> 4) Автор сам не знает чего он хочет. Ему просто халява нужна.
>

Тут мне подходит именно 2 вариант. Хочу написть этот самый "пилот", нашел монстра тыкнул на него,для того чтобы убить; выпали предметы, тыкнул на них, чтобы взять. И потом это все дело повторяется.


 
tButton ©   (2006-06-26 10:12) [15]

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

положим, пишет нам сервер
> респавн минотавра в точке 19:42, ID монстра = 1736, <параметры монстра>
отвечаем серверу
< команда пользователя атаковать монстра с ID = 1736
что-то типа. но ток надо протокол изучить =)


 
Cerberus ©   (2006-06-26 17:12) [16]

> Тут мне подходит именно 2 вариант. Хочу написть этот самый
> "пилот", нашел монстра тыкнул на него,для того чтобы убить;
> выпали предметы, тыкнул на них, чтобы взять. И потом это
> все дело повторяется.

Это не второй вариант, а первый. В UO не надо изобретать велосипед.
А в Ragnarok Online возможно придётся делать как говорит
> [15] tButton ©   (26.06.06 10:12)
.


 
whitevova ©   (2006-06-27 01:10) [17]

Народ. Насчёт перехвата пакетов - каким образом их можно перехватить?


 
tButton ©   (2006-06-27 04:36) [18]

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


 
Kobik..   (2006-06-27 07:04) [19]

ИМХО во всех новых играх пакеты хорошо шифруются
а) против читеров
б) против как раз таких изобретателей ботов

Ну все равно ничего невозможного не бывает =)


 
tButton ©   (2006-06-27 07:25) [20]

конечно, шифруются, упаковываются. у меня вон ВоВ всего мегабайт с небольшим за час игры съедает =)
плюс, имею мнение, что данные передаются бинарные =)
а что #74#89#200 или #3#62#120#47 в ихнем понимании значат - фиг разберёшь =)


 
delphiman2006   (2006-06-30 07:34) [21]

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


 
Kobik..   (2006-06-30 11:00) [22]

>Более менее разобрался: мне нужно написать клиент к серверу игры,
>подключиться и общаться, отправляя и принимая разные игровые команды. >Вроде так.
круто чё :)
Считай, что 1/1000 пути ты прошел. Дело за малым... ;)


 
Kobik..   (2006-06-30 11:11) [23]

нормально говоря - сначала ты должен выяснить формат пакетов, приходящих от сервера. Для этого есть насколько вариантов:
1) Узнать у тех, кто уже разобрался.
2) Имея сервер, посмотреть, какие пакеты он шлет. Ну я хз где ты для рагнарека сервер возьмешь.
3) Дизассемблировать клиент. Отрыть ту часть, которая обрабатывает входящий трафик. Разобраться что к чему.  Это не фантастика :) но знания нужны глубокие.

Так что врядли тебе подойдет хоть один из этих вариантов...

>может у кого нибудь есть материалы или линки с подобной информацыей
http://www.uosoft.ru/index.php?c=renaissance&n=fclient
самопальный клиент к UO + исходники на Барсике :)


 
tButton ©   (2006-06-30 11:57) [24]


> сначала ты должен выяснить формат пакетов, приходящих от
> сервера. Для этого есть насколько вариантов:

приконнектиться к серверу и сделать побайтовый вывод входящих пакетов =)



Страницы: 1 вся ветка

Текущий архив: 2007.05.27;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.035 c
5-1153910245
DevilDevil
2006-07-26 14:37
2007.05.27
Убрать свойство из Object Inspector


1-1175153464
DelphiLexx
2007-03-29 11:31
2007.05.27
Изменить родителя при наследование


2-1178445164
Loop
2007-05-06 13:52
2007.05.27
Сортировка TreeView


6-1163764022
mrvik
2006-11-17 14:47
2007.05.27
Как считать с UDP структуру в соответствии с её описанием


2-1178559069
delphi_
2007-05-07 21:31
2007.05.27
центровка окна