天才模擬器程式設計師死於網路暴力中
Bsnes是世界上最準確的任天堂SNES主機模擬器,它不僅對原始硬體做出了幾乎完美的模擬,還對遊戲寫入、畫面效果都做了大幅優化,同時又能100%相容SFC上的所有遊戲。
而Near,這位圓了萬千玩家老遊戲之夢的天才程式設計師,在6月27日選擇結束了自己的生命。
1
自殺當天的一早,Near在推特上發了一張自己的照片。“這是我,我的真名叫Dave,對不起,我一直都笑不出來。”
照片上的他面容消瘦,滿臉倦意,似笑非笑地看著鏡頭。
第一條推文發出三個小時後,Near的推特賬號又在一分鐘內連續傳送了11條推文,連珠炮似地訴說著自己這些年承受的痛苦,充滿歉意地和朋友及粉絲們做了最後的告別。
“請不要因此而怨恨我,我知道這會給你們帶來痛苦,但我承受的痛苦遠比這要多。”
當天晚上11點,Near的朋友用一篇長文確認了Near的死亡,也揭露了Near自殺的原因:自從2019年開始,Near都在受到網站Kiwi Farms的攻擊。
Kiwi Farms是一個臭名昭著的美國論壇,致力於尋找網際網路上的“lolcows(指值得被取笑的人)”,他們喜歡尋找那些看起來脆弱容易內心敏感容易受傷的人當作目標,把作惡當作一場電子遊戲,盡其所能地讓受害者感到精神上的難以解脫,並以此為樂。
被Kiwi Farms盯上的目標往往會受到有組織的持續不斷的騷擾,在Near之前,已經至少有四人因為Kiwi Farms的霸凌而選擇了自殺。
另一名同樣被Kiwi Farms霸凌至自殺的跨性別遊戲開發者
從小以來,Near一直都在經歷各種形式的霸凌。跨性別者特殊的身份,也使得他沉默寡言,不愛社交,也正是這樣敏感的性格,讓他成為了Kiwi Farms的目標。
即使是面對這樣的惡意,Near最初仍然堅持下來了。見到Near沒有像他們意想中那樣崩潰,Kiwi Farms的作惡者開始變本加厲,他們找到Near最親近的朋友當作目標,曝光他們的隱私,甚至專門找到一些擁有自殺傾向的人作為目標。
最好的朋友也受到波及,最終讓Near幾近崩潰。
去年的某一天,抑鬱加重的Near選擇與所有人斷絕了聯絡。好在不久後朋友們找到了他,幫助他尋找抗抑鬱的藥物,讓他逐漸走出了難熬的發作期,但Kiwi Farms並不會因此放過他。
受到影響的除了Near,還有他的朋友們。因為擔心Near會再次深陷被攻擊的負面情緒,朋友們也時常為他感到焦慮,擔心Near會做出不可挽回的舉動。但事實上,為了不讓朋友們擔心,早已抑鬱復發的Near一直避免與朋友透露自己的近況,裝作無事般正常社交,就在兩週前,Near還曾與朋友們一同在秋葉原吃壽司喝咖啡,以致於誰也沒注意到他的異狀,最終釀成了悲劇。
在懷念Near的文章裡,他的朋友痛訴這根本就是一場“謀殺“:“這與拿起槍奪走人的生命又有什麼不同呢?”
2
在大多數社交網站裡,Dave都會給自己取名為Near,這個網名來源於動畫《死亡筆記》。動畫中的Near是主角L的繼承人,冷酷、無情,不擅長處理生活瑣事,極少與人交流,幾乎不願意外出,總是跪坐在地上,擁有極強的洞察力。
這或許是Near眼中的自己。在個人網站的自我介紹裡,他稱自己為一名過於敏感、喜歡自我批評的軟體工程師,最不擅長社交,喜歡一個人待在房間裡。當談及想做的事情時,卻用了“會用壓倒性的動力迫使自己去實現完美”這樣極端的表達。
喜歡用角色Near當頭像的Near
這種變態般的對完美的要求幾乎完完全全復現在了他的工作裡。Near最後一次公開出現,是在今年三月的一篇媒體報導中。為了給一款遊戲做出滿意的英文字地化,他來回嘗試了五次,花掉了23年。
遊戲的名字叫做《聖龍傳說》,是史克威爾1996年推出的一款SLG,僅在日本地區發售,沒有英文版。更早一些的時候,Near的網名叫做Byuu,這也是《聖龍傳說》裡一個角色的名字。
《聖龍傳說》是Near從小最喜歡的遊戲。十五歲時,Near第一次嘗試給《聖龍傳說》做本地化。他在網上找到了幾個有共同意願的遊戲玩家,憑藉著14歲時在圖書館一邊查字典一邊學習ROM修改器本地化《勇者鬥惡龍》失敗的經驗,元件了一個名為Starsoft Translations的本地化小組。
一個十六進位制編輯器
這個小組的玩家們都既不懂日語,也不太懂程式設計,但最後好歹還是上傳了一份未完成的英文字地化版本。
1996年上傳的未完成的英文字地化版
這次本地化過程中Near遇到最大的問題,就是英文和日文實際上並不一樣長。同樣一句話,日語一頁對話就能完成,換成英文版想要實現同樣的效果,就必須要對字型比例做出優化。
這是第二次本地化最大的進步之一。在進行第二次本地化時,Near列印了一份200頁的檔案來研究SNES的執行方式,挨個嘗試程式碼效果,把最終能夠改變字型比例的程式碼整合起來,做成了一個字型渲染器。
優化後的英文介面
研究過程中,Near發現對於本地化工作人員來說,編譯的過程極其繁瑣,需要先將程式碼手動轉換成十六進位制程式碼,再將這一串轉換完成的程式碼放到ROM裡。為了方便翻譯,Near設計了一個補丁編輯器,簡化了中間的步驟,惠及了大量後來的玩家。
這一年,Near17歲。
2000年的翻譯進度為25%,未完成
3
2004年,Near開發出了Bsnes模擬器。而製作模擬器的起因,是在本地化《夢幻模擬戰》時遇到了意想不到的問題——當時市面上的SNES模擬器都只是單純模擬遊戲執行,並未從系統硬體的角度做出還原,沒法對畫面、視窗做出最合適的調整。
於是,Near就自己動手做了一個新的模擬器。他的目標只有一個:力求完美準確地還原SNES本機的效能。最開始,這個新模擬器並不受人喜歡,雖然它的還原程度更精確,但一般玩家玩起來幾乎感受不到什麼差別,還對電腦硬體有比較高的要求,執行起來也更慢。
但事實證明,Bsnes創造的價值是不可估量的。大約到了2007年,玩家們的電腦配置變得更好、對遊戲要求更高之後,Bsnes開始變得廣為人知。
因為能夠對舊硬體做出高精度的還原,Bsnes很快就超越了一般的遊戲機模擬器,進化成了更高階的形式:Higan多系統模擬器,對GBC、GBA、NES以及一系列世嘉老主機都做出了相容。
在Win10上執行的higan
而Higan最知名的使用案例是在2017年,它成為了霍金聲音合成器的原始碼。
當時霍金的聲音合成器已經使用了三十多年,到了急需更新換代的時候。老爺子有些頑固,對自己使用了三十多年的聲音戀戀不捨,怎麼說都不願意更換成更先進的裝備。但三十多年的儀器已經無法再修補,舊儀器的廠家也早就無跡可尋,不太可能再弄個一樣的了。
於是有人想到了Higan,這個能夠高度精確模擬出原硬體功能的模擬器。最終,新增上Higan程式碼的聲音合成器完美還原出了舊合成器的聲音,陪霍金度過了人生中最後的時光,一直到他2018年離世為止。
故事再回到Near的身上。
因為有新模擬器的加持,本地化了6年、經過三次嘗試的《夢幻模擬戰》成為了Near最滿意的作品之一。但在這期間,《Mother3》英文字地化的作者Mandelin搶先發布了《聖龍傳說》的完整英文字地化,使得Near大受打擊。
不過在此之後,二人成為了朋友,Mandelin還和Near一同參與了《Mother3》的英文字地化製作,目前他們做出的版本仍然是市面上最好的英文版。
Mandelin本地化之後的《Mother3》
看起來一切都更好了。Near已經擁有了幾乎能解決一切問題的強大程式設計能力,也擁有了一個同樣強力專業的夥伴,但問題是,想要在原基礎上更進一步,可能沒有想象的那麼簡單。
市面上完成本地化的《聖龍傳說》載入特別慢,僅僅是選單可能都需要幾秒鐘的時間,且時不時會存在一些圖形現實故障,對於追求完美的Near來說這顯然是不能接受的。與此同時,如果想要對載入速度進行優化,需要推翻原先使用的全部程式碼用新程式碼替代,需要大量的時間和精力。
而且,自從Higan普及之後,Near變得更忙了。2009年開始,他花了更多時間在Higan的衍生產品上,中途也幾次想要繼續《聖龍傳說》的本地化,但終歸沒能完成。
直到2019年,Near宣佈退出模擬器圈子,理由是“遇到了一系列不斷升級的隱私侵犯和網際網路騷擾”。
4
2020年十月,Near為第五次本地化打下了第一行程式碼,從Near朋友的敘述來看,這正好是他第一次抑鬱症好轉的時期。在後來面對採訪時,Near稱,在停下工作的這段時間裡,完成《聖龍傳說》的想法“總是一次又一次出現在腦海中”。
他尋找了一位名叫Tom的朋友幫忙做文字的本地化工作,自己則埋頭於鑽研程式碼。在原本的遊戲中,選單游標位置總會時不時發生變化,“有時比文字高兩個畫素,有時候高一個”。
Near的完美主義受不了這點瑕疵,他把所有頁面的游標全部修改成居中對齊,比文字高一個畫素點。
第五次本地化在今年三月告一段落,大概是出於對遊戲和本地化工作的熟悉,這次僅僅用了五個月,就只剩下最後的打磨了。
Near完成的本地化補丁的結局畫面
“要是能夠把這個展示給十五歲的我,和他們一起慶祝就好了。”這是三月份的採訪中Near留下的最後一句話。
5
在做出決定之前,Near或許已經做好萬全的準備了。在發完那一連串推特之後,Near給朋友撥了一同電話,電話裡他稱自己服下了過量的可待因和胍法辛(兩種精神性藥物),附上了一張絞索的照片。
這通電話打了九十分鐘,在最後的一個小時裡,電話那頭只剩下Near最喜歡的歌曲在一遍一遍地迴圈播放。這首歌的名字叫做《Les Voyages De L'?me》,翻譯成中文叫做《靈魂之旅》,它同樣附在Near告別世界的推文末端,講述了一個悲傷的靈魂逃離世界的故事:
遠離我們和我們的時代
它會向著星空遠去
它們會用清澈而寂寥的話語
對我的靈魂傾訴它們的存在
它們會為它指引方向
去向未知的港灣
那裡天堂與塵世相接
這些遙遠的地方
高而茂盛的草叢,琥珀色的原野
永遠與光共舞
作者:哈莉葵因
來源:遊研社
地址:https://mp.weixin.qq.com/s/u6VqUVP4_JUXU6jXCphSzA
相關文章
- 轉載網路文章:22年前的天才程式設計師今安在?程式設計師
- 天才程式設計師 Fabrice Bellard程式設計師
- 程式設計將死,程式設計師永存程式設計師
- 基於微控制器的光控路燈設計含程式和模擬圖
- 好程式設計師前端學習路線分享模擬JavaScript中物件導向技術程式設計師前端JavaScript物件
- 關於oracle死鎖的模擬Oracle
- Cisco Packet Tracer Student(思科網路模擬器)模擬搭建VLAN網路
- 關於程式設計師寫文件(網路轉載)程式設計師
- 電路大師課系列-模擬積體電路設計第五講:基本π網路(下)
- 一個天才程式設計師的黑幫大佬人生程式設計師
- 585【畢設課設】基於微控制器計程車計價器模擬系統設計
- 第一章:程式設計師的天才神話程式設計師
- 哪來的程式設計天才?程式設計
- 網路程式設計基礎,模擬get post請求程式設計
- 不黑程式設計師會死星人程式設計師
- SciTech-EECS-電設計- PCB設計-電路設計與模擬系統 + SPICE 模擬描述與模型模型
- 網頁設計師 vs 網頁程式設計師網頁程式設計師
- 虛擬機器網路設定虛擬機
- Cisco Packet Tracer Student(思科網路模擬器)模擬集線器和嗅探攻擊
- 自己程式設計模擬 MouseEnter,MouseExit 事件 (轉)程式設計事件
- 【DEADLOCK】Oracle“死鎖”模擬Oracle
- 模擬SQLserver死鎖現象SQLServer
- vmware虛擬機器網路中斷虛擬機
- 基於Select模型的通訊模擬--win32程式設計程式碼模型Win32程式設計
- Web 魔方模擬器的設計與實現Web
- 機器中的大腦:隱居程式設計師正在建造虛擬農場程式設計師
- 程式設計師面試常問計算機網路問題程式設計師面試計算機網路
- mumu模擬器設定代理
- 一個51程式設計和模擬——流水燈程式設計
- 【Java程式設計】使用Java模擬C/C++中的queue佇列Java程式設計C++佇列
- Linux程式設計:模擬程式排程演算法Linux程式設計演算法
- esxi6.7 安裝模擬網路模擬器PNetLab v6版本
- 關於 Linux 中模擬滑鼠Linux
- 「熱話題」33歲程式設計師5小時瀕死體驗,程式設計師養生攻略程式設計師
- Java中神經網路Triton GPU程式設計Java神經網路GPU程式設計
- VMware虛擬機器的網路設定虛擬機
- 虛擬機器設定中的各種網路連線方式虛擬機
- Linux程式設計師將成為微軟的死敵Linux程式設計師微軟