diff --git a/fixtures/sai-vn-surface.json b/fixtures/sai-vn-surface.json deleted file mode 100644 index fc04a0f..0000000 --- a/fixtures/sai-vn-surface.json +++ /dev/null @@ -1,197 +0,0 @@ -{ - "type": "surface-state", - "schema": "gamecult.eve.surface.v1", - "providerKind": "sai.visual_novel", - "providerId": "gamecult.home.vn", - "title": "GameCult Compound VN", - "version": 1, - "updatedAt": "2026-05-31T00:00:00.000Z", - "surface": { - "id": "sai.visual_novel.surface", - "styles": { - "themeId": "gamecult.vn", - "tokens": { - "colorBackground": "#05080d", - "colorPanel": "rgba(5, 8, 13, 0.92)", - "colorPanelAlt": "rgba(9, 14, 22, 0.82)", - "colorText": "#f6f1e2", - "colorMuted": "#b7c7d9", - "colorAccent": "#ff8a2a", - "colorLink": "#59b7ff", - "radiusPanel": 8, - "fontBody": "Ubuntu", - "fontTitle": "Montserrat", - "pixelArt": true, - "motion": "subtle" - }, - "controls": [ - { - "id": "theme.accent", - "kind": "color", - "label": "Accent", - "token": "colorAccent", - "command": "style.patch" - } - ] - }, - "root": { - "id": "sai.root", - "kind": "vn.stage", - "props": { - "mode": "visual-novel", - "storyId": "gamecult-compound", - "currentPath": "hub", - "style": "gamecult.vn" - }, - "children": [ - { - "id": "sai.background", - "kind": "image.background", - "props": { - "src": "/static/interactive/cotsc-praxis/backgrounds/compound.png", - "label": "Front Gate", - "fit": "cover", - "pixelArt": true - } - }, - { - "id": "sai.graph", - "kind": "embed.norn", - "props": { - "label": "GameCult Ink Knot Graph", - "engine": { - "id": "norn", - "contract": "gamecult.norn.surface.v1", - "web": { - "wasm": "/static/interactive/norn/norn-rs.wasm", - "package": "@gamecult/norn-viewer" - }, - "native": { - "rustCrate": "norn-rs", - "direct2dAdapter": "fensalir.norn.direct2d" - } - }, - "layout": { - "mode": "norn.2d", - "iterations": 220, - "rankGap": 150, - "nodeGap": 88, - "edgeLength": 132 - }, - "graph": { - "nodes": [ - { "id": "hub", "label": "Hub", "target": "hub", "x": 0.2, "y": 0.2, "current": true }, - { "id": "eve", "label": "Eve", "target": "eve", "x": 0.72, "y": 0.24 }, - { "id": "sai", "label": "Sai", "target": "sai", "x": 0.48, "y": 0.55 } - ], - "edges": [ - { "source": "hub", "target": "eve" }, - { "source": "hub", "target": "sai" }, - { "source": "sai", "target": "eve" } - ] - }, - "interaction": { - "nodeAction": "story.jump", - "focusFollowsStory": true, - "rendererMustUseNorn": true - }, - "placement": { - "space": "scene", - "anchor": "whiteboard", - "mode": "keystone", - "quad": [[0.08, 0.10], [0.55, 0.06], [0.59, 0.52], [0.07, 0.58]], - "zIndex": 4 - } - } - }, - { - "id": "sai.embeds", - "kind": "layer.embedded-surfaces", - "children": [ - { - "id": "sai.tex.log-power", - "kind": "embed.tex", - "props": { - "label": "Bifrost voting weight", - "source": "\\\\mathrm{votes}(p)=1+\\\\lfloor\\\\log_b(1+p)\\\\rfloor", - "format": "latex", - "display": "block", - "renderer": { - "web": "katex", - "native": "tex-renderer", - "direct2d": "tex-to-directwrite" - }, - "placement": { - "space": "scene", - "anchor": "whiteboard-equation", - "mode": "keystone", - "quad": [[0.16, 0.60], [0.54, 0.57], [0.56, 0.70], [0.15, 0.73]], - "zIndex": 5 - } - } - } - ] - }, - { - "id": "sai.cards", - "kind": "layer.cards", - "children": [ - { - "id": "sai.card.projects", - "kind": "card.external", - "props": { - "key": "projects", - "title": "Project Atlas", - "selector": "#gamecult-vn-projects", - "mode": "provider-owned-fragment" - } - } - ] - }, - { - "id": "sai.dialogue", - "kind": "panel.dialogue", - "props": { - "speaker": "Void", - "text": "Pick a door. The map will keep accusing us of being real.", - "scene": "Front Gate" - }, - "children": [ - { - "id": "sai.dialogue.text", - "kind": "text.dialogue", - "props": { - "speaker": "Void", - "text": "Pick a door. The map will keep accusing us of being real." - } - } - ] - }, - { - "id": "sai.choices", - "kind": "rail.actions", - "children": [ - { - "id": "sai.choice.eve", - "kind": "control.button", - "props": { - "label": "What is Eve trying to turn the web into?", - "action": { - "schema": "gamecult.eve.command.v1", - "command": "story.choose", - "payload": { "index": 0, "targetPath": "eve" } - } - } - } - ] - } - ] - } - }, - "commands": [ - { "schema": "gamecult.eve.command.v1", "command": "story.continue", "label": "Continue" }, - { "schema": "gamecult.eve.command.v1", "command": "story.choose", "label": "Choose" }, - { "schema": "gamecult.eve.command.v1", "command": "story.jump", "label": "Jump to knot" }, - { "schema": "gamecult.eve.command.v1", "command": "style.patch", "label": "Patch style" } - ] -}