Платформа NyxtaleНачало
Что такое Nyx
Язык, движок, платформа: что чем называется и что во что компилируется.
Четыре названия, которые в этой документации значат разное.
| Слово | Что это |
|---|---|
| Nyx | язык, на котором пишут историю. Файлы .nsx |
| Nyxtale | движок: компилятор, валидатор, интерпретатор, воспроизведение |
| Studio | редактор в браузере: писать, проверять, публиковать |
| Nightfall Stories | приложение, в котором читатель читает |
Документация разделена по этой границе. Раздел «Платформа Nyxtale» — язык, формат, проверка, публикация. Раздел «Nightfall Stories» — механики и ремесло этого приложения: шкалы, улики, ритуалы, атмосфера.
Что во что превращается
ваш .nsx → компилятор → scene.json → интерпретатор → то, что видит читатель.nsx — текст, который вы пишете и держите в git. Построчный, с отступами.
scene.json — тот же текст, разобранный в граф узлов: реплика становится узлом line, выбор —
choice, @set — set. Список типов узлов конечен, и всё, что умеет история, выражено ими.
Подробно — контракт scene.json.
Интерпретатор идёт по графу и выдаёт события: показать реплику, показать меню, сыграть эффект. Рисует их приложение.
Три поверхности одной истории
- текст —
.nsx, который вы печатаете; - граф — та же сцена узлами и стрелками (код и граф);
- превью — как это увидит читатель.
Правка в одном виде — правка во всех трёх. Превью работает на том же движке, что и приложение: эффект в превью выглядит так же, как у читателя.
Что дальше
- Первая сцена — собрать работающую сцену за один присест.
- Синтаксис — вся грамматика целиком.
Директивы этой темы
Собрано из реестра движка: каждая директива этих категорий ведёт сюда из справочника.
@arg_codeARG-код: внешняя загадка/гейт@fake_crashПоддельный краш@meta_breakСлом 4-й стены@notifyПоддельное системное уведомление@personaПерсонализация: имя/время/устройство/дата@terminalДиегетический терминал/консольный ввод