Fanouškovi Diablo 1 se reverzním inženýrstvím a více než 1 200 hodinách povedlo dostat ke zdrojovému kódu Diablo 1. GalaxyHaxz, jak si onen fanoušek říká, své dílo pojmenoval projekt Devilution a dal jej k dispozici na GitHub.
Hned v úvodu musíme dodat, že se GalaxyHaxz legálně pouští na velmi tenký led a zásah ze strany Blizzardu může v podstatě přijít jako blesk z čistého nebe. Reverzní inženýrství je, i když je podstatě Diablo 1 abadonware, hodně pochybná praktika a v průmyslu většinou nelegální. Celý projekt se snaží sám sebe chránit americkou Fair Use Policy. DCMA taktéž údajně nemůže být z různých důvodů aplikováno.
Tento reverzně získaný kód není identický s originálním kódem. Takto získaný kód byl přepsán, ale snaží se co nejvíc přiblížit původnímu. Smyslem tohoto projektu podle autora není poskytnout hru zdarma, neobsahuje totiž žádné textury a další věci potřebné ke hraní, jeho úkolem je více zpřístupnit hru modderům tak, aby mohli dělat vylepšení, opravy a změny. Hru si mimochodem můžete zdarma a zcela legálně stáhnout ze stránek Internet Archive.
GalaxyHaxz na GitHub píše:
Mít zdrojový kód značně zjednodušuje údržbu. Po mnoho let se museli moddeři spoléhat na zdlouhavém psaní kódu a paměťové injekci (technika hackování). Někteří modeři šli ještě dál a za pomoci reverzního inženýrství udělali velkou část hry (Belzebum/The Hell). Problém je, že nikdy svůj zdrojový kód nevydali. Většinou se jedná o práci jednotlivce, většinou bylo potřeba hodně času, tak na tom přestali dělat. Nebo ztratitli zájem. Mody jsou tak hotové z poloviny, ačkoliv do nich byly investováno nekonečné množství času, zůstalo v nich plno bugů a nedokončený potenciál. Takže jsme znovu na startu. Devilution si klade zacíl toto napravit tím, že zdrojový kód bude volně dostupný pro všechny.
Hlavním úkolem Devilution je vytvořit zdrojový kód co nejvíce podobný tomu od Blizzardu, aby bylo vše zachováno. Jde to tak daleko, že jsou zachovány bugy a špatně napsaný kód původní hry. Ale i tak to zachovává solidní základ vývojářům k jejich další práci. Updaty, opravy a porty na jiné platformy jsou nyní mnohem snažší.
Vedlejším úkolem Devilution je zdokumentovat nevyužitý a zrušený obsah z finální verze hry. Vývoj Diablo 1 byl před koncem uspěchán, mnoho nápadů bylo zahozeno a na rychlo byl přidán multiplayer. Při průzkumu kódu si můžete všimnou zvláštností v plánovaném vývoji.
Více o tomto projektu, pokud vás zaujal, naleznete na GitHub. Můžete se též připojit na Discord, kde se budou časem snad objevovat další věci z obou projektů.
Zdroj: Reddit
Super jede krasne a uz mam dohrano za wara. Nevite ale nekdo jak se da pokracovat na dalsi obtiznosti? Trik s multakem nejde – nejde zalozit nova postava.
just wow… :O