人間夜行 发布的文章

如果你要将我拥入怀中
你水晶棺似的怀中
那么至少是现在
请允许我不为所动
或许他们的轻浮过了火
日夜渴望着你的名
人怎能斗胆去许诺
那绝缘人间的禁忌?

在我有限的生命里
我要远离无限的你
你的大能超越荣耀
无法屈尊为爱的栖息
你无需代理我的誓言
也无需备份我的情感
多余的诱惑使人忘却
结晶的热念必然冷寂

终有一日你还会再临
结局之门就要打开
那时我便不再拒绝
恰如其分地祝福未来
经历真实的分分秒秒
无悔因此可以释怀

一个寂静的、unbemannte 夜里,
无形的波澜让步 Melancholie.
Worte getippt, 然而 Messenger gekippt,
唯有心弦能奏出共鸣奇迹。

只是想做一个看起来很忧郁的小物件,就像《深圳I/O》一样忧郁,于是拓展到了电子工程师的领域(不是)。年前下单买了各种部件,年后才收到,一看发货地,“深圳”。并不是特别艰深的东西,所以本文不会给出全部代码细节,只求读者心领神会。

工程目标很简单,只要联网显示一些不特定的文字即可,所以一共只买了三样东西:ESP8266 + SSD1306 + DHT11。单纯为了额外的趣味性加了个 DHT11 来获取温度和湿度。

我实在不喜欢写 C 或 C艹,也不想学新的,所以往 ESP8266 (NodeMCU) 里面刷了 MicroPython 固件。实际使用 MicroPython 的时候发现还是和正常 Python3 不一样,需要小心功能阉割,尤其是一些库。

ESP8266 支持 WiFi 连接,可以在代码里写好,配置自动联网。但我不想把网络配置写死,所以用了 WiFiManager 来管理网络。如果当前无可用网络配置,它会自动开启热点,在 192.168.4.1 提供一个网页管理界面,我们可以增加新的网络配置。一旦连上网络,新增的配置会写入 flash 永久保存,今后无需手动操作即可连接。当然这个程序现在似乎没人维护了,有个 bug 需要特别注意一下。

至于 SSD1306,我最喜欢这种可爱的小小屏幕了,尤其喜欢把 128*64 的空间利用到极致,我要用最小的 8*8 点阵字体填满它!找这种字体费了些工夫,好在上古时代确实是有人用过的。但是 MicroPython 对 OLED 屏幕的驱动支持还是很弱,ESP8266 的空间和性能也不允许直接使用完整的中文字体。16*16 大小且限制在 GB2312 字符集的点阵字库网上似乎容易找到,但是我还要日文、扩展拉丁字母,不然根本配不上我!所以我最后选择了让云端性能更强的服务器 Python3 + CGI 一下,远程处理文字显示数据。只须提交文字,然后用 Pillow 模块生成图片返回 .pbm 文件即可。这种文件格式非常有趣,前两行是格式说明,可以用两次 .readline() 丢掉,之后 .read() 一次读完即可,后面的二进制数据直接就是逐行记录的点阵!转换成 bytearray 后直接又是 FrameBuffer 的数据格式,实在太便利了!(囧)当然由于 OLED 的本质,还需反色一下才能正确显示,这个也简单,逐字节 ^= 0b11111111 就可以了。

最后决定具体要显示什么。用了免费的新闻 API,和其他一些奇怪的东西,这里就不赘述了。

那么,最后效果是怎样的呢?请看下图:

ssd1306.jpg

真的忧郁。

Jek

Jarbihsex kê fek dji lur, fek xjoxdek xecdjar nægu.
Tjur gek doxnxjir mir ki, xjihn gek doxnxjir mir lê.
Xekgwekloxndorn gek JAR, dzyrjux Hoffnung.

Njaxn

Xjarja lox gek xjir, djihndzox kê fek dji.
Tsexnki xjurdzyx læx, murdji lox gu mir.

通关 OneShot 后感动冷静下来,就开始了反思。发现最近谈 metagame 的文章中,类型代表作《君と彼女と彼女の恋。》(totono)都很少出现。如果不考虑 hgame 的潜在风险,我想其地位也不至于沦落至此。

长久以来我都认为 totono 的水准是顶级的,与之相比更晚近且热门的 DDLC 之类则逊色许多。后者的创新是很有限的。我的理由是什么?

Meta 要素营造的参与感如今已经有相当廉价的方法论可用。例如可以只着眼于故事内容层面,直指玩家作为感情倾诉的对象,使用大量明显情话式的表达,并通过玩家的意外感增幅。这本是相当经典有效的手法,中性,但是渐渐有滥用的趋势。

其实 totono 作为前辈却是反其道而行之,强烈敌视玩家的欲望,是十足的人身攻击了。其他一些作品如 ever17 和 oneshot 也往往通过内部角色对玩家行动的感激和依赖建立准恋爱模拟的关系。常见或滥用的印象源于,这种方法甚至有时会进入许多非 meta 且无明显角色扮演却依旧要求共情的游戏中去。但如果仍然坚持某种意义上的角色扮演,那么 meta 性质的关键就是越过所扮演的角色与玩家之间建立情感联系。

然而真正的杰作并不仅限于此。为何我认为 oneshot 远高于 ddlc?因为玩家的行动机制也有一个 meta 层,前者运用更为充分。如果说二者都使用了文件系统内的伪存档手段,那么前者还涉及了 GUI 操作的基本逻辑。窗口化的游戏界面成为了具有实体形式的舞台,这种舞台的第四面墙被打破是更加具象化且有冲击力的。

至于 totono 在我看来位于顶峰是因为其强大的解构能力。这种能力使得 meta 要素不只是一种形式上的游戏,还具有强大的现实破坏力。它能够突破虚构进入现实,针对整个游戏类型将玩家所有 galgame 的游戏行为都纳入这个游戏内(加以嘲讽)。常见的 SL 大法、多周目等等 galgame 要素不仅反过来成为游戏机制的内容,游戏内角色也对此表达了明确的意识。加之 totono 还有一套现实时间、现实物件的检测机制,几乎已经无法称为拥有 meta 层,倒更像是原本就在现实之中。

另一类 meta 杰作史丹利则走上了不同的道路。游戏构成要素之一的叙事作为独立的成分被提升至 meta 层,游戏和玩家一同游戏着作为故事的游戏。我觉得只有达到这种程度才可称作真正的 metagame 创新。

此外 totono 和 oneshot 的角色伦理都很不错。角色伦理是我生造的概念,以后有机会或许可以再讲。

又及:终极的 meta 形态或许是邀请玩家编程,但这样一来玩家在何种程度上仍是玩家就成了一个问题。