@supports(display: grid) {
:root {
--sidebar-width-on-desktop: calc((var(--base-font-size) * (14 / 15)) * 19);
--body-width-on-desktop: 45.75rem;
}
@media only screen and (min-width: 769px) {
#side-bar .close-menu {
display: block;
position: fixed;
top: 0.5rem;
left: 0.5rem;
width: 3rem;
height: 3rem;
opacity: 1;
pointer-events: all;
z-index: -1;
}
#side-bar .close-menu img {
color: transparent;
}
#side-bar .close-menu::before,
#side-bar .close-menu::after {
content: "";
box-sizing: border-box;
position: fixed;
display: block;
top: 0.5rem;
left: 0.5rem;
width: 3rem;
height: 3rem;
padding: 0;
margin: 0;
text-align: center;
pointer-events: all;
cursor: pointer;
transition:
opacity var(--sidebar-transition-timing);
}
#side-bar .close-menu::before {
--mask:url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='utf-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' id='Hamburger' x='0' y='0' baseProfile='tiny' overflow='visible' version='1.2' viewBox='0 0 32 32' xml:space='preserve'%3E%3Cpath d='M4 10h24c1.1 0 2-.9 2-2s-.9-2-2-2H4c-1.1 0-2 .9-2 2s.9 2 2 2zm24 4H4c-1.1 0-2 .9-2 2s.9 2 2 2h24c1.1 0 2-.9 2-2s-.9-2-2-2zm0 8H4c-1.1 0-2 .9-2 2s.9 2 2 2h24c1.1 0 2-.9 2-2s-.9-2-2-2z'/%3E%3C/svg%3E");
z-index: -1;
background-color: var(--toggle-icon-color, rgb(var(--sidebar-links-text))) !important;
-webkit-mask: var(--mask);
mask: var(--mask);
-webkit-mask-repeat: no-repeat;
mask-repeat: no-repeat;
-webkit-mask-position: 50% 50%;
mask-position: 50% 50%;
-webkit-mask-size: 60%;
mask-size: 60%;
}
#side-bar .close-menu::after {
z-index: -2;
background-color: var(--toggle-button-bg, rgb(var(--sidebar-bg-color))) !important;
border-radius: var(--toggle-roundness, 50%);
border: var(--toggle-border-color, rgb(var(--sidebar-links-text))) var(--toggle-border-width, 0.25rem) solid;
}
#side-bar:focus-within .close-menu,
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover .close-menu {
pointer-events: none;
}
#side-bar:focus-within .close-menu::before,
#side-bar:focus-within .close-menu::after {
opacity: 0;
pointer-events: none;
}
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover .close-menu::before,
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover .close-menu::after {
opacity: 0;
pointer-events: none;
}
#side-bar {
display: block;
position: fixed;
top: 0;
left: calc(var(--sidebar-width-on-desktop)*-1);
z-index: 10;
transition:
left 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
height: 100%;
overflow-y: auto;
overflow-x: hidden;
margin-top: 0;
}
#side-bar:focus-within {
left: 0;
}
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover {
left: 0;
}
#side-bar .side-block {
margin-top: 1rem;
background-color: rgb(0, 0, 0, 0);
border-radius: 0;
border-left-width: 0px;
border-right-width: 0px;
}
#main-content::before {
content: "";
display: block;
position: fixed;
top: 0;
right: 0;
z-index: -1;
opacity: 0;
transition:
opacity 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms,
width 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
margin-left: var(--sidebar-width-on-desktop);
background: rgba(var(--swatch-menubg-black-color), .3) 1px 1px repeat;
padding-right: 0;
width: 100%;
height: 100vh;
pointer-events: none;
z-index: 99;
}
#side-bar:focus-within ~ #main-content::before {
width: calc(100% - var(--sidebar-width-on-desktop));
opacity: 1;
pointer-events: all;
}
#side-bar:not(:has(.close-menu:hover)):not(:focus-within):hover ~ #main-content::before {
width: calc(100% - var(--sidebar-width-on-desktop));
opacity: 1;
pointer-events: all;
}
@supports (-moz-appearance:none) and (background-attachment:local) and (not (-moz-osx-font-smoothing:auto)) { #side-bar {
padding: inherit;
} }
#content-wrap {
display: flex;
flex-direction: row;
width: calc(100vw - (100vw - 100%));
min-height: calc(100vh - calc(var(--final-header-height-on-desktop, 10.125rem)));
flex-grow: 2;
height: auto;
position: relative;
margin: 0 auto;
max-width: inherit;
}
#main-content {
width: 100%;
position: initial;
max-height: 100%;
padding: 2rem 1rem;
width: var(--body-width-on-desktop, 45.75rem);
max-width: var(--body-width-on-desktop, 45.75rem);
margin: 0 auto;
}
#page-content {
max-width: min(90vw, var(--body-width-on-desktop, 45.75rem));
}
@supports (-webkit-hyphens:none) {
#side-bar {
transition:
left 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms,
padding-right 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms,
background-color 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
padding-right: 0;
background-color: rgb(0, 0, 0, 0);
pointer-events: all;
overflow-x: visible;
overflow-y: visible;
z-index: 999;
}
#side-bar::-webkit-scrollbar {
opacity: 0;
-webkit-transition: opacity 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
transition: opacity 500ms cubic-bezier(0.4, 0, 0.2, 1) 100ms;
}
#side-bar .close-menu::before {
z-index: 999;
}
#side-bar .close-menu::after {
z-index: 998;
}
#side-bar:hover .close-menu::before,
#side-bar:hover .close-menu::after {
opacity: 0;
}
#side-bar:hover {
left: 0;
background-color: rgba(var(--swatch-menubg-color), 1);
padding-right: 0;
}
#side-bar:hover::-webkit-scrollbar {
opacity: 1;
}
#side-bar:hover~#main-content::before {
width: calc(100% - var(--sidebar-width-on-desktop));
opacity: 1;
pointer-events: all;
}
}
}
}
:root {
/* header measurements */
--header-height-on-desktop: 10rem;
--header-height-on-mobile: 10rem;
--header-h1-font-size: clamp(2rem, 5vw, 2.8125rem);
--header-h2-font-size: clamp(0.875rem, 3vw, 0.9375rem);
--logo-image: url("https://nu-scptheme.github.io/Black-Highlighter/img/logo.svg");
}
#header {
--search-textbox-text-color: var(--swatch-secondary-color);
background: none;
}
#header::before {
content: " ";
position: absolute;
width: 100%;
height: 100%;
left: 0;
top: 0.75rem;
background-image: var(--logo-image);
background-repeat: no-repeat;
background-position: center 0;
background-size: auto calc(var(--header-height-on-desktop) - 1.5rem);
opacity: 0.8;
pointer-events: none;
}
#header h1,
#header h2 {
margin: 0;
padding: 0;
width: 100%;
height: var(--header-height-on-desktop);
display: flex;
align-items: center;
justify-content: center;
display: flex;
align-items: center;
justify-content: center;
}
#header h1 a,
#header h1 a::before,
#header h2 span,
#header h2 span::before {
margin: 0;
padding: 0;
z-index: 0;
display: block;
text-align: center;
}
#header h1 {
z-index: 1;
}
#header h1 a::before,
#header h1 a::after {
content: var(--header-title);
}
#header h1 a::before {
color: rgb(var(--swatch-text-tertiary-color));
z-index: -1;
-webkit-text-stroke: 0.325rem rgb(var(--swatch-text-dark));
}
#header h1 a::after {
color: rgb(var(--swatch-headerh1-color));
z-index: 1;
}
#header h2 {
z-index: 0;
text-transform: uppercase;
pointer-events: none;
}
#header h2 span {
margin-top: calc(var(--header-height-on-mobile)/2 + var(--header-h1-font-size)/2 - 2em);
}
#header h2 span::before,
#header h2 span::after {
--wght: 600;
content: var(--header-subtitle);
position: absolute;
left: 50%;
transform: translateY(-50%) translateX(-50%);
width: 100%;
text-align: center;
}
#header h2 span::before {
-webkit-text-stroke: 0.25rem rgb(var(--swatch-text-dark));
}
#header h2 span::after {
color: rgb(var(--swatch-headerh2-color));
z-index: 1;
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) input[type="text"] {
color: rgba(0, 0, 0, 0);
}
@media (min-width: 36rem) {
#login-status {
flex-grow: 1;
left: 3%;
right: initial;
}
#login-status::before {
--mask-image: none;
background-color: transparent;
}
#login-status:not(:focus-within) {
color: rgb(var(--login-line-divider-color));
-webkit-user-select: initial;
-moz-user-select: initial;
-ms-user-select: initial;
user-select: initial;
}
#login-status #account-topbutton,
#login-status:not(:focus-within) #account-topbutton {
--clip-path:
polygon( 0 0, 100% 0, 100% 100%, 0 100% );
background-color: rgba(var(--login-arrow-color), 0);
}
#login-status #account-topbutton::before{
--clip-path:
polygon( 30% 35%, 70% 35%, 50% 60%, 50% 60% );
--mask-image: initial;
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-color: rgba(var(--login-arrow-color), 1);
-webkit-clip-path: var(--clip-path);
clip-path: var(--clip-path);
}
#login-status #account-topbutton::before,
#login-status:not(:focus-within) #account-topbutton::before,
#login-status:not(:focus-within) #account-topbutton:hover::before {
--clip-path:
polygon( 30% 35%, 70% 35%, 50% 60%, 50% 60% );
--mask-image: initial;
}
#login-status:not(:focus-within) #account-topbutton::after {
display: none;
}
#login-status:not(:focus-within) *:not(#account-topbutton):not([href*="account/messages"]) {
--clip-path:
polygon(
0 0,
100% 0,
100% 100%,
0 100%
);
pointer-events: all;
-webkit-clip-path: var(--clip-path);
clip-path: var(--clip-path);
}
#login-status:not(:focus-within) *:not(#account-topbutton):not(#account-options):not([href*="account/messages"]) {
opacity: 1;
}
#login-status #my-account {
--wght: 300;
}
#account-options {
background: var(--gradient-header);
}
#search-top-box {
top: 1.5em;
right: 3%;
background: rgba(var(--search-focus-textbox-bg-color), 0.4);
box-shadow: calc(var(--search-height) / 2 * -1) 0 calc(var(--search-height) / 2) rgba(var(--search-focus-textbox-bg-color), 0.4);
}
#search-top-box:focus-within ~ #login-status {
opacity: 1;
}
#search-top-box::after {
transition:
background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
-webkit-clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1);
transition:
background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1);
transition:
background-color 150ms cubic-bezier(0.4, 0, 0.2, 1),
clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1),
-webkit-clip-path 150ms cubic-bezier(0.4, 0, 0.2, 1);
}
#search-top-box:not(:focus-within)::after {
--clip-path:
polygon(
0 0,
100% 0,
100% 100%,
0% 100%
);
background-color: rgba(var(--search-icon-bg-color, --dark-accent), 1);
-webkit-clip-path: var(--clip-path);
clip-path: var(--clip-path);
}
#search-top-box:not(:focus-within):hover::after {
--clip-path:
polygon(
0 0,
100% 0,
100% 100%,
0 100%
);
background-color: rgb(var(--search-icon-hover-bg-color));
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) {
max-width: var(--search-width);
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) input[type="text"] {
max-width: var(--search-width);
padding: 0 var(--search-height) 0 1em;
outline-width: 0;
background-color: rgb(var(--search-focus-textbox-bg-color), 0.35);
color: rgba(var(--search-textbox-text-color), 0.4);
cursor: pointer;
}
#search-top-box form[id="search-top-box-form"]:not(:focus-within) input[type="submit"],
#search-top-box form[id="search-top-box-form"]:focus-within input[type="submit"] {
pointer-events: all;
border: none;
}
}
#page-title::after,
.meta-title::after,
#page-title::before,
.meta-title::before {
content: "";
flex-grow: 1;
height: 0.0625rem;
background: rgb(var(--swatch-primary));
}
#page-title::before,
.meta-title::before {
margin: auto 1.25rem auto auto;
}
1
在门框上的切割爆破索一串噼里啪啦的轻响声中,防盗门轰然向外倾倒,早已等候多时的特遣队员们如旋风般冲了进去,激光指示器的红点立刻覆盖了屋子的每一个角落。
“不要反抗!立刻投降!”队员们发出低沉的咆哮,将猝不及防的破碎之神教会成员摁倒在地上。
按照划分好的攻击区域,我径直踹开了里屋的木门。一名破碎之神信徒刚刚从椅子上站起来,他看见我顿时呆若木鸡,没等他反应过来,我便走上去一枪托捣在他小腹上,趁他弯腰之际给他拷上磁力手铐。
这时,桌子上一台老式的SONY牌随身听吸引了我的注意。盒式卡带正在里面转动,播放
放着舒缓慵懒的小调,听起来像复古的电梯音乐
“破碎之神信徒都这么喜欢老玩意吗?”我暗自腹诽着这个信徒的爱好,随即准备关上随身听。但就在我手指刚刚触碰到蓝白机身的时候,异变陡生,光怪陆离的渐变粉色在一瞬间便充斥了我的全部视角。
在我失去意识之前,我的最后一个念头居然是
“啊,是TPS-L2的好货啊。”
当听到动静的队员们赶过来时,只有一个膛目结舌的破碎之神信徒跪在地上,桌子上的随身听仍在播放失真的音乐。
2
我站在人行道上,品红色的半轮落日把道路两旁的椰子树照耀得熠熠生辉,嬉笑的女郎挽着庄重优雅的男士从我身旁走过。而这些男性都穿着大同小异的大垫肩双排扣西装和圆顶礼帽,这种类似老牌英伦贵族的风格如今可不多见,至少我的印象里,SAS的英国佬们都喜欢穿连体防化服抡着锤子砸门。
头顶上飞过的载具让我意识到自己可能处于另外一个维度空间,至少没有哪个地方的公路会是这种浮在半空散发着淡紫色光芒的光幕。一辆辆流畅盒子形式的载具从光幕上飞啸而过,硬顶车身大都采用暖色系类型,显得格外的华丽。
这里也不是破碎之神教会的聚集点,那帮古板匠人不可能这么有情调,麦克斯韦宗那帮人巴不得把自己变成电信号,肯定也不会住在这种地方。
“嗨,年轻人,你挡着我晒太阳了。”一个温和的声音打断了我的思考自己身处何地的念头。我左右观望,离我最近的行人在十米开外,无论如何也不可能是在叫我。
“这儿呢。”我循声抬头,一棵二十五米高的椰子树正对着我摇摆叶子:“你是异乡人吧?第一次来?”
“你怎么……”我话还没说出口,就意识到自己这身在阳光下变成粉红色的自适应迷彩服和三件套西服比起来画风有多么不同。“是,第一次来,这里是什么地方?”
“维C城ξ区,往东面走就是聚居区θ啦,异乡人可以先去那里熟悉环境哦。”旁边的一棵椰子树冲我摇了摇树干:“咱是9,你可以叫咱9小姐!”
“8,你就叫我8先生吧。”之前那棵椰子树依旧拖着温和的长音:“还记着自己怎么来的吗?这里的异乡人不止你一个,或许可以联系到你的朋友什么的。”
“脸朝地落下来之前的事我都不记得了。”
就在气氛陷入一阵诡异的尴尬时,9小姐突然骄傲地挺起树干,用羽毛状叶片指着我说:“你这个圆圈箭头的标志咱认识!在θ区18阶梯楼,梅林小姐也戴着这个标志!”
“开发橘子草莓味苹果的梅林小姐吗?有一说一,苹果的橘子味酸了点……”8先生依旧不紧不慢地回忆。
基金会的驻外特工?同样流落到异世界的研究员?我思考着他们口中的“梅林小姐”的身份。这时,9小姐从自己的树冠里卷起一个方方正正的手提箱倒放在我面前,然后用叶片打开了底盖,赫然是一台显示屏和主机各占一半的便携式一体机!那底盖内侧居然是键盘!在我震惊的目光中,显示屏散发出淡色的光芒,投影出充略有噪点的画面。9小姐用一片叶子在翻开的键盘上熟练地戳着:“咱帮你问问吧,说不定你和梅林小姐认识呢。”
“你们这里……还兴网上冲浪的?”我盯着那贴满了水兵月和水野亚美印花的粉红色外壳,诚心地向8先生请教到。
“年轻人的玩意儿,我可用不惯。”8先生特意弯下树干让我看见垫在两颗椰子上的白色台式机。我更加震惊的发现,这老古董的鼠标都是方形的!
“机子虽然重了一点,但是看看新闻玩玩扫雷还凑合。”8先生用叶片爱抚的拍拍这台电脑:“这可是好东西,城心区的收藏家们打破脑袋都得不到。”
9小姐凑过来一片叶子蹭蹭我的后背:“呐,梅林小姐在第76号环城光路上,这就准备变道过来。”
“有劳了。”我朝9小姐点头致谢。
“哼哼,咱可是很厉害的。”9小姐显然对夸赞很受用,高兴得叶子都绞在一块去了。
在等待梅林小姐的这段时间里,两位热心的“椰子树”给我这个异乡人普及了不少常识,使得我对于维C城有个大概的了解。
维C城的一年有13个月,每个月27天,一日仅为15个小时。以清晨(3:01-5:59)、傍晚(6:01-8:59)、晚上(9:01-14:59)与凌晨(15:00-3:00)来划分为四个时间段。
与精准的纪年不同,这里的季节区分没有周期性,原住民们笼统的以气温高低分为春、夏、秋三个季节,而即使是最冷的秋季,这里的气温也不会低于6℃。
有意思的是,这里的太阳从西边升起,且只会在地平线露出表面的一半,在绕维C城一圈后从东边落下。虽然任何我已知的学说都无法支持“太阳光的入射方向和地平面之间的夹角无论什么情况都是零度”的假说成立。可这一切就真真切切的发生在我面前,不过一看到我面前正滔滔不绝介绍维C城城市结构的9小姐以及时不时补充的8先生,我顿时又释怀了。
嗨,和异常谈什么科学。
“啊?那是什么?你是说外墙吗?”9小姐顺着我指的方向扭动树干看去。在城市的边缘,高大的城墙拔地而起,粉蓝色调的帷幔从城墙顶端垂落地面,仿佛是授予维C城的缎带。
“外墙说实话,咱也不清楚,应该是在维C城刚刚成立的时候就有的吧?”9小姐用叶片挠挠头:“市立图书馆应该有记载,不过随意靠近城墙是会被巡警逮捕的。”
9小姐话音刚落,一阵急促的刹车声便从我身后响起,我回头看去,一辆红色经典涂装的公路跑车正停在路边。长发动机盖夸张的楔形窄车身无不透露出老式设计的典雅,宽敞的发动机盖有着显眼的全宽铝制散热格栅,车鼻上半部分分布着两个弹出式矩形灯舱。而车尾被网罩面板包裹的深色圆灯下面,是与之呼应的三个镀铬排气管组,从略微前倾的车型和后轮就可以看出这车马力强劲。
打开车门的是一位年轻女性,她穿着宽垫肩的外套和紧身套裙,颇具职场精英的气场。只见她熟练地从乳白色手提公文包里摸出两根棒棒糖递给9小姐。然后走到我面前,宛如贵妇般摘下手套伸出手来。
“你好,我是中国分部75站点研究员,梅林。”
微风挽起她的波浪卷发,传递着草莓味的馨香。紫色夕阳勾勒出她柔和的面部轮廓,这一幕美得像是油画,似乎连时间都放缓了脚步。
哦,这该死的甜美。
3
“这么说,你是因为意外触发了U级通道才来到的维C城。”梅林小姐面对着膝上型电脑敲打键盘,头也不回的问道。
“啊?嗯,理论上是这样的。”我收回看向主驾驶室的目光,谁能想到,一辆可以自动驾驶的公路跑车,三幅方向盘居然还是铁制的。
“目前来看,你很长一段时间都回不去了。我们对维C城的探索才刚刚开展,也没有搭建更稳定的双向通道。”
我往后靠在黑色皮革的桶式座椅上,陷入了沉默。
“喔喔喔,血压加快,肌肉紧张,交感神经分泌心肌肾上腺素。干他妈的,老兄,你看起来可真她妈令人难受。”
大尺寸中控台闪烁着绿色灯光,深褐色的卡带机叨逼叨地发出分辨不出男女的金属音抱怨。
梅林用手按住额头:“Vaporwave,幽默度调为百分之七十五。”
“梅林小姐,请你保证对我好一点,这样我才能善待他人。”
“人工智能,刚刚出厂就是这个样子,请不要见怪。”梅林解释道。
“啊,没事,这个地方很新奇,我享受还来不及呢。”
“你知道没事的潜意识是什么吗?是倒霉,没有安全感,缺乏关爱和情绪波动大。”Vaporwave语气格外温柔:“要不我转道去Ι区?那里保证能让你的二极管欲仙欲死。”
“Vaporwave,幽默度调为百分之六十五。”
遵命,女士――”一长串金属颤音后,卡带机的指示灯熄灭了。
“你得习惯这里。”梅林抱歉地冲我笑了笑。
我刚想开口,窗外的景象却顿时吸引了我的目光。
两侧坐落着鳞次栉比的高楼大厦,钢缆和悬浮平台像蛛网一般连接着建筑物,而紫色光路又在平台间交错延伸,大量磁悬浮载具有序的行驶在光路中。如果维C城是一只庞大的钢铁巨兽,那这些色彩艳丽的光路如同巨兽体内奔腾的血管,贯穿了整座城市。
“这里就是城心区了。刚来的话可能会产生空间不适,要吐的话你可以让Vaporwave递个袋子。”
“还好,我在香港外勤过一段时间。”我看到每栋百米高楼霓虹闪耀,外立面滚动播放着色彩斑斓的全息投影广告。推销着诸如家养棕榈树和会打扫天花板的海豚等奇怪的商品。
一架小型四旋翼无人机靠近车窗,与汽车保持着相对运动。“最新出品的碳酸汽水味矿泉水先生,很便宜的先生,买两个吧先生,走过路过不要错过啊先生!”
汽车的自动化系统毫不留情的转动把手关上车窗,无人机见推销无望,抬起高度汇入了天空中的一群无人机群中。无人机群挂着“好喝又健康!让你享受一口三个嗝的爽快!碳酸汽水味矿泉水绝赞好评发售中!赶快预购吧!”的巨型投影屏幕从我们头顶飘过。
“真是……出人意料的繁华。”我下意识地摩挲着手指。“基金会对维C城的初期调查怎么样了?”
“老实说,比较困难。”梅林把垂下的黑发挽到耳朵后面:“维C城的发现还是因为SCP-CN-1128的异常性质,当录音带播放机播放磁带出现卡带绞带的时候,有很小的概率会激活小型U级通道,通道的终点就是维C城。”
我想起那个索尼牌子的TPS-L2随身听:“某种意义上来说,我还是真的该买彩票啊。”
梅林对我的话不置可否:“确实,包括你在内,基金会在这里的先遣人员也不超过五人,可能还包括一个D级。”
“那这里有没有其他GOI的存在?我是在突袭破碎之神教会时意外卷入的,没有理由证明破碎教会不会对这里感兴趣。”
“没有。”梅林摇摇头:“也许有那么一两个误打误撞来到维C城的,不过有组织大规模进入从来没有,基金会是第一个发现异常的。项目负责人卡丽兹也跟我说过维C城相关消息目前完全对外保密。”
磁悬浮车变道下行,一列轻轨从方尖碑式大楼正中间的空隙呼啸而过。参次有序的密集高楼逐渐远去,取而代之的是一片低矮的住宅楼。
这里的街道充斥着复古的怪异感,楼房彼此之间靠得十分密集。缺乏修缮的街道墙面上喷涂有各种各样的高彩度涂鸦,鲜艳的霓虹灯牌如同游戏华容道一样拼凑在一起闪烁。这种从未来科技城市一脚跨入上世纪八十年代香港九龙城寨的落差感使我一时间没有反应过来。
车辆停在了街角一尊大理石雕像附近,坐在大理石座椅上的大卫穿着编号24的黄紫色球衣,正在看一份特大号的报纸,投石带放在他的脚边,里面裹着一颗斯伯丁标准7号篮球。看见我们从车上下来,大卫冲我们点点头,然后继续翻看报纸。
梅林锁上车门,往一栋涂鸦着大大的18数字的楼房走去。我正准备跟上她,这时,我发现
那尊雕像抬起头盯着我。
“新来的?”大卫一口不算标准的美国南方口音。
“对,我才来到这里。不过你难道是……”没等我说完,他便挥挥手打断。“快上去吧”他朝我露出一口比皮肤更白的牙齿。
“欢迎来到Vcity。还有,Mamba out。”
4
棕色橡木门礼貌地向梅林打完招呼,缓缓打开。屋内的暖色灯光亮起,柠檬味的清新空气钻入我的鼻孔。一台酷似HAL 9000的蓝牙音箱从天花板的细小导轨垂下,闪着红光的摄像头。
“欢迎回家,按照智人行为心理学分析,热水已经放好,请在十分钟内去洗澡,以免水温降低。”音箱发出抑扬顿挫的机械音:“哦,老兄,你也回来了?要不要来我房间看些好看的?最新型FC的写真集嗷,我看得电信号热血沸腾!”
“Vaporwave,保持待机。”梅林把纯白色外套挂在衣架上,冲音箱说道。
“遵命,梅林小姐。”音箱垂下摄像头,若有若无的复古流行音乐不知从何处响起。
“我去冲个澡,你随便看看吧,我在这里也没有住多久。”梅林说着走进了浴室,关上门。
我下意识地想掏裤兜里的黄鹤楼,却只摸到了冰冷的快拔枪套。无所适从的我只好踱步来到阳台,这里的盆栽正跟随舒缓的《蓝色多瑙河》跳交际舞,对我的到来没有任何表示。
我站在阳台,迎着清冷的春风看向远处。浓稠如墨砚的夜色下,摩天大楼被霓虹渲染得氤氲迷幻,哪怕相距甚远,全息投影广告依旧清晰可见,而紫色光路在广告间蜿蜒起伏,宛如银河。
“老兄,86,62,91,特别有料。”Vaporwave的声音从我头顶响起,一道全息影像亮起,正是磨砂玻璃下曼妙的女性剪影。“我从不出错,绝对标准。”
“啊?这。”我局促地挠挠头。
“梅林小姐可是大美女啊,现在还没有人树电脑雕像在梅林小姐的家里留宿过,我保证你会喜欢这里的。”Vaporwave凑近我的耳边。
“不管如何,欢迎来到维C城。”