Схемы игры «Вий»

Карты сюжетных веток визуальной новеллы. Собрано строго по исходному коду (Kraka42/viy_demo), без домыслов.

Как устроена игра

Игра нелинейная: сцены заканчиваются выходом на экран переходов (экран стрелок), а дальше путь выбирается стрелками по локациям. Игра начинается в локации «Место пробуждения» (less_start).

Локации и сцены: начало и дорога

Локации и сцены: Тёмная Гавань

Локации и сцены: Айрат

Пути и концовки

Четыре основных пути к концовкам: Тёмная Гавань / Адриан, Нарси, Луиза, Карралак.

Предметы, персонажи и клики

Баги и дневник

Файлы без сюжета: мини-игра уборки

ВСЕ: все локации вместе (предварительно)

Предварительно: суммы по сценам без проверки совместимости всех сцен друг с другом — все числа сразу достижимы не всегда. Настроение Нарси посчитано по разовым эффектам (повторяемые −3/+1 — в сноске к таблице); типичный путь Таши не проверен.

СтатМинимумМаксимумТипичный путь (суждение)Сцен
Безумие−23без верха−422
Логика−21+38+1222
Кровь−4+7−122
Настроение Лессабез низа+10+421
Настроение Таши−18без верхане проверено1
Настроение Адрианабез низа+19+82
Настроение Луизыбез низа+10+45
Настроение Адро−11+10+82
Настроение Нарси−8 *+12 *+12
Мораль−3+4+44
Настроение Карралака−1001
Настроение Лени−1001
Настроение Фени−2+4+33
Настроение Бонни−10+2+21

Минимум и максимум — суммы минимумов и максимумов сцен из таблицы ниже. Типичный путь — сумма типичных значений сцен (суждение, не среднее); сумма не подтверждает неподтверждённое слагаемое. Совместимость всех сцен друг с другом не проверялась: все числа сразу достижимы не всегда, это ориентировочные границы, а не гарантированный диапазон по всей игре. «Сцен» показывает, сколько сцен влияет на стат. Настроение Нарси: в суммах только разовые эффекты; сверх них повторяемы: −3 за отказ отдать стол (table_chaos_nars, script_4_tgavan_nars.rpy:740, без флага) — без кодовой границы, фактически ограничен окном эскорта (nars.near ≠ 0); +1 за «Напомнить» о капике (kapik_nars, там же:632-633) — каждый повтор тратит капик, сеттер count (script_inv_text.rpy:159-166) обнуляет остаток и деактивирует предмет при 0, поэтому повтор ограничен запасом капиков; +1 за показ иглы (igla_nars, там же:865) без расхода предмета — верх в окне эскорта не подтверждён; runtime-пределы окна не утверждаются.

Статы: минимумы и максимумы

СценаБезумиеЛогикаКровьНастроение ЛессаНастроение ТашиНастроение АдрианаНастроение ЛуизыНастроение АдроНастроение НарсиМоральНастроение КарралакаНастроение ЛениНастроение ФениНастроение Бонни
Старт: место пробуждения0…+50…+30…+10——————————
Разговор с Лессом−6…+6−2…+90…+2−7…+10——————————
Дорога (перекрёсток)0…+10…+10…+10——————————
Назад: Таша−3…+60…+400−18…без верха—————————
Губерт000−2…0——————————
Сова00−1…+20——————————
Тёмная Гавань: дверь−3…без верха−1…+20без низа…0—без низа…+14без низа…0———————
Гавань−3…+3−2…000—−5…+5————————
Адро−2…+5−4…+300———−7…+5——————
Адро, продолжение0000———−4…+5——————
Адриан0000—−1…+1 *———−2…+2 *————
Нарси−1…+2−1…+10…+10————−6…+8 *—————
Девочка (Луиза): начало−3…+9−4…+60———без низа…+8———————
Девочка (Луиза): продолжение00…+100——−2…0———————
Айрат: вход и церковь0000——−1…+1———————
Айрат: дверь коридора и Лени0…+2−3…+300—————−1…0−1…0−1…0——
Айрат: Карралак0000—————−1…+1——−2…+2—
Айрат: дом Луизы0…+10…+100——−3…+1——−1…+2——0…+1—
Айрат: стража и кот−2…+5−4…+400——————————
Кафе «Кап»: Капибара00−3…00————−2…+40…+1——0…+1—
Бонни0000—————————−10…+2
Вход в хаос0000——————————
Итого (все сцены подряд, предварительно)−23…без верха−21…+38−4…+7без низа…+10−18…без верхабез низа…+19без низа…+10−11…+10−8…+12 *−3…+4−1…0−1…0−2…+4−10…+2

* Строка «Адриан» — сцена adrian_conv_door_white (script3_tgavan_oh.rpy:1291): метка есть, но входа (jump/call) в проверенном наборе не найдено — заглушка; эффекты существуют в коде (меню oh:1393-1404 и 1466-1484, доклад о суициде oh:1300), в «Итого» не входят. Строка «Тёмная Гавань: дверь» — с учётом повторов через ре-вход («Постучать»: Лесс −1 и Адриан −2, script3_tgavan_begin.rpy:113-114; Луиза −1 при уровне Безумия ≥ 1, begin:34; «Развернуться и уйти»: Безумие +1, begin:124): минимумы Лесса/Луизы/Адриана и максимум Безумия предела не имеют — «Итого» наследует снятые пределы. На странице сцены — значения за один визит. Итого предварительно: наследует предварительные края Двери (Адриан −18, Безумие +6) и суммы по сценам без задокументированных цепочек каждого края.

Оговорка: диапазон настроения Луизы на странице «Луиза: разговоры по кнопке» (−1…0) посчитан для одного прохода меню; можно ли открыть меню до и после изменения d5 (script3_airat.rpy:1028), не проверялось, поэтому итог по Луизе условный.

Все сцены в порядке игры. Строка «Итого» — сумма строк таблицы выше (минимумы к минимумам, максимумы к максимумам). Числа строк берутся со страниц сцен и сверяются вручную; таблица совпадает со страницей «Статы». Настроение Нарси посчитано по разовым эффектам; повторяемые см. сноску. Игрок может пройти не все сцены, поэтому итог это границы, а не обязательный путь. Для сцены «Девочка (Луиза): начало» взят вариант «Имя ≠ Вий». Подробности по каждому стату смотри на странице сцены.

Легенда

Безумие Логика Кровь Настроение Лесса Настроение Таши

Белые карточки — выборы. Голубые — сцены и локации. Жёлтые — служебные меню (сложность, разработчик). Чёрные — смерти (BAD END). Зелёные — переходы дальше по сюжету. Пунктир — выход на экран переходов (дальше нелинейно).

Как это править

Каждая страница — обычный HTML-файл в репозитории. Диаграммы — текст Mermaid внутри блока <pre class="mermaid">: правится как текст, удобно через mermaid.live. После сохранения в репозитории сайт обновляется сам.

Проверено по коду 14–19 октября 2026. Если код игры изменился, скажи Лею — он перечитает исходники и обновит схемы.