Этот предмет из эпохи инцидента в Чёрной Мезе. Этот предмет из эпохи Альянса.
Doll2.png Внимание! Эта статья ещё не доведена до высоких стандартов качества, согласно нашему проекту очистки. Она может содержать фактические ошибки и глупости, а также иметь грамматические, орфографические и структурные ошибки или просто проблемы со структурой. Статью рекомендуется читать с осторожностью.

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

NPC — неигровой персонаж, управляемый игровым искусственным интеллектом.

Обзор[править | править код]

NPC играют разную роль в серии Half-Life: от незначительных (слабые враги вроде хедкрабов), до таких, без которых игры попросту не было бы (GLaDOS, Аликс Вэнс) или была бы, но без значительного куска сюжета или геймплея. Игровой искусственный интеллект NPC позволяет сделать их очень похожими на реальных людей или животных, а также сделать каждое прохождение игры несколько другим, не меняя основной сюжет (простой пример: комната с обходным путём, которым враждебные NPC могут воспользоваться с некоторой вероятностью).

Все NPC в серии Half-Life делятся на 4 типа: враждебные (хедкраб, муравьиный лев и т.п.), союзные (члены сопротивления, вортигонты, охранники и т.п), нейтральные (вороны, бойды), сюжетные (доктор Кляйнер, GLaDOS, доктор Брин и т.п.).

NPC на GoldSrc[править | править код]

GoldSrc — первый движок, поддерживающий сюжетную роль NPC. На данном движке был выпущен Half-Life, а также его дополнения.

На движке GoldSrc, NPC можно создать только в редакторе уровней. Каждому конкретному NPC можно указать: Цель (что активируется/деактивируется, когда NPC будет активирован), Имя (как NPC называется на карте), Рендер (прозрачность NPC), Цвет (в какой цвет NPC будет покрашен), Триггер условия (что должно произойти с NPC, чтобы активировался триггер цели), Триггер цели (что должно активироваться/деактивироваться, когда сработает триггер условия), Фраза при использовании (что скажет NPC, когда игрок попросит его пойти с ним), Фраза при прекращении использования (что скажет NPC, когда игрок попросит его прекратить ходить за ним), Анимация (какую анимацию NPC может проиграть). Помимо этого, NPC может реагировать на различные энтити-объекты. Из-за некоторых особенностей кода Half-Life, разработчик не может указать для NPC тип реакции на игрока и других NPC. Помимо всего прочего, NPC способны проигрывать любые звуки, с помощью рта, который становиться более открытым/закрытым, по мере изменения громкости звука.

В связи с ошибками в кодировании (а иногда в маппинге), NPC имеют ряд багов, способных частично или полностью нарушить задуманное разработчиком.

NPC на Source Engine[править | править код]

Source Engine — движок второй части Half-Life и её эпизодов, который имеет огромные возможности в создании реалистичных персонажей.

В играх на движке Source, каждого NPC можно создать либо через консоль, прописав соответствующую команду, либо в редакторе уровней (более практичный способ, так как позволяет настраивать конкретных NPC). NPC можно задать огромное количество параметров (в основном консольных): Имя, Рендер, Цвет, Наличие тени (включение/выключение тени от объекта), Фильтрация урона (фильтрует энтити, способные наносить урон объекту), Цель, Имя отряда, Группа подсказок (позволяет задать NPC его уникальную цепь подсказок в ориентировании), Фраза при использовании, Фраза при прекращении использования, Parent, Оружие, Статическую эмоцию (меняется в сценах), Модель, множество прочих переменных. В отличии от NPC на GoldSrc, NPC на Source говорят фразы, через заранее созданные в утилите Faceposer "сценки". В данной утилите, происходит по-временная настройка позиции губ NPC, что позволяет создавать реалистичные диалоги/монологи и тд. Кроме того, данные "сценки" поддерживают технологию захвата предметов (наиболее ярко это продемонстрировано в Half-Life 2: Episode Two). Помимо прочего, маппер способен поменять отношение NPC к игроку, с помощью энтити ai_relationship.

Технология[править | править код]

С помощью триггеров и кодов, можно сделать любые скриптовые сцены с применением технологии мимики и захвата движения.

Особенности ИИ в серии Half-Life[править | править код]

Искусственный интеллект Half-Life имеет ряд особенностей:

  • Все NPC имеют лишь четыре вида реакции: Ненависть (NPC попытается уничтожить объект), Нейтралитет (NPC игнорирует объект), Дружба (NPC старается помогать объекту), Страх (NPC пытается убежать от объекта).
  • В серии Half-Life большинству персонажей не прописаны элементарные правила за их ненадобностью (пример: NPC, если их заспавнить в воздухе, будут просто падать, пока не опустятся до земли).
Игровая механика
Основное HUD · Здоровье и урон
Настройки сложности Half-Life · Half-Life 2
Игровые движки GoldSrc (Xash3D) · Source · Source 2
Баги Бесконечное пополнение здоровья · Ускорение коллизией · Ускоренная распрыжка задом · Распрыжка · Телепортация NPC
Разное Hammer Units · Warpball · Консоль разработчика · Консольные команды
Материалы сообщества доступны в соответствии с условиями лицензии CC-BY-SA, если не указано иное.