玩家在修改《史丹利的寓言》時意外發現了類似「千年蟲」的Bug

遊研社 發佈 2022-11-27T07:33:09.581999+00:00

按照成就說明,在這個於今年4月份上線的遊戲裡,想獲得這個成就最快也必須得等到2032年4月,但如果你現在打開Steam的遊戲頁面,會發現已經有3.8%的玩家解鎖了該成就。


經典Meta遊戲《史丹利的寓言》有一個非常著名的成就叫作「Go Outside」,需要玩家連續五年不打開遊戲才能解鎖,而在今年發售的《史丹利的寓言 豪華版》中,同樣設置了一個名為「Super Go Outside」的成就,這次的解鎖條件則變成了「連續十年不打開遊戲」。


按照成就說明,在這個於今年4月份上線的遊戲裡,想獲得這個成就最快也必須得等到2032年4月,但如果你現在打開Steam的遊戲頁面,會發現已經有3.8%的玩家解鎖了該成就。



顯然,這次又有「時間刺客」了。通過調整系統時間來提前獲得成就,這種卡Bug般的玩法早在多年前就被玩家們熟練使用。初版《史丹利的寓言》於2013年發布,但在2018年到來前,不少玩家就已經通過修改時間提前拿到了成就,官方無法制止這種行為,卻也曾半開玩笑地發布過一條推文:



這段話最開始是玩家用來嘲諷一位開修改器通關《只狼》的遊戲編輯所做,官方這麼用更像是玩梗。但最近,有人在試圖通過修改時間獲取成就時,卻意外發現了一個奇怪的Bug。


一位玩家在推特上分享了自己的經歷:當他為了圖省事,一口氣將系統時間拉到2040年時,突然發現Steam的客戶端莫名其妙被修改了字體。



根據玩家的說法,他僅僅是修改了電腦的系統時間,Steam的客戶端就發生了錯誤並切換到了上圖的手寫字體模式。


在經過一系列調查後,這位用戶自己給出了結論——這得歸結於「2038年問題」。如今在32位Unix系統中,都是以1970年1月1日0時作為時間的基準點,往後的時間都以「秒」為單位記錄成一個有符號的32位正整數(1970年以前則用負數記錄)。


32位有符號正數換算成十進位就是「2,147,483,647」,如果用秒來計算,則時間剛好到2038年的1月19日3點14分07秒,如果時間再往後,系統就會出現一些未知的錯誤。


這位用戶推測可能是在調整時間後,計算機32位unix系統內的字體庫出現了其他bug,並導致Steam內的字體被隨機替換了。


雖然如今多數用戶的作業系統已經換成了64位,但並不能解決所有問題,這次因為字符溢出僅僅改變了字體,但誰也不知道下次會發生什麼更離奇的時間。在弄清了原因後,這位發現問題的玩家總結道:


「2038年將會是格外有趣的一年。」

關鍵字: