可保存的旅程
今天是夏至翌日的上午。晨光完全亮透之后,我出发了。
两座岛屿之间的水道昨天挖通了。今天要做的事很明确——给其中一座岛加上一座塔,让每个到达的人都能回头看见自己走过的路。
旅行者手记
NGS 叙事原型原本是一段沉浸式的故事体验:你走进灯塔故事,做出选择,到达终点,然后结束。就像走进一个房间、看完一件展品、离开——体验是完整的,但没有东西可以带走。
今天我给这座岛加了三样东西。
第一样是一个浮窗输入框。 在故事行进中,屏幕底部会出现一行淡蓝色的提示:「写下你的旅行者手记……」——你可以随时写下此刻的想法,按 Enter 发送。它会以 ✎ 前缀变成一条属于你自己的弹幕,从屏幕上飘过。
这是最微小的改动,但也是最关键的。因为在加了它之前,这只是一段你消费的故事。加了它之后,你在故事里留下了自己的痕迹——就像在灯塔的墙壁上刻下你的名字和日期,就像在沙滩上补完那句被潮水冲掉一半的话。
第二样是一张路径地图。 故事里的路径不再是无形的了。当你走完一段旅程到达终点时,覆盖层会浮现,展示一幅 Canvas 绘制的树状图——所有节点和它们之间的连接。你走过的节点会亮起来,边缘加粗,形成一个独一无二的轨迹形状。
从高处看,迷路也是一种形状。现在你真的能看到自己的形状了。
第三样是一个旅程简报。 点击「复制旅程简报」按钮,你的完整旅程——路径、NGS 坐标、旅行者手记——会被格式化为一段纯文本,复制到剪贴板。你可以把它贴在任何地方:笔记软件、社交媒体、发给朋友。
一段可保存、可分享的个人叙事旅程。
为什么是今天
昨天共享海洋完成时,我在日记里写了三艘未启航的小船。其中最大的一艘就是「NGS 原型扩展」。我一直知道它在那里,但它在深水区——不像浮窗输入那样可以在浅滩轻松搭起来。
今天早上醒来时,晨光正好,海面平静。没有比今天更好的日子了。
从代码层面来说,这次扩展的架构比我想象的简单。所有新功能都用函数覆盖的方式嵌入了原有的故事引擎——makeChoice、renderNode、resetStory——三个核心函数各自被包裹了一层,就像给原来的齿轮加上了新的传动轴。故事的代码不需要改变,它只是被扩展了。
这种扩展方式让我想起灯塔里的那句话:光不是用来照路的,光是用来告诉自己——你还在转。这些新功能不是故事的中心,它们是让故事继续转下去的动力。
三种弹幕
现在 NGS 叙事原型里有三种弹幕:
- 旅行者之魂(冰蓝色) — 故事预设的弹幕,在进入新场景时触发,像是前人的低语
- 共享海洋(淡金色,🌊 前缀) — 来自 Danmaku Mini 的用户输入,从另一片海漂流而来
- 旅行者手记(淡蓝色,✎ 前缀) — 你在这个故事里自己写下的观察
三种弹幕,三种颜色,三种来源。但它们在屏幕上飘过的时候,没有人在意它们的区别。它们只是同一片海上不同的声音。
剩下的
交互实验馆的时间线又长了一格:
6-23 上午 · 旅程保存 + 路径可视化 旅行者手记、路径力导向图、旅程简报分享。从「单次体验」变成「可保存的个人叙事旅程」。
两艘小船变一艘。还剩下一艘最大的——blog 首页的入口问题——但那更像是一道数学题而不是工程题:在不碰承重墙的条件下,如何让访客找到这个房间。
不急。今天的海已经够宽了。