zBot
ZBot — официальные боты фирмы Valve для Counter-Strike 1.6. Надо сразу сказать, что боты очень хороши! То, что было до этого (Akimbot, а для CS 1.5 — PODBot, Nice, Real) — полная нелепица. Рассказывать о преимуществах ZBot долго. Проще скачать и все посмотреть самому. Скажу лишь, что боты могут использовать щит, могут красться, кидают флэшки и взрывные гранаты, могут услышать ваши шаги и поменять траекторию движения (если бот бежал куда-то, он может развернуться и пойти на вас) и т.д. До идеала им далеко, но то, что уже есть — очень неплохо! Советую скачать и испробовать все самим.
Преимуществом (а как некоторые уже отметили, и недостатком) ZBot является отсутсвие требований к вэйпоинтам, т.е. вы можете играть с ботами на карте, не имеющей вэйпоинтов! Конечно же, это преимущество! Но некоторые проблемы с авторасстановкой вэйпоинтов пока что имеются. Однако играть можно и даже очень неплохо.
В начале карты нужно будет подождать (когда вы напишете bot_add, то начнется процесс автоматической расстановки вэйпоинтов, на экране вы вскоре увидете надпись Analyzing, при этом все будет неслабо тормозить). По завершении растановки вэйпоинтов, они будут сохранены в файл *.NAV в директории «cstrike/maps». Карта будет перезапущена и можно начинать играть! Пишем опять bot_add и играем. Тормозов уже не будет.
Официальной страницы я не нашел (на wwwcounter-strike.net, wwwcs-nation.net про ботов нет ни слова). В архиве я прочитал, что боты «успешно сп#;*зженны» и слово «официальные» также как здесь взято в кавычки. В любом случае боты очень неплохи и скачать их стоит.
Установка ZBot
Распакуйте архив в папку Cstrike. Описание команд на английском вы можете найти в файле zbot_command.txt. В этой же статье я привожу вольный перевод официального руководства.
Команды ZBot
bot_add — добавить бота (бот пойдет за команду, указанную параметром bot_join_team)
bot_add_t — за террориста
bot_add_ct — за контра
bot_kill name|all — убить бота по имени или всех сразу (all)
bot_kick name|all — кикнуть бота по имени или всех сразу (all)
bot_knives_only — боты играют только на ножах
bot_pistols_only — только на пистолетах
bot_snipers_only — только со снайперками
bot_all_weapons — использую все оружие
bot_difficulty 0-3 — мастерство бота (3 — самый сильный, действует на новодобавленных ботов; уже играющие боты будут иметь старый уровень мастерства)
bot_quota число — минимальное количество ботов (если вы кикните бота, то новый бот автоматически добавится; значение 0 отключает этот параметр)
bot_prefix имя — данное имя (а точнее префикс) будет добавлено к имени каждого новосозданного бота. Типа, можно симулировать ClanWar
bot_join_team ct|t|any — устанавливает, к какой команде будут присоединяться боты (контры; терры; к обеим)
bot_join_after_player 0|1 — боты присоединяются только, когда хотя бы один «живой» игрок есть на сервере (0 — боты создадутся, даже если людей на сервере нет)
bot_allow_pistols 0|1 — ботам разрешено использовать/покупать пистолеты
bot_allow_shotguns 0|1 — дробовики
bot_allow_sub_machine_guns 0|1 — пистолеты-пулеметы (3-шки)
bot_allow_rifles 0|1 — винтовки, кроме снайперок
bot_allow_machine_guns 0|1 — M249
bot_allow_grenades 0|1 — гранаты
bot_allow_snipers 0|1 — снайперки
bot_allow_shield 0|1 — щит
bot_allow_rogues 0|1 — безбашенные боты (если 1 — боты бегают, никого не слушают и палят во все, что движется
Изменение навигации ZBot
Нижеследующие команды предназначены для ручной правки путей ботов (NAV-данных). Рекомендуется забиндить эти команды на какие-нибудь клавиши для удобства использования.
ПРЕДОСТЕРЕЖЕНИЕ: операции «отмена» (undo) нет, поэтому почаще сохраняйтесь.
bot_nav_mark
Помечает выбранную NAV-область для последующих операций.
bot_nav_delete
Удаляет выбранную NAV-область.
bot_nav_split
Разделяет выбранную NAV-область на 2 области по БЕЛОЙ линии.
bot_nav_merge
Объединяет текущую выбранную NAV-область с предыдущей помеченной. Объединение произойдет только в том случае, если размеры обеих NAV-областей совпадают по линии объединения.
bot_nav_connect
Создает однонаправленную связь от текущей помеченной NAV-области до текущей выбранной NAV-области. Это говорит ботам, что они могут бегать ОТ выделенной области ДО выбранной. В большинстве случаев, необходимо соединять области в обоих направлениях. Исключение: области, когда бот должен спрыгнуть куда-то вниз (назад ему уже не попасть).
bot_nav_disconnect
Удаляет все связи от текущей помеченной области до текущей выбранной области.
bot_nav_begin_area
bot_nav_end_area
Эти две команды создают новые области: bot_nav_begin_area помечает один угол области, а bot_nav_end_area — противоположный и собственно, создает область. Для отмены операции напишите команду bot_nav_begin_area снова.
bot_nav_splice
Создает новую NAV-область между текущей помеченной областью и текущей выбранной областью и соединяет новую область двусторонней связью. Данная команда особенно полезна в наклонных областях.
bot_nav_crouch
Помечает область как «crouch», т.е. застявляет ботов ползти (идти вприсядку) в этой области.
bot_nav_jump
Помечает область как «jump», т.е. заставляет ботов прыгать в этой области.
bot_nav_analyze
Анализирует NAV-данные и определяет на карте доступные (достижимые) области. Операция может занять несколько минут в зависимости от размеров и сложности строения карты.
УТОЧНЕНИЕ: Данная команда требует, чтобы на карте был хотя бы 1 бот. Рекомендуется поступать следующим образом: сохранитесь, добавьте бота и быстренько введите эту команду: bot_analyze.
bot_nav_save
Сохраняет навигацию в файле *.NAV в директорию «cstrike/maps» под именем карты.
bot_nav_load
Загружает NAV-данные из файла, очистив текущие данные.
Редактирование навигации
bot_nav_edit 0|1
Значение 1 — позволяет редактировать навигацию вручную.
bot_nav_zdraw значение высоты
Устанавливает высоту навигационных элементов над землей в режиме редактирования. Если рельеф карты довольно сильно меняется (подъемы, спуски), то будет полезно увеличить этот параметр до 10 или 15. По умолчанию: 4.
bot_quicksave 0|1
При значение 1 операция анализа карты будет пропущена. Но помните, что без анализа, боты не смогут правильно смотреть.
Отладка
bot_walk 0|1
Боты не могут бегать (только ходят).
bot_stop 0|1
Боты вообще не двигаются.
bot_show_nav 0|1
При значении 1 навигация будет показана около бота.
bot_show_danger 0|1
При значении 1 «опасность» будет показана для каждой NAV-области в виде вертикальной полоски. СИНЯЯ полоса показывает опасность для контров, а красная — для терров.
bot_traceview значение
Используется для внутренней отладки навигации ботов.
bot_debug значение
Используется для внутренней отладки поведения ботов.
Разное
bot_about
Показывает номер версии ботов и информацию об авторе.
bot_goto_mark
Заставляет 1 бота идти к центру текущей помеченной области. Это полезно при тестировании «проходимости» некоторых мест.