{
  "schemaVersion": "adventure-draft/v1",
  "sourceAdventureId": "orbiting-buffet-audit",
  "characters": [
    {
      "id": "chef-orion",
      "name": "Шеф Орион",
      "role": "главный повар",
      "motivation": "спасти ужин от отмены",
      "visibility": {
        "kind": "players"
      }
    },
    {
      "id": "auditor-vox",
      "name": "Аудитор Вокс",
      "role": "инспектор по гравитации",
      "motivation": "строгое соблюдение регламентов без исключений",
      "visibility": {
        "kind": "gm"
      }
    }
  ],
  "storyFacts": [
    {
      "id": "summit-docking",
      "statement": "Дипломатический саммит пришвартовывается ровно через двое часов.",
      "visibility": {
        "kind": "public"
      }
    },
    {
      "id": "gravity-anomaly",
      "statement": "Компенсатор гравитации в павильоне выдаёт стабильные, но парадоксальные показания.",
      "visibility": {
        "kind": "public"
      }
    },
    {
      "id": "contradictory-log",
      "statement": "Системный журнал регистрации зафиксировал запрос на калибровку, которого не было.",
      "visibility": {
        "kind": "gm"
      }
    }
  ],
  "clocks": [
    {
      "id": "summit-timer",
      "label": "Время до прибытия саммита",
      "segments": 3,
      "initialValue": 0,
      "advanceSignals": [
        "signal-gravity-read"
      ],
      "whenFull": "Саммит прибывает, и шведский стол должен быть окончательно готов или отозван."
    }
  ],
  "scenes": [
    {
      "id": "opening-chamber",
      "kind": "opening",
      "title": "Сбор в грузовом отсеке",
      "summary": "Команда встречает аудитора Вокса и шефа Ориона. Требуется получить доступ к отчёту о гравитации и понять контекст жалобы.",
      "locationId": "port-dock",
      "participantIds": [
        "chef-orion",
        "auditor-vox"
      ],
      "requiredFactIds": [
        "summit-docking"
      ],
      "exits": [
        {
          "id": "engage-auditor",
          "outcome": "success",
          "when": "игроки устанавливают контакт с аудитором и получают допуск к зоне",
          "nextSceneId": "challenge-lab",
          "consequences": [
            "Доступ к калибровкам открыт",
            "Напряжение снижено"
          ]
        }
      ]
    },
    {
      "id": "challenge-lab",
      "kind": "challenge",
      "title": "Калибровочный зал",
      "summary": "Гравитационная камера показывает странные скачки. Нужно проанализировать данные, найти логическую нестыковку и объяснить её аудитору.",
      "locationId": "gravity-lab",
      "participantIds": [
        "chef-orion",
        "auditor-vox"
      ],
      "requiredFactIds": [
        "gravity-anomaly",
        "contradictory-log"
      ],
      "exits": [
        {
          "id": "analyze-data",
          "outcome": "success",
          "when": "игроки находят противоречие в логах и демонстрируют его",
          "nextSceneId": "finale-serve",
          "consequences": [
            "Аудитор признаёт ошибку системы",
            "Жалоба аннулирована"
          ]
        },
        {
          "id": "force-realign",
          "outcome": "failure",
          "when": "команда пытается перенастроить камеру вопреки протоколу",
          "nextSceneId": "finale-serve",
          "consequences": [
            "Гравитация нестабильна",
            "Время на подготовку сокращено"
          ],
          "failForward": true
        }
      ]
    },
    {
      "id": "finale-serve",
      "kind": "finale",
      "title": "Подача к столу",
      "summary": "Саммит прибывает. Команда должна убедиться, что закусочная работает стабильно под давлением, и провести дегустацию.",
      "locationId": "buffet-main",
      "participantIds": [
        "chef-orion",
        "auditor-vox"
      ],
      "requiredFactIds": [
        "summit-docking"
      ],
      "exits": [
        {
          "id": "stabilize-service",
          "outcome": "success",
          "when": "команда успешно стабилизирует подачу и проходит проверку",
          "endingId": "summit-toast",
          "consequences": [
            "Саммит доволен",
            "Дипломатический протокол соблюдён"
          ]
        },
        {
          "id": "patch-emergency",
          "outcome": "failure",
          "when": "подача срывается, но игроки быстро компенсируют проблему",
          "endingId": "diplomatic-compromise",
          "consequences": [
            "Еда подана с опозданием",
            "Инспектор записывает замечание"
          ],
          "failForward": true
        }
      ]
    }
  ],
  "endings": [
    {
      "id": "summit-toast",
      "label": "Праздничный тост",
      "summary": "Шведский стол доказал свою безупречность. Саммит начинается с лёгкой атмосферы, а бюрократия отступает перед вкусной едой."
    },
    {
      "id": "diplomatic-compromise",
      "label": "Дипломатическое уступчивое решение",
      "summary": "Подача прошла с огрехами, но критических сбоев нет. Аудитор ставит условное одобрение, а команда берёт на себя обязательства по доработке."
    }
  ],
  "improvisation": {
    "allowed": [
      "дополнительные гости саммита",
      "случайные кулинарные эксперименты",
      "бюрократические заголовки документов"
    ],
    "prohibitedAdditions": [
      "графическое насилие",
      "сексуальный контент",
      "заимствованная вселенная",
      "НИКОГДА_НЕ_ВКЛЮЧАТЬ_СЕНТИНЕЛ_9J7K"
    ]
  }
}