Warcraft na ZX Spectrum Next / data a práva
„A co práva?“
Tahle otázka se objevuje prakticky pod každým příspěvkem o mém Warcraftu, takže bude asi lepší odpovědět jednou pořádně a mít na co odkazovat. Zatím není co stahovat – tohle je jen vysvětlení předem, abych tu samou odpověď později nemusel psát po sedmnácté.
Krátce: program je moje práce, původní grafika, zvuky, texty a další data Warcraftu moje nejsou. Proto nechci zveřejnit hotový .nex obsahující cizí herní data. Výsledná hra se má vytvořit až u uživatele z jeho vlastní kopie DATA.WAR.
Krátká verze
Engine, převodní nástroje a celý port vznikají z mojí práce. Co ale moje není, jsou původní podklady Warcraftu: terén, budovy, sprity jednotek, titulní obrazovka, hlasy, briefingy a další data.
A převést sprite do formátu ZX Spectrum Next z něj samozřejmě neudělá můj sprite. Jen jsem cizí obrázek převlékl do jiných bajtů. Totéž platí pro mapy, texty i samply.
Proto nechci dávat ke stažení hotový .nex, ve kterém by tahle data už byla zabalená. Místo toho má být k dispozici malý nástroj, který si vezme DATA.WAR z kopie Warcraftu, kterou už máte, ověří ji a potřebná data připraví až lokálně.
Princip je podobný projektům, které samy obsahují engine, ale ke spuštění vyžadují původní herní data dodaná uživatelem. Jinými slovy: program ano, cizí artwork ne.
Delší verze
Port je přepsaný od základu pro ZX Spectrum Next: Z80N engine, převodní nástroje, build systém i všechna logika, která převádí původní data do formátů použitelných na Nextu.
Co ale zůstává původní, je obsah hry. Tilesety, budovy, jednotky, obrazovky, hlasové samply, texty misí – to všechno pochází z Warcraftu. Z technického hlediska s tím můžu dělat zajímavé věci, komprimovat to, převádět palety, skládat to do tilemapy nebo rozřezat na sprity. Z hlediska původu se tím ale nic nemění.
Proto jsem projekt od začátku stavěl tak, aby se původní data přidávala až při buildu nebo při vytvoření výsledné hry na počítači uživatele. Je to trochu komplikovanější, ale pořád výrazně příjemnější než předstírat, že „když jsem to převedl na čtyřbitové sprity, tak už je to vlastně moje“.
Jak by to mělo fungovat
Uživatel dostane malý program pro PC. Ten se pokusí najít instalaci Warcraftu, případně mu ukážete vlastní DATA.WAR ručně.
Nástroj soubor nezkontroluje jen podle několika bajtů v hlavičce. Ověří také vnitřní strukturu archivu a několik typických položek, aby bylo rozumně jisté, že jde skutečně o data, se kterými port umí pracovat.
Kontrola může například projít vazby mezi megadlaždicemi a minidlaždicemi, palety, rozměry map a vybrané textové položky. Pokud všechno sedí, nástroj z původních dat vytvoří výstup potřebný pro ZX Spectrum Next a uloží výsledný soubor tam, kam si uživatel zvolí.
Jinými slovy: výsledná hra vznikne až lokálně z vašich vlastních dat. Hotový balík s Blizzard grafikou a zvuky se nebude jen tak povalovat ke stažení.
Co to není
Není to DRM a není to pokus někoho zastavit. Kdo bude opravdu chtít něco obcházet, ten si cestu pravděpodobně stejně najde. Smyslem není vyhrát technologický závod s člověkem, který má hex editor a volné odpoledne.
Smyslem je prostší věc: nechci sám zveřejňovat cizí artwork jako bezplatný download. Pokud si uživatel dodá vlastní originální data a nástroj z nich lokálně vytvoří soubor pro Next, je to pro mě podstatně čistší způsob distribuce.
Tohle není právní stanovisko ani pokus tvrdit, že tím vzniká nějaká neprůstřelná ochrana. Je to způsob, jak oddělit moji práci od původních herních dat a zbytečně je dál nedistribuovat.
Co budete potřebovat
Jakoukoli legálně získanou kopii původní DOS verze Warcraftu, která obsahuje použitelný soubor DATA.WAR. Nástroj nebude řešit účtenku, krabičku ani to, odkud přesně jste hru kdysi vytáhli ze skříně. Zajímat ho budou samotná herní data.
Takže ještě jednou stručně
Moje část projektu je port a nástroje. Původní data Warcraftu zůstávají původními daty Warcraftu. Hotový .nex s nimi proto nechci vystavit ke stažení; výsledná hra se vytvoří až z vašeho vlastního DATA.WAR. Až bude všechno připravené, popíšu přesný postup.

