Перейти к основному содержимому

Отряды NPC и захват территорий

Второй тип наполнения карты, помимо точек, — отряды (spawns): группы NPC конкретной фракции, которые патрулируют локацию, могут вступать в бой с игроком или другими отрядами и — в некоторых случаях — удерживают территорию.

Структура отряда

{
"group": "DUTY",
"strength": "STALKER",
"n": 4,
"r": 25,
"pos": "200:150",
"title": "Блокпост Долга",
"description": "Патруль удерживает подступы к Бару",
"condition": {},
"actions": { "add": ["блокпост_взят"] },
"data": { "angryOnPlayer": false }
}
ПолеЗначение
groupФракция отряда — см. справочник фракций
strengthСила/уровень отряда: WEAK, STALKER, MIDDLE, MASTER, STRONG
nКоличество юнитов в отряде
rРадиус патрулирования вокруг точки pos
condition / actionsТа же система, что и у точек: отряд появляется по условию, а его actions выполняются при взятии территории (см. ниже)
dataФлаги поведения конкретного отряда (см. ниже)

Флаги поведения (data)

ФлагЭффект
immortalОтряд бессмертен — не может быть уничтожен
untargetОтряд нельзя выбрать целью
angryОтряд враждебен ко всем, независимо от фракционных отношений
angryOnPlayerОтряд враждебен конкретно к игроку
ignorePlayerОтряд игнорирует игрока (не атакует и не реагирует)
alwaysIgnoredОтряд всегда игнорируется другими (по нему не открывают огонь)
hideОтряд скрыт (не отображается на карте)

Эти флаги позволяют собрать сюжетно важный отряд с нестандартным поведением — например, союзника, который физически присутствует на карте, но никогда не станет целью боя (immortal + ignorePlayer), или засаду, которая гарантированно атакует игрока при встрече (angryOnPlayer).

Захват территории

Отряд — это не только декорация. Если все юниты отряда уничтожены (точка спавна опустела) и игрок находится рядом с ней достаточное время (около 10 секунд), точка засчитывается как взятая: срабатывают её actions. Это механика контроля территории, завязанная на бой, — например, зачистка блокпоста вражеской фракции с наградой или открытием нового прохода.

"actions": { "add": ["блокпост_духов_зачищен"], "+": ["relation_3:5"] }

В примере выше зачистка блокпоста выдаёт флаг прогресса и одновременно улучшает отношение фракции «Свобода» (id 3) к игроку — типичная связка «территория ↔ отношения», которую стоит закладывать в баланс истории.

Кто добавляет отряды на карту

Как и точки, отряды могут быть добавлены главой истории для конкретной локации:

"spawns": {
"bar": [ { "group": "BANDITS", "strength": "MIDDLE", "n": 3, "...": "..." } ]
}

Далее