Tworzenie erEra to nic innergo jak zbiór jednostek podzielonych na frakcje. Wszyscy znamy Erę Domyślną w której mamy 6 frakcji (Lojaliści, Buntownicy, Ludy Północy, Sojusz Knalgański, Nekromanci i Smoki). W tym poradniku nauczysz się tworzyć własną erę i umieszczać w niej jednostki.
Przygotowania:Era to skomplikowany dodatek, dlatego prościej będzie jak pobierzesz ten oto szablon:
Moja_Era.rar(testowana pod 1.9.x, zawartość wypakuj do folderu add-ons)
Jest to prosta, działająca era składająca się z jednej frakcji i jednej jednostki. Będziemy korzystać z niej jako bazy.
Struktura ery:

Era ma dosyć skomplikowaną budowę, ale tak naprawdę wszystko jest logicznie uporządkowane. Omówię teraz każdy składnik ery:
_main.cfgGłówny plik ery. To w nim znajdują się informacje pozwalające grze odczytać zawartość naszego dodatku. U nas wygląda on tak:
#textdomain wesnoth-Moja_Era
#### ERA CONFIG STUFF ####
[binary_path] path=data/add-ons/Moja_Era [/binary_path]
#### END ERA CONFIG STUFF ####
#### FACTION CONFIG STUFF ####
#ifdef MULTIPLAYER [binary_path] path=data/add-ons/Moja_Era [/binary_path]
#define MOJA_ERA_SIDE ERA FACTION {~add-ons/Moja_Era/factions/{ERA}-{FACTION}.cfg} #enddef
{~add-ons/Moja_Era/Moja_Era_Eras.cfg} #undef MOJA_ERA_SIDE
{~add-ons/Moja_Era/images} {~add-ons/Moja_Era/macros} [units] {~add-ons/Moja_Era/units} {~add-ons/Moja_Era/units/frakcja1} [/units] #endif |
W tym pliku najbardziej interesują nas dwa wpisy (zaznaczone na niebiesko):
Pierwszy pokazuje grze, gdzie znajduje się katalog macros, w którym trzymać będziemy stworzone przez siebie makra, np. zdolności jednostek, traity (cechy) itp.
Jeśli stworzysz w katalogu ery nowe foldery, to musisz pod tą linijką dopisać ich adresy. Inaczej gra ich nie znajdzie.
Drugi to odnośnik do folderu "frakcja1". W tym folderze znajdować się będą jednostki frakcji pierwszej, więc gra musi wiedzieć, gdzie to jest.
Gdybyśmy dorobili kolejne frakcje
z ich własnymi jednostkami, to ich foldery trzeba dopisać pod tym właśnie wpisem, np.
{add-ons/Moja_Era/units/frakcja1}
{add-ons/Moja_Era/units/frakcja2}
{add-ons/Moja_Era/units/frakcja3}
Moja_Era_Eras.cfgPlik ten zawiera szczegółowe informacje na temat naszej ery (wyświetlana nazwa ery, kolejność frakcji itp.). W tym pliku możemy utworzyć też tzw. pod-ery. U nas wygląda to tak:
#textdomain wesnoth-Moja_Era #Faction
[era] id=Moja_Era name= _ "Moja Era" require_era=yes
{RANDOM_SIDE} {MOJA_ERA_SIDE Moja_Era Frakcja1} [/era]
[era] id=Moja_Era_Domyslna name= _ "Moja Era + Domyslna" require_era=yes
{RANDOM_SIDE} {multiplayer/factions/loyalists-default.cfg} {multiplayer/factions/rebels-default.cfg} {multiplayer/factions/northerners-default.cfg} {multiplayer/factions/undead-default.cfg} {multiplayer/factions/knalgans-default.cfg} {multiplayer/factions/drakes-default.cfg} {MOJA_ERA_SIDE Moja_Era Frakcja1} [/era] |
Jak widzisz, są tu dwa tagi [era], które definiują dwie ery. Pierwsza to nasza zwykła, a druga to nasza + domyślna (dochodzą frakcje z domyślnej). Klucze id= i name= są Ci już dobrze znane, ja tylko przypomnę, że id musi być oryginalne i nie może się powtarzać w innej erze.
Zwróćmy uwagę na pierwszą erę. Mamy tam dwa makra. Są to pozycje na liście wyboru frakcji w oknie gry:
{RANDOM_SIDE} - to nic innego jak losowa frakcja. Jeśli chcemy taką opcję na liście to umieszczamy właśnie takie makro.
{MOJA_ERA_SIDE Moja_Era Frakcja1} - to nasza pierwsza frakcja. Ten wpis umożliwia pokazanie się jej na liście wyboru oraz odnalezienie przez grę odpowiedniego pliku w folderze factions ale o tym za chwilę.
Gdybyśmy mieli zrobioną drugą frakcję to dodajemy ten sam wpis linijkę niżej i zmieniamy Frakcja1 na Frakcja2. Możemy nawet zmieniać kolejność frakcji na liście w ten sposób.
W drugiej erze oprócz tych dwóch makr dochodzą wpisy dotyczące frakcji z ery domyślnej:
{multiplayer/factions/loyalists-default.cfg} - lojaliści
{multiplayer/factions/rebels-default.cfg} - buntownicy
{multiplayer/factions/northerners-default.cfg} - ludy północy
{multiplayer/factions/undead-default.cfg} - nieumarli
{multiplayer/factions/knalgans-default.cfg} - soujsz knalgański
{multiplayer/factions/drakes-default.cfg} - smoki
Gdybyś chciał w swojej erze zamieścić jedną lub więcej frakcji z domyślnej to musisz dodać wyżej wymienione wpisy (nie wszystkie, tylko te, które są Ci potrzebne).
Folder factions
Tu znajdują się pliki konfiguracyjne frakcji. Gdybyś chciał dodać nową frakcję, to musisz dorobić jej własny plik.
Moja_Era-Frakcja1.cfgPlik konfiguracyjny pierwszej frakcji. Wygląda tak:
#textdomain wesnoth-Moja_Era [multiplayer_side] id=frakcja1 name= _ "Frakcja 1" image=frakcja1/chlop.png {MAGENTA_IS_THE_TEAM_COLOR} type=Moja_Era_Chlop leader=Moja_Era_Chlop recruit=Moja_Era_Chlop [/multiplayer_side]
|
Tu możesz ustalić wyświetlaną nazwę frakcji, obrazek frakcji, listę bohaterów do wyboru i określić listę rekrutów.
image= to ścieżka do obrazku reprezentującego frakcję. Obrazek musi znajdować się w folderze images (z Twojego dodatku lub z folderu "data/core/" gry). U nas ścieżka wygląda tak:
image=frakcja1/chlop.png
To oznacza, że wczytany zostanie obrazek z "Moja_Era/images/frakcja1/chlop.png"
type= to tzw. domyślny lider, czyli taki, który automatycznie jest wybierany po wskazaniu frakcji, którą chcemy grać. Dla Lojalistów jest to Porucznik, dla Buntowników Elficki Kapitan itd.
leader= tu znajduje się lista bohaterów (liderów) do wyboru. Umieszczamy tu id jednostek, z których jedną będziemy mogli wybrać na przywódcę.
recruit= to nasza lista jednostek do rekrutacji. Tu umieścimy jednostki, które będziemy mogli nająć u tej frakcji.
W naszej frakcji 1 mamy domyślnego lidera Chłopa, gdybyśmy chcieli go zmienić, to możemy tylko na... Chłopa, a do rekrutacji mamy... Chłopa. Trochę nudna ta frakcja, później to zmienimy.
Folder macrosNa razie jest pusty. Umieścimy w nim nasze własne, wymyślone zdolności jednostek i nie tylko.
Folder unitsW tym folderze znajdują się podfoldery frakcji a w nich nasze jednostki. Na razie jest tylko jeden podfolder "frakcja1" a w nim jedna jednostka "Chlop.cfg"
Chlop.cfgTo plik jednostki o nazwie Chlop, lecz to nie ten sam Chłop z Ery Domyślnej. Trochę go zmodifikowałem. Plikami jednostek zajmiemy się w następnej części poradnika.
Folder imagesTu znajdują się foldery z obrazkami. Na razie jest tylko jeden o nazwie "frakcja1". Tam będziemy umieszczać obrazki i animacje jednostek z frakcji 1. Gdy będziemy mieli więcej frakcji to porobimy inne foldery, dla każdej po jednym. Poza tymi folderami mogą być też inne, np. do ikon ataków, efektów specjalnych, portretów itp.
chlop.pngTo obrazek podstawowy Chłopa. Będzie wyświetlany na polu bitwy i w profilu jednostki.
Omówiłem poszczególne składniki ery. Teraz zajmiemy się rozbudową naszego dodatku.
Dodawanie jednostek do frakcji:Wiesz już o tym, że szczegółowe informacje na temat wszystkich frakcji znajdują się folderze factions. Na razie mamy jedną frakcję z jedną jednostką. Otwieramy plik "Moja_Era-Frakcja1.cfg"
Dodawanie jednostek z Ery Domyślnej:Jest o tyle prostsze, że nie musimy tworzyć własnych jednostek, nie musimy ich nawet kopiować do folderu naszej ery.
Załóżmy, że chcemy, aby naszym liderem nie był Chłop, ale Mag z Domyślnej. Musimy znać jego id. Wchodzimy na stronę:
linkOdszukujemy maga i widzimy, że jego id to: Mage
Korzystając z tej informacji zamieniamy dwa klucze
type= i
leader=. Usuwamy wpis Moja_Era_Chlop i dodajemy Mage. Powinno wyglądać to tak:
#textdomain wesnoth-Moja_Era [multiplayer_side] id=frakcja1 name= _ "Frakcja 1" image=frakcja1/chlop.png {MAGENTA_IS_THE_TEAM_COLOR} type=Mage leader=Mage recruit=Moja_Era_Chlop [/multiplayer_side]
|
Jak to zapiszesz i uruchomisz grę to zauważysz, że Twoim liderem będzie Mag, a do rekrutacji będą sami Chłopi.
Powiedzmy, że tylko jeden lider do wyboru to za mało. Poza samym Magiem, chcemy mieć Włócznika. Jego id to Spearman. Wpisujemy to po przecinku zaraz po Mage (bez spacji) w kluczu leader=. Tak to powinno wyglądać:
leader=Mage,Spearman
Od teraz będziemy mogli wybierać spośród dwóch liderów.
Zajmijmy się listą jednostek do rekrutacji. Na razie możemy rekrutować samych Chłopów. To nudne, dodajmy jeszcze jedną jednostkę. Niech to będzie Gobliński Włócznik (id=Goblin Spearman). Dopisujemy go w kluczu recruit tuż po Moja_Era_Chlop (oddzielamy przecinkiem, bez spacji po przecinku). Całość powinna wyglądać tak:
#textdomain wesnoth-Moja_Era [multiplayer_side] id=frakcja1 name= _ "Frakcja 1" image=frakcja1/chlop.png {MAGENTA_IS_THE_TEAM_COLOR} type=Mage leader=Mage,Spearman recruit=Moja_Era_Chlop,Goblin Spearman [/multiplayer_side]
|
Teraz frakcja 1 ma dwóch liderów do wyboru i dwie jednostki do rekrutacji.
Dodawanie własnych jednostek:Aby dodać do frakcji własną jednostkę musimy ją najpierw zrobić a następnie wpisać jej id do odpowiedniego klucza (type=, leader=, recruit=) w zależności od przeznaczenia jednostki.
Tworzenie nowej frakcji:Wiesz już jak dodawać jednostki, teraz czas dorobić nową frakcję!
Zacznijmy od stworzenia nowego pliku frakcji. Aby było szybciej i prościej skopiujmy plik Moja_Era-Frakcja1.cfg i wklejmy okok zmieniając cyfrę 1 na 2 (Moja_Era-Frakcja2.cfg).
Otwieramy nasz nowy plik i zmieniamy wszystkie jedynki na dwójki. Dzięki temu nasza druga frakcja daje się odróżnić od pierwszej.
Zmieńmy liderów i rekrutów. Zróbmy z frakcji 2 drużynę zła. Niech liderami będą Mroczny Adept (domyślny lider) i Duch. Do rekrutacji zaś dajmy Nietoperza Wampira i Chodzącego Trupa. Zmieńmy też obrazek reprezentujący frakcję na Chodzącego Trupa. Obrazek ten nie znajduje się w naszej erze, ale jest w katalogu głównym gry. Ścieżka do niego to data/core/images/units/undead/zombie.png. W kluczu images = pomijamy wszystko przed images/ włącznie i zostaje nam ścieżka units/undead/zombie.png. Oto jak powinna wyglądać całość pliku:
#textdomain wesnoth-Moja_Era [multiplayer_side] id=frakcja2 name= _ "Frakcja 2" image=units/undead/zombie.png {MAGENTA_IS_THE_TEAM_COLOR} type=Dark Adept leader=Dark Adept,Ghost recruit=Walking Corpse,Vampire Bat [/multiplayer_side]
|
Mamy już zaprogramowaną frakcję, ale nie będzie ona działać. Musimy udać się do pliku er (Moja_Era_Eras.cfg) i dodać frakcję do odpowiedniej pod-ery.
#textdomain wesnoth-Moja_Era #Faction
[era] id=Moja_Era name= _ "Moja Era" require_era=yes
{RANDOM_SIDE} {MOJA_ERA_SIDE Moja_Era Frakcja1} {MOJA_ERA_SIDE Moja_Era Frakcja2} [/era]
[era] id=Moja_Era_Domyslna name= _ "Moja Era + Domyslna" require_era=yes
{RANDOM_SIDE} {multiplayer/factions/loyalists-default.cfg} {multiplayer/factions/rebels-default.cfg} {multiplayer/factions/northerners-default.cfg} {multiplayer/factions/undead-default.cfg} {multiplayer/factions/knalgans-default.cfg} {multiplayer/factions/drakes-default.cfg} {MOJA_ERA_SIDE Moja_Era Frakcja1} {MOJA_ERA_SIDE Moja_Era Frakcja2} [/era] |
Te wpisy na zielono aktywują naszą frakcję w obu pod-erach. Dzięki temu będziemy mogli zauważyć ją na liście frakcji tuż pod frakcją 1.
Teraz wszystko powinno działać.
UWAGA: Gdybyśmy w naszej frakcji 2 uwzględnili własne jednostki (tak jak to ma miejsce z Chłopem z frakcji 1), to konieczne byłoby dodanie wpisu do _main.cfg (patrz początek tutorialu).
W następnym tutorialu zajmiemy się
tworzeniem własnych jednostek i
umieszczaniem ich w naszej erze.