Мда... Таких ботов вы увидите не скоро... Это только в киношках типа "Я-Робот" можно видеть самостоятельные действия толпы железяк.
Я согласен, что достаточно научить ботов элементарным вещам, не более: ходить туда-сюда, чирикать друг с другом, стрелять или защищаться в случае нападения, ездить на машинах, причем пофигу - по правилам или без, лишь бы не тупо давили на газ.
Другой вопрос - маршруты на дорогах, пешеходные зоны. Можно было бы пожертвовать один раз местом на сервере, залить стандартные маршруты из Сингла.
Спасибо, только мы разрабатываем не ботов, а систему искусственого интелекта ArtificialLogic v1.09b.
ArtificialLogic v1.09b: система глобального ИИ, проверяется на ботах, удаленного управления не имеет. Предыдущие версии (рабочии): v1.03a[17%], v1.04[22%], v1.07[25%] остальные не выше 16% от уровня интеллекта среднего человека или не работают. Проект закрыт, но не засекречен. Спонсоров нет!!! поэтому дело продвигается за счет стоимости проектов Статус разработки 100% Статус бета тестирования 78% Область использования Робототехника, спутниковые системы, автопилот (в ботах не реализован) и т. п. Запрещено в использовании: управление любыми боевыми ракетами, мед техника любого вида, контролирование воли человека через чипы любого вида и все ост. что может привести к гибели людей. процентное отношение AI/IQ = 39% Структура: Среда создания: Windows proXP SP2 Среда действия: Windows proXP SP2 Языки программирования: ПРОЛОГ, Delphi платформа AI - 1 библиотеки AI - 8 Модули ai - 314 (ai<num>.aix - расширение) Модули тестов на ботах - исп. 405 из 1026 созданных, ост. - утиль проекта (db<num>.aix) Модули сканирования - 3 (sc01.aix, sc02.aix, sc03.aix) Доп. библиотеки 1 (treat) Сопровожд прогр. НЕТ Тест программы: BotsSAIshoW v1.01 и SA-MP v2.2r Особое: TPOCC (Мощная чит прога, для различных нужд бота при тестах), Ri240(измеритель характеристик сервера и пров. на совмещение с ботами), spload (система для подачи техн. команд из чата игры), crab (программа для передачи данных о посещениях инета подозрительным для SAI компьютером), cley (отслеживает изменение ip адреса нужного сервера, оповещает при изменениях), findrer (Поисковой робот, ищет левую информацию о нас, и проекте №3, а также просто инф. про ИИ)
Все выше перечисленное, кроме SA-MP и findrer, создано в интерактивной лаборатории SAI №2
Блин это не ваши боты крутять на всех серверах Samp.in...если да то пользы 0...они просто вылетают
Нет, наши боты запускаются только на серверах SAI, их у нас два. Недавно мы их пускали удаленно в четыре разных чужих сервера, но несущая AI требует слишком много ресурсов, поэтому запуск возможен только с корневого сервера, иначе боты только инициализируются. Благодаря моду на одиночную игру - КАПЮШОН и фильтру ТАЧКИ БОТЫ, а также собственным исследованиям мы получили необходимые данные, подключаемый модуль db1023 будет переделан в db1027, он больше не будет опираться на пешее движение бота, машины будут двигаться по опорному маршруту, который Rockstar North создала для передвижения виртуалов водителей. Однако, это не даст нам поддежку передвижения в местности леса, где нет дорог.
Я видел те шестнадцать ботов, которые ходят друг за другом. На сколько я понимаю - кнопки, которые - "false" - явно не реализованы в работе. Однако если подумать, то ботов такого рода можно импортировать в игру в разные точки, и использовать для охраны зданий, ввиде военных на Area69, или ввиде копов, надо только научить их стрелять, и ходьбу в режиме ожидания врага сделать вокруг охраняемого обьекта, для этого даже AI не надо.
В новостях разработки САМП я видел, что модели игроков можно будет инициализировать как обьекты - по поводу анимации пока не знаю. Если модели будут реализованы, пусть даже без анимации, то пешеходов можно будет сделать элементарным MoveObject.
[SAI]ZHeniok, судя по результатам поисковиков, ваш проект всё таки засекречен =)) Недумаю что игрокам SAMP нужны боты с каким то сверх интеллектом, максимум что требуется: 1) подключиться к серверу 2) уметь просчитывать col модели игрового мира и обходить препятствия 3) в случае угрозы или нападения, попытаться атаковать атакующего, если оружие это позволяет, иначе убежать =) 4) уметь выполнять базовые команды передвижения типа MoveTo(x,y) RunTo, Stop и тд
Совсем не обязательно доводить их уровень AI до умения управления транспортом.
[SAI]ZHeniok, судя по результатам поисковиков, ваш проект всё таки засекречен =)) Недумаю что игрокам SAMP нужны боты с каким то сверх интеллектом, максимум что требуется: 1) подключиться к серверу 2) уметь просчитывать col модели игрового мира и обходить препятствия 3) в случае угрозы или нападения, попытаться атаковать атакующего, если оружие это позволяет, иначе убежать =) 4) уметь выполнять базовые команды передвижения типа MoveTo(x,y) RunTo, Stop и тд Совсем не обязательно доводить их уровень AI до умения управления транспортом.
Однако для 2-го и 3-го пунктов просто необходим логический анализатор, так как ГТА - это не плоскомерная стратегия, и обладает слишком мощным движком, чтобы просто задать условный параметр огибания препятствия, AI умеет просчитывать оптимальный пеший маршрут, и добираться по нему без особых затруднений, самообучение помогает запомнить тупиковые точки на карте, где нельзя пройти. AI может перелазить через небольшие преграды (высоту AI не чувствует, v1.09b не поддерживает трехмерную координацию). Стрельба без AI будет такая же, как в обычной игре стреляют виртуалы, нужно таких штук двадцать для противостояния одному человеку, боты с захватом цели могут расправится с игроком-человеком в одиночку. Данная ArlificialLogic поддерживает только 25 параллельных потоков передачи данных, это 12 ботов. Боты пешком очень долго будут добираться до своей цели (цель: всегда ближайший игрок-противник). Если бот будет пользоваться транспортом, то он быстрее доберется.
Подобных команд типа MoveTo (x,y) у нас нет, вместо этого используются написанные логические функции с параметрами (содержатся в библиотеках Detect bot db<num>) Пример: "load bot<num>_go<i,Route_length(x1,y1,x2,y2)>_Movement<[1-3]>_0 = true" Делает так: бот с таким-то номером передвигается по линии с номером i (номер линий пути берется из маршрута просчитанного AI) от точки 1 до точки 2, движение 1-тихий ход, 2-обычное, 3-бег до тех пор, пока не дойдет до конечной точки линии то-есть точки 2, затем: "load bot<num>_rotate<[-180 - 180]>_0 = true" это повернет бота по направлению направляющего вектора для следующего отрезка пути затем: "load bot<num>_stop<if not purpose z=0>_z = true" если цели нет рядом, то по умолчанию z останется равен 1 и AI перейдет к построению нового маршрута. Скорость работы данных функций такая же, как у действий игрока с пингом 230.
Кстати, RunTo переводится как Бежать До, значит функция сама по себе тоже параметрическая - RunTo(x,y) иначе непонятно, куда бежать.
Однако для 2-го и 3-го пунктов просто необходим логический анализатор, так как ГТА - это не плоскомерная стратегия, и обладает слишком мощным движком, чтобы просто задать условный параметр огибания препятствия, AI умеет просчитывать оптимальный пеший маршрут, и добираться по нему без особых затруднений, самообучение помогает запомнить тупиковые точки на карте, где нельзя пройти. AI может перелазить через небольшие преграды (высоту AI не чувствует, v1.09b не поддерживает трехмерную координацию). Стрельба без AI будет такая же, как в обычной игре стреляют виртуалы, нужно таких штук двадцать для противостояния одному человеку, боты с захватом цели могут расправится с игроком-человеком в одиночку. Данная ArlificialLogic поддерживает только 25 параллельных потоков передачи данных, это 12 ботов. Боты пешком очень долго будут добираться до своей цели (цель: всегда ближайший игрок-противник). Если бот будет пользоваться транспортом, то он быстрее доберется.
Подобных команд типа MoveTo (x,y) у нас нет, вместо этого используются написанные логические функции с параметрами (содержатся в библиотеках Detect bot db<num>) Пример: "load bot<num>_go<i,Route_length(x1,y1,x2,y2)>_Movement<[1-3]>_0 = true" Делает так: бот с таким-то номером передвигается по линии с номером i (номер линий пути берется из маршрута просчитанного AI) от точки 1 до точки 2, движение 1-тихий ход, 2-обычное, 3-бег до тех пор, пока не дойдет до конечной точки линии то-есть точки 2, затем: "load bot<num>_rotate<[-180 - 180]>_0 = true" это повернет бота по направлению направляющего вектора для следующего отрезка пути затем: "load bot<num>_stop<if not purpose z=0>_z = true" если цели нет рядом, то по умолчанию z останется равен 1 и AI перейдет к построению нового маршрута. Скорость работы данных функций такая же, как у действий игрока с пингом 230.
Кстати, RunTo переводится как Бежать До, значит функция сама по себе тоже параметрическая - RunTo(x,y) иначе непонятно, куда бежать.
RunTo естественно тоже имеет параметры, ибо не всегда нужен AI, иногда достаточно просто чтобы бот пробежал по определённому маршруту, заданному сервером. col модели это представление для физического движка GTA, на основе которых производится обработка перемещений игрока. NPC, ходящие по улицам ходят по строго заданным маршрутам, но имеют возможность отклонения от маршрута или его смены. Если бы в сампе была возможность добавлять игроков которыми можно управлять, то я бы без проблем смог написать скрипт AI способный перемещаться и преодолевать препятствия.
NPC - это Non Player Сharacter виртуальный игрок который соблюдает определенный сценарий игры, или ходит по путям вэйпам (заданы через точки - вэйпоинты) такие товарищи не думают особо, а используют готовые входные данные записанные в какой-нибудь вспомогательный файл. Кстати, а где ты видел форум у нас?
Quote
col модели это представление для физического движка GTA, на основе которых производится обработка перемещений игрока.
есть одна нехорошая деталь, сервер не обрабатывает модели *.col из которых построена карта мира ГТА, сервер работает с координатами обьектов добавленных скриптом, с координатами игроков и координатами машин. (еще маркеры, чекпоинты и т. д.). Объекты *.col просто создают физическую среду для игры
Quote
NPC, ходящие по улицам ходят по строго заданным маршрутам, но имеют возможность отклонения от маршрута или его смены.
Это так, но это зависит не от *.col, отклонения должны быть прописаны в ручную, иначе виртуалы пытаются вернуться на траекторию пути