作者:Claudia Lo
編譯:Lyroat
編輯:Ent
對於裡德來說,這真是糟糕的一天:她的飛船墜毀了,她是三位倖存者當中的一個,而另兩位則一直試圖勾搭她。對她來說不幸的是,她長得很漂亮,所以那兩位一下就被她迷住了;然而對他們兩位不幸的是,裡德是位同性戀,這意味著她永遠不會對他們產生同樣的感覺。她就在毫無新意的反覆搭訕和在殖民地的工作中,過著一成不變的地獄生活。
《邊緣世界》(RimWorld)是一款科幻殖民地模擬經營類的遊戲。當針對玩家在艱苦外星球上的生存嘗試時,遊戲似乎能毫不費力地編織出有張力的精彩故事;但是當涉及到性、浪漫以及性別問題時,遊戲所講述的故事又往往是另一碼事。於是我們深挖到遊戲背後的代碼,來一探究竟。
回到裡德身上,我們發現那些搭訕並沒有令她感到沮喪,她的心情值並沒有因為連續不斷的挑逗而降低。但是對於兩位男性羅伯和布茨來說,可就大不相同了。因為裡德,他們的心情值和關係值遭受了幾乎是永久性的降低——他們不斷地試圖約裡德出去,然後又不停地被裡德拒絕。但這並不是他們的錯——羅伯和布茨不停地挑逗裡德,因為他們是男人,還有就是裡德實在是太漂亮了。當然,更為確切的說法是,他們就是這麼被編碼的。
布茨和羅伯因為裡德的拒絕,心情值和關係值都會有所降低。
詭異的是,把有關飛船墜毀的部分去掉,這一情景完美反映了關於性、浪漫以及男女關係的一種常見敘述。無論在媒體還是在現實生活中,我們能頻繁地聽說這些故事,關於男人們是如何「不能自已」地圍繞在美女身邊,關於被迷人的女性拒絕對男人來說是多麼毀滅性的打擊。先不管這些故事的真實性,以及它們對男性和女性的同時貶低,為什麼這是《邊緣世界》中針對男女關係講述的故事?為了能夠深入了解到問題核心,我對《邊緣世界》的最新公開版本進行了解包,從程序中來看看浪漫互動是如何被決定的。為了便於非程式設計師讀者閱讀,所以較長的部分是以偽代碼呈現的,來告訴你它們的作用是什麼,所以你不需要掌握流利的C#語言。
先說清楚,我上面描述的軼事在《邊緣世界》中並不是一個獨特的場景。本文寫作時在《邊緣世界》reddit上討論熱度最高的一個帖子,就是一位玩家在求「如何對付好看的女同性戀的策略」。另外,之前一次對《邊緣世界》的反編譯總結了該遊戲對浪漫行為的模擬,也明確指出了造成裡德窘境的答案就藏在遊戲原始碼中。
那麼,為什麼裡德的兩個倖存者同伴持續不斷地調情呢?部分答案在於,遊戲對於男女角色如何開展浪漫嘗試的計算是不同的。所有角色一開始都擁有一個基礎概率,能按照這個概率把任意社交互動轉化為開展浪漫嘗試;而為了讓求愛發生,對方外貌還要超過一定的下限,對方在角色心中的地位也要是正的數值。換句話說,你必須得真的喜歡上一個人並覺得對方有吸引力,才能去嘗試開展與他們的浪漫關係。當發起浪漫關係嘗試的隨機概率參與進來時,事情就變得有趣了。
// 基於發起者性別的概率變化換句話說,女性角色去嘗試並開始浪漫關係的概率只有男性角色的八分之一。當然,這不是唯一因素——還有是否存在現任伴侶以及與對該伴侶的感覺等問題。然而,這種對性別的單一檢查有一個深遠影響,就是它使女性發起的浪漫嘗試非常罕見。請注意,無論是之前的回拒史還是對方是否有「同性戀」屬性,都對此沒有影響;這可以解釋為什麼二人不會停止追求。但這種行為是純單向的。裡德不會去挑逗羅伯和布茨,並不因為她是女性,而是因為她覺得這兩個人沒有吸引力。
那麼吸引力又是如何計算的呢?對於男性和女性角色來講,吸引力都取決於幾個變量:發起者和接受者的性別、發起者的性取向、接受者的美貌程度、年齡和身體能力。
在研究性別差異之前,我們先看幾個通用變量:
// 在餘下的函數中,將吸引力乘上以下各項因子在《邊緣世界》裡其實沒有「直女」,也就是說,沒有女性只被男性吸引。相反,遊戲中的每位非同性戀單身女性,都有一定機率被其他的女性吸引,也就是說她們是雙性戀。對於男性來說程序又有些不同:
// 計算對方在我眼中的吸引力(0.0到1.0之間)注意,在遊戲中男性的可能性取向只有異性戀和同性戀兩種。在《邊緣世界》中,不存在雙性戀男性,只有同性戀和異性戀男性;不存在異性戀女性,只有同性戀和雙性戀女性。
最後,我們來討論下最複雜的部分——基於年齡的吸引力。僅僅解讀代碼,很難把這件事形象地表現出來,所以這裡採用了圖表的方式來呈現。
對男性角色來說,基於年齡的吸引力計算。
對於女性來說,基於年齡的吸引力計算。
在《邊緣世界》中,男性角色總是被從20歲到自己年齡之間的人所吸引。如果男性角色小於20歲,也並無二致——因為程序會先檢測「最低「邊界,然後使得他們一定會被20歲的人所吸引。這就解釋了為什麼32歲的羅伯和17歲的布茨會一直約23歲的裡德出去。但是,由於相同的代碼不會檢測相對年齡差,17歲的布茨不會真的覺得他17歲的同齡人有多少吸引力。同樣的也有一個吸引力的最低年齡——16歲,以及最大年齡——角色的年齡加15歲。所以在這種情況下,布茨不會被32歲以上、16歲以下的任何女性吸引。
另一方面,女性壓倒性地偏好比她們年齡大的人。而且與男性不同的是,女性對於「太老」的角色沒有明確的界限:即使是比自己大40歲的角色,也有一定的機率吸引到自己。這和男性的計算方法形成對比:只要角色比自己年長15歲,就完全不會吸引到自己。
美貌的角色總被認為有極高吸引力,不好看的人吸引力就大大減少;除了性取向外,長得美是主導吸引力的唯一特徵;異性戀男性永遠不會被男性吸引,同性戀男性永遠不會被女性吸引,男性角色不存在雙性戀;女性可能會被男性吸引,同性戀女性永遠不會被男性吸引,只有雙性戀女性和同性戀女性;對於全體男性來說,從20歲到自己年齡的人最有吸引力;如果男性角色年齡小於20歲,他們會認為20歲或稍長人最有吸引力,而不會對同齡角色有所注意;對於全體女性來講,年齡相同或者比自己年齡大的人對自己最有吸引力;比自己稍微年輕的人極其沒有吸引力,而比自己年輕10歲的人完全不會有吸引力;對於女性來講,不會有吸引力的年齡上限,無論對方比自己大多少歲,女性都有一定概率被吸引。當然,《邊緣世界》還沒完結。它是一個仍在不斷開發的遊戲,所以這種關係系統很可能會繼續發展和改變。此外,引入這些管理公式的各種數值可能是因為某一天設計人員工作得太晚,或者是作為佔位符,又或是僅僅想讓系統不出岔子而已。換句話說,在這一切背後可能根本不存在什麼對性別角色的特定評價或解讀。任何試圖表現或模擬複雜現實世界情景的遊戲系統,都必須進行簡化和犧牲,而人際關係可能是你能描述的最複雜的事情之一了。
但我們並不是基於《邊緣世界》的未來可能性而分析它的。我們要問的問題是:「《邊緣世界》中已經在講述的故事是什麼?」是的,遊戲製作是一件很費精力的工作,可能這些數值就只是被加了進去而已,而至於它們對遊戲的影響,則沒有過多思考。但這設計的到底是一個怎樣的系統,會為了「僅僅讓它能夠運作」,而造成系統中不存在雙性戀男性?而且在整個遊戲中,女性主動開始浪漫關係的概率比男性低八倍?
而且,《邊緣世界》所沒有模擬的和它已經模擬的一樣重要。還記得不斷被別人挑逗和拒絕別人不會導致心情變差,只會降低對追求者的印象嗎?但在日常生活中,不得不持續拒絕他人可不是什麼好感覺。但是這些負面感受僅僅機械地體現在那些被拒絕的人身上,而且由於對浪漫關係開始的處理,玩家最終不得不去照顧這些被拒絕的悲慘男人,而不是那些總是不得不拒絕這些討厭遭遇的女人。
我們可以將這個行為標記成系統漏洞,但那些只是表面問題。它們是容易被注意到的、遊戲內的結果,源於這一系統對男性和女性的行為模式做出了假設,並字面意義上地將其編碼入系統的基礎結構中。確實,角色表現是一個棘手的問題,而我們可能永遠創建不出一個浪漫行為的完美模型。
但這個模型的問題並不在於它有缺陷。問題在於,它的缺陷完美反映出了人們對浪漫關係的期待中現存的性別歧視,而且如此明確細緻,很難認為這是無意為之。而如果這是無意為之,我們就應該繼續問這個系統試圖展示些什麼。它允許的可能性有哪些?什麼是《邊緣世界》設定可能性的邊界?
反編譯原始碼讓我們非常清晰地看到了這些性別差異是如何被寫入遊戲的。然而,僅僅靠玩遊戲並不能直觀地掌握到這些問題。同時,這個系統對你的遊玩方法有很大影響,因為《邊緣世界》中最關鍵的一個挑戰就是令你的殖民者高興。代碼永遠都不會毫無立場。所有這些代碼結構推動一個特定場景勝於其他場景,這種情況大多數時候是無害良性的。然而,這並不意味著它應該逃避檢驗,因為我們可能最終會不加思索的在有害的假設下進行編碼,這最終意味著我們制約著我們的遊戲所可能的樣子,同時也疏遠了其他玩家。
洛夫切爾德和羅伯稱為情人
至於裡德,事情慢慢變得好了一點。其他女性加入到了殖民地中,其中一位,19歲的洛夫切爾德,已經和羅伯訂婚。裡德與羅伯相處得更加融洽了,畢竟他花更多時間與他的未婚妻在一起,而不再是試圖不停勾搭她。當然,大家仍都喜歡裡德,因為她太美了;每個人都在同她交談,並且布茨也仍在向她暗送秋波。但是她永遠不會對此做出回應。
編輯註:我們有聯繫《邊緣世界》的開發人員進行採訪,作為文章的一部分。但他們拒絕參與,除非我們放棄對採訪出版的編輯控制權,轉讓給開發人員或採訪對象。但我們沒有,所以也就沒有對開發人員進行採訪。
蝦丸君開通了微博「蝦丸君別瞎玩」,歡迎前來關注並吐槽!