This is a read only copy without any forum functionality of the old Modcraft forum.
If there is anything that you would like to have removed, message me on Discord via Kaev#5208.
Big thanks to Alastor for making this copy!

Menu

Author Topic: 04 - Vytváření a editace MPQ archivů  (Read 4816 times)

Amaroth

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 1219
    • View Profile
    • Amaroth's Tools
04 - Vytváření a editace MPQ archivů
« on: August 02, 2015, 05:54:31 pm »
[paragraph:3c7t54x4]MPQ archivy, mnohdy známy jako patche, jsou soubory, ve kterých jsou zabalena téměř všechna data, se kterými herní klient pracuje. V tomto tutoriálu si projdeme, jak se s nimi pracuje, což nám otevře dveře k takřka všem úpravám, které bychom mohli na WoW aplikovat (a které jsou uskutečnitelné). Na začátku 1. části této série návodů najdete detailní přehled, které všechny typy souborů lze v MPQ archivech najít a stručný popis, k čemu slouží.[/paragraph:3c7t54x4]

Potřebné programy


[paragraph:3c7t54x4]MPQEditor[/paragraph:3c7t54x4]

Potřebné počáteční znalosti


[paragraph:3c7t54x4]Žádné.[/paragraph:3c7t54x4]

Užívaný editor


[paragraph:3c7t54x4]Pokud chceme vytvořit nebo upravit MPQ archiv, potřebujeme k tomu MPQ Editor. Jeho nejnovější verze jsou dělané na novější datadisky a hry, tím pádem jej nemohu doporučit používat na naše WotLK soubory. V tutoriálovém balíčku přiloženém k 2. dílu návodů najdete ve složce MPQpatche aplikaci MPQEditor. Jedná se o dosti starou, ale podle mých několika let praxe naprosto spolehlivou verzi bez problémů fungující s WotLK. Je tam také novější verze aplikace, ta však může u WotLK občas trochu blbnout, proto ji moc nedoporučuji (už mi jednou zničila data).

Nyní k samotnému editoru. Funguje jako normální aplikace, které můžete přiřadit, že všechny MPQ soubory budou vždy automaticky otevírány jí (věřte nebo ne, ve WoW moddingu vzácný luxus). Když spustíte MPQ Editor, máte v něm haldu funkcí, většinu jsem v životě nevyužil a pochybuji, že je kdy využijete vy. Podíváme se tedy na to, co byste s ním umět měli a co se vám bude určitě hodit.[/paragraph:3c7t54x4]

Vytváření nového MPQ


[paragraph:3c7t54x4]Otevření MPQčka rozebírat nemusím, otevírá se jako jakýkoliv jiný soubor jakoukoliv jinou aplikací. Důležité je jak si vytvářet patche vlastní. Následující návod platí pro starší verzi editoru, v novější bude postup obdobný.

1. Spusťte MPQ Editor.
2. Dejte New MPQ (ikonka bílého listu vlevo nahoře nebo možnost v menu File).
3. Vyplňte název. Herní klient akceptuje pouze patche s názvem ve formátu patch-[1 znak ACII tabulky], tedy patch-4 nebo patch-x. Cokoliv jiného vám nejspíše nebude fungovat. WoW Model Viewer však sežere jakékoliv názvy, minimálně jsou-li z ASCII určitě, MPQ Editor samotný také - hra už ne.
4. Mějte na paměti, že herní klient otevírá patche podle abecedy a to, co je otevřeno jako poslední, má nejvyšší prioritu. Pokud budete tedy chtít svým patchem přepisovat obsah patchů jiných, je třeba volit písmena až za nimi. To koneckonců budete dělat se všemi svými patchi - vždy budete přepisovat ty blizzlike. Nicméně custom patche se přepisují i mezi sebou navzájem. Takže pokud budete mít patch-a a patch-b, s tím že některé soubory budou v obou (nicméně v patch-b budou novější verze), nepřejmenovávejte patch-a na třeba patch-c, protože pak by měly vyšší prioritu zastaralé soubory z Ačka.
5. Další možnost nechte v prvním okně prázdnou.
6. V dalším okně nechte Create empty MPQ.
7. Velikost hashovací tabulky vám určuje, kolik souborů bude možné do archivu vložit. Větší hashovací tabulka způsobuje o něco větší velikost patche na disku. Výchozích 4096 vám bude v 95% případů bohatě stačit.
8. Nechte zaškrtnuto, že MPQ má být verze 2.0 a nechte vytvořit (attributes).

A to je vše, máte vytvořený vlastní nový a zatím prázdný MPQ archiv, ten se zobrazí v aktuálním pracovním adresáři (tedy buďto ve složce, kde máte MPQ Editor, nebo ve složce, ve které jste otevřeli za jeho pomoci poslední MPQ archiv, nastavit jde ve Vlastnostech zástupce, pokud aplikaci spouštíte přes zástupce).

Soubory do něj vkládejte obyčejným přetahováním myší na pravou polovinu okna MPQ Editoru, pokud se vám při pokusu vložit soubory něco objeví (většinou otravuje nastavení archivation rules a podobné kraviny, dokud tam neodškrtnete, ať se to znovu nezobrazuje), prostě to odklikněte, tam se není třeba ničím zaobírat. Dodám jen, že MPQ Editor ihned ukládá všechny změny a že neukládá prázdné složky (přesněji neukládá složky vůbec, ty tam jsou zobrazovány jen imaginárně, aby měl uživatel-milovník obrázkových Windows radost). Pokud vytvoříte složku a nevložíte do ní žádný soubor, po restartu MPQ Editoru ji tam již nebudete mít.[/paragraph:3c7t54x4]

Komprese archivu, nastavení hashovací tabulky, extrakce dat


[paragraph:3c7t54x4]Pokud v MPQ archivu nějaký již existující soubor přepíšete či odstraníte, berte v potaz, že stará data nejsou z archivu odstraněna, ne úplně. Jsou pouze vyškrtnuta z hashovací tabulky a již k nim není žádný přístup. Fyzicky tam ale stále jsou a zabírají místo na disku. Řešení jsou v podstatě dvě. První, zbytečně pracné, je označit všechna data, dát ctrl+e a vyextrahovat vše ven, patch smazat, znovu vytvořit a data do něj naházet. Zmiňuji to tady vlastně jen proto, že samotná extrakce dat ven se vám může také někdy hodit.

Soubory jdou z patche samozřejmě jen vytáhnout myší, ale pokud jich je hodně, musíte vždy počkat, až po vytažení kurzoru z patche proběhnou všechny lišty, které se tam začnou míhat. Když pustíte myš dříve, extrakce neproběhne. Ctrl+e je tak mnohem elegantnější a rychlejší. Pokud však nechcete data extrahovat a skutečně chcete jen celý archiv zkomprimovat tak, aby měl takřka optimální velikost, běžte do menu Operations a zvolte úplně dole Compact archive. Pokud byste chtěli naprosto optimalizovat velikost patche, bylo by třeba také minimalizovat velikost hashovací tabulky. Velikost hashovací tabulky se nastavuje opět v menu Operations, možnost Change Hash Table Size. Tuto možnost však využijete spíše pokud by se vám někdy stalo, že přešvihnete původní maximum a budete potřebovat přidávat další nové soubory.

Ještě přidám jednu připomínku ke vkládání souborů. Pokud se pokusíte do MPQ archivu vložit více souborů, než na kolik je místo v hashovací tabulce, může se vám MPQ úplně zničit. Soubory tam navíc nedostanete, MPQ editor vám pro každý přebytečný milostivě oznámí, že se tam nevejde a pokud nebudete chtít 1000x odkliknout že víte, že se tam nevejde, budete muset killnout proces přes správce úloh. Proto si vždy přes Vlastnosti složek se soubory, které se chystáte vložit do MPQ, zjistěte počet souborů. Pokud máte podezření, že by celkový počet souborů převýšil velikost hashovací tabulky, nejdříve ji zvětšete.

MPQ Editor má ještě další funkce, nicméně těmi se zde zobírat nebudu, protože jsem je já sám za více jak 3ech letech modování nikdy nevyužil. To vám pochopitelně nikterak nebrání v experimentování s nimi. Ohledně MPQ archivů platí dvě univerzální rady.:
1. VŽDY mějte zálohy všech vašich dat, včetně těch blizzlike.
2. NIKDY needitujte přímo blizzlike patche, vytvářejte pouze své, které budou v abecedě za nimi.

<- 03 - Instalace testovacího serveru
-> 05 - Editace DBC[/paragraph:3c7t54x4]
« Last Edit: September 15, 2015, 04:42:08 pm by Admin »
English YT tutorial channel. Check it out if you preffer videos over walls of text.:
https://www.youtube.com/AmarothEng

Want to support me for my releases and/or tutorials? You can send donation via Paypal to:
jantoms@seznam.cz

Alastor

  • Contributors
  • Creator of Worlds
  • *****
  • Posts: 1105
    • View Profile
Re: 04 - Vytváření a editace MPQ archivů
« Reply #1 on: August 02, 2015, 09:04:31 pm »
Každopádně Amaroth se zmínil o kompresi archívu ale neřekl nic o kompresním poměru který vám mnohdy ušetří i (průměrně od oka řečeno ) 40% velikosti patche když vezmeme že by jste používaly všechny formáty ( protože některé se komprimují líp než jiné )


Doporučuji projít si komprimační metody něco si o nich počíst a dle toho se rozhodnout jakou používat protože každá metoda má své vlastnosti a v dobrých podmínkách uděláte z 23 mb 1,2 kb ( vlastní zkušenost )
já nejvíce používám LZMA a BZIP2 -- Mějte na paměti že pokud nemáte čas a je vám ukradené kolik mega má patch tak kompresi nepoužívejte jelikož to zrychlí práci s patchy až na " instat " skoro

Nicméně zde jsou už encryptovací infa a protekce patchů a experimentování s tím je občas o hubu protože ty data je MPQ fakt hezky schopný ničit jak Ama řekl ... zálohovat zálohovat zálohovat

« Last Edit: January 01, 1970, 01:00:00 am by Admin »
No matter how fast light travels it finds the darkness has always got there first and is waiting for it
Star Citizen Referral Code : STAR-XNFS-HVL9