Я засунул Backrooms в Counter-Strike 1.6.

Единственный способ выжить - найти заветную табличку
Единственный способ выжить - найти заветную табличку

Я сделал для Counter-Strike 1.6 режим «Побег из Закулисья»: обе команды просыпаются в случайных точках процедурно сгенерированного лабиринта Уровня 0 и ищут светящуюся дверь EXIT. По коридорам ходит существо, которое идёт на звук выстрелов. Сервер поднят, режим играбелен. Карты генерируются полностью уникальными и меняются каждые 10 минут. Вы не встретите ни одной одинаковой карты.

Что это за режим

  • Лабиринт 48×48 клеток, генерируется заново для каждой карты. Двух одинаковых не бывает.
  • Обе команды появляются далеко друг от друга и далеко от выхода. Никто не знает, где EXIT.
  • Нашёл дверь, прошёл в лабораторию, добежал до стальных ворот — спасён. Каждый спасшийся приносит команде очко. Спасшийся из раунда выбывает.
  • Погибший возрождается через 15 секунд в случайной точке лабиринта.
  • Раунд 6 минут. Кто не успел, остался на Уровне 0.
  • Закупка открыта весь раунд, зона закупки — весь лабиринт. Стрелять по врагам можно и нужно, но об этом ниже.

Лор

Из внутреннего отчёта корпорации ASYNC, 198X год.

Установка открыла проход.

За проходом оказалось не другое место, а изнанка нашего: километры пустых офисных помещений без окон, без людей и без конца.

Персонал называет это «Закулисьем». Первая группа вернулась через четыре часа по своим часам и через одиннадцать дней по нашим. Второй группы нет.

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

Установка ещё держит один проход. Он светится. Над ним горит зелёная табличка EXIT.

Сюжет как в порнофильме...я старался

Больше лора в игре нет, и специально его больше не будет: игроку в CS нужны правила, а не вики. Всё остальное рассказывает сама карта.

Бактерия

В лабиринте живёт то, что исследователи ASYNC назвали «Бактерией». Длинная, сгорбленная, суставчатая. Она глухо бродит по коридорам, пока не услышит шум: выстрел, топот, крик. Тогда она кричит в ответ и бежит быстрее вас. Лампы вокруг неё мигают и гаснут метров за двадцать. Пуль она не боится. Встреча заканчивается мгновенно.

Это и есть главный конфликт режима: врагов можно перестрелять, но каждая очередь зовёт её. Команда, которая идёт тихо, чаще доходит до выхода.

Она уже здесь. Чёрный силуэт под лампами в глубине кадра. Ближе снимать не получилось: не выжил.
Она уже здесь. Чёрный силуэт под лампами в глубине кадра. Ближе снимать не получилось: не выжил.

Технически: модель ходит по лабиринту через поиск в ширину по сетке, цель выбирает с гистерезисом (три секунды или в полтора раза более близкая цель), живых игроков предпочитает ботам. Свет секторов вокруг неё переключается движковыми light styles, поэтому темнота настоящая, а не притухание.

Что ещё здесь водится

  • Провалы в полу. Падение длится три секунды, дна нет.
  • Блэкаут на весь сектор. Ненадолго. Обычно.
  • Силуэты на краю видимости, которые не двигаются, пока на них смотришь.
  • Стук в стену из ниоткуда, шаги там, где никого нет.
  • Скрытые проходы в стенах. Часть из них ведёт куда угодно, только не к выходу

Пока на этом все. Планируется добавить очень многое..

Под капотом

Генератор на Python пишет `.map` в формате Valve220: лабиринт и целиком лаборатория лежат в одной BSP, лабиринт на высоте, лаборатория глубоко внизу, между ними телепорты. Компилируется цепочкой sdHLT с `-extra`.Самое дорогое в GoldSrc оказалось не геометрия, а свет и звук.

Весь свет лабиринта разложен на 25 переключаемых стилей (сетка секторов 5×5), чтобы гасить его вокруг Бактерии по-настоящему.

У клиента около 120 статических звуковых каналов на всю карту, поэтому гул ламп стоит один на блок, а фоновые звуки лаборатории вставлены первыми в список энтить — иначе клиент их молча выкидывает.

Текстуры собираются скриптом в свой WAD, звуки частично синтезированы, частично взяты с Freesound под CC (авторы перечислены в MOTD сервера). Плагин на AMX Mod X: 4,5 тысячи строк, там раунд, счёт, спавны по максимину расстояний, аномалии.

Что не работает

  • Боты не понимают телепорты и порталы. Они хорошо бегают по лабиринту, но до лаборатории доходят только люди.
  • Модель Бактерии сырая. Анимаций пять, текстура одна.
  • 32 слота без просадок FPS ещё не проверял. `[вписать, до скольких игроков реально гонял]`
  • Стены и ковролин под референс ещё не дотянуты, пока по-настоящему похож только потолок.
  • Заходить нужно из Steam-версии игры. На non-steam сборках сервер сейчас не пустит.

Разумеется, это все будет исправлено.

Портал ASYNC Corporation
Портал ASYNC Corporation

Как зайти?

В консоли игры:

connect 94.41.188.47:27015

Либо вы можете найти сервер, отсортировав по картам.

Карты режима Escape From Backrooms имеют индекс "efb_".
Карты режима Escape From Backrooms имеют индекс "efb_".

Что мне нужно от вас

Не «круто» и не «фу», а конкретика:

1. Сколько раундов вы поняли, куда идти, и было ли это интересно после третьего?

2. Бактерия: страшно, скучно или бесит? В каком месте?

3. Где лабиринт читается как «коробки», а не как Закулисье?

4. FPS и лаги при вашем количестве игроков.

Отвечу на всё, включая злое. Если разнесёте режим по делу, это и есть цель поста.

6
2
1