Mikroskop Altında: Ecco the Dolphin — Geleceğin Savunucusu
- Ecco the Dolphin: Defender of the Future'da, kayıt dosyası adına göre etkinleşen gizli hile özellikleri bulunuyor
- Ghidra ve Python kullanılarak kodlama yöntemi tersine mühendislikle çözüldü ve özel adlar keşfedildi
- Bazı adlar uzun zamandır biliniyordu, kalanları da bulunarak "ölümsüzlük" ve debug göstergesi gibi özelliklerin kilidi açıldı
Giriş
- Ecco the Dolphin: Defender of the Future, resmî olarak yayımlanan son Ecco oyunuydu; sonraki oyunlar iptal edildi
- Bilinen hilede VMU ekranında New Game seçilip baş harfler
GYU olarak giriliyor, ardından GYU yeniden girilip üç harf daha eklenerek tüm bölümlerin kilidi açılabiliyor
Ghidra ile analiz
- flycast emülatörünün bellek anlık görüntüsü analiz edilerek baş harf giriş tamponu bulundu
- Ghidra ile dönüştürme fonksiyonunun tamponu okuyup dönüştürülen değerin altı özel değerden biri olup olmadığını kontrol ettiği görüldü
GYU GYU XXX, 9388D627 değerine dönüştürülüyor ve bu da ilk özel değer oluyor
Python ile brute force
GYU GYU altı harften oluşuyor ve olası kombinasyon sayısı 26^6=308,915,776
- 7 harfli kombinasyonlar 800 milyon, 8 harfliler ise 208 milyar olduğundan bunları bir dizüstü bilgisayarda işlemek zor
- Python ile işleme kodu kopyalanarak tüm olası kombinasyonlar kontrol edildi
Etkiler
- SOCCER+XXX girildiğinde Bonus Game açılıyor ve su altı futbolu oynanabiliyor
- EXBBERX+XXX, seçenek ekranında Immortality Enabled ifadesini gösteriyor; boğulmayı ve ölmeyi engelliyor
- QQRIQ+XXX, oyunun kare hızını ve debug değerlerini gösteriyor
- XYZZYX+XXX, mevcut saati gösteriyor
- POPELY+XXX'nin görünürde özel bir etkisi yok
Kapanış
- Appaloosa Interactive oyunlarının kodlama yöntemiyle ilgili diğer analizler, Three Dirty Dwarves hakkındaki makalede bulunabilir
- Daha önce bilinmeyen hile kodlarını bulan diğer yazılar arşivde görülebilir
1 yorum
Hacker News yorumu
CRC32 hash algoritmasına dair bir açıklama ve ilgili bağlantılar veriliyor. CRC32’nin polinomu biliniyorsa cevap logaritmik zamanda bulunabilir.
Megadrive’daki Ecco oyunu hakkında kişisel bir deneyim paylaşılıyor. Oyun çok zordu; bu yüzden parola sistemini çözerek son seviyeye ulaşıldı. Oyunu iki günde bitirmiş olmaktan duyulan suçluluk da belirtiliyor.
"QQRIQ", birçok dilde horoz sesini ifade eden kelimenin fonetik bir kısaltması. Parolanın seçilme sürecine dair merak dile getiriliyor.
Ecco’nun geliştiricisi Ed Annunziata’nın LSD kullanmadığı, ancak John C. Lilly’nin eserlerini çok okuduğu belirtiliyor. Lilly; hayvan zekâsı, ketamin psikoterapisi, izolasyon tankları ve bilinç araştırmaları alanlarında öncü çalışmalar yapmış bir isim. <i>The Center of the Cyclone</i> adlı otobiyografisi tavsiye ediliyor.
Dreamcast oyunlarının reverse engineering’i hakkında kaynak isteniyor. Özellikle Skies of Arcadia ile ilgili sistematik teknikler aranıyor.
Reverse engineering öğrenmeye nereden başlanacağı sorgulanıyor. Çoğu kişi önce Assembly öğrenmeyi öneriyor, ancak sonrasına dair somut bilgi az. x86/arm/arcade platformlarının ortak kalıplarının deneme yanılmayla mı öğrenildiği soruluyor.
Eski oyunların daha çok ruha sahip olduğu düşünülüyor ve son birkaç yıldır bunlardan daha fazla keyif alındığı söyleniyor. Arabalarla ilgili uyarı için teşekkür ediliyor.
Sega Saturn hakkında bir blog bulunduğu belirtiliyor. Anne babasının evinde bir Saturn bulunduğu ve yanında oyun CD’lerinin de olduğu söyleniyor. Oyunlar çalıştı ama bununla ne yapılacağı bilinmiyor.
Sualtı futbolu hilesinin çalıştığını gösteren bir video görmek istendiği söyleniyor.
Oyunun PS2 sürümüne bakılması öneriliyor. Seviye kilidi açma kodu aynı olabilir ve reverse engineering daha kolay olabilir.