Документация Nyxtale

Платформа NyxtaleПроверка истории

Бот-обход

Обход всех путей: ненайденные концовки, петли и ошибки рантайма.

Бот-обход запускает историю тем же интерпретатором, который читает её у читателя, и на каждом выборе разветвляется — проходит все опции.

Что он находит

Ошибки времени выполнения — то, что ломается только с конкретными значениями.

Недостижимые концовки по арифметике. По графу путь есть, но порог не берётся: trust >= 5 при максимуме накопления в три. Статические проверки этого не видят, потому что считают связность, а не значения.

Петли. У каждого пути есть бюджет шагов; исчерпавший его помечается как возможный бесконечный цикл. Обычно это возврат в комнату, из которой при текущих флагах нет выхода.

Экономику выбора. Платные опции (@cost) обход видит так же, как читатель: он знает, какая была доступна. Отсюда ответ на вопрос, хватает ли валюты хотя бы на одном маршруте.

Отчёт

Обход считает по путям, а не по узлам: одна реплика на двух путях — два случая, потому что состояние в них разное.

Строка отчёта Что означает
Найденные концовки сколько из объявленных достигается хотя бы одним маршрутом
Тупики пути, оборвавшиеся без концовки
Возможные петли пути, упершиеся в бюджет шагов
Ошибки путь и место, где движок споткнулся

Концовок найдено меньше, чем объявлено — значит есть недостижимая.

Обрыв обхода

У обхода есть потолок разветвлений: ветвящаяся история растёт комбинаторно, и полный перебор на большом дереве не заканчивается.

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

Обход детерминирован: те же условия дают тот же отчёт.

Как пользоваться при письме

Прогоняйте обход на каждой дописанной развилке, а не в конце: он находит ровно то, что через неделю уже не вспомнить — «эта ветка перестала вести к концовке, когда я поменял порог».

Концовка не находится, а по графу достижима — проверяйте арифметику. Битую ссылку видно глазами, потолок накопления в голове не держится.