Cyber Me Part I, and a Review of a Corny Novella

2024-08-08
#garbage

Note to self: if the content of this post becomes too personal, don’t make it public.

What am I even writing …?

Right. What am I writing? And why am I even writing this?

Part of this post’s title is derived from a friend’s article “cyberme”, basically summing up the blog owner’s online identity. I will try to do the same in this post. At first I thought that would be a pretty much trivial task, but later found out that couldn’t be further from the truth. So I preemptively split the post into multiple parts. This part will cover … as much as I want it to cover.

And as for the second half of the title: I was going through some of my old files (we’re talking really old files here, which date back as early as 2006) the other day, and I found this novella that I was speaking of in the title. Read through it again and figured it was somewhat related. So I decided to shoehorn it in there. That part probably shouldn’t take up too much space.

I considered writing this post in Chinese when I was planning for the post, mainly because most of the events mentioned here happened in a largely Chinese-speaking context. But since I have written the intro in English, I guess I’ll scratch that plan.

As you’ve seen so far, this post probably will be all over the place. It is, in fact, already all over the place before I even went on topic. Hell, even posts that I actually tried to keep on topic were all over the place. So this post must be extra all over the place. Buckle up.

A Pathetic Attempt at Understanding Human Literature

The novella in question is titled 《她死在QQ上》 (“She Died of QQ”[1]) [2]. It’s a fantasy horror story of some sort. Apparently the author, 馬伯庸, is quite famous and pretty well-regarded. I had never heard of the author before reading the novella. Actually that stayed to be the case until much later. I guess I just exposed myself as an illiterate who don’t read much. [3]

I read the thing in 2009, on the very first cellphone I was bought by my parents. It was a flip phone. A generic off-brand Nokia knockoff based on some random MediaTek chipset. I got the novella in the built-in ebook reader. The reason that I was reading it, from what I can recall, was that the title instantly got me hooked [4]. Plus the fact that I just got myself into this platform called QQ that was brutally slandered by the title [5], so I just must read it.

The story is long enough to be called a novella. Apparently the paperback edition is around 180 pages. I remember being so hooked by the story, that I attempted to finished in one night. My mother got pretty pissed when she saw me gluing my face to the phone, completely absorbed in the story. She grabbed my phone and tossed it across the room, causing the phone to disintegrate. Miraculously the phone survived, just with a broken hinge. I persisted and read through the whole thing in my bed, holding the dismembered body of my crappy knockoff phone in my hands.

I couldn’t recall any specific thoughts on the style of writing when I first finished reading it. [6] The only thing that I could remember was, of course, that I was extremely hooked by the story line. It seemed that the story absolutely demanded me to finish it in one go and that was precisely what I did. However I do have renewed opinions on the writing when I read through the thing again recently, and you may have an idea of what the opinions are by reading the title of this post. Yes, I now deem this style of writing as corny. Don’t get me wrong, it still is capable of hooking me. And if you are the correct type of person, the writing of this story will more than likely trigger your fight-or-flight response. However I just find its (over) use of superstitious beliefs Chinese folk religion a bit distasteful. There are too many plot holes to easily poke through. The plot armor of certain characters are so flamin’ [7] strong that I believe one can break the fourth wall with it. The story line is really predictable in hind sight. Like many online reviews, I find the ending a bit too underwhelming, as if the author was about to run out of ink and has to close off the story hastily. These points really do add up. Now, there are some positive things to say about this story. Despite being very linear, the delivery of the story is executed pretty well. After all it has successfully hooked me, so I would have to admit that. The fantasy part is fairly creative. It’s obviously nothing original though – “The Matrix” and “Ring” were on for a good while by the time this story was published, but I can appreciate the author’s somewhat unique spin of it. By the time this book was published (late 2005 or early 2006), the Internet would still be a pretty new thing to many households in China. The story definitely took advantage of that.

The following sections will spoil the story if you haven’t read it yet. If you do care about spoilers, go read the original [8] and come back when you’re done with it. Or you can read my terrible …

Synopsis, or TL;DR of the story

This will be pretty frigging long so better collapse it.

(Content Warning: death (many instances), suicide (also many instances), potential prejudice against certain demographics)

The heroine of the story, first-year college student Nova [9] is going to have a study session with her cousin, Tranquille, only to find her devastated parents and her lifeless body when she arrived at Tranquille’s home. Police investigation pointed strongly to suicide. In disbelief, Nova decided to investigate the death of her cousin herself.

The first piece of evidence she’s got is the final message Tranquille received on QQ. It was a creepy message from a user without a name saying “It’s time to go”, sent precisely at midnight. Another piece of evidence came in quick when she saw on local news that another girl committed suicide on the same day as Tranquille. She visited the home of said girl and was greatly surprised when she found a photo of Tranquille and the girl in her room.

Nova goes through the drive in Tranquille’s computer. She finds the same photo she saw in the other girl’s room. She also finds what appears to be an unfinished fictional story. Apparently Tranquille is involved in a small writing club that crafts this type of stories. Tranquille got in touch with an expelled member of the club, Erhol, who is shocked to find out that Tranquille has deceased. As Nova goes through the website of the club, she was hit by the same creepy message. But through the sheer strength of plot armor, she was able to survive the attack.

Around the same time, Nova got in touch with Matthew, who’s the cousin of Nova’s college friend, Flora. Both people are into spiritual stuff and the occult. Matthew agrees to help Nova with her investigation.

Matthew visits Tranquille’s home. He says through his (reality enhancing) glasses he’s able to see the reminiscence of a spirit inside the case of Tranquille’s computer. He concludes that the encounters with both Tranquille and Nova was probably a spirit, maybe even the most powerful of its kind a “revenging spirit”.

One by one, Nova confirms all the remaining members of the writing club have deceased around the same time. Meanwhile, with the help of a friend, Matthew is able to hack into the private web forum of the writing club. In the moderation logs they are able to find a bunch of deletion logs pointing to another expelled member, Solus, whose whereabouts are still unconfirmed.

From earlier investigations Nova knew her cousin has been in a romantic relationship with Solus. By reading the stories listed on the club’s website, Nova realizes the fictional characters in the stories are directly tied to real-life members of the club. In one story where each character was associated with a geographic location, Nova is able to infer the place where Solus is from, which is later collaborated by Erhol. Nova decides to visit the place with Matthew.

Once in the town Solus lives in, the two located the address Solus was last using the Internet, which is a net cafe. They are shocked to learn from the owner of the net cafe that Solus was, in fact, a girl and committed suicide a few days before other members of the club died. From pages cached by a search engine, Matthew is able to recover the final missing page on the club’s website. The club arranged a meet-up during which Tranquille discovered Solus’s real identity. After the meet-up Tranquille decided to sever all connections with Solus, causing a complete emotional breakdown in the latter.

After examining the site where Solus did the act, Matthew confirms that Solus indeed turned into a “revenging spirit” living in the Internet after her death. The story ends with a successful ritual to eliminate Solus’s spirit from the Internet performed by all the living protagonists (which involves a “cyber Ouija board”).

Reflection, a.k.a. a preface to “CyberMe”

At around the time this story is set to happen (early 2000s), my parents got a computer for the family. We were connected to the Internet via a 56k modem. For the first few years I had zero experience with any online social communities. The only thing I did when I went online is downloading pirated software. [10] Downloading Photoshop CS (8.0) was painful through a 56k connection.

My family moved to another apartment in the second half of the 2000s and we were upgraded to a DSL connection. It was around that time when I started to use Internet-based communication services. At first I was strictly limiting it to people I have real-life connections with. However soon I found myself joining the self-proclaimed biggest Chinese online forum, and the rest is history.

Now it seems to me that my approach of online communication is the polar opposite to the fictional characters in the writing club of this story. I’ve been very open about my real-life identity online [11] – being no artistic hipster the first username I came up with was literally my English name (misspelled by accident) followed by date of birth [12]. I was leaking my legal name online left and right in the very early days. I never leaked a photo of mine, or set it as my profile picture, though. Setting a real life photo of the account owner as the profile picture, while customary in many cultures, seems to be pretty out of the ordinary in China. And if you’re a programmer, it’s in the rules that your avatar must be a cartoon character of some kind [13]. That is precisely why one can tell a Chinese user apart from the rest of them on GitHub so easily /s On the other hand, when it comes to relationship formation, it’s always going to be a slow and repetitive trust-building process. Bonds formed so hastily, like the ones in the story, would never have me as an end of them, let alone love affairs. Turns out this is precisely how I build real life relationships as well. With all that said, there have been a small handful of people I met online, who went through this entire process and became long-term real life friends with me. This kind of friendship is the type that I cherish the most.

Curious LGBTQ undertone

I need to take a detour to bring this up. No, it’s not even an undertone. A character in the story is blatantly wishing to be in a lesbian relationship [14]. This is quite atypical of literature from that time period because of the taboo nature of any topics that is even tangentially LGBTQ-related [15].

It is, however, not easy to tell whether the author is portraying people of this demography in a positive light or not. It seems that the author is trying to depict the relationship as your average human love affair, and could be seen an attempt at normalizing such relationship. However the overarching tone and the tragic outcome of the club indicates otherwise, and there are some majorly confusing commentary in the story on this matter as well. I usually don’t assume nefarious motivation. And from what I learned about the author, it seems that there’s a pretty decent chance that this design is well-intended. But what do I know? As an aroace, I probably am unqualified to talk about human love affairs.

Other random commentaries

(Sorry, feeling too lazy to translate the original text.)

Expand

六月十六日晚十一点三十六分,星期六,上海市。

This is utterly impossible. A second grade high school student in China won’t ever be allowed on computer Saturday night, even in 2001.

(Well, I don’t have the fortune of being born in a megalopolis. So maybe I have no idea.)

那个无数头像的虚幻世界太美好了,唐静在那里感觉无拘无束,异常自由,和素未谋面的网友之间有说不完的话题,乐趣无穷。

Unfortunately this was untrue for me. Pretty much everything I did online back then was heavily sanctioned by my parents. I had to convince them the thing I was doing was somehow beneficial to my studies (sometimes involving various levels of deception).

Also that just isn’t how I make friends.

今天她从早上一睁眼就坐到了电脑前,一整天都在网上度过的,晚上泡了碗方便面胡乱吃完后,又回到自己卧室,这一坐就坐到了十一点半。

Now this is accurate, although 11 pm is now considered to be early by me. But I’m doing it for a different cause. Also instant noddles, eww.

随着鼠标的移动,二十九寸的显示器“啪”的一声亮了起来,

I’m unconvinced 29-inch CRT monitors existed at any price that is remotely affordable by the average Chinese household back then in 2001.

每个人在网上,都与真实的自我不同,整个互联网就是每个人的面具。

I get the general idea. However this is not necessarily true. Be careful whenever you’re making an all-encompassing statement.

For most people, the Internet is more like a lens or a prism. Their online identity will always be a refracted image of their true identity. Creating a personality that is completely detached from the real one and maintaining it is incredibly hard [16]. I’ve seen and met with people whose online identity is simply an unaltered, authentic manifestation of their real life personality. Admittedly this kind of people are rare, but they do exist.

“在网上,没人知道你是一条狗。”

Old meme. But certainly, someone does.

她打开自己电脑的机箱,小心地把唐静的硬盘装进去,调整了一下各种设置,然后以这个硬盘的系统启动了电脑。

Rare person of age 18-19 who possess the skills required to perform this task.

Wait, I was doing this before I was in high school. Well, frick.

Also lucky to be her for Windows not to freak out and blue screen when it attempts to load an incompatible driver.

里面放的多是下载的MP3、电脑游戏、日本动画和偶像剧,……

Piracy (extremely likely).

接下来则是正文部分,洋洋洒洒十几页,字数有一万三千六百二十一。

That’s not so long. My rambling easily beats it.

唐静一向爱好这类风格,甚至写高中作文也是如此。老师批评说“太工于辞藻,未免以辞害意”、“浮华”,她也不以为意,反而声言要走郁秀、韩寒一样的道路,在高中就写书出版。

Wait, ain’t this the favorite style of them Chinese teachers? I guess they’re not a fan of the Wuxia genre either.

(Also I have an entire post hidden in this blog that dumps on how short essays are graded in China. No I’m not going to link it here.)

BBS论坛也是一样,唐静去的多是武侠、动漫、流行元素等主题的论坛,人气倒是相当的足,但灌水量也是相当大的。

BBS in its proper form, which is accessed through the phone line or telnet, has practically never been popular outside higher education institutions and some other closely related organizations in China. When this word was used there, it’s pretty much always referring to a web forum, which is still the case to this day.

用IE打开后,终于确定了www.cansnow.com这个地址。

This domain is parked as of 2024. You’ll be able to find archived versions on the wayback machine. Go all the way back to the earliest one. You’ll be greeted with a page pieced together with Microsoft FrontPage, which links to a version of this novella published on a discussion board in 2002, 3 years before it would be made available as paperback.

Goodness this forum is giving me major nostalgia, despite the fact that I didn’t spend too much time browsing forums of this kind. I wonder whether discussion boards like this that have significant traffic still exists on the Chinese Internet.

Also reading through some of the comments in the post has been a pretty interesting experience. Looks like the archived website could have been set up by a fan of the story from this forum.

By early 2003 the website has already been repurposed to advertise for the aforementioned discussion board. Later that year the website was misconfigured and no longer accessible. In May 2004 it became a redirection to the website of a silk fabric manufacturer. Then followed by a few more months of misconfiguration it finally became parked in mid-2005.

果然,这正是残星楼的主页,首页是FLASH,制作的相当精良,古香古色,背景音乐是悠扬的古筝声。

The fan-made website looked nothing like that.

Also, RIP Flash.

I wonder what did it take to host a website in China more than two decades ago.

其实呢,鬼就是人的精神,也算是一种带电粒子的聚合体。

Bollocks.

“都不是,我自己琢磨出来的。”

… no wonder.

但是,很快系统显示自检失败,无法启动。

Lacking a working hard drive won’t cause POST to fail, silly.

确认了,时间是六月十七日凌晨四点零二分。

Assuming their forum is showing time in server’s timezone, then 4 AM CST is 8 AM NZST, which doesn’t make sense at all. So whatever forum software they were using must have been showing the local time reported by the client … where 4 AM NZST is 12 AM CST … What kind of dumb forum software is that?

第二天上马列理论课的时候,正是中午。老师在上面划期末考试的重点,下面一群学生虔诚地记录着。他们中的大部分人都是本学期第一次如此认真地听马列理论课。

This is too hilarious.

通过蚌埠市公安局,现在国家对网络管理很严格,有个叫‘金盾工程’的系统负责监控电脑

THE ROOT OF ALL EVIL!!

(Well, not really, but very close.)

(The Great Firewall is part of the Golden Shield Project, for anyone who doesn’t know.)

果然和他说的一样,才一走出火车站,立刻就有好几个人围上来,问他们要不要住店,可以提供既便宜又好的旅店,有的甚至直接拉扯他们,态度殷勤的有些过分。

Accurate. But missing the part where someone asks you if you need a ride.

一晚20元钱

WHAT?

假如一个人生前的意念极为强烈,那么就有可能出现人死精神不死的情况——也就是所说的鬼或者厉鬼。

Dualist garbage.

然而,在五月一日的聚会中,惊鸿发现子山在网上冒充男性,但现实中竟然是女性。

Sounds familiar …

并且对子山做了一些她所无法容忍的羞辱。

Nobody deserves that kind of shit.

最后,子山怅然返回蚌埠,她个性偏执,于五月六日满怀怨恨地自杀。

Me as an aroace is having major trouble understanding why people would die for love affairs.

That said, murder over passion happens all the time. Why can’t everyone be aroace?

我的前世是唐朝人呢。

You don’t say.

Also, your ancestors once lived in Africa, by the way.

鼠标缓慢地移动到G,然后移动到U,最后停在了I

Graphical User Interface.

过了半天,鼠标才重新移动,这次移动的顺序依次是S、I、D、E。

Speaking with accent now, eh?

仅仅这样你就杀了他们?!你这也算是爱一个人吗!?

Again, people do absurd things under the manipulation of hormones.

Why can’t everyone be aroace?

那有什么关系,我比任何一个男生都爱她。

Being lesbian is perfectly fine in my book. Being trans is perfectly in my book. However, forcing someone into a relationship they don’t wish to be in isn’t.

你们竟然全都嘲笑我,就连惊鸿也一样。

There has to be a better way of doing this.

Prajnaparamita.ram

Funny story: we jokingly wrote part of Nilakantha Dharani (Great Compassion Mantra, not the same text as the one referred to here, which is better known in English as the Heart Sutra) on the back of the plate we earned in an ICPC-series competition as an attempt to “appease the chaotic demon” that was allegedly possessing one of our team members. There’s a photo of the terribly defaced plate here.

Of course it didn’t work.

马鸣无力地挥挥手,示意她不要出声,右手一直按住F8键。这样,电脑启动后就自动进入了DOS模式。

Good old Windows 9x…

Also plot armor for hard disk? Since when is that a thing? Why didn’t it get destroyed like the last time?

性别错位,这大概是网络做为人与人之间巨大面具所折射出的必然悲剧吧。

Not being cis does not necessarily lead to tragedy.

Not being heterosexual does not necessarily lead to tragedy.

Being on the internet does not necessarily lead to tragedy.

Any combinations of the above does not necessarily lead to tragedy either.

WHAT ON EARTH IS THIS SENTENCE TRYING TO SAY?? I am confusion.

Cyber Me, Part I

Fine, let’s get to the main event of this post, when this post has already grown beyond 20 KiB …

Ballance

This is not the first time I wrote on this topic. You can find my last recounting of my Ballance-related history here (in Chinese) [17]. Judging by how things are going, it’s very likely not the last time either.

I’m going to tell the story purely from my own perspective. Please keep this in mind when other parties are involved, as my perspective is inevitably biased.

TL;DR

In retrospect I see the following highlights in my Ballance “career”:

  • Working on my remake of the game, “Ballance Remix” (2011-2012)
  • Working on my own project, “World’s Hardest Game 3D” with people I met in this community (2011-2012)
  • Serving as the community moderator for around a year [18] (2013)
  • Experimenting with level authoring with Blender (2018)
  • Working with Alith on deobfuscation of Virtools scripts used by the game (2018)
  • Discovering a way to inject Virtools scripts into the game in custom levels without otherwise modding the game (2019)
  • Help the community obtain a copy of Virtools 2.5 from Dassault, a version that nobody in the community had access to before (2020)
  • Releasing my first and only (to this day) custom level for the game (2020)
  • Working on alternative rasterizers for the game (2023)
  • Meeting with the producer of the game (2023)

And of course the infinite amount of fun times I had with people I met in this community.

(Why does this look like a stupid CV?)

Phase One: Introduction

Ballance is a video game in the broader platformer genre with a significant physics simulation component. I was introduced to the game by a friend of mine when we were in a training camp for competitive programming in the summer of 2009. For someone who hasn’t played more than 2 games that requires installation like me [19], the graphics and overall ambience of the game got me deeply interested. Of course we pirated the game. In this process I accidentally downloaded the trial version and wondered why there’s only one level in this entire game.

I was playing on my dad’s IBM ThinkPad R52. It took me a month to clear all 12 original levels in the game. I can still recall the excitement and thrill I felt when I cleared level 12 for the first time, with no lives left (yes I really am that kind of incompetent player who would die repeatedly in the final section).

Soon enough I realized that I don’t have the skills to attempt the DLC. So naturally I did what I would always do: start looking through the game files and understand (or pretend to understand) how the game works. [20] I was able to find a bunch of texture images and sound effects. But the level files, which were the most interesting to me back then, were “NMO” files that I never heard of before. After doing some digging on the Internet I found the correct application that handles this type of files: Virtools. This lead me into the rabbit hole that I still haven’t gotten out of to this day.

I familiarized myself with some of the very basic stuff that one can do in Virtools to these level files: moving and spinning stuff around, scaling items to absurd proportions, and spamming the level with clones of items in the level [21]. I opened up every single NMO file in the game, and tirelessly clicked through every UI element in Virtools. A few things I was able to figure out on my own were: a) You can modify the physical properties of the player-controlled ball by changing values in an array in Balls.NMO; b) The flame effect in the main menu animation can be easily tweaked [22]; and c) The “ventilator” module can be animated / played inside Virtools by pressing the “play” button at the bottom right and activating a bunch of objects. However soon I was bored with this basic stuff, so I decided to go back to the level files, this time with a brand new goal in mind: adding objects that isn’t cloned from the level. Keep in mind that back then I don’t even know what’s the proper terminology for 3D modelling. So of course I got stuck and frustrated, so I turned to the Internet for help.

Phase Two: Looking for help

At this point I was already lurking around in the Ballance Tieba [23] community for a while.

Phase Three: Starting my projects

Phase Four: Rage quit

Phase Five: Dabbling in smaller projects

First Detour: BKT

Second Detour: Other early Tieba communities

Competitive Programming

GFW. It Was Nice Knowing Ya.



[1]: a more accurate translation would be something like “she died when she was on QQ” but that is way too verbose.
[2]: Additional context for readers who need it: QQ is an instant messaging application popular in China since the late 90s. It’s basically IRC with direct messages and pay to win.
[3]: I still don’t read much these days. And when I do read, it’s pretty much always non-fiction. So chances of me knowing an author whose entire shtick is storytelling would be pretty low.
[4]: You will see the word “hooked” getting abused too many time in this section. Sorry.
[5]: j/k. Tencent is a horrible company.
[6]: Yeah, right. I was like 12 and really hated reading in general back then.
[7]: Replace it with the worst cuss word that starts with an f that you can think of.
[8]: I’m not aware of any translation being available.
[9]: All names in this synopsis are assigned by me and are tangentially based on the original names of the corresponding characters in the story.
[10]: Well, that’s not entirely true. I remember playing online Mahjong back then, which was quickly shot down by my parents. I haven’t even finished two games :(
[11]: Up until I realized the privacy issue surrounding that.
[12]: This name, for better or worse, stuck with me and I have no intention to change it.
[13]: /j obviously.
[14]: There’s a chance that the character in question could be transgender instead. The author never made it very clear which is the case.
[15]: It’s still very much a taboo project in most Chinese communities.
[16]: It could be easier for some people than others, for a variety of reasons.
[17]: Not required reading, for obvious reasons. Actually pretty much everything written there will probably be covered again here.
[18]: I actually see this as a disgrace instead of a highlight … Nevertheless it was still a noteworthy event.
[19]: Due to my heavily sanctioned activities on the Internet, pretty much all video games I’ve played up to that point were crappy Flash games, with perhaps half of them being a knock of something in the Super Mario franchise. Funny enough, the original “Bloons” and “Bloons TD” were also among these Flash games. Damn I really need to start my post on my history with video games.
[20]: This has been a thing for me ever since I got first introduced to computers. I would aimlessly wander through the WINDOWS folder in the system drive for half a day, imagining what each file is used for. The same applied for games. Later I would start using a Flash decompiler on the Flash games I collected over the years and mess with the decompiled source code. That was actually the origin story of Bullet Lab Remix, but I digress.
[21]: I had no understanding of how this game works whatsoever back then, so I was very convinced that there are no ways to make cloned objects “work” (that is, not being ignored by the physics engine) besides choosing the second option when it asks you how the object is supposed to be cloned. I realized that wasn’t even remotely true later.
[22]: I totally didn’t spend too much time changing the color of the flames, making them taller or shorter, and making them spray all over the place until my parents were visibly displeased with me and ordered me to get off the computer. Yes I spent way too much time playing around with particle systems.
[23]: For any readers unfamiliar with the Chinese Internet: Tieba is an online forum run by the infamous search provider Baidu. It works kind of like Reddit in the sense that any one can create subreddit-like communities. However notably it lacks the voting mechanism.