- 語言
- 英語
- 發布於
- 4天前
- 複刻
- 1
katiahayati/lucasartsifier ↗· Python· 最近提交 2天前
和 LucasArts 的作品不同,Sierra 的冒險遊戲會讓人卡死。在洛杉磯忘了帶防曬乳就上郵輪,幾天後你會死在木筏上,而且回不了頭。這個工具先反編譯 Sierra 的 SCI 遊戲,再對程式碼做抽象解釋,把房間之間的條件跳轉、道具流動與劇情旗標寫入整理成一張圖,從中找出那些仍然接受輸入、卻已經不可能通關的狀態。接著它推導出擋得住這類跳轉的守衛條件,在模型上驗證,編譯後寫回遊戲。工具裡沒有寫死任何一部作品的資訊:起始房間、通關房間、死亡訊號與除錯用的全域變數,全都從遊戲自己的程式碼推斷出來。同一套引擎、不加針對單一遊戲的分析程式碼,已經分析並實機測試了四部作品,從 SCI0 的《脂粉傳情 2》《國王密使 IV》,到 SCI1.1 的《國王密使 VI》與《蘿拉·鮑 2》。