Einheitenkarten selbst erstellen (M2TW)

  • Heute zeig' ich mal, wie ihr die Einheitenkarten für Medieval 2 selbst erstellen könnt. Man glaubt es kaum, aber hinter den winzigen Kärtchen steckt mehr Arbeit, als man denkt.


    Zuvor will noch geklärt werden, was die Einheitenkarten überhaupt sind:
    Einheitenkarten sind die kleinen Bildchen, die unten im Interface angezeigt werden und durch die eine Einheit am Interface zu erkennen ist.

    Also das rot eingekreiste ist eine Einheitenkarte.


    Benötigt für das ganze werden:
    Gimp (einfach googlen)
    Gimp dds-Plugin (einfach googlen und entpacken, wie es im ReadMe steht)
    Mesh-ms3d-Konverter (http://www.twcenter.net/forums/downloads.php?do=file&id=2092)
    Texture-dds-Konverter (http://www.twcenter.net/forums/downloads.php?do=file&id=1347)
    Python 2.5 (einfach googlen)
    Milkshape 3d 1.8.4 (Trial reicht!) Gibt es hier: http://www.milkshape3d.com
    Die entpackten Animationen (gibt es hier: http://www.twcenter.net/forums/downloads.php?do=file&id=1686)
    und natürlich Medieval 2 (entpackt!)


    und eventuell noch Photoshop, dies ist aber nicht unbedingt nötig (die Einheitenkarte wäre dann schöner)


    Noch ein Hinweis: Für größere Bilder die Fotos einfach anklicken! ;)


    1. Schritt: Ermitteln der benötigten Dateien und umwandeln


    Öffnet export_descr_unit.txt und sucht nach eurer Einheit. Geht zum Absatz "ug_models". Einen der Einträge markiert und kopiert ihr (ohne Komma). Wenn die Einheit beritten ist, geht noch zum Absatz "mount" und merkt euch dort den Eintrag.
    Öffnet dann unit_models\battle_models.modeldb. dort sucht ihr nach eurem kopierten Eintrag. Ebenso verfahrt ihr mit dem (falls vorhandenen) Reittier. Ihr werdet in etwa folgendes vorfinden:


    16 hungarian_nobles 1 4 60 unit_models/_Units/LB_Plain_Fancy/hungarian_nobles_lod0.mesh 121 60 unit_models/_Units/LB_Plain_Fancy/hungarian_nobles_lod1.mesh 900 60 unit_models/_Units/LB_Plain_Fancy/hungarian_nobles_lod2.mesh 2500 60 unit_models/_Units/LB_Plain_Fancy/hungarian_nobles_lod3.mesh 6400 1 7 hungary 73 unit_models/_Units/LB_Plain_Fancy/textures/LB_plain_fancy_hungary.texture 72 unit_models/_Units/LB_Plain_Fancy/textures/LB_plain_fancy_normal.texture 48 unit_sprites/hungary_Hungarian_Nobles_sprite.spr 1 7 hungary 60 unit_models/AttachmentSets/Final Slavic_hungary_diff.texture 60 unit_models/AttachmentSets/Final Slavic_hungary_norm.texture 0 1 5 Horse 11 MTW2_HR_Bow 13 MTW2_HR_Sword 2 19 MTW2_HR_Bow_Primary 14 fs_test_shield 2 18 MTW2_Sword_Primary 14 fs_test_shield 16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002


    Allerdings sind nur die (von mir) rot markierten Einträge interessant:
    Der erste gibt an, wo wir die Mesh-Datei der Einheit finden. Geht dorthin und kopiert sie in den Ordner des Mesh-ms3d-Konverters. Am besten ist es, wenn ihr die ...lod0.mesh-Datei nehmt, da diese am detailliertesten ist. Die letzten beiden Einträge geben an, welche Texturen die Einheit benutzt. Geht in das angegebene Verzeichnis und kopiert die Dateien in den Ordner des Texture-dds-Konverters. Startet nun den Teture-dds-Konverter, indem ihr "convert_all_textures.bat" startet. Die Texturen werden in dds-Dateien umgewandelt, welche ihr mit Gimp per Doppelklick öffnet. Geht das nicht, klickt ihr rechts auf die Datei und klickt auf Eigenschaften. Klickt darin auf "ändern". Dort wählt ihr Gimp aus. Ist dies nicht eingetragen, klickt auf "Durchsuchen" und wählt dort folgendes (Standard-) Verzeichnis: Programme\Gmp-2.0\bin\Gimp-2.6.exe. Speichert die Datei nun als png ab. Dies vermeidet spätere Fehler. Für die Mesh-Datei startet "GameObjectApplicationToolbox_v1_0.py"! Klickt nun auf "Convert Mesh to Ms3d" und wählt eure Datei aus. Nun habt ihr alle Dateien im richtigen Format.


    2. Schritt: Importieren in Milkshape und anpassen


    Hierfür werden die entpackten Animationen benötigt. Doch zuerst müssen wir den Ordner (vorher entpacken!) ein wenig vorbereiten. Klickt dazu mit rechts auf den Ordner und sucht nach "*.evt". Diese Dateien brauchen wir nicht und stören nur. Wenn die Suche abgeschlossen ist, einfach alle markieren und löschen. Nun ist das ganze schon etwas übersichtlicher. Geht dann in den entsprechenden Ordner der Waffe, die eure Einheit besitzt. Wenn zum Beispiel die Einheit eine Zweihandaxt besitzt, geht in den Ordner "M2TW_2H_AXE". (Für eine Einhandaxt nehmt ihr einfach die Mace- (Keulen-) Animation. In dem Ordner sind jetzt unzählige Dateien. Die Suche nach der richtigen scheint wie die Suche nach der Nadel im Heuhaufen. Jedoch ist nahezu jede richtig, ihr könnt halt schauen, mit welcher es eurer Meinung nach besser aussieht. Kopiert dann eure Auswahl in den Ordner des Converters. Startet diesen und wählt nun die "animmerge"- Funktion aus. Im 1. Fenster müsst ihr eure ms3d-Datei auswählen, im 2. eure Animation. Dann erscheint ein Fenster, in dem ihr "5" eingebt. Startet nun die neu erstellte Datei und klickt ganz einfach "Anim" (rechts unten). Nun wird die Einheit wie von Zauberhand angepasst. Das einzige, das ihr beachten müsst, ist lediglich, dass ihr bei Fernkampfeinheiten keine Animation für die Sekundärwaffe erwischt.


    Wenn die Einheit einen Bogen oder eine andere Fernkampfwaffe besitzt, geht folgendermaßen vor:
    Doppelklickt in Milkshape im "Groups"-Tab die Gruppen des Bogens. Geht dann in den "model"-Tab und klickt auf "Move". Bewegt dann den Bogen in den drei grau hinterlegten Fenstern so zurecht, dass der Bogen in der Hand der Einheit liegt (am besten, ihr macht dies zum Schluss, da sich die Fernkampfwaffe mitbewegt, wenn ihr die rechte Hnd bewegt).


    Ist die Einheit beritten, ist das etwas umständlicher:
    Geht nach dem Konvertieren aller Dateien (die der Einheit und die des Reittieres) nochmals in den Mesh-ms3d-Konverter. Diesmal klickt ihr auf "Merge ms3d". Wählt nun nacheineander die beiden ms3d-Dateien aus und speichert. Öffnet diese (neue) Datei und doppelklickt in Milkshape im "Groups"-Tab die Gruppen des Reittieres (entweder ganz unten oder ganz oben). Geht dann in den "model"-Tab und klickt auf "Move". Bewegt dann das Reittier in den drei grau hinterlegten Fenstern so zurecht, dass die Einheit auf dem Tier sitzt (nicht im 3d-Fenster bewegen!). Geht nun in den "Joints"-Tab und wählt das Bone "Bone_eyebrow" aus und klickt auf "Assign". Dieser Schritt sollte allerdings erst nach dem Einfügender Animation ausgeführt werden! Dies sieht dann so aus:


    Doppelklickt auf die ms3d-Datei und Milkshape startet. Geht als erstes auf den "Groups"-Tab und klickt auf "clear all". Klickt danach rechts auf das 3d-Fenster (rechts unten). Klickt dann auf "Show axis", "Show grid" und "Textured" (Danach soll bei den ersten zwei kein Haken sein, nur bei Textured). Außerdem geht ihr noch auf "File" und "Preferences". Im "Misc"-Tab stellt ihr die "Joint Size" auf 0.025000. Falls ihr registriert seid, geht noch auf "Edit" und "Refresh Textures". Geht dann in den "Materials"-Tab und wählt "attachment" aus. Klickt nun auf das obere "none" und wählt eure png-Datei für die Waffen aus (beginnt mit final...). Nun wählt "Figure" aus und wählt die andere png-Datei aus. [Falls es komisch aussieht, habt ihr entweder die falsche(n) Datei(en) oder die png-Dateien vertauscht]. Klickt bei beiden Materials noch auf den Reiter unter "none" und wählt in beiden Fällen "ignore Alpha". Störende Sekundärwaffen könnt ihr einfach im "Groups"-Tab anwählen und "Delete" klicken. Es sollte dann in etwa so aussehen:


    Achtung:
    Lautet die Datei für die Attachments "final special heads...", geht folgendermaßen vor:
    Geht in den "Groups"-Tab und löscht dort alle Helme, bis auf einen (Auswählen und "Delete" Klicken). Den Doppelklickt ihr und weiter geht's in den "Materials"-Tab Wählt dort "Attachments" aus und klickt auf "Assign". Dann könnt ihr weitermachen.


    3. Schritt: Exportieren aus Milkshape

    Klickt auf das 3d-Fenster (rechts unten) und drückt Leertaste. Daraufhin vergrößert sich das Fenster. Geht dann nochmals in de "Joints"-Tab und setzt den Haken bei "Show Skeleton" raus. Daraufhin vergrößert sich das Fenster. Dreht die Einheit so hin, wie sie später sein soll. Drückt nun Alt+Druck (rechts von F12). Damit erstellt ihr in der Zwischenablage eine Kopie der Einheit


    Wenn ihr nur Gimp besitzt:
    Startet Gimp, drückt Strg+V und zieht einen rechteckigen Auswahlrahmen um den Teil der Einheit, der später auf der Einheitenkarte sein soll. Drückt nacheinander Strg+C und Strg+Umschalt+V. Nun öffnet sich in einem neuen Fenster die Einheitenkarte. Klickt oben auf "Bild" und danach auf "Bild skalieren". Klickt auf die Klammer neben den Werten, dass diese auseinander geht und wählt als Auflösung 48x64 Pixel aus. Nun habt ihr fast schon die fertige Einheitenkarte.


    Wenn ihr zusätzlich noch Photoshop (Elements genügt auch) besitzt:
    Startet Photoshop und erstellt eine Neue Datei aus der Zwischenablage. Wählt nun den "Freistellen"-Button (siehe Foto). Nun gebt oben gleich "48 px" und daneben "64 px" ein. Wenn ihr nun den Rahmen zieht, ist dieser nicht mehr so frei, aber die Karte verzerrt auch nicht mehr. Klickt auf den grünen Haken und speichert unter einem beliebigen Namen (am besten als .tga) ab.


    Der restliche Verlauf ist mit beiden Programmen gleich. Wenn ihr Gimp benutzt habt, lasst die Datei gleich offen, wenn ihr Photoshop verwendet habt, ladet die Datei mit Gimp. Klickt nun auf das "Nach Farbe auswählen"-Symbol im Gimp-Werkzeugkasten. Klickt dann auf den blauen Hintergrund. Dieser müsste darauf mit einer gestrichelten Linie umrahmt sein. Geht dann unter "Ebene" und "Transparenz" auf "Alphakanal hinzufügen". Geht dannach unter "Ebene" und "Transparenz" auf "Alpha-Schwellwert". Zieht im folgenden Fenster den Balken ganz nach rechts (auf 255). Dies ist eure fertige Einheitenkarte. Speichert sie noch wie folgt ab: SEGA\Medieval II Total War\data\ui\units\(die zugehörige Fraktion, z. B. spain oder venice)\#(Name der Einheit; Nummernzeichen ganz wichtig).tga


    Zum Schluss noch ein paar Anregungen, wie eure Einheiten ausschauen können:


    Es wäre auch sehr schön, wenn jemand seine Ergebnisse reinstellt, um zu sehen, dass ich im Tutorial nichts vergessen habe ;)


    Diskussionen und Fragen bitte hier!

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!