Назад — встреча с Таширом (Ташей)

script3_nazad.rpy (nazad) · tash_game.rpy · day_1_tash_razg.rpy (razg) · вход стрелкой из сцены «Дорога» или повторным разговором (razg_menu = «tash»)

Статы по сцене (мин/макс, по коду)

СтатМинМаксТипичный путь (суждение)*
Безумие−3+6+2
Логика0+40
Кровь000
Настроение Лесса000
Настроение Таши−18без верхане проверено

*Типичный путь: один путь из схемы, выбранный по самым вероятным выборам (суждение, не среднее). Путь: «Подойти познакомиться.» → «Привет.» → «Не знаю! Улыбнуться.» → «Я тоже очень рада!» → «Хорошо, давай сыграем.» → «Поехали!» → одна партия до конца → «Эм, хватит.» → «Промолчать.». Числовая сумма типичного пути не проверена и не выдаётся. Минимум Настроения Таши — цепочка: «Игнорировать его.» −1 (nazad:236), «Остановиться и поговорить.» +1 (253), «Нет!» −10 (716), вход в sad −5 (507), gone −3 (577) = −18. Верхнего предела нет: рематч-цикл +5 (nazad:1305), igra_over (nazad:1295) ← tash_game_end (tash_game.rpy:203, jump на 220) без гейта. Стартовое значение в коде не найдено, считалось 0.

Проверено по b9: крашей в сцене нет — идентификатор ssanity в коде отсутствует, а jump (nazad:1000) ведёт на существующую метку script3_nazad_tash_urza_question (nazad:969).

Как читать

«Хаб» — кусок сцены с меню выборов. Эффекты: mad — Безумие, logic — Логика, blood — Кровь, mood — Настроение Лесса (в этой сцене не меняется), Тм — Настроение Таши (tash.mood) — новый стат этой сцены; в коде условий на него нет. Сцена — обмен между экраном стрелок (strel) и кодом: часть веток заканчивается выходом на strel (Таша рядом / ушла), часть — переходом к Губерту или концом сцены (return). Меню расспросов перебирается в любом порядке, одноразовые пункты помечены «1 раз».

Сейчас показана ДЕТАЛЬНАЯ схема

Полная схема: все хабы и все выборы

Плашки на хабе: минимум и максимум по всем путям внутри хаба от входа до выхода (со вложенными меню и циклами, с учётом разовых флагов и повторов причин); пути к смертям не считаются.

Блок-схема: хабы свёрнуты. Клик по блоку хаба раскрывает его ветки, повторный клик сворачивает.

Значки на выборах: ▲/▼ Безумие · ▲/▼ Логика · ▲/▼ Кровь · ▲/▼ Настроение Лесса · ▲/▼ Настроение Таши. Плюсы — вверху справа карточки, минусы — внизу слева. Плашка на хабе — диапазон прямых изменений статов внутри хаба (по коду).

Детали по хабам

Хаб 1. Встреча и погоня — menu_main / go / run / help / withyou / ny (nazad:187–390)

  • Вход: Таша догоняет героиню. «Игнорировать его.» Тм −1 (236) → меню ухода; «Подойти познакомиться.» Тм +2 только в первый раз (204) → знакомство (Хаб 2).
  • Уход (go, 251): «Остановиться и поговорить.» Тм +1 (253) → Хаб 2; «Прибавить шагу.» → погоня (run); «Пуститься наутек.» Тм −3 (261, ставит vd1.d5) → gone (Тм −3, 577) → 2gone → Губерт.
  • Погоня (run, 291): «Постараться убежать» → sad (Хаб 3); «У меня нет на тебя времени!» Тм +1 (302) → помощь (help); «Остановиться и выяснить, чего он пристал.» → большой разговор (Хаб 5).
  • Помощь (help, 310): «Ты правда хочешь помочь?» (1 раз, td.d3); «Нет, спасибо, не надо.» → withyou; «Хорошо, я буду рада помощи.» → выход на strel: tash.near + tash.helpp, return (342); «Остановиться и нормально поговорить» (td4.d5 = 1) → Хаб 2 (если td4.d6 — сразу в Хаб 5).
  • «Я пока с тобой!» (withyou, 353): «Что?! Зачем?!» (1 раз, td.d4); «Ни в коем случае!» → подменю ny; «Л-ладно, иди.» Тм +1 (399, tash.near) → выход на strel.
  • «А почему?» (ny, 368): «Ты мне просто не нравишься.» → sad; «Я не могу сказать. Но не надо.» Тм +1 (381) → gone; «Просто нет.» Тм −3 (392) → gone.

Хаб 2. Стоп и знакомство — stop / stop2 / scared / hello / 2razg (nazad:422–499, 563–672)

  • «Чего тебе!?» (vd1.d3 = 1) → сразу к картам (Хаб 4); «Привет.» Тм +1 (436) → stop2.
  • stop2 (442): «Просто испугалась.» Тм −1 (458) → scared; «Не знаю! Улыбнуться.» Тм +1 (480) и mad +1 (482) → hello; «Не хочу с тобой разговаривать!» Тм −1 (487) → sad.
  • scared (461): «Ты похож на Лесса...» (если героиня знает имя Лесса; если не знает - отдельный пункт «Ты похож на того странного незнакомца...») → hello; «Ты мне не нравишься.» → sad.
  • hello (590): «Я тоже очень рада!» Тм +2 (592); «...» (при уровне логики ≥ 1 — get_level, nazad:597 — доп. реплика, 594). Дальше Таша просит «дело» — сыграть в карты.
  • 2razg (603): «У меня и своих полно...» (1 раз, td.d1); «Нет.» (только после неё) Тм −1 (631) → сразу 2gone → Губерт без −3 gone; «Конечно помогу!» / «Узнать подробности.» → Хаб 4.

Хаб 3. Таша расстроился — sad / sorry / sorry2 (nazad:500–562)

  • Любой вход в sad: Тм −5 (507). «Остановить его.» → sorry; «Дать уйти.» → gone (Тм −3) → Губерт.
  • sorry (533): «Извиниться.» Тм +5 (537) → sorry2; «Нет, ничего.» → gone.
  • sorry2 (541): «Прости, но у меня нет времени.» → gone; «Ладно.» Тм +10 (556) → игра (Хаб 4). Число повторов цикла sad → извиниться → карты в коде не ограничено.

Хаб 4. Карты и мини-игра — 2cards / tash_game / igra_over (nazad:701–730, 1295–1310; tash_game.rpy)

  • 2cards (701): «Хорошо, давай сыграем.» Тм +10 (704, tash.good) → мини-игра; «Нет!» Тм −10 (716, tash.bad) → sad; «Давай сначала поговорим!» → Хаб 5; «З...Зачем?» (1 раз, td.d5).
  • Мини-игра (tash_game:73): «А правила!?» mad −1 (tg:76, reason «А правила?!») / «Поехали!» mad +1 (tg:88, reason «зачем правила?» — обе с reason, повторы того же варианта не начислятся). Бросить партию (cards_stop, tg:188): Тм −3 → Хаб 5; доиграть → заметка «game», igra_over.
  • igra_over (1295): «Эм, хватит.» → конец игры (Хаб 7); «Да! Почему нет?» — рематч Тм +5 (1305), рематчи в коде не ограничены; «Может поговорим?» → Хаб 5.

Хаб 5. Большой разговор — razg_2menu / razg_2 / nomemory / 2help / canurza / urzamore (nazad:739–1000, 1092–1249)

  • razg_2menu (739): «Как тебя зовут?» (1 раз) → razg_2; «У меня уже были проблемы с памятью?» (после «зовут»); «Много что поменялось?» (после «памятью», открывает ветку Урзы — canurza); «И что тогда со мной случилось в Лесу?» (после «памятью», Таша узнаёт Лесса); «Ты так любишь карты?» и «не смущает лес?» — без статов.
  • razg_2 вход (1092): Таша: «Ну... Ты же Вий?» (1103) — viy.zn_name = True (1108); меню (1111): «Нет, я - [v].» → «Ты ошибся.» «Я - [v], называй меня так...» (1113-1114), Таша запоминает имя (tash.nv, 1115); «Ты не ошибся! Я Вий!» (1117) → «Точно! Я Вий!» (1119).
  • razg_2 (1161): «Я потеряла память.» → nomemory; «морду кирпичом» → назад; «Да! Классная же традиция!» mad +1 (1192, reason) → назад.
  • nomemory (1197): набор ответов зависит от сохранённая память; «хочу знать больше» → 2help (1249): Урза может вернуть память — заметки «urza» и «urza_memory».
  • 2help_menu (1271): «Расскажи о нем побольше.» (ур. логики ≥ 1, get_level:1273, 1 раз) — без начисления Логики; «Да, это отличная идея!» → к Урзе (Хаб 6); «Нет...» → назад.
  • canurza (950) / urza_question (969): «отведи меня к Урзе» (ставит td3.d1) → «Да, давай сейчас!» → Хаб 6; отложенные варианты возвращают в разговор.
  • urzamore (987): рассказ об Урзе logic +1 (reason «спросить об Урзе», nazad:989); urza.zn_name = True (991). Если td3.d1 = 1 — jump на script3_nazad_tash_urza_question (1000 → метка 969).
  • «Назад» (только при razg_menu = «tash») → меню повторных разговоров (RT); «Хватит болтать!» → конец игры (Хаб 7, если партия была) или к картам (Хаб 4).

Хаб 6. Урза и разлом — urza / urza2 / urza3 (nazad:1002–1047)

  • Таша ведёт к разлому (tash.near + tash.helpp, заметка «urza»).
  • urza2 (1048): «Прекрасно!» mad +1 (1055, reason) / «Сомнительно.» mad −1 (1061, reason) → выход на strel (1070); return (1071) срабатывает, только если экран закрыть без перехода.
  • urza3 (1072): если в avt_d есть «blu» — заколоченный тупик → КОНЕЦ ДЕМОВЕРСИИ (1086) и перезапуск. «blu» в доступном коде нигде не добавляется. Ветка статов не меняет.

Хаб 7. Друзья и конец игры — end / end_out / 2urza (nazad:1324–1487)

  • «У тебя есть друзья?» (1 раз, td3.d8); «Я... Не понимаю что такое друзья.» (ур. безумия ≥ 1, get_level:1336, после «друзья?») mad +1 (1337); «Думаешь, кто-то бы пришел в такое место поиграть?» (ур. логики ≥ 1, get_level:1373, td3.d3); «А почему твои друзья не могут прийти?» (1 раз, td3.d10, без статов).
  • «Ты... правда не боишься?» (после «кто-то пришел»): logic +1 (1408, reason) и mad −1 (1419).
  • «Ты что, никогда не бываешь серьезным?» (ratio = logic/(mad+logic) > 0.5): mad −1 (1439), logic +1 (1440) → серьёзный разговор (Хаб 8).
  • «Промолчать.» → «Эх... Спасибо что сыграла!»: при ур. логики ≥ 1 (get_level, nazad:1449) — 2urza: «Хорошая идея.» → к Урзе (Хаб 6), «Нет, не стоит...» → Таша исчезает (strel); в остальных случаях → withyou (Хаб 1).

Хаб 8. Серьёзный разговор — ser / ser2_men / reason_ser (nazad:1488–1741)

  • ser (1488): «Настаиваю.» mad −1 (1500), затем вход в ser2 Тм −5 (1509); «Нет-нет!» → назад в end.
  • ser2_men (1526): «Так кто ты?» (1 раз, td4.d2 — общий гейт с «Что тебе от меня нужно?»: доступна только одна из двух); «Ты... Некромант?» (после «кто ты») Тм +1 только при ур. безумия ≥ 1 (get_level, nazad:1551); «Что ты знаешь о Лессе?» (если Лесс знаком) Тм −1 (1579).
  • «Кто такой Урза?» (если Урза знаком, urza.zn_name): Тм +1 при уровне безумия ≥ 1 и сырой логике ≤ 4 (nazad:1590-1592); иначе Тм −1 при уровне логики ≥ 1 (1593-1595).
  • «Что тебе от меня нужно?» Тм −1 (1609); «Ты бы действительно помог мне?» Тм −1 (1621, td4.d3); «У меня есть причина...» (после «кто ты», td4.d4) → reason_ser; «Извини...» (после «кто ты», если «причина» не выбрана) Тм +3 (1644).
  • «А давай ты снова... перестанешь быть таким?» → set_tash(«st») → afterser (gubert:5) → назад в меню конца (end, nazad:1324). Это не выход из сцены.
  • reason_ser (1651): причины — «потеряла память» Тм −1 (1680); «поговорить нормально» logic +1 (1689) Тм −1 (1690); «лучше узнать тебя» Тм +1 (1695); «узнать о мире» logic +1 (1708) Тм −1 (1713); «просто попросила» mad +1 (1720, reason) Тм −1 (1725). После ровно 1 причины доступно «Я... Прости.» Тм +3 (1739). После 2 причин — авто-проверка: Тм +3 если героиня извинялась; если нет - Тм −1 (1655–1663).

Повторные разговоры — tash_razg_menu / tash_urza_menu (day_1_tash_razg.rpy)

  • Вход при razg_menu = «tash» (Таша рядом, разговор через strel): «По поводу этого Урзы...» (заметка «urza») → t_urza_menu; «Как насчет карт?» Тм +1 (razg:13) → мини-игра, без ограничения числа партий; «Просто поболтать» → razg_2menu (Хаб 5); «На сегодня хватит разговоров!» → strel (razg_menu = 0).
  • t_urza_menu (razg:26): «Он может вернуть мне память?» (1 раз, td3.d13, заметка «urza_memory»); «Расскажи о нем побольше.» (1 раз, td3.d2 — без начисления Логики); «Ты можешь отвести меня к нему?» — у перекрёстка (less_per / less_tashroad_tash / less_begin) → Хаб 6; в других местах Тм говорит «Только давай сначала доберемся до перекрестка?» (razg:53-54) и возвращает в меню об Урзе.

Мёртвый код (nazad:2–17, 909–946, 1666–1906)

  • script3_nazadli (nazad:2) — старая входная метка, входящих переходов нет (меню «Стоит ли идти в самую чащу?»).
  • Внутреннее меню в «Хватит болтать!» (nazad:909–946): «Давай сыграем!» Тм +10 (915) / «в карты я играть не буду...» Тм −10 (929) / «Спросить об Урзе» (933) — недостижимо: флаги tash_game и script3_tash_cards_per равны 0 с инициализации (script _define.rpy:165-166) и нигде не выставляются — условие nazad:891 всегда истинно.
  • Осмотры и инвентарь: tash_cards_osm → tash_tash_card («Сыграем?» Тм +1, 1867), bonny_1_osm / bonny_1_tash («Окей, забирай.» Тм +1, 1927), mant_osm («Осторожно снять с сучка» Тм +1, 1970) — вызовов в доступном коде не найдено (inv_list и дефолты — в файле, которого нет в репозитории).
  • Закомментировано (по старому снапшоту fresh/main; в b9 этих блоков нет): «Остановиться и нормально поговорить» с Тм +1; «Летающих городов?» — внутри закомментированный ssanity (не исполняется).

Полный список найденных ошибок — на странице «Статы».