Боты в Counter-Strike: Source
В Counter-Strike: Source, как и в Condition Zero, есть встроенные боты. Чтобы подправить скудный интеллект виртуальных игроков, введите bot_difficulty # (тут # от 0 до 3).Ниже представлен список основных консольных команд для управления ботами:
bot_add — добавить бота;
bot_add_ct — добавить бота в команду контртеррористов;
bot_add_t — добавить бота в команду террористов;
bot_join_team ct — боты присоединяются только за команду контртеррористов;
bot_join_team t — боты присоединяются только за команду террористов;
bot_kill — убить всех ботов или определенного бота (вводите его имя);
bot_kick — удалить из игры всех ботов или определенного бота (вводите его имя);
bot_quota # — общее количество ботов, где число # от 1 до 32;
bot_knives_only 1 — боты играют только на ножах;
bot_pistols_only 1 — боты используют только пистолеты;
bot_snipers_only 1 — боты используют только снайперские винтовки;
bot_all_weapons — все оружие;
bot_allow_grenades 1 — гранаты;
bot_allow_machine_guns 1 — автоматы;
bot_allow_pistols 1 — пистолеты;
bot_allow_rifles 1 — винтовки;
bot_allow_shotguns 1 —дробовики;
bot_allow_snipers 1 — снайперские винтовки;
bot_allow_sub_machine_guns 1 — пулеметы;
bot_zombie 1 — боты не будут бегать и стрелять;
bot_chatter off (minimal, radio, normal) — установить степень болтливости бота;
bot_defer_to_human 0 — боты пытаются выполнить цель игры;
bot_stop 1 — заморозить ботов;
bot_memory_usage — отображает (в консоли) количество используемой для ботов памяти;
bot_show_nav — отображает границы навигационной сети;
bot_goto_mark — отсылает бота к указанной навигационной зоне;
nav_mark — отметить текущую навигационную зону для дальнейшего использования;
nav_save — сохранить текущую навигационную сеть;
nav_load — загрузить навигационную сеть.
Обзор ботов Counter-Strike: Source
Разместил: Alexey, 1 марта 2006 г.
Перевод оригинальной статьи выполнил SESИсточник: http://gamecs.net/?act=bots
Более реалистичное человекоподобное поведение
Официальные боты для Counter-Strike: Source от Valve обладают очень хорошей и улучшеной системой внимания, которая учитывает дистанцию, выстрелы, использование укрытий, движения и позы противника, для того чтобы определить увидит ли бот врага. К примеру, прежние боты всегда видили противника, если он находился на линии видимости, даже если противник сидел в укрытии находясь очень далеко от их видимости. Официальные боты чаще замечают движущихся игроков, нежели остающихся без движения. Шанс заметить противника, находящегося в поле зрения, снижается от нескольких факторов, также и от того, насколько противник скрыт за укрытием и как далеко он находится.
Counter-Strike: Source боты имеют две стадии внимания: нормальную и "тревога". К примеру, если бот был атакован или заметил противника, он переходит в состояние тревоги, которое повышает его шансы заметить врага, увеличивая ценность скрытой тактики. Если бот был атакован, но не заметил врага, он начинает впадать в панику. Бот нервно оглядывается по сторонам в попытках найти врага и пытается спрятатся от него.
Усовершенствованная тактика
Теперь помимо стандартной атаки, боты могут примерно определить где будет совершена атака противника и занять позиции для встречной атаки. Боты теперь больше внимание уделяют прислушиванию к шуму, который производится врагом. Боты стали умнее при выборе врага, при столкновении с несколькими противниками сразу. Теперь боты чаще используют тактики скрытого боя, такие как прокрадывание на бомбплейс для дефуза бомбы и т.д. Боты гораздо лучше расставляют приоритеты атаки при столкновении с несколькими целями одновременно. Также при недостатке денег, боты оставляют деньги, не тратят на дополнительные патроны или гранаты.
Улучшенная навигация
Боты начали чаще использовать проходы по узким выступам и другим тяжелым местам. Боты стреляют в разбивающиеся предметы, перед тем как пройти сквозь них. Это может сохранить несколько секунд для быстрой атаки.
Снайперы
У ботов подкоректированы мозги, и они знают кто такой снайпер, и соответственно будут предупреждать о них всю свою команду. Также они понимают, что стоять на линии видимости снайпера - не самая лучшая идея, и соответственно, они будут прыгать, стрейфится, и ныкатся в укрытиях, перед тем как оказатся перед снайпером. Прицеливание и снайперская стрельба ботов сделаны более реалестичными к человекоподобным.
Гранаты
Официальные боты намного метче бросают гранаты чем все их предшественники, и они умеют бросать гранаты в тактически верные места. Боты отступают от осколочных и слеповых гранат. Ослепленный бот ведет себя более человечно, обычно отступает, иногда отстреливается вслепую. Также бот может метать гранаты в то место, где по его соображениям должен выскочить противник или в место его укрытия если перед этим противник был замечен.
Другие особенности
Игрок может отключить "автоследование" бота за игроком или за другим ботом. Боты больше не падают с различных выступов во время боя. Боты покупают экипировку и оружие теперь намного быстрее (для тех, кто не любит команду freeze time).
PODBot 2.5
POD бот (Ping of Death) - бот для модификации Half-Life - Counter Strike. Первая версия появилась в конце октября 2000 г и очень быстро получила широкое признание у народа благодаря наиболее похожей на человека игре и поддержке основных карт. На сегодняшний день это самый лучший бот для CS.
Требования:
В настоящее время бот работает со всеми версиями Counter-Strike, начиная с 6.5. Half-Life version 1.1.0.0 или выше требуется для работы бота. Если вы не обновили Half-Life до этой версии, вам придется сделать это, чтобы использовать бота.Установка:
Распакуйте архив в папку Halflife (при распаковке используйте опцию "extract with folders"). Если вы хотите использовать переведенный чат ботов, переименуйте соответствующий файл в BotChat.txt. Русская версия BotChat лежит тут.Также в инсталляцию включен файл Botskill.cfg, отредактировав который можно изменить параметры крутости бота. Теперь можно начинать играть!
Удаление бота из системы:
Для удаления бота из вашей системы, удалите следующие файлы:
- Папку PODBot из Half-Life\cstrike
-liblist.gam из Half-Life\cstrike
После этого надо переименовать cs10liblist.gam в liblist.gamКак начать игру с ботами:
Создайте игру с картой, где есть Waypointы для бота (посмотрите в папку cstrike\podbot\Wptcs10" - все файлы с расширением ".pwf" являются файлами путей.Боты будут автоматически добавлены к игре (это прописано в podbot.cfg). Если вы хотите изменить количество ботов, создаваемых автоматически, вы можете редактировать этот файл с помощью любого текстового редактора.
Кроме того, вы можете добавлять ботов с помощью консоли. Для того, чтобы ее включить, надо запустить игру следующим образом:
D:\Halflife\hl.exe -console -game cstrike
Это укажет CS автоматически включить игровую консоль.Для добавления используется следующая консольная команда:
addbot [крутость (skill)] [команда (team)] [лицо (skin)] [имя (name)] - Добавляет бота, используя крутость от 0 до 100. Команда 1 -терроры, 2 - контры, 5 - автоназначение, Skin выбирается от 1 до 4, имя - это, конечно, имя бота. Если аргументы не будут указаны, будет добавлен бот со всеми случайными параметрами.
Например, вам надо, чтобы бот под ником free-bot зашёл за террористов со skill 100. Для этого вам надо прописать:
addbot 100 1 free-botСписок стандартных waypoint’ов.
as_oilrig
as_tundra
cs_3doma
cs_747
cs_arabstreets
cs_assault
cs_backalley
cs_delta_assault
cs_docks
cs_estate
cs_italy
cs_mansion
cs_militia
cs_office
cs_siege
cs_thunder
de_aztec
de_cbble
de_dust2
de_dust
de_foption
de_inferno
de_nuke
de_prodigy
de_resident_evil
de_rotterdam
de_simpsons
de_train
de_vegas
de_vertigo
de_zasada.Начиная с версии 1.4 в бот добавлено полезное меню, позволяющее производить наиболее часто употребляемые фичи бота. Оно присоединено по умолчанию к клавише =.
Меню имеет следующие пункты:
1. Quick Add Bot - Просто добавляет бота и дает ему все случайные параметры
2. Add specific Bot - Позволяет указать все параметры для бота
3. Kill all Bots - Убивает всех ботов.
4. Newround - Убивает всех ботов+настоящих игроков.
5. Fill Server with Bots - Забивает весь сервер ботами. Если переменные "mp_autoteambalance" и "mp_limitteams"установлены в 0, все боты будут добавлены к одной команде. Вы можете использовать эту фичу, чтобы играть одному против всех ботов.
6. Kick Random Bot - Удаляет 1-го бота в списке.
7. Remove all Bots - Удаляет всех ботов с сервера.
8. Select Weapon Mode - Позволяет указать, какими видами оружия будет пользоваться бот. Например, если хочется сыграть с ботами на ножах или на дробовиках , то выбрав соответствующий пункт подменю, можно добиться требуемого результата.
Список команд консоли:
addbot [крутость] [команда] [имя]
Добавляет бота, используя крутость от 0 до 100. Команда 1 -терроры, 2 - контры, 5 - автоназначение. Имя - это, конечно, имя бота. Если аргументы не будут указаны, будет добавлен бот со всеми случайными параметрами.
listbots - Показывает всех ботов, играющих на сервере.
killbots - Убивает всех ботов.
removebots - Удаляет всех ботов с сервера.
botchat on|off - Включает/выключает чат ботов во время игры.
newmap mapname - Загружает новую карту - mapname-название карты, например newmap de_dust.
jasonmode on|off - Включает/выключает прикольный режим, при котором боты рубятся только на ножах. Отлично играть на таких картах, как cs_office.
botsvotemap x - Все мертвые боты голосуют за карту номер x.
botsvotekick x - Все мертвые боты голосуют kick игрока номер x.
Fun-режимы для Pod Bot 2.5
Начиная с версии 2.0 в POD были добавлены некоторые fun-режимы, не предназначенные для серьезной игры, но вообще достаточно прикольные.Для их активации необходимо ввести в консоль следующие команды:
omg imonmars - Просто уменьшает гравитацию, что дает возможность прыгать выше, дальше. Ничего особенного, то же, что ввести в консоль sv_gravity 300.
omg tronisback - Добавляет переливающийся слой вокруг каждого игрока. Террористы красные, контры синие. Очень помогает быстро различить команды, особенно на темных картах.
omg imhaunted -Боты становятся полупрозрачными и очень похожими на привидения. При этом их гораздо сложнее увидеть, чем в обычном режиме.
omg itstoodark - Устанавливает каждому игроку дополнительный источник света, что позволяет легче определять местоположение бота на темных картах.
omg itsnewyear - Боты празднуют Новый год :). Это заключается в том, что у каждого из них на голове горит нечто типа бенгальского огня.
omg imsober - Отключает все эти режимы и возвращает ботов в нормальный режим.Еще пара команд:
imaborg on - Позволяет POD боту управлять ВАМИ!. То есть вам не надо нажимать кнопки управления, вы будете видеть от первого лица, как бегает бот. Сразу предупреждаю, режим пока очень недоработанный, куча ошибок.
imaborg on - Отключает режим.Ну и еще. Вообще говоря, это читерство, но ничего. Ведь для этого надо, чтобы Вы были сервером с установленным POD.
Командой waypoint teleport [n] можно телепортироваться на любое место карты! [n] - это номер Waypoint'а, куда надо телепортироваться. Ну например:
waypoint teleport 0 на карте de_dust перенесет вас сразу на базу террористов!
Игра с POD ботами
Все вы знаете, что боты призваны заменять настоящих игроков, и поэтому самое главное требование, предъявляемое им - реалистичность игры. Наилучшим механизмом "реалистичности" обладает PODbot 2.50, разработанный К. Флойдом (Count Floyd), для CS вер сии 1.0 и ниже. Несмотря на это, PODbot 2.50 успешно работал и на версии 1.1, 1.2 и 1.3 . С выходом же CS 1.4 ситуация меняется. Из-за изменений в движке, боты уже не отвешивают веселых хедов, игра их стала какой-то застопоренной, в общем никуда негодной. Основной причиной этому является стремление ботов поразить соперника в голову. Но, вместо ожидаемого результата, пули летят выше, куда-то в небо... о, где же времена нашей молодости! :)
1. Оптимизация PODbot
Мы не будем переписывать никаких исходных кодов, а попробуем покопаться в файлах настроек ботов. Единственное что сейчас вам понадобится, это какой-нибудь текстовый редактор (подойдет и Notepad) и 15 минут свободного времени. Всё готово? Тогда поехали!
Для начала найдите папку PODBot. Она лежит в папке cstrike, которая в свою очередь вложена в корневую папку с игрой.
Ok. Теперь откройте файл Botskill.cfg и идите в самый его конец, к строчке "# Settings for Bots Skill 100". В принципе, там нас всё устраивает, кроме строчки "HEADSHOT_ALLOW 100". Вот где причина всех бед! замените её на "HEADSHOT_ALLOW 0", не бойтесь, хедов вам достанется с избытком! ;-) Теперь поднимитесь к строчке "# Settings for Bots Skill 80-99" и отредактируйте всё до конца файла, как приведено ниже:# Settings for Bots Skill 80-99
MIN_DELAY 0.0
MAX_DELAY 0.1
MIN_TURNSPEED 60.0
MAX_TURNSPEED 120.0
AIM_OFFS_X 0.0
AIM_OFFS_Y 0.0
AIM_OFFS_Z 0.0
HEADSHOT_ALLOW 0
HEAR_SHOOTTHRU_PROB 100
SEEN_SHOOTTHRU_PROB 100
# Settings for Bots Skill 100
MIN_DELAY 0.0
MAX_DELAY 0.1
MIN_TURNSPEED 90.0
MAX_TURNSPEED 180.0
AIM_OFFS_X 0.0
AIM_OFFS_Y 0.0
AIM_OFFS_Z 0.0
HEADSHOT_ALLOW 0
HEAR_SHOOTTHRU_PROB 100
SEEN_SHOOTTHRU_PROB 100Когда отредактируете это, открывайте файл PodBot.cfg .Находите и изменяйте строки, приведенные ниже. По необходимости добавляете новые строки.
minbotskill 96
maxbotskill 100
maxweaponpickup 10
shootthruwalls onВ самом конце файла будет несколько раз написано "addbot", замените это на троекратное "addbot 100". Это что касалось оптимизации работы. Теперь немного украшательства.
2. Приятные мелочи
Теперь пришло время поведать о некоторых малоизвестных возможностях ботов, которые могут немного скрасить игру.
Зайдите в папку BotChats и скопируйте оттуда файл BotChatRussian.txt на уровень выше (в ту папку, где лежат cfg файлы) взамен файла BotChat.txt (т.е. копируемый файл Вы должны переименовать в BotChat.txt). Этим мы добились того, что боты будут чатиться по-русски. Если хотите, можете вносить свои слова и выражения в этот файл. Но для этого нужно немного знать внутренние конструкции этого файла. Давайте я немного расскажу о них.Макросы.
Внутри любого сообщения можно использовать макросы:
"%f" = Имя игрока с наибольшим числом фрагов;
"%m" = название карты;
"%r" = время до конца раунда;
"%s" = имя игрока, которому отвечают;
"%t" = название команды игрока CT T (?);
"%v" = последняя жертва этого бота.События.
Боты никогда не говорят просто так. Они делают это только в ответ на какое-то событие. Названия событий регламентированы самой программой PODbot.
[BOMBPLANT] = сообщения CT при закладывании бомбы;
[KILLED] = сообщение бота при убийстве им кого-либо;
[DEADCHAT] = сообщения ботов в период смертельного скитания по карте;
[REPLIES] = ответы ботов на сообщения других игроков;
[UNKNOWN] = если нечего ответить.
Событие REPLIES. Если Кто-то из игроков создал такое событие (сказал что-то), то произвольное число ботов отвечают на него. Программа анализирует сообщение, ища в нем ключевые слова. При нахождении такового, выбирается случайная фраза, подходящая под слово и бот "произносит" её.
Ключевые слова задаются командой "@KEY" (чувствительно к регистру). Ключевые слова заключаются в кавычки и разделяются запятой. К примеру, кусок моего файла:@KEY " :)", "=)", ";)"
=)
Cool! :)
Ya dolgo r}|{al! =)Это значит, что при нахождении в сообщении смайлика, бот ответит "=)" либо "Cool! :)", либо "Ya dolgo r}|{al! =)". В программе есть встроенная защита от повторений сообщений, по этому цепной реакции не возникнет. Если программа не смогла найти ключевых слов в сообщении, породится событие "UNKNOWN" и будет выбрано любое сообщение из этого события.
Если хорошо отредактировать этот файл, можно создать атмосферу, характерную для Вашего любимого игрового сервера. Дополнят картину привычные для этого сервера игроки. Обычно такими являются часто играющие игроки. Имена ботов хранятся в файле Botnames.txtУдалите всё из файла BotNames.txt и занесите туда эти строчки (для обитателей танка: выделите это мышкой, скопируйте в буфер обмена, затем вставьте куда следует ;-) . Это еще не всё. Откройте файл PodBot.cfg и занесите ближе к концу вот такую строчку: "detailnames off". Этим мы убрали обрамление ника всякой гадостью типа его скилла и клана [POD].
Играйте на здоровье!
Руководство по созданию путей для POD
1. Waypoint's - что это такое ?
Waypoint'ы - это точки на карте, которые использует бот для навигации. Они позволяют боту двигаться по карте, не сталкиваясь с препятствиями, находить места для установки бомбы, заложников. Эти точки не отображаются во время игры.
Боты знают, по какому пути идти, используя соединения между этими точками.
Для того, чтобы боты могли бегать по всем закоулкам карты, waypoint'ы должны быть расположены повсюду на карте. Без них боты будут просто стоять на месте либо выбирать направление движения случайно, при этом натыкаясь на стены и другие препятствия. Waypoint'ы также позволяют боту "знать" где на данной карте находятся цели - заложники, места для установки бомб.
Этот документ описывает команды, необходимые для создания или изменения файла путей (для POD-бота). При создании или редактировании путей необходимо, чтобы НЕ БЫЛО подключенных к текущей игре ботов, иначе могут произойти фатальные ошибки (с потерей всех не сохраненных данных). Создайте LAN Game, подключитесь к игре, расположите точки и их соединения на карте с помощью команд, приведенных ниже. Далее сохраните файл путей, отсоединитесь от сервера, затем опять создайте игру, на этот раз с ботами, для того, чтобы проверить, насколько хорошо (или плохо) они двигаются по только что созданным точкам.
2.Как точки путей выглядят на карте ?
Точки отображаются в виде вертикальных линий, которые выглядят, как молнии, или что-то типа этого. Вертикальная линия, с помощью которой отображается точка, имеет такую же высоту, как и игрок. Различные типы точек имеют разные цвета.
Waypoint'ы хранятся в файле с таким же именем, как и у названия карты, но с расширением ".pwf" вместо ".bsp" для карт. Например, для карты de_dust файл путей будет иметь имя de_dust.pwf и будет хранится в папке Half-Life/cstrike/PODBot/WPTDefault.
Файл путей автоматически загружается при открытии карты (если он существует). Если же его нет, необходимо создать его, используя инструкции, указанные ниже.
3. Кратко о консольных командах для редактирования путей.
Доступны следующие консольные команды (ЧУВСТВИТЕЛЬНЫЕ к регистру):
"waypoint on" - Включает отображение Waypoint'ов
"waypoint on noclip" - Включает редактирование путей с читом Noclip, который позволяет проходить сквозь стены
"waypoint off" -Выключает отображение Waypoint'ов.
"waypoint add" - Добавляет точку в место, где в это время расположен игрок (т.е. Вы). После выбора команды появляется всплывающее меню, позволяющее указать различные типы точек.
"waypoint delete" -Удаляет точку, ближайшую к игроку.
"waypoint find x" - Показывает направление к точке номер x
"waypoint showflags" -Показывает все флаги, установленные для точки
"waypoint addflag" - Позволяет вручную добавить флаг к точке.
"waypoint delflag" - Позволяет выбрать флаг текущей точки, подлежащий удалению.
"waypoint setradius x" -Выставляет радиус зоны для текущей точки равным х
"waypoint stats" -Отображает статистику о количестве точек различных типов, поставленных на карте.
"waypoint check" - Проверяет правильность установки точек (осуществляется автоматически при сохранении)
"wayzone calcall" - Вычисляет радиус зоны для всех точек на карте (не нужен для бота версии 1.4х и выше)
"waypoint save" - Сохраняет текущие пути в файл (с проверкой точек и соединений)
"waypoint save nocheck" - То же самое, но сохраняет даже при наличии ошибок.
"waypoint load" - Загружает Waypoint'ы из файла (без сохранения текущих изменений)
"autowaypoint" - Отображает статус режима autowaypoint.
"autowaypoint on" - Включает автоматическую расстановку точек (при движении игрока по карте) .
"autowaypoint off" -Выключает режим автоматической расстановки точек.
"pathwaypoint" - Отображает статуй режима pathwaypoint.
"pathwaypoint on" -Включает режим отображения соединений между точками.
"pathwaypoint off" - Выключает режим соединений.
"pathwaypoint add x" - Соединяет ближайшую к вам точку с той, номер которой вы укажете в команде
"pathwaypoint delete x" - Рассоединяет ближайшую к вам точку и ту точку, номер которой вы укажете в команде
"debuggoal x" - Заставляет ботов использовать точку номер х в качестве Точки Назначения
Для того, чтобы использовать команды, приведенные выше, необходимо использовать консоль. Вы должны начать игру с включенной консолью (используйте строку "hl.exe -console" для запуска игры). Для открытия консоли нажмите клавишу "~", введите команду и нажмите "~" для возвращения к игре.
Вы можете упростить все дело, если назначите горячие клавиши для команд с помощью команды bind. Например, перед редактированием введите:
bind a "waypoint add"
bind d "waypoint delete"
bind l "waypoint load"
bind w "waypoint save"Тогда клавиша a будет служить для добавления точки, d - для удаления, l - для загрузки и W - для сохранения файла путей. Кроме того, эти команды можно сохранить в файле скрипта, и потом только вызывать его при необходимости редактирования командой exec.
Командой "waypoint add" можно добавить waypoint в то место, где расположен игрок. Точки waypoint'ов могут быть поставлены везде, где может пройти игрок. При установке точки вы услышите звук, подтверждающий действие. После ввода команды на экран будет выведено меню, позволяющее выбрать тип точки.
"Normal Waypoint" (Обычная точка) - Ставит точку, которая используется для обычного передвижения по карте от одной точки к другой. Необходимо ставить такие очки повсюду на карте (но придерживаясь определенной дистанции между ними), так как боты используют их для того, чтобы прятаться и варьировать пути движения. Цвет точек зеленый.
![]()
Обычная точка
"Terrorist Important Waypoint"и "Counter Important Waypoint" (Точка, важная для террористов и Точка, важная для контров)
Это стратегические точки для каждой из команд. Боты используют их для патрулирования по карте. Как они это делают, зависит от типа карты. На DE_ картах необходимо поставить много таких точек для контр-террористов вокруг места, где устанавливается бомба и только 2-3 стратегические точки для террористов. Контр-террористы будут почти всегда выбирать в качестве цели точки, важные для CT и только иногда пойдут к точкам, важным для террористов. Террористам разрешено идти к точкам, важным для любой из команд. Система выбора важных точек меняется в зависимости от типа карты, например для CS_ карт все наоборот.
Точка для террористов красная, для контров синяя.
![]()
Стратегическая точка для контр-террористов
"Ladder "("Лестница")
Эти точки необходимо ставить на лестнице, если вы хотите, чтобы боты ее использовали. Нижнюю точку поставьте, когда вы уже подошли вплотную к лестнице. Наверху лестницы необходимо поставить вторую точку. Ставьте ее когда вы уже находитесь над лестницей. Если лестница очень длинная, можно поставить несколько таких точек межу этими крайними. В большинстве случаев этот тип точек необходимо соединять вручную с помощью команды pathwaypoint add . Если между точками не будет соединения, боты НЕ БУДУТ использовать лестницу. Цвет фиолетовый.
![]()
Лестница
"Rescue Point" ("Точка спасения")
Данная точка должна быть установлена только на cs_ картах. Это место, куда контр-террористы должны вести заложников. Обычно ставится только 1 штука (в зависимости от того, сколько Зон Спасения есть на карте). Цвет белый.
![]()
Точка спасения
"Goal Point" ("Цель карты")
Поставьте ее там, где расположены цели карты. На DE_ картах это место установки бомбы, на cs картах - это место, откуда надо уводить заложников. Для AS карт это точка, куда надо двигаться VIP'ам. Цвет фиолетовый (как и для лестниц)
![]()
Целевая точка
"Camp Start" ("Кемперское место")
Это точка, где боты будут кемперить. Для того, чтобы ее поставить, смотрите туда же, куда должен смотреть бот, когда начнет кемперить. Для того, чтобы он присел при этом, просто держите кнопку приседания, когда добавляете точку.
Также надо указать:
"Camp End" ("Направление взгляда")
Выбрав это вы установите конечную точку, в которую будет смотреть бот во время того, как будет кемперить. Смотрите прямо по направлению, куда должен смотреть бот и добавьте точку.
Замечание: Вы не можете добавить этот тип точки до того, как поставите точку типа "Кемперское место".
Обычный цвет - голубой, если вы установите флаг для точки, она будет с красным или синим оттенком.
![]()
"Jump" ("Прыжок") Это одна из первых возможностей обучения в POD (планируется значительное расширение таких возможностей). После выбора этого ваши движения будут контролироваться и если вы прыгнете, нормальная точка будет поставлена в месте начала прыжка, другая - в месте приземления. Т.е. тип точек является стандартным, но красная линия связи между точками покажет, что это соединение типа "Прыжок". Также можно создать такое соединение между уже существующими точками. Для этого необходимо, чтобы в месте прыжка и приземления уже были ранее созданы точки. При этом позиция точек будет модифицирована с учетом ее начального положения и места прыжка.
![]()
Точки, соединенные связью "Прыжок"
Замечание:
Для установки точки, где необходимо присесть, просто держите кнопку приседания во время добавления точки.
Как вы заметили, не существует отдельных путей для разных команд. Это уменьшает время создания файла путей.
Командой "waypoint delete" можно удалить точку, ближайшую к игроку. Точка должна быть на расстоянии максимум 40 юнитов от игрока (1/2 высоты игрока). Вам необходимо стоять вплотную к точки для ее удаления. Это позволяет избежать случайного удаления точки, которая находится далеко от вас. При успешном удалении вы услышите подтвержающий звук.
"waypoint addflag/deleteflag" дает возможность добавить некоторые дополнительные параметры для точки. Первый, "Block with hostage"используется редко. Если вы установите этот параметр для точки, Бот не будет использовать его, если за ним следуют заложники. Два других параметра необходимы для того, чтобы сделать снайперскую точку специфической для команды.
С помощью "waypoint save" можно сохранить информацию о точках в файл. Перед сохранением (если вы не добавите аргумент "nocheck"), точки и пути будут проверены на наличие грубых ошибок и если что-либо не так, вам будет об этом сообщено и ничего не будет сохранено. Во время проверки CS "подвиснет" на некоторое время, поэтому не волнуйтесь, игра не зависла, просто подождите! Файл waypoint'ов будет иметь такое же имя, как и текущая карта, с расширением "*.pwf". Файл будет сохранен в папку "cstrike/PODBot". Текущее имя игрока будет сохранено в качестве имя создателя путей.
Команда "waypoint load" очистит все waypoint'ы на текущей карте и загрузит их из файла waypoint'ов. Это хороший способ для того, чтобы отменить те изменения, которые вы сделали после последнего сохранения.
Замечание: не существует способа отмены изменения одной последней точки. Вы должны использовать "waypoint delete" для удаления точек по одной.
Команда "autowaypoint" позволяет автоматически устанавливать точки, когда вы ходите по карте. Для включения этой функции введите: "autowaypoint on". Когда вы перемещаетесь по карте, новая точка будет установлена автоматически на расстоянии 200 юнитов от уже установленных. Если другая точка установлена в радиусе 200 юнитов, новая тока установлена не будет. Поэтому если вы хотите установить несколько точек близко одна к другой, необходимо пользоваться командой "waypoint add".
Если вам не нравится, как была установлена точка автоматически, вы можете удалить ее с помощью команды "waypoint delete", предварительно отключив функцию "autowaypoint".
Когда используете функцию автоматической расстановки точек, старайтесь держатся центра проходов и всегда ставить точки по ОБЕ стороны дверей. Для этого вам придется поставить некоторые точки вручную с помощью команды "waypoint add".
Не используйте функцию авторасстановки точек для лестниц или прыжков!
Команда "pathwaypoint" позволяет отобразить соединения между точками (соединения, по которым боты будут двигаться от одной точки к другой). Включите эту функцию с помощью команды "pathwaypoint on". Когда вы подойдете вплотную к точке, вы увидите белые или желтые линии, соединяющие эту точку с некоторыми другими, которые бот будет считать "достижимыми" при движении из нее. Если соединение двустороннее, линия будет желтая, белая линия соответствует одностороннему соединению. "Достижимыми" точками считаются точки, между которыми нет препятствий. Некоторые точки не будут считаться достижимыми по разным причинам. Например, точки, висящие в воздухе над ботом не будут считаться достижимыми, так как не может подпрыгнуть достаточно высоко. Также точки, находящиеся слишком далеко от текущего местоположения, не будут достижимыми.
Боты будут двигаться от одной точки к другой ТОЛЬКО если межу точками существует соединение. Поэтому при создании путей к карте очень рекомендую включать режим Pathwaypoint для того, чтобы вы могли всегда видеть соединения между точками. Также необходимо проверять, существуют ли соединения между точками в ОБОИХ НАПРАВЛЕНИЯХ. Если существует соединение от точки А к точке В, это не значит что существует соединения от В к А. Команда "pathwaypoint add" позволяет вручную создать соединения между двумя точками. Это необходимо в тех случаях, когда путь между точками блокирован каким либо препятствием (например, дверью) и вы хотите создать соединение между этими точками. Также точки типа "лестница" в большинстве случаев должны быть соединены вручную. Подойдите близко к точке, ОТ которой необходимо создать соединение и используйте команду "pathwaypoint add x", причем х должно быть заменено на номер точки, К которой необходимо создать соединение. Номер точки выводится в левый верхний угол экрана когда вы находитесь рядом с точкой.
Например, если вы хотите создать соединение между точками номер 250 и 251, сначала необходимо стать рядом с точкой номер 250. После этого ввести в консоли: "pathwaypoint add 251". После этого вы должны видеть белую линию соединения между этими точками. Обратите внимание, что это ОДНОСТОРОННЕЕ соединение. Ели вы хотите, чтобы боты бегали и в обратном направлении, необходимо стать рядом со второй точкой и добавить соединение к первой.
![]()
Одностороннее соединение
![]()
Двустороннее соединение
Команда "pathwaypoint delete x" похожа на "add" команду. Только она не добавляет, а удаляет соединение от начальной точки до конечной. Это может понадобится в некоторых случаях, например для дверей, которые открываются только с одной стороны.
После добавления точек проверьте, используя режим pathwaypoint on, реальную достижимость точек. Иногда случается, что вы добавляете точку вроде бы близко от другой и также вроде бы между этими точками нет препятствий, однако ядро Half-Life не считает точку достижимой. Поэтому необходимо проверить соединения для точек в ОБОИХ направлениях. Обычно нет необходимости следить за этим, однако в некоторых ситуациях необходимо потратить некоторое время соединяя точки вручную (например, для лестниц).
Для того, чтобы поставить точку, где бот должен присесть, просто присядьте сами во время добавления точки. Боты будут автоматически приседать при приближении к точке (если это не кемперское место).
4. Что такое WayZone?
Боты будут выбирать точку в пределах этого радиуса, как точку куда следует идти, это просто делает движение не таким "статическим". Точки типа "Лестница", "Кемперское место" и "Цель карты" всегда имеют радиус 0. Не пытайтесь изменить его. После того, как POD-бот вычислил все Зоны, необходимо проверить для всех точек, являются ли они действительно достижимыми в радиусе WayZone. Старайтесь быть внимательными при установке радиуса. Возле углов лучше уменьшить радиус. Также желательно поставить радиус 0 для некоторых узких дверных проемов. Для того, чтобы вручную установить радиус зоны, необходимо, находясь возле точки, ввести в консоли "waypoint setradius x", где x - значение радиуса, которое требуется присвоить точке. Допускаются значения от 0 до 128. Чем больше, тем больше радиус. Также заметьте, что если включен режим pathwaypoints, радиус будет показан синими линиями (если он не равен 0)**SMOKE**