Бот (компьютерные игры)

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Бот — программа-робот, управляемая компьютером, имитирующая партнёров в сетевой игре, в сетевых поединках, командных сражениях и т. д. Программа-бот основана на модуле искусственного интеллекта, который адаптирован к особенностям данной игры: карте, правилам, а также к типу игры. В некоторых консольных играх также можно найти ботов.

В МПМ (мульти-пользовательский мир, англ. Multi User Dungeon, MUD) игроки эксплуатируют ботов для выполнения некоторых типичных задач в собственных целях, бывает, что боты выполняют большую часть геймплея. Использование этой техники запрещено в большинстве МПМ, несмотря на это, такая возможность могла бы сэкономить много времени игроку, пока бот собирает ресурсы, такие как опыт, для его персонажа.

Применение[править | править вики-текст]

Боты могут помочь игроку потренироваться в точности выстрела, добавив ему мастерства в игре, перед тем как он будет играть онлайн. Некоторые PC игроки предпочитают играть исключительно с ботами, из-за маленькой скорости соединения с Интернет (к примеру, dial-up соединение) они не могут играть онлайн. Боты не заставляют игрока беспокоиться о честности соперника, который может использовать чит-коды или баги игры. В этом отношении, боты продлевают интерес геймера к игре. Обычно боты могут использовать существующие трехмерные модели, текстуры и звуки игры или её мода.

Некоторые сетевые игры были выпущены без комплекта ботов и режима одиночной игры. В таких случаях, фанаты и энтузиасты создавали ботов позже в сообществе по моддингу игр.

Боты обычно написаны на C/C++ как самостоятельное независимое приложение или плагин или просто динамическая библиотека компоновки (англ. Dynamic-link library, DLL) для существующего движка игры. Для бота OpenKore в сетевой игре Ragnarok Online использовали язык программирования Perl. Некоторые авторы также пишут приложения, позволяющие изменять поведение ботов и другие характеристики. Примером такого приложения служит Bot studio для Quake III Аrenа.

МПМ боты[править | править вики-текст]

Программирование, способы и цели использования МПМ ботов сильно отличаются от ботов FPS игр. МПМ боты реализованы не как обычные соперники, а как сборщики ресурсов для персонажа игрока. Часто разрушительные, поэтому и запрещенные во многих МПМ играх.

Чаще всего, МПМ бот — это расширенный и усовершенствованный скрипт MUD-клиента обычно используемого для подключения к серверу игры. Разные МПМ запрещают разные аспекты использования нелегальных скриптов в игре, некоторые просто полностью запрещают использование автоматизированных скриптов в игре.

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

Тест Тьюринга используется для определения него, может ли машина вести себя точно так же, как человек в определенных условиях. К 2007 году, ни одна машина не сдала такой тест, делая этот тест отличным экзаменом на пути новых разработок. Однако тест теряет свою эффективность, если бот-клиент может ответить человеку на вопрос достаточно короткой фразой. Таким образом, быстрота компьютерных игр и общение игроков в реальном времени делают задачу определения сложнее.

Принятие решений[править | править вики-текст]

Бот использует нечёткую логику, нейронные сети и машины конечных состояний для того чтобы «думать». В процессе принятия решений бот основывается на собственных характеристиках (здоровье, защищённость) и на характеристиках доступного ему оружия (количестве патронов, поражающем факторе оружия и т. д.). Некоторые параметры изменяются во время боя (например, противник может существенно ранить бота, что приведёт его к необходимости отступить). Бот может выполнять также и другие операции, когда он не ведёт бой, такие как сбор предметов (артефактов игры) или преследование. Всем операциям назначаются соответствующие приоритеты, для того чтобы бот не отвлекался во время ведения боя на сбор артефактов. В то же время, сбор некоторых из них (аптечка, дополнительные патроны) может увеличить выживаемость бота. Бот использует экспертные системы и системы вывода логических заключений для того чтобы вести разговоры в чате и взаимодействовать с другими игроками.[1]

Виды ботов[править | править вики-текст]

По принципам навигации[править | править вики-текст]

Боты могут быть как статическими, так и динамическими.

Статические боты следуют заранее разбросанным по карте вэйпоинтам или используют места движения (англ. pathnodes) для навигации на каждом уровне игры. Им необходимо множество заранее созданных систем вэйпоинтов на каждой карте или встроенная в карту система мест движения, чтобы передвигаться. Например, боты в Quake III Арена используют в этих целях Систему Знания Области (AAS, англ. Area Awareness System), в то время как в Counter-Strike боты используют файлы вэйпоинтов (WPT) (исключение — Zbots, в котором используется режим AAS).

Другим примером ботов, использующих вэйпоинты, могут служить знаменитые боты MeatBot для игры Call of Duty 2. Интересно, что создали их почти перед самым выходом Call of Duty 4. Сейчас доступен также инструментарий для создания вэйпоинтов к любой игровой карте любым желающим. Unreal Tournament имеет встроенную систему мест движения в файле карты.

Динамические боты, в свою очередь, исследуют карту последовательно по мере того, как играют. RealBot для Counter-Strike — пример таких ботов. Некоторые боты совмещают в себе методы динамических и статических ботов.

По программной архитектуре[править | править вики-текст]

Встроенные боты изначально встроены в EXE-файл игры.

Внеигровые боты (out-game) — это отдельные игровые клиенты, не требующие запущенной игры.

Внутриигровые боты (in-game) присоединяются к запущенной игре и работают через манипуляцию памятью.

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

Источники[править | править вики-текст]

Computer game bot

См.также[править | править вики-текст]

Ссылки[править | править вики-текст]

  1. Quake III Arena; диссертация, Жан-Поль ван Ваверен, 2001