Sign in to follow this  

[3.3.5a] - 08 Nová mapa/úprava rozměrů staré


Description

Občas si chcete vytvořit úplně novou, čistě vlastní herní mapu, nebo upravit rozměry staré. Třeba přidat či odebrat ADT a tak podobně. K tomu je zde tento návod.

Potřebné programy

GruulMeWDT

AdtAdder

MyDBCEditor (či jiný DBC editor)

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

Předpokládá se, že jste si prošli Obecný přehled pojmů a systému hryVytváření a editace MPQ archivů, Editaci DBC a Úvod do Noggitu. Také se předpokládá, že máte k dispozici server k testování.

Tvorba nové mapy

Začněte tím, že si vytvoříte ve složce, ze které bere váš Noggit data (takže ideálně složka vašeho projektu - bude ve stejné složce, v jaké je složka World, do které vám Noggit ukládá upravená ADT) složku DBFilesClient. V této složce budeme udržovat všechna naše DBC týkající se herních map. Tato složka bude Noggitem čtena jako poslední, takže všechna DBC v ní budou přepisovat DBC nalezená v MPQčkách. Osobně v tuto složku používám jako úložiště úplně všech DBC, která jsem kdy upravil.

Potřebovat budete Map.dbc. Doporučuji také vzít MapDifficulty.dbc. Víc byste neměli potřebovat, ale jelikož začínáme, trochu tady ještě potáhnu za ruku ty, kteří jsou ještě ze všech těch DBC a jejich úprav zmatení. Otevřete si obě DBC v MyDBCEditoru. Budete chtít udělat nejspíše novou mapu kontinentu, tedy volně přístupnou mapu pro všechny. V takovém případě jednoduše okopírujte v Map.dbc první řádek (pravým na něj klikněte a dejte Copy Line To...) na volné místo. DBC končí v blizzlike podobě na ID 724, takže můžete použít třeba 725. Přepište oba názvy ve sloupci 2 a 6. Název ve sloupci 2 je jméno mapy v MPQ, musí být bezpodmínečně bez háčků a čárek, mezer a podobných věcí, dál budu předpokládat, že jste do tohoto políčka napsali NazevMapy. Název ve sloupci 6 je už skutečný název mapy, který uvidíte třeba v Noggitu v menu, tam už můžete psát, co chcete, i diakritiku. Pokud nechcete dělat kontinent, projděte si už sami dokumentaci, jak na to. Nicméně i u BG a instancí doporučuji začít u kontinentu, protože ten se snáze testuje, a až pak jej případně na BG/instanci předělat v DBC.

To samé udělejte v MapDifficulty - vezměte první řádek (shodou okolností i zde je to řádek Azerothu) a nakopírujte jej na volné místo, třeba na 754 (pokud máte blizzlike DBC). Přepište pak jen ID mapy v druhým sloupci (což je odkaz na vaše ID mapy v Map.dbc, jak byste se dočetli v dokumentaci) a hotovo. Umístěte obě DBC jak do vašeho MPQ, tak do dbc adresáře vašeho testovacího serveru. Pak spusťte GruulMeWDT, klikněte na New, vyplňte váš název mapy a přidejte příponu .wdt (takže třeba NazevMapy.wdt). Důležité je, aby název přesně seděl. WDT flags zaškrtejte 2 a 4 a dejte Save. Pokud vám takto vytvořené nové WDT bude blbnout, jednoduše si najděte v MPQ WDT nějakého kontinentu od Blizzardu, vyextrahujte jej, přejmenujte na NazevMapy, a jen mu v GruulMeWDT upravte ADT array. To by mělo jít vždy.

Na závěr běžte do složky, kde máte projekt, zajděte do složky maps ve složce world (vytvořte je, pokud je tam nemáte, což bude jen v případě, že jste v Noggitu nic ještě neupravovali) a v ní vytvořte složku s názvem odpovídajícím názvu mapy. Takže třeba NazevMapy. Důležité je, aby název složky, jméno WDT souboru, jména všech ADT (která budeme dělat v další sekci) a název ve 2. políčku v Map.dbc přesně seděly.

Změna rozměrů existující mapy

Ať už chcete upravovat blizzlike mapu, nebo svou právě vytvořenou (viz výše), postup je stejný. Spusťte GruulMeWdt, klikněte na Load..., vyberte WDT soubor upravované mapy. GruulMeWdt umí více věcí, ale my se podíváme jen na základ, přidávání a odebírání ADT. Klikněte nahoře na kartu ADT Array. Vlevo můžete překlikávat mezi Delete tile a Add ADT, a pak levým tlačítkem klikat do mapy a tím ADT mazat, nebo přidávat. Pokud vytváříte novou mapu nebo novou část mapy, nikdy nezačínejte u okraje. Existuje celá řada důvodů, proč byste mohli chtít dříve nebo později mapu rozšířit, a nalepením mapy na okraj se o tuto možnost částečně připravíte. Doporučuji však zároveň zůstat mezi ADT 0 0 a 31 31, protože v takovém případě budou po celém vašem světě kladné světové X i Y souřadnice, což trochu usnadní některé věci. Upozorňuji, že někdy je rychlejší nejdříve vytvořit samotná ADT (viz níže), případně umazat ta nechtěná, a pak jen v GruulMeWDT kliknout na Scan dir.

Podíváme se ještě na tvorbu ADT. K tomu je AdtAdder. Spusťte jej, klikněte na Browse a vyberte zdrojové ADT, které bude rozkopírováno na celou mapu. Je prakticky jedno, které z těch dvou použijete, osobně používám to menší, pokud mě paměť nešálí. Vyplňte Map Name (tedy něco jako NazevMapy) a odkud kam se mají ADT vytvořit (jde o levý horní a pravý dolní roh obecně obdélníka, třeba 0 0 a 2 2 vytvoří 2x3 mapu, tedy 6 ADTček). Takto vytvořte po obdélnících svou mapu. Některá ADT budete třeba chtít nakopírovat a přejmenovat ručně (to klidně můžete), hlavně ať sedí X a Y souřadnice ADTček v jejich názvech. Pak spusťte offsetfix.bat (.bat, ne .exe prosím). Hoďte všechna vaše ADT do složky s vaší mapou, tedy tam, kde máte WDT. Pokud děláte úplně novou mapu, můžete klidně až teď otevřít GruulMeWDT a nechat jej, ať vám upraví WDT podle obsahu složky, ve kterém je. Pokud jste vše udělali správně, měla by vám mapa jít otevřít v Noggitu a měli byste být schopni se na ni po restartu teleportovat i na vašem testovacím serveru.

 

Několik poznámek na okraj. Pokud budete mít na okrajích nakopírovaných ADT podivné čáry, jde o stíny, které by měly zmizet, jakmile po nich přejedete jakýmkoliv nástrojem pro modelaci terénu. Pokud jste si vybrali jako zdrojové ADT to, ve kterém nejsou textury na terénu, první textura, kterou aplikujete, vyplní všechny zasažené chunky. To je normální chování. Pokud chcete, aby vám na vaší mapě fungovaly zóny, general chat, aby se vám na nich nepropadala NPCčka a vlastně aby na nich fungoval prakticky jakýkoliv obsah, který jde ze serveru, musíte pro svou mapu vygenerovat server side mapy (tedy maps, vmaps, mmaps). Jak na to popisuju v angličtině zde. Pokud budete mít ve WDT zaznamenané ADT, které herní klient nenajde v žádném MPQ, hra crashne. Pokud naopak nebudete mít ve WDT zapsané ADT, které při tom v MPQ bude, hra jej bude ignorovat a neotevře jej. Naopak Noggit vám vždy otevře všechna ADT v mapě a WDT takřka ignoruje, takže pro pouhou práci v Noggitu bez toho, že byste výsledky testovali ve hře, potřebujete pouze, aby WDT existovalo, ale už ne aby bylo 100% přesné a aktuální.



Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now