6.…wie man den Bienen das Summen verleiht!
Ganz allgemein. Die .cfg-Dateien können mit dem Notepad++ geöffnet werden. Wir können nicht zaubern, also denkt nicht, dass Ihr nach diesem Tutorial neue Texturen erstellen könnt und beispielsweise ein Hochhaus in Anno1404 einfügen könnt. Nein, stattdessen arbeiten wir mit schon vordefinierten Texturen die Anno1404 verwendet. Das tolle dabei ist, und deswegen können auch Modder der Schenke einen Steinuntergrund verpassen, dass wir die einzelnen Texturen wie bei einem Puzzle zusammenfügen und auseinanderdividieren können. Mit den .cfg-Dateien lassen sich für uns 3 wichtige Sachen der im Spiel verwendeten Objekte regeln, nämlich:
- m_Files
- m_Models
- m_TerrainDecals
Fangen wir mit dem wohl verständlichsten an: m_TerrainDecals regelt ganz einfach die Untergrund-Textur unseres Objektes. Es fügt einfach eine .png im Spiel ein und regelt dessen Positionen (x,y,z), dessen Größe (mit welchem Faktor die Originalgröße des .png multipliziert werden soll), dessen RGB-Werte bzw. dessen Beleuchtungsambiente usw..
m_Files regelt beispielsweise die Blumen, Sträucher, Getreidereihen etc. auf dem Felduntergrund. Wie viele Blumenreihen werden verwendet, wo ist dessen Position auf dem Feld, wird die Textur verdreht dargestellt usw.
m_Models regelt die Modelle die auf solch einem Feld vorkommen, sprich die Bienenstöcke, die Zäune usw.. Auch hier kann die Beleuchtung angepasst werden u.a.
Doch wir fangen klein an. Wir wollen ja nur die Bienen, die Bienenstöcke und die Blumen auf unser verödetes Feld bekommen. Unser Bienenfeld ist im Spiel 3x3 Felder groß. Es zeichnet sich durch die horizontale x-Achse und die vertikale z-Achse des Untergrundes aus. Der Mittelpunkt des Untergrundes ist dort wo x=0 und z=0 sind.
Auf einem Bienenfeld, das von der Imkerei gebaut wird, befinden sich 4 Bienenstöcke, 4 Blumenwiesen und der Zaun rundherum. Ein Blumenfeld wird durch den Befehl:
- <m_files><m_Config><m_FileName>data\graphics\buildings\farm\north\apiary_field\n_apiary_field_hutch01.cfg</m_FileName>
geladen. Hier kann sowohl die Textur von Getreidebüschen etc. (getreidereihe01.cfg) als auch die des Blumenfelds (n_apiary_field_hutch01.cfg) geladen werden.
Um nun das gesamte Bienenfeld voller Blumen zu bekommen müssen logischerweise 4 solcher Blumenwiesen geladen werden. Anno1404 hat dafür aber nur drei verschiedene Blumenwiesen angelegt, nämlich:
- n_apiary_field_hutch01.cfg
- n_apiary_field_hutch02.cfg sowie
- n_apiary_field_hutch03.cfg
Sprich, wir müssen eine Datei zweimal in unserer bienenfeld.cfg Datei hinein laden. Laden wir jedoch nur Dateien rein, und geben diesen keine genauen Positionsdaten, werden wir immer nur ein Blumenfeld in der Mitte auf den Positionen 0/0 sehen können, egal wie viele verschiedene Felder wir in unser .cfg hinein laden.
Für die Berechnung der Positionen kann man sich ein Koordinatensystem vorstellen, dass sowohl in der x-Achse als auch in der z-Achse (also eigentlich y-Achse) in den Minus- wie auch Plusbereich geht. Wenn der Mittelpunkt bei 0/0 ist, muss logischerweise ein Feld in den x+/z+ Bereich, ein Feld in den x+/z- Bereich, ein Feld in den x-/z+ Bereich und das letzte Feld in den x-/z- Bereich positioniert werden. Logisch oder?
Werden keine viereckigen Felderflächen geladen sondern Reihen wie beim Getreidefeld, das 4x4 groß ist, so bleibt die x-Achse unverändert. Es ändert sich nur die Positionen der z-Achse einmal in den Minus- und einmal in den Plusbereich. Für das Getreidefeld wäre das dann die Positionen für die verschiedenen Getreidereihen: x=0/z=-2,0; x=0/z=-1,5; x=0/z=-1,0; x=0/z=-0,5; x=0/z=0; x=0/z=0,5; x=0/z=1,0; x=0/z=1,5; x=0/z=2,0 ... also insgesamt 9 Reihen
Für unsere Felderflächen der Blumenwiesen wären die Positionen: x0,7/z0,7; x0,7/z-0,7; x-0,7/z0,7; sowie x-0,7/z-0,7 angebracht.
Die Blumenkisten werden durch den Befehl:
- <m_Config><m_FileName>data\graphics\buildings\farm\north\apiary_field\gr\n_apiary_fieldhouse03.GR2</m_FileName>
geladen. Auch hier gibt es wieder drei verschiedene Modelle die Anno1404 liefert, nämlich:
- n_apiary_fieldhouse01.gr2
- n_apiary_fieldhouse02.gr2 sowie
- n_apiary_fieldhouse03.gr2
Deswegen muss auch hier eine Textur zweimal geladen werden. Wir wollen ja vier Bienenkisten auf unserem Feld haben.