Counter-Strike: Source Guide

Боты CS:Source | Редактирование Ботов в Counter-Strike: Source for Counter-Strike: Source

Боты CS:Source | Редактирование Ботов в Counter-Strike: Source

Overview

В этом руководстве находится туториал по редактированию ботов в Counter-Strike: Source.

English Guide | Руководство на Английском

[link]

1. Немного теории

Боты — это неиграбельные персонажи (NPC), которые ведут себя почти как настоящие игроки. Впервые были представлены с помощью PODbot (Ping Of Death) для Counter-Strike v1.5 и официально в Counter-Strike: Condition Zero, благодаря ИИ, созданный Gearbox Software и Turtle Rock Studios.

В Counter-Strike Source, боты теперь предупреждают союзников о снайперах, если они есть в пределах видимости. Эти цитаты были взяты с вырезанных цитатах, из предыдущих частей. Ботам-снайперам теперь больше известно о своем окружении и будут занимать длинные пути в своей обороняющей позиции. В связи с этим, видимость снайперов увеличилось и они будут атаковать вместе с союзниками, с целью уничтожить противника. Боты которые видят вражеского снайпера будут искать прикрытие и будут стоять рядом со стеной, а не стоя на месте и атаковать как это было в предыдущих частях. В некоторых случаях, боты могут атаковать в близких дистанциях, во время обстрела или в обход на фланг снайпера. Однако, даже если игрок не снайпер, они могут все еще пытаются это действие с любым оружием, кроме снайперского оружия.

Вражеские боты реагируют на вашу стрельбу, и часто образуют от мала до велика группы, с целью убить игрока, в отличие от предыдущих игр серии, где игрок сталкивался «один на один». Это, наверное, способ заставить игрока действовать с союзниками-ботами. Действовать в одиночку против них будет сложнее, даже если у них низкий навык. Кроме того, когда игрок убивает бота, они перепрограммируются фокусировать на человеке-игроке, а после и на других ботов, если они не находятся рядом.

2. Разбор botprofile.db | Параметры

Информация о ботах находится в файле botprofile.db, который в последней версии игры находится в cstrike_pak_dir.vpk (Открыть такой файл можно с помощью GCFScape).

Открыть botprofile.db можно как текстовым файлом, но рекомендую использовать Notepad++ или Visual Studio Code.

В начале файла находится все параметры конфигурации.

Default Skill = 0 – 100 Aggression = 0 – 100 ReactionTime = 0 – 1 AttackDelay = 0 – 1 Teamwork = 0 – 100 WeaponPreference = Cost = 0 Difficulty = EASY+NORMAL+HARD+EXPERT VoicePitch = 0 – 100 – 200 Skin = 0 – 3 End

Обозначение каждого параметра

Skill – Навык бота, в этом случае это точность прицеливания. Значение можно дать от 0 до 100.

Aggression – Агрессия бота. При высоком значении бот будет рашить если он заметит противника, при низком же попытается спрятаться. Значение можно поставить от 0 до 100.

ReactionTime – Время реакции. Параметр при котором через сколько времени бот после того как заметит вас начнет прицеливаться. Значение в этом параметре можно поставить от 0.1 до 1.

AttackDelay – Задержка аттаки бота. Параметр, при котором после прицеливания даётся время до стрельбы. При нулевом значении бот после прицеливания начнёт стельбу моментально. Значение можно поставить от 0 до 100.

Teamwork – Командная работа бота. При высоком значении бот будет стараться быть в другими товарищами, при низком предпочтёт пойти в одиночку, так-же будет отказываться выполнять команды игроков если выключен “Боты заодно с людьми”. Значение можно поставить от 0 до 100.

WeaponPreference – Предпочитаемое оружие для бота. Дав этот параметр боту, он будет покупать то оружие, что было обозначено в конфигурации.

galil – IDF Defender ak47 – CV-47 scout – Schmidt Scout sg552 – Krieg 552 awp – Magnum Sniper Rifle g3sg1 – D3/AU1 famas – Clarion 5.56 m4a1 – Maverick M4A1 Carbine aug – Bullpup sg550 – Krieg 550 Commando glock – 9x19mm Sidearm usp – KM .45 Tactical p228 – 228 Compact deagle – Night Hawk .50C elite – .40 Dual Elites fiveseven – ES Five-Seven m3 – Leone 12 Gauge Super xm1014 – Leone YG1265 Auto Shotgun mac10 – Ingram MAC-10 tmp – Schmidt Machine Pistol mp5navy – KM Sub-Machine Gun ump45 – KM UMP45 p90 – ES C90 m249 – M249

Пример:
WeaponPreference = ak47 WeaponPreference = deagle

Бот будет покупать только Калаш и Дигл, если у него будет достаточно денег.

Необязательно в WeaponPreference ставить гранаты, бронежилет и дефуз для спецназа т.к. боты их и так будут покупать.

Cost – Параметр при котором бот будет спавниться в определённом сложности, их всего 4:

Номер
Название
0
Низкий
1
Средний
2
Высокий
3
Эксперт

Difficulty – Тоже самое с Cost, но в этом случае можно добавить несколько сложностей для одной конфигурации.

Пример:
Difficulty = EXPERT

Бот будет спавниться на сложности “Эксперт”

Difficulty = EASY+NORMAL

Бот будет спавниться на сложности “Низкий” и “Средний”

VoicePitch – Тон голоса бота. Здесь можно и без подробностей. Поставив большое значение голос станет выше, а меньше – наоборот. Дефолтное значение 100.

Skin = Облик бота. В игре в кажой команде есть 4 скина.

3. Разбор botprofile.db | Шаблоны

В оригинальном файле содержатся шаблоны выбора оружия и сложности, а так же поведения ботов.

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

Template Rifle WeaponPreference = m4a1 WeaponPreference = ak47 WeaponPreference = famas WeaponPreference = galil WeaponPreference = mp5 End

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

Template Easy Skill = 0 Aggression = 20 ReactionTime = 0.5 AttackDelay = 1.5 Cost = 1 Difficulty = EASY VoicePitch = 110 End

4. Создание нового шаблона и добавление/редактирование ботов

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

Например, вот шаблон поведения низкоскильного бота:

Template Novenkiy Skill = 0 Aggression = 0 ReactionTime = 0.7 AttackDelay = 1.5 Cost = 1 Difficulty = EASY End

А это шаблон поведения очень скиллового, практически имбового бота:

Template Global Skill = 100 Aggression = 100 ReactionTime = 0 AttackDelay = 0 Cost = 2 Difficulty = HARD+EXPERT End

Шаблон предпочитаемого оружия для бота, который будет покупать только Скаут, АВП, и Дигл.

Template Avaper WeaponPreference = awp WeaponPreference = scout WeaponPreference = deagle End

Здесь на самом деле не обязательно делать шаблон отдельно для поведения бота или предпочитаемому оружию, можно всё соединить воедино и получится такая вот “солянка”. Это шаблон бота, который будет очень скилловым, он в основном будет покупать штурмовые винтовки и дигл, а также спавниться на всех сложностях:

Template Kiberkotleta Skill = 80 Aggression = 100 ReactionTime = 0 AttackDelay = 0 WeaponPreference = m4a1 WeaponPreference = ak47 WeaponPreference = deagle Cost = 1 Difficulty = EASY+NORMAL+HARD+EXPERT VoicePitch = 110 End

Добавление бота

Для того что-бы добавить нового бота, надо написать название шаблона и затем имя. Если имя с пробелами или другими знаками, то нужно выделить имя фигурными скобками. Таким образом мы создаём профиль бота.

Так выглядит один из дефолтных ботов:

VeryHard+Rifle Seth Skin = 2 VoicePitch = 100 End

Заметьте, что если хотите что-бы бот имел несколько шаблонов, то пишите названия шаблонов через ‘+’
Так же убедитесь что после каждого профиля бота стоит End, а иначе боты не будут спавниться.

Используя нами созданными шаблонами можно создать новых ботов или же редактировать дефолтных. Используя шаблон “Kiberkotleta” я создал 4 бота:

Kiberkotleta Vasyan Skin = 90 End Kiberkotleta Misha VoicePitch = 80 End Kiberkotleta+Avaper “Gena Bukin” VoicePitch = 100 End Kiberkotleta “Blet Nevelny” VoicePitch = 125 End

И как результат у меня получилось, в одной из играх мне удалось заспавнить кастомного бота

5. Конец

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

Надеюсь этот тутор мог обучить вас созданию ботов.

SteamSolo.com