Стаття по створенню навігації для ботів в counter-strike source

ЦЕЙ САЙТ ПРОДОВЖИВ СВОЄ ІСНУВАННЯ ТУТ: www.CrxGameWorld.ru

Для початку потрібно завантажити в грі потрібну карту. Для автогенерации навігації використовується команда nav_generate (після її введення потрібно почекати поки в консолі НЕ вилізе повідомлення, що nav- файл збережений: Navigation map 'c: \ games \ counterstrikesource \ cstrike \ maps \ mymap .nav' saved). Іноді ця команда робить зовсім не те, що потрібно, тому є ряд команд для ручної правки навігації.

Навігація складається з "прямокутників" (при редагуванні помічених як "area"), з'єднаних між собою. Прямокутники навігації з'єднуються або в обох напрямках (боти зможуть бігати з одного прямокутника в інший і назад), або в одному напрямку (боти будуть пробігати з одного прямокутника в інший, але назад в попередній прямокутник з цього не зможуть повернутися).

Мої умовні позначення:

Активний прямокутник - рамка якого пофарбована жовтим кольором.

Виділений прямокутник - рамка якого пофарбована блакитним кольором.

Тепер пройдемося по основним командам:

nav_edit 1 - включення режиму ручного редагування навігації (0 - виключення).

nav_begin_area - створення першої точки майбутнього прямокутника навігації.

nav_end_area - (працює, якщо перед цим ввести nav_begin_area) створення другої точки прямокутника (по діагоналі) з завершенням створення прямокутника.

nav _mark - виділяє активний прямокутник (при цьому рамка прямокутника забарвлюється в блакитний колір). Щоб зняти виділення необхідно застосувати цю команду до виділеного прямокутника.

nav_connect - створює з'єднання від виділеного прямокутника до активного (в одному напрямку).

nav_disconnect - розриває з'єднання від виділеного прямокутника до активного.

nav_jump - позначає активний прямокутник як місце, в якому обов'язково потрібно рухатися стрибками (при цьому у активного прямокутника автоматично по діагоналях проводяться 2 лінії, що перетинаються в центрі).

nav_no_jump - позначає активний прямокутник як місце, в якому можна стрибати (при цьому у активного прямокутника автоматично в центрі з'являється ромбик).

nav_crouch - позначає активний прямокутник як місце, в якому обов'язково потрібно рухатися сидячи (при цьому у активного прямокутника автоматично по діагоналі проводиться лінія).

nav_corner_lower - опускає виділений прямокутник трошки нижче.

nav_corner_raise - підіймає виділений прямокутник трошки вище.

nav_corner_select - позначає кут виділеного прямокутника (вертикальної синьою лінією), над яким можна виконувати операції командами nav_corner_lower і nav_corner_raise. Вводячи цю команду кілька разів поспіль, що виділяється кут буде змінюватися.

nav_merge - об'єднує активний прямокутник з виділеним в один (за умови, що прилеглі боку прямокутників рівні).

nav_save - збереження навігації. НАВІГАЦІЯ НЕ ЗБЕРІГАЄТЬСЯ АВТОМАТИЧНО ПРИ ВИХОДІ З КАРТИ, ТОМУ НЕ ЗАБУВАЙТЕ ЗБЕРІГАТИ ЇЇ У ручному.

Для зручності можна команди "забіндити". Наприклад: bind q "nav_mark" - при натисненні на клавішу q активний прямокутник буде виділятися.

Так виглядає неактивний прямокутник (рамка червона):

Так виглядає активний прямокутник (рамка жовта):

Стаття по створенню навігації для ботів в counter-strike source

Так виглядає виділений (командою nav_mark) прямокутник (рамка блакитного кольору):

Стаття по створенню навігації для ботів в counter-strike source

Так виглядає прямокутник після використання команди nav_jump:

Стаття по створенню навігації для ботів в counter-strike source

Так виглядає прямокутник після використання команди nav_no_jump:

Стаття по створенню навігації для ботів в counter-strike source

Так виглядає прямокутник після використання команди nav_crouch:

Стаття по створенню навігації для ботів в counter-strike source

Схожі статті