Emulácia najmä starších hier vždy tvorila obrovskú časť počítačovej komunity, vďaka ktorej sa hráči často dostávali ku titulom, ktoré mohli dovtedy konkurencii závidieť.
Pred niekoľkými dňami sa však internetom prehnala počítačová verzia Super Mario 64, ktorá namiesto toho, aby bežala na tradičnom emulátore, často skrytom za .exe súbor, obsahovala početné prvky prameniace z nedávno uniknutého zdrojového kódu hry, píše portál Ars Technica. Vďaka tomu teda hra pôsobila a fungovala ako tradičný počítačový port.
Rozoberanie zdrojového kódu u videohier je často spájané s hľadaním technologických medzier využiteľných k optimalizácii. Legendami v tejto oblasti sú aj dve Nintendo série, Super Mario a The Legend of Zelda, kde je rovnako, ak nie radikálnejšie aktívna aj moderská komunita.
Zatiaľ čo myšlienka emulácie funguje na softvérom vytvorení podobného prostredia pôvodnej platformy v rámci iného systému, reverzné rozoberanie zdrojového kódu sa sústreďuje na optimalizáciu daného softvéru už od základu pre nové zariadenie, bez potreby medzičlánku v podobe emulátora.
Binárne hackovanie je náročná a mravenčia práca
Prvým krokom pri reverznom inžinierstve N64 hier je stanovenie si špecifickej verzie grafického IDO kompilátora obrazu hry. Tu moderom pomáhajú uniknuté buildy alebo zabudnuté zvyšky zdrojového kódu už priamo v obraze hry.
V druhom kroku sa tak zisťuje, ako sú jednotlivé súbory na výslednom obraze hry organizované. Kenix, popredný moder v Zelda Reverse Engineering Team tvrdí, že N64 má výhodu obraze hier, ktoré sú zostavené do 16 bajtových celkov, kedy sa jednotlivé oblastí dát s textúrami alebo polygónmi dajú od seba jednoduchšie odlíšiť.
Niektoré súbory sú dokonca aj špecifický pomenované v tvare _SÚBOR_a_RIADOK_ priamo Nintendom, čo moderom pomáha v opätovnom budovaní hier. Samotný kód je tak dostupný v programovacom jazyku C, ktorý aj napriek početným uľahčeniam v podobe automatizácie je náročnou a mravenčou prácou. V konečnom dôsledku tak reverzne dosiahnutý kód musí byť skontrolovaný funkciu po funkcii a následne ručne prevedený do použiteľného C kódu.
Prečítaj si tiež
Toto sú historicky najpredávanejšie hry na známych konzolách
Náročnosť sa líši u každej hry
Podľa Kenixa sa náročnosť procesu líši od jednotlivých hier, kedy napríklad vývojári pri Super Mario 64 nevyužili žiadny kompilátor. Prevod základného kódu je tak podstatne jednoduchším procesom ako v prípade The Legend of Zelda: Ocarina of Time, kedy autori využívali rôzne spôsoby optimalizácie generujúce kód podstatne rýchlejšie.

Priame PC portovanie rozhodne nie je jednoduchým procesom, čomu nenahráva ani fakt, že N64 využíva diametrálne odlišné renderovacie nástroje ako napríklad moderné OpenGL. Zdrojový kód Super Maria 64 bol zverejnený minulý september, takže moderi za tú dobu dokázali vytvoriť hneď niekoľko nových nástrojov dovoľujúcich im meniť rôzne aspekty hrateľnosti hry.
V prípade Ocarina of Time tím dokázal reštaurovať len 15 % zdrojového kódu do C podoby. Dúfajú však, že hlbšie binárne hackovanie im v nasledujúcich mesiacoch otvorí nové možnosti, ako podrobnejšie a najmä rýchlejšie prebádať čaro ďalších N64 hier.
Teraz čítajú

Pokračovanie sa nekoná. Sony zrušilo vývoj svojej niekdajšej exkluzivity

VIDEO Majitelia PS5 sa budú veľmi báť. Exkluzívne sa dočkajú nového temného hororu, pozri si mrazivý trailer

Prichádza remake dekády. Hráči si 20 rokoch v predstihu zahrajú prerobené Diablo 2

Legendárne GTA V si zahráme už aj na smartfóne. Aprílový Game Pass láka skvelou ponukou

RECENZIA RECENZIA: Nový herný fenomén - hrali sme konkurenta Destiny a Division. Stojí Outriders za vyskúšanie?
Články, ktoré hýbu svetom

VIDEO VIDEO: Elon Musk konečne ukázal, ako vyzerá preprava ľudí na Teslách revolučným tunelom pod Las Vegas

Ďalší veľký problém Facebooku: Opäť sa predávajú telefónne čísla ľudí, nepatria však do nedávneho megaúniku

Dvaja kamaráti z Brna predstavili čip, ktorý ti zjednoduší život. Stačí si ho nalepiť na mobil

Špinavý label z československých ulíc búra stereotypy. Slováci investovali tisíce, aby vytvorili „porno“ rodinu
