[影音] 俄國電子遊戲血淚史(FC上的反盜版技術)
http://www.bilibili.com/video/av2382136/
俄國AVGN粉絲作的一支影片,非常有趣(我好像還看到小時候家裡的盜版FC…)
基本上就是看著戰鬥民族的童年被台/陸製魔改產品各種坑殺XDDDDDDDDD
簡轉繁轉貼一下對岸論壇網友"恥照"對於影片中遊戲防盜機制的介紹:
41分開始,忍者龜3的反盜版機制是校驗標題的"c KONAMI"字符串,
一旦發現篡改就會實行懲罰機制:攻防減半,施萊德無限自回。
早期的盜版卡基本都會這樣,但後來出現了破解版,能正常遊戲且自帶N條命。
通過檢測的方法是把源字庫的K替換成Z、M替換成X,不改動字符對應的值。
故版權顯示為c ZONAXI,MIKE慘遭改名XIZE。
至於盜版商堅持篡改原遊戲版權的理由可能跟躲避法律有關。
查了下發現Konami90年後大部分遊戲都用了這種技術,
除了校驗版權字串/圖標還會校驗反盜版模塊本身。
遊戲分別有對應的懲罰模式:
夢企鵝物語:資料庫寫的是進食立即肥胖,樓下有實測表明是時間大幅減少,
過第四關幾乎無可能。
惡魔城王子外傳:第二關開始所有主角以外的活動塊不可見,
包括各種活動塊構成的平台。
外星戰將:只有日版帶校驗,強制開啟Hard模式,一擊必跪。
前期盜版基於此,後來出現正常的可能是基於無校驗的美版。
Q版沙羅曼蛇:無限循環第1關。
Crisis Force:無限循環1、2關。
Zen 銀河武士:受到雙倍傷害。
科樂美世界2:強制Hard模式,並在完成第8關後打回第1關。
Tiny Toon初代:通關不進入結局,返回第1關。
忍者龜2:每關報幕變報錯,循環1、2關。這個盜版應該黑掉了,
我玩到的版本除了某BOSS花屏以外並無大礙。
忍者龜格鬥:劇情戰施萊德AI最高等,即使打敗也會強制重打。
其他廠的反盜版手段:
馬尿醫生:每次膠囊落地校驗標題畫面使用的某段材質($B900-$BDFF),
失敗時$740強制寫FF,遊戲會抓取$53的值三次推送至堆棧,CPU隨機跳轉,遊戲崩潰。
吉米克:觸發條件藏得比較深。遊戲全程檢查屏幕內的活動塊是否包含#AA,
#AA為第七關城門正上方一個小黑點。
觸發後加載校驗表校驗商標與介紹文本,發現偏差會進行下一步。
下一步是對加密偽裝成正常數據的懲罰模塊進行解密執行,
塗黑屏幕顯示「BLACK HOLE」(源自同一公司遊戲亞特蘭蒂斯之謎)並凍結遊戲。
該遊戲有盜版《水管V》,無法通過校驗。
結果有些遊戲還是被國內盜版商完爆……詭異黑科技。
此外還有大量bug盜版卡查不到相關資料和解包數據,不確定是否與反盜版有關,
原因除了反盜版還可能是閹割過度/魔改hack指令/不同MMC間轉換過程出錯。
有資料的例如雪人兄弟的83關是魔改跳關的產物(最大關寫50時弄錯進制實為80,
對應限時模式下的81關);歐版忍龍1基於MMC1,盜版商往MMC3轉寫時出錯導致道具消失
和死機。
之後到了SFC反盜版技術大幅進步,
比如老媽2有足足5層:1檢查制式 2檢查SRAM大小和某段內存
3前者被黑掉則亂刷大量高等怪 46次隨機觸發的校驗
5即使你頂著第三項磨到最後,只要前面的幾項有任何一個被黑掉,
必定會在最終BOSS開戰前死機並刪檔。
--
╰ |
╭╰╰╰╮ | "
| ╱ | |
I need some TP for my Bunghole!! |\/ | |
▕⊙⊙ ζ /
By ffkh7 " ∠o) \/
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.233.1.68
※ 文章網址: https://www.ptt.cc/bbs/Emulator/M.1437721460.A.1C6.html
推
07/24 15:15, , 1F
07/24 15:15, 1F
→
07/24 15:21, , 2F
07/24 15:21, 2F
→
07/24 15:32, , 3F
07/24 15:32, 3F
※ 編輯: KisarazuCats (36.233.1.68), 07/24/2015 16:16:56
推
07/24 16:32, , 4F
07/24 16:32, 4F
推
07/24 16:59, , 5F
07/24 16:59, 5F
→
07/24 16:59, , 6F
07/24 16:59, 6F
→
07/24 19:28, , 7F
07/24 19:28, 7F
→
07/24 20:14, , 8F
07/24 20:14, 8F
→
07/24 20:16, , 9F
07/24 20:16, 9F
→
07/24 20:17, , 10F
07/24 20:17, 10F
→
07/24 20:17, , 11F
07/24 20:17, 11F
→
07/24 20:18, , 12F
07/24 20:18, 12F
→
07/24 20:40, , 13F
07/24 20:40, 13F
→
07/24 20:40, , 14F
07/24 20:40, 14F
→
07/24 20:40, , 15F
07/24 20:40, 15F
推
07/24 20:47, , 16F
07/24 20:47, 16F
→
07/24 20:56, , 17F
07/24 20:56, 17F
→
07/24 20:56, , 18F
07/24 20:56, 18F
推
07/24 22:49, , 19F
07/24 22:49, 19F
推
07/24 22:57, , 20F
07/24 22:57, 20F
→
07/25 00:21, , 21F
07/25 00:21, 21F
→
07/25 00:21, , 22F
07/25 00:21, 22F
→
07/25 10:17, , 23F
07/25 10:17, 23F
→
07/25 10:17, , 24F
07/25 10:17, 24F
→
07/25 11:05, , 25F
07/25 11:05, 25F
推
07/26 07:42, , 26F
07/26 07:42, 26F
→
07/26 17:33, , 27F
07/26 17:33, 27F
推
07/26 22:50, , 28F
07/26 22:50, 28F
→
07/26 23:16, , 29F
07/26 23:16, 29F
→
07/26 23:17, , 30F
07/26 23:17, 30F
→
07/27 10:31, , 31F
07/27 10:31, 31F
→
07/27 17:36, , 32F
07/27 17:36, 32F
→
07/27 17:38, , 33F
07/27 17:38, 33F
→
07/27 17:38, , 34F
07/27 17:38, 34F
推
07/27 17:55, , 35F
07/27 17:55, 35F
→
07/28 22:21, , 36F
07/28 22:21, 36F
推
07/30 04:03, , 37F
07/30 04:03, 37F