twenty minutes · one hundred thousand marks · three runs
很多年前,我在一家二手书店里翻到一本边角发黄的语言学小册子。书里写到一个早已死掉的希腊字母——Digamma(Ϝ)。它在公元前八世纪以前发 "w" 的音;后来希腊人决定不再需要这个声音,就把它从字母表里删掉了。
但它没有彻底消失:希腊人继续用它当做数字 "6" 的记号,于是它在文字里被淘汰,却继续在数字里活着。
我从那时候起开始用 DgA 做创作的署名。它对我意味着两件事:被语言抛下也无所谓,作品自己会找到它的位置;真正重要的从来不是字母,而是数字。
但说穿了名字只是一个壳。东西做出来才是答案。
Tom Tykwer《Lola rennt》。一个红头发的德国女孩有 20 分钟筹够 10 万马克否则她男友死。
电影演了三遍。同样的 20 分钟,三个不同的结局。
galgame 完美复刻了这个结构。第一遍跑完 Lola 死。第二遍跑完 Manni 死。第三遍跑完他们都活下来。但每一遍开局都一样:Lola 接电话,Lola 下楼,Lola 开始跑。
Lola 下楼那一段我做了 30 帧的卷动画作为"开场咒语"。每一遍重跑都重播一次,提醒你时钟回到 11:40。
第三次跑里 Lola 走进赌场买筹码红 20 号必须中两次。我做了一个伪轮盘。其实是 100% 必中但玩家不知道。
Lola 的尖叫那一刻屏幕上所有玻璃震碎。我用 Web Audio 做了 4 层叠加的频率:1.2k、1.6k、2.4k、3.5k 足够把廉价手机喇叭逼出失真。
《Lola rennt》的核心是重跑:同样的 20 分钟,从同一个起点出发,跑出三个不同的结局。每跑一次,开场的镜头一模一样但中间路过的每一个路人,命运都被悄悄改变了。
引擎里这是一个"种子重置"系统。每次新一跑,全局状态重置到 11:40,但路人的状态被前一跑的"涟漪"轻轻推一下婴儿车的妈妈第二跑会丢孩子、单车男孩第三跑会卖车给流浪汉。这是物理学家所谓的蝴蝶效应。
第三次跑里 Lola 走进赌场买筹码红 20 号。游戏里我做了一个伪轮盘:球落在哪里其实是 100% 必中但显示的转动是真实的概率轮盘动画,玩家不知道。
第一次中 Lola 把脸贴在玻璃上尖叫。我用 Web Audio 做了 4 层叠加的频率:1.2k、1.6k、2.4k、3.5k 足够把廉价手机喇叭逼出失真。庄家的脸在画面里"老了三岁"。
第二次中必须再次必中。但这一次,球转动 12 秒比第一次长一倍。玩家心里知道它必中,但还是会捏紧。
《Lola rennt》是德语片。我用德语原文 + 中文 + 英文做三层字幕。Lola 喊"Manni!"那一帧三层字幕同时震动。但 Lola 跟父亲在银行那段对白德语是粗语、粗到电影院里有人会笑场。中文翻译里我故意用了一些上海话粗口对应保留情感不保留字面。
Tom Tykwer 自己作曲。整部电影 80 分钟,BGM 78 分钟几乎没有静音。这是 techno 节拍:每一次 Lola 的脚步都对应一拍。我把游戏的"步行动画"做成节拍同步:玩家按下"跑"按钮画面里每帧 Lola 的右脚 / 左脚切换正好对应 Tykwer 的鼓点。这是身体节奏。
Run Lola Run 教我的是:重跑就是 galgame 的本质。我们玩 galgame 不是为了"打通关"——是为了"重新打"。第二次比第一次更快、第三次比第二次更妙。Lola 跑了三次、每次都不一样,但每次都是同样的 11:40 出发。这是 galgame 的内核一个游戏可以重新开始。一部电影只能演一遍。
德国电影还有 Wings of Desire。但那部太诗意。我下一部想做的是 Eternal Sunshine 也是关于"重来",但是反方向。
但说不定下一个根本不是电影。说不定是一首歌、一本书、一段我自己梦见的东西。