Soubory NWN, jejich význam a úprava
Možná každý z vás si již vyzkoušel udělat nějaký ten modul ba dokonce i nějaký skript nebo hak teď se ale podrobněji podíváme na strukturu souboru nwn jak vlastně nwn vypadá z vnitřku a s čím vším si tvůrci světů musí poradit.
Haky
Haky jsou packy souborů které můžeme vytvářet pomocí utility „nwn hak“
Takovýto pack souboru pak vložíme do adresáře hak v kořenové složce nwn a ten už si s nimi poradí ale není to tak jednoduché.Všechny soubory musí mít určitý řád tak aby je nwn umělo číst a nebo aby se navzájem nepřepisovaly a ten právě dávají soubory s formátem .2da
Těchto souborů nwn využívá přesně 44+18 armor parts (původní můžete najít v adresáři source)a většina se svým obsahem značně liší.
Než si je ale probereme důkladněji musíme se seznámit s nejpoužívanějšími soubory o které nám vlastně jde.
Tipy souborů v Hacích
MDL – model:Modely musí mít název nebo spise zkratku která je dána v baseitem.2da ve sloupci ItemClass který udává kde bude vlastně model použit. Hned za názvem je v některých případech číslo ve formě XXXX_001až255 pokud se jedná například o placeaby ,nebo písmeno a pak číslo pokud se jedná o složené modely jako jsou například zbraně XXXX_b_001
- B-dolní konec (Jílec meče,opeření šípu atd.).
- M-střed(záštita dýky,tělo šípu atd.).
- T-horní část(čepel meče,Hroty).
A teď hurá dovnitř.Soubor MDL si můžeme otevřít v normálním poznámkovém bloku a uvidíme několik nám nic neříkajících číslic a písmen které vlastně říkají kde jaký bod modelu v prostoru je nebo jaký název má textura a právě to by nás mělo zajímat, protože pokud budeme upravovat číslo u modelů tak aby se nám nepřepisovala jistě si hned přejmenujeme i textury což je problém protože si je MDL nebude umět najít pokud do něj
nenapíšeme její nový název.Textura má řádek začínající jako „bitmap název textury“ ale mnohem lepší je dát textuře shodný název se samotným MDL a pak všechny názvy v něm přepsat tímto novým.
WOK S tímhle se nejspíš nesetkáte ale kdyby náhodou je to soubor který vytváří gmax při vytváření modelu a zřejmě jde o nějakou zálohu MDL já sám jí mažu a nevšiml jsem si že by to mělo nějaký následek ale už sem na něj v pár hacích narazil.
Textury TGA,DDS,plt
TGA: Normální obrázek ve formátu tga může mít libovolnou velikost na které závisí kolik paměti vám vlastně takový nwn sežere. TGA se používá na hlavní textury modelů. Tga by podle mě měl mít stejný název jako jeho MDL kvůli přehlednosti ale nebývá to pravidlem.
PLT:
Tyto textury se používají výhradně pro postavy a zbroje mají 24 bitovou barevnou hloubku,jsou černobílé a mají 10 vrstev při čemž každá vrstva určuje jeden materiál.
- Kůže
- Vlasy
- Tetování1
- Tetování2
- Oblečení1
- Oblečení2
- Kůže1
- Kůže2
- Železo1
- Železo2
Textury se dají prohlížet v NWNViewer[1].V1.0.1 a podle Angie se dají upravovat a vytvářet v Gimpu.
Kromě textur se TGA využívá na ikony inventáře ty mají stejnou formu jako MDL modelu s tím že je před ním ještě předpona „i“ příklad „iXXXX_b_001.tga“
Pokud jde o předměty které model nemají najdeme si příslušný název v baseitem.2da například drahokamy „iit_gem_018.tga
DDS: Jsou to vlastně zkomprimované tga textury které se používají jako doplňkové a mají mnohem menší velikost než tga s tím že PC potřebuje jistý výkon na jejich komprimaci.Pozor nejde o normální formát DDS ale o speciální nwn proto se na ně jen tak v něčem nepodíváte.
Zobrazit je umí nwnexplorer a komprimaci z tga do dds zvládá utilita vyvinutá biowarem která je k dispozici na jejich stránkách ale i na vaultu.
Pro jejich pojmenování platí stejná pravidla jako pro formát TGA.
PWK: je hodně podobný souboru MDL s tím že obsahuje informace o objektu typu plane(plocha) který vymezuje místo kam člověk může šlápnout například když vytvoříme model kamene můžeme skrz něj normálně procházet jako duchové pokud, ale přidáme tento soubor už se skrz něj projít nedá.
Tak to je spolu s 2da asi vše na co tak můžete narazit a nyní když víte co který soubor znamená se podíváme na editaci nejpoužívanějších 2da.
Baseitem.2da
Tady nás bude zajímat jen několik řádků jsou to především
„ItemClass“ který nám udává jakou zkratku musí MDL a ikony mít.
„InvSlotWidth InvSlotHeight“Tyto dva řádky nám udávají jak velká je ikona v inventáři a dá se podle nich určit jejich velikost protože jeden inv slot má 32×32 pixelu.
„MinRange MaxRange“Tyto sloupce určují kolik modelů vlastně modul bude využívat a jeho maximum je 255 pokud bude číslo nižší než skutečnost nebudou všechny překračující modely vidět.
„Stacking“ určuje kolik předmětů půjde skladovat na době například jedno místo v inventáři budete moc použít až pro 99šípu ale pokud 2da upravíte na 60 budete jich moct nahromadit na jedno místo jen 60.
Ostatní sloupce již dost zasahují do mechaniky nwn například jaké základní AC bude mít ta a ta zbroj nebo jaký útok bude mít ta a ta zbraň což si myslím že nebudete potřebovat.
Placeables.2da
Placeables má od baseitem značně odlišnou strukturu kde vlastně „label“ určuje jméno jaké uvidíte v toolsetu a „model_name“ pak jméno modelu což je pro nás důležité. „StrRef“ by měl mít unikátní číslo jinak bude mít model v toolsetu stejné jméno jako některý další.Ostatní sloupce se zabývají převážně grafikou a jsou pro nás nezajímavé maximálně „SoundAppType“ by měl odpovídat materiálu modelu.
Pokud chceme do modulu přidat nějaký placeables pak nestačí jen ho nějak pojmenovat ale rovnou mu udělat v tomto 2da řádek nejlépe tak že zkopírujete nějaký už stávající a upravíte jeho číslo,název,název modelu a strref.
Spells.2da
S tímto souborem moc zkušeností nemám přesto jej považuji za důležitý zejména pro to že zde můžeme upravovat původní kouzla nwn což je pro pw důležité třeba kvůli omezené účinnosti timestopu nebo přidáním úplně nového kouzla.
Vytvoříme script a jeho název uvedeme ve sloupci „ImpactScript“ každopádně se tato změna dá provést mnohem jednodušeji než nahrazením skriptu a to jejím přepsáním přímo v toolsetu.
Portraits.2da
Svojí strukturou se podobá placeables.2da protože se do něj každý portrét musí přidávat jako další řádek ale jediné co je pro nás důležité je „BaseResRef“ ten musí mít stejný název jako základ názvu portrétů jinak jeho funkčnosti nic nebrání ostatní sloupce jsou hlavně pro přehlednost a to jsou určení pohlaví a rasy u nich je důležité mít tedy alespoň nějaké číslo jinak přesné určení jaké číslo které rase patří neznám.
Xptable.2da
Když jsem otevřel poprvé tuto tabulku tak sem jen vyvalil oči a dodnes mě to nepřešlo je to seskupení 40 řádků a 42sloupců které zřejmě určují kolik xp na jaký lvl potřebujete v závislosti na vašem typu multipovolání atd.
Každopádně to není třeba a klidně můžete použít tuto jednoduchou formu.
0 1 0
1 2 100
2 3 300
3 4 1000
4 5 3000
5 6 10000
6 7 30000
7 8 50000
8 9 80000
9 10 125000
Kde druhý sloupec je lvl a třetí počet xp který je třeba mít.
Polymorp.2da
Tento úžasný 2da nám dává možnost upravovat všechny přeměny ve hře a pomocí dalších řádků můžeme vytvářet i další přeměny například do nestvůr které jste přidaly právě v některých hacích.
Pokud hledáte jaký má který druh číslo pak hledejte v classes.2da.
Genericdoors.2da
spravuje se stejně jako placeables.2da tedy přidáním nového řádku čísla by měly být jedinečné a model name přesně odpovídat danému MDL.
Parts_xxx.2da
Tyhle 2da mají na svědomí všechny části zbrojí a jejich celkem 12. Upravit čísla na jedné kompletní zbroji je tedy velice časově náročné když uvážíme že jedna jediná zbroj se skládá z 12ti částí a všechny je ještě musíme vynásobit počtem ras naštěstí je editace 2da jednoduchá a to tak že si najdeme volné číslo.
COSTMODIFIER ACBONUS
0 0 0.00
1 0 ****
2 0 ****
3 0 0.10
4 0 0.02
5 0 0.34
6 0 0.02
7 0 0.03
8 0 0.42
9 0 0.12
10 0 0.50
11 0 0.02
12 0 0.36
13 0 0.10
14 0 0.00
15 0 0.00
16 0 0.00
17 0 ****
18 0 ****
19 0 ****
20 0 ****
21 0 ****
22 0 ****
A upravíme ac bonus třeba na 0.00
COSTMODIFIER ACBONUS
0 0 0.00
1 0 ****
2 0 ****
3 0 0.10
4 0 0.02
5 0 0.34
6 0 0.02
7 0 0.03
8 0 0.42
9 0 0.12
10 0 0.50
11 0 0.02
12 0 0.36
13 0 0.10
14 0 0.00
15 0 0.00
16 0 0.00
17 0 ****
18 0 ****
19 0 ****
20 0 > 0.00 <
21 0 ****
22 0 ****
Teď vidíme že náš model model má číslo 20 proto bude název mdl,textury a ikony xxx_xxx020.mdl / ixxx_xxx020.tga xxx_xxx020.plt a takto tedy upravíme všechny části pro všechny rasy.
Původní 2.da má limit 199 ale nezapomínejte na číslo 255 takže další řádky lze zřejmě dopsat.
Myslím že je to asi tak všechno a to nejčastější každopádně pokud pochopíte systém ostatní už zvládnete samy taky a nezapomeňte 2da vždy navrch.
Zpirit
Pingback: WB review (druhá část) – Neverwinter CZ