|
-
Editing FAQ
Geändert von Gottfried (10.02.2012 um 13:28 Uhr)
-
Liste von 3D-Modelling-Tools
Gothic schreibt nicht die Verwendung eines bestimmten Tools vor, da es Dateien im Standardformat 3DS einlesen kann. Ein Großteil aller Modelling-Programme ist in der Lage, dieses Format zu schreiben, daher hat man die freie Auswahl. Die in den MDKs enthaltenden 3DS-Dateien sind allerdings nicht absolut standard-konform, daher benötigt man spezielle Plugins, um sie zu lesen. Es folgt eine Übersicht verschiedener Programme. Jedes hat Vor- und Nachteile, daher solltest du erstmal einige ausprobieren, bevor du dich endgültig entscheidest.
Entsprechende gothic-spezifische Importer und Exporter für sogut wie jedes aufgelistete Programm findest du hier.
3D Studio Max
Professionelles 3D-Programm, mit dem PiranhaBytes die Modell für die Original-Spiele erstellt haben. Eignet sich am besten für Gothic-Modder, auch da es im professionellen Bereich sehr oft genutzt wird. Leider ist es mit einem Listenpreis von über 5000 Euros für den Normalanwender unerschwinglich.
Cinema 4D
Professionelles 3D-Programm.
Ein gutes Programm, welches ein großes Stück billiger ist als 3DS Max. Es eignet sich besonders für Anfänger, weil das Programm sehr übersichtlich aufgebaut ist und den Nutzer nicht mit Funktionen erschlägt. Kosten einer aktuellen Version liegen allerdings bei >1000 Euro.
Blender
Freeware bzw. Open-Source. Gewöhnungsbedürftiges aber leistungsfähiges 3d-Programm. Wenn man sich an die etwas eigene Art gewöhnt hat, ein sehr mächtiges, kostenloses Programm. Eine Anleitung zur Installation findest man hier. Wird sehr viel von Gothic-Moddern genutzt, da es ständig verbessert wird und kostenlos ist.
Gmax
Freeware. Eigentlich sehr gutes Programm, der kostenlose, veraltete Bruder von 3ds Max.
Liste von Grafiktools (für Texturen etc.)
Findet man hier.
Geändert von Milgo (28.10.2010 um 19:00 Uhr)
-
Gothic-Editing IRC-Channel
Im IRC #Gothic-Editing Channel gabs zu Gameswebzeiten immer sehr schnell kompetente Hilfe.
IRC-Programme:
mIRC
Trillian
IRC-Einstellungen:
server: irc.quakenet.org
port: 6667
channel: #gothic-editing
P.S.: Wer nich weiß, was das überhaupt is: Der Channel ist sone Art Chatworld in dem Leute sind die sich mit Modden auskennen, also könnt ihr hier direkt fragen, ähnlich ner Multisitzung im MSN oder ICQ.
mfG
Geändert von Milgo (28.10.2010 um 18:59 Uhr)
Grund: Link korrigiert
-
Kleiner Leitfaden für Neulinge
- Was ist eine (Gothic-)Modifikation?
Eine Modifikation (kurz: die Mod) ist ein von Fans entwickeltes Erweiterungsprogramm für ein gewisses Computerspiel, welches auf Basis der jeweiligen Engie besteht. Zwar gibt es nicht für jedes beliebige Spiel Mods, doch dieser 'Trend' liegt momentan schwer bei den Spielerherstellern und -publishern.
Modifikations-FAQ
Die Lizenz
Gothic 2 - Classic Mods?
Obwohl Piranha Bytes keine Tools zum Modden mit Gothic 3 bereit gestellt hat, gibt es einige Möglichkeiten zum Modden mit Gothic 3. Wer sich dafür interessiert, sollte das entsprechende Forum aufsuchen.
Gothic 3 - Editing und Modifikationen
- Die ersten Schritte - wie und wo fange ich an?
Das Modden selbst ist zwar recht einfach, doch die Einarbeitung in die Materie ist besonders für Anfänger in Sachen Programierung äußerst verwirrend. Der erste 'Ansprechpartner' sollte auf jeden Fall das Wiki sein. Dort solltest du mit Einsteiger-Tutorials beginnen.
Ansonnsten gibt es noch eine Reihe weiterer Threads, die einem helfen können:
Wie kann ich das Modden erlernen?
Jobbörse: Anfänger suchen Teams
- Die Teilaufgaben und ihre Tools
Das Gothic-Modden ist in verschiedene Teilbereiche gegliedert. Grob unterscheidet man hierbei vom Skripten, Spacern, 3D-Modellierung und Grafikbearbeitung. Welche Tools du dafür brauchst und wo du diese herbekommst siehst du hier:
Generell (insbesondere fürs Spacern):
Gothic 1 Mod Kid
Gothic 2 Mod Kid
Gothic 2 MDK mit Rohdaten (empfohlen)
Gothic 2 MDK - Patch
3D-Modelling:
Liste der bekanntesten 3D-Programme
Texturen erstellen:
List der bekanntesten 2D-Programme
Skripten
Für das Skripten selbst benötigt man nur den Standardeditor von Windows. Allerdings gibt es ziemlich viele kostenlose Editoren, die einfach besser aufgebaut sind, meist werden Skriptzusammenhänge und Zeilen angegeben, was die Arbeit sichtlich erleichtert. Falls Intresse besteht poste ich noch die Links für zwei der besagten Skripteditoren, wobei dies nicht zwingend Notwendig ist.
Notepad++ (Daedalus-Highlight-Files für Notepad++)
Crimson-Editor (Daedalus-Highlight-Files für Crimson)
Geändert von Milgo (28.10.2010 um 19:06 Uhr)
-
Wie kann ich das Modden erlernen? - Einstieg für Neulinge
In diesen Forum erscheinen immer wieder Themen mit der Frage: "Wie kann ich modden?" Ich versuche nun einen möglichst präzisen und allumfassenden Einstieg dafür zu schreiben, weil mir der Post von WhiteXrystal mittlerweile zu wenig ist.
Ganz wichtig: Dieser Beitrag ist sehr lang, das gebe ich zu, allerdings ist es eine meiner Meinung nach wirklich gute Einleitung ins Modden ohne direkt viele verwirrende Fremdworte zu benötigen - und wer nicht gewillt ist solche Texte zu lesen oder so viel Zeit zu investieren um den Text zu lesen, der sollte die Idee mit dem Modden sowieso an den Nagel hängen und lieber auf vorhandene Modifikationen warten oder für ein anderes Spiel modden. Das ist keine Schande - dafür gibt es immerhin ein eigenes Forum.
Welche Programme brauche ich?
Die mit Abstand beliebteste Frage aller Neulinge ist: "Welche Programme muss ich runterladen und wo kriege ich diese her - natürlich kostenlos."
Das lässt sich leider nicht so einfach beantworten, weil man nicht einfach alles runterladen sollte, weil man verschiedene Programme braucht, je nachdem was man machen möchte. Erst wenn du weißt, in welchem Bereich du arbeiten möchtest, kannst du auch das richtige Programm dafür runterladen.
Die schöne Nachricht: Das bisschen, das ihr über das Modden erfahren müsst, steht im folgenden Teil dieses Beitrags.
Wie funktioniert das Modden eigentlich?
Gothic zu verändern funktioniert anders als in den meisten Editoren zu anderen Spielen. Beim Gothic-Modden klickt man sich die Inhalte nicht einfach zusammen.
"Wenn das Modden nicht so geht, wie geht es dann?" - Das Modden mit Gothic besteht aus verschiedenen Teilen. Ein Mensch erstellt die Welt, durch die man laufen kann, einer erstellt die Pflanzen und Bäume am Wegrand, dann gibt es noch einen, der die Npcs und deren Dialoge programmiert und wieder ein anderer legt vielleicht neue Texturen auf die Welt durch die man läuft. Wenn du wirklich gut werden möchtest, solltest du dich auf einen Bereich fixieren - dann kann du für diesen Bereich auch das entsprechende Programm runterladen.
Das denkst, das ganze ist komplex? Es ist noch komplexer.
Vor- und Nachteile des Gothic-Modden
Das ist der Fluch UND der Segen des Gothic-Modding. Alleine wirst du NIEMALS ein so großes Projekt wie beispielsweise Gothic erstellen können und als Anfänger schonmal gar nicht. Aber das ist gar nicht schlimm - das kann niemand. Nicht einmal Piranha Bytes selbst - bei Gothic 2 waren das knapp 20 erfahrene Männer, die entwickelt haben.
So - was ist denn eigentlich das große Glück, der Segen und der Spaß am Gothic-Modden? Da gibt es verschiedene Aspekte.
1. Du kannst fast ALLES machen. Du kannst als Einstieg in das Modden beispielsweise einen neuen NPC in die Welt einbauen und ihm eine eigene Quest mit Dialogen geben - ok! Oder willst du doch lieber die Häuser etwas anders ausstatten? Kein Problem! Oder willst du doch lieber was ganz großes machen, was genauso eine Klasse wie Gothic hat? Auch kein Problem - es gibt immerhin auch ganz viele andere Gothic-Modder, die eigene Projekte entwickelt und sich über Nachwuchs, der ihnen helfen will, freut! Ja - du musst nicht der Profi-Modder schlechthin sein, um in einem vorhandenen Team helfen zu dürfen. Wenn du viel Zeit in das Projekt und zum lernen investierst, dann kann ja aus dir ein Profi-Modder werden und die meisten Teams haben so viel Arbeit, dass sie für jede helfende Hand dankbar sind.
2. Nirgendswo anders bekommst du so leicht einen Einstieg in die Arbeit eines Spieleentwicklers. Wenn du also mit dem Gedanken spielst einmal ein Spieleentwickler zu werden, ist das Gothic-Modden ein wirklich guter Einstieg in die Spieleentwicklung. Normalerweise musst du bevor du überhaupt an soetwas ähnliches wie die Arbeit eines Spieleentwicklers machen kannst noch Programmiersprachen wie C++ erlernen und DAS ist wirklich hart.
3. Du lernst für dein Leben. Vielleicht klingt das ein wenig übertrieben, aber du lernst wirklich für dein gesamtes Leben, selbst wenn du kein Spieleentwickler werden willst. In fast jedem Beruf wirst du mit anderen Menschen zusammenarbeiten müssen, wie du es auch beim Gothic-Modden machen musst. Wenn du dich mit dem Gothic-Modden auskennst, kannst du auch viel leichter Programmiersprachen erlernen oder professionell erlernen, wei du beispielsweise Spielfiguren digital erstellst. Ich spreche wirklich aus Erfahrung.
Wenn du jetzt noch mitliest und sagst: "Ja, das Gothic-Modden könnte doch ganz interessant werden!", dann ist das schon ein wichtiger Schritt.
Zurück zur Frage: Wie funktioniert das Modden eigentlich?
Jetzt aber zurück zur eigentlichen Frage - "Wie funktioniert das Modden eigentlich?" Welche Schritte gab es nochmal bei Gothic?
1. Planen einer Story - das nennt man Story-Writing
2. Erstellen der Grundform der Welt - das nennt man Modelling
3. Erstellen von diesen Texturen - das nennt man gemeinhin Texturen-Erstellung
4. Einfügen von Möbeln, Bäumen, Pflanzen und Musik in der Welt - das nennt man Spacern
5. Erstellen von NPCs, Dialogen und Quests - das nennt man Skripten
Die Krönung:
6. Erstellen von Sprachausgabe
7. Erstellen neuer Bewegungsabläufe - das nennt man Animieren
8. Erstellen neuer Musik
Wie gesagt, ein einziger Mensch kann nicht alles sehr gut beherrschen. Wenn man alles ein bisschen kann ist das zwar toll, aber ich habe in meinem Team lieber jemand, der sich sehr gut mit dem Modelling auskennt, als jemand, der alles ein bisschen kann, dafür aber eigentlich nicht gut Ergebnisse liefert.
Damit du dich also entscheiden kannst, was für Programme du für das Gothic-Modden brauchst, solltest dich für einen Bereich entscheiden und die Programme für diesen Bereich runterladen.
Zurück zur Frage: Welche Programme brauche ich?
Sagen wir, du entscheidest dich erstmal für die Story-Erstellung und das Umsetzen deiner Ideen durch das Skripten: Für die Story-Erstellung brauchst du vielleicht Word und Kreativität, mehr nicht. Für das Skripten braucht man auch erstmal eigentlich nur zwei Programme. Das kleine Modkit, damit du die Gothic-Skripte auf deinem PC installieren kannst und den stinknormalen Windows-Editor (ist in deinem Startmenü bei "Zubehör" als "Editor" aufgelistet).
Wenn du dich dazu entscheidest das wohl einfachste zu machen, dann solltest du mal das Spacern ausprobieren. Dazu brauchst du lediglich das große Modkit, um die Gothic-Welten auf deinem PC installieren zu können.
Wenn du gerne Grundformen von Welten erstellen (also dieses Modelling) willst, dann solltest du dir auch das große Modkit runterladen sowie das Programm Blender - damit kann man 3D-Modelle erstellen.
"Und dann?"
Nach der Installation der ersten Programme gibt es verschiedene Wege, um wirklich anzufangen.
Du könntest beispielsweise jemanden aus diesem Thread kontaktieren, damit er mit dir die Grundlagen durchgeht, du könntest aber auch hier Tutorials zu deiner Wahl machen oder aber dir einige Videotutorials anschauen. Du könntest aber auch direkt ein Modteam anschreiben, ob sie dich aufnehmen und dir was beibringen, eine Liste der suchenden Teams ist hier. Du kannst aber auch einfach hier einen Beitrag verfassen und darauf warten, dass du angeschrieben wirst. Viele Wege führen zum Ziel.
Ich hoffe, dass ich mit diesem Beitrag zumindest irgendwem helfen konnte, ich werde versuchen ihn irgendwo zu kürzen. Wer Kritik oder Verbesserungsvorschläge hat, der kann mir diese per PN zuschicken.
Ich wünsche dir viel Spaß und Erfolg beim Modden, Milgo
Geändert von Milgo (24.06.2010 um 09:05 Uhr)
-
Fachwörter
Da mir letztens bewusst geworden ist, dass hier im Editing-Forum recht viele für Anfänger unbekannte Fachwörter und Abkürzungen gebraucht werden, habe ich mir gedacht ein kleines Wörterbuch "Moddersprache - Deutsch" zu schreiben, um Anfängern den Einstieg in die Thematik zu vereinfachen:
Fachwörter
3ds = Dateiformat für dreidimensionales Objekt; Objekte, die man im Spiel sieht, wie z.B. Schwerter oder eine leere Spielwelt (bevor sie zu einer Zen gemacht wird)
AI = "Künstliche Intelligenz"; Steuert die Handlungen der NPCs
Ani = Animation; Bewegungen, die Spielcharaktere ausführen
Balancing = Austarieren des Schwierigkeitgrades; Sorgt dafür, dass das Spielerlebnis weder zu leicht, noch zu schwer ist
Betatest = Test einer inhaltlich weitestgehend fertigen Modifikationsversion; Dient dazu letzte Fehler aufzuspüren um sie zu beseitigen
Bug = Spielfehler; Fehler im Spiel, der unerwünschte Folgen hat (z.B. Absturz, Fehlen von Dialogen/Charakteren)
cheaten = Verwenden des Testmoduses; Dient unter anderem dazu Fehler im Spiel zu finden
dat = Deteiformat für kompilierte Scripte; Scripte (.d Dateien) werden in .dat umgewandelt, damit Gothic sie verstehen und verwenden kann
deklarieren= Bekanntmachen einer Variablen; Mit einer Deklaration werden Variablen eingeführt, sodass Gothic weiß, dass es sie gibt und sie somit verwendet werden können.
DIA = Dialog; Gespräch mit Charakteren in der Spielwelt
FP = Freepoint; Freier Punkt in der Spielwelt, an dem Charaktere bestimmte Tagesabläufe erledigen können, ohne anderen Charaktere auf den Wegpunkten den Weg zu blockieren
Ini = Starterdatei für Mods; Regelt im Gothicstarter, welche Mod, wie gestartet wird
inserten = Etwas einfügen; In der Spielwelt, meist über Cheats Gegenstände oder Charaktere einfügen
Item = Gegenstand; Gegenstände, die man aufsammeln kann
KI = "Künstliche Intelligenz"; Steuert die Handlungen der NPCs
kompilieren = Übersetzen; Von Gothic die Scriptdateien (.d) in .dat Dateien übersetzen lassen
mappen = Erstellen von 3D Objekten;
Mesh = 3D Objekt; visuelle Darstellung eines Objektes in der Spielwelt
Mob = Benutzbares Objekt in der Spielwelt; Mobs können Schmieden, Bänke, oder Runentische sein.
Mod = Modifikation; Spielerweiterung von Fans zu einem bestehenden Spiel
Modder = Modifikator; Jemand der Modifikationen macht
NPC,NSC = Nichtspielercharakter; Alle Charaktere (auch Monster) im Spiel mit Ausnahme desjenigen, den der Spieler steuert
OU = Output Units; Untertitel
parsen = Übersetzen; Von Gothic die Scriptdateien (.d) in .dat Dateien übersetzen lassen
PC = Playercharakter; Der vom Spieler gesteuerte Charakter
PFX = Partikeleffekt; Effekte wie Rauch, Glitzer und Feuer sind Partikeleffekte
Printmeldung = Textmeldung um Fehler im Script einzugrenzen; Ausgeführt über den Befehl print("Text");
Release = Veröffentlichung einer Modifikation;
SC = Spielercharakter; Der vom Spieler gesteuerte Charakter
Script = Richtlinie zum Spielablauf; Scripte steuern den Spielablauf, wie Waffenschaden, Dialoge und Ähnliches. Sie liegen im Format Dateiname.d vor
spacern = Platzieren/Einfügen; Einfügen von Objekten in die Spielwelt über das Programm "Spacer";
spawnen = Einfügen; Über Scripte einen Charakter, ein Monster oder einen Gegenstand in die Welt einfügen
Spell = Zauberspruch; Magischer Spruch im Spiel
TA = Tagesablauf; bestimmt, was Charaktere in der Spielwelt den Ganzen Tag so treiben
Textur = "Tapete" für ein 3D Objekt; Ein Bild, das auf die Oberfläche von Objekten tapeziert wird, damit diese realistischer/detaillierter aussehen
texturieren = "Tapezieren"; Versehen der 3D Objekte mit einer Oberfläche, die man mit einer farbigen Tapete vergleichen kann
Variablen = Speicher von Werten; Variablen können Werte speichern, vergleichbar mit einem Zettel, auf dem etwas steht.
Vob = Unbewegtes Objekt in der Spielwelt; Vobs können Büsche, Tische, Bilder und Ähnliches sein
wiki = gemeint ist http://wiki.worldofgothic.de/ ;
WP = Wegpunkt; Orientierungspunkte für die Spielcharaktere ("Damit sie sich in der Welt nicht verlaufen")
Zen = Spielwelt; Dateiformat, indem die verwendeten Gothicspielwelten gespeichert sind
ZS = Zustand; Steuert die Aktionen von Charakteren, wie z.B. Angriff. Zustände können auch Tagesabläufe sein
Die Liste wird noch erweitert.
Geändert von Sumpfkrautjunkie (15.03.2008 um 12:12 Uhr)
-
"Hilfe, mein Dialog funktioniert nicht!"
Nun dieses Problem kommt bei den meisten Scriptneulingen vor. Es gibt dafür die verschiedensten Ursachen. Hier sollten die Häufigsten aufgelistet sein:
Ihr habt einen Dialog gescriptet, der nun nicht funktioniert. Die erste Frage lautet: Was genau funktioniert den nicht?
- Ihr habt einen neuen Npc gescriptet und eine neue Dialogdatei angelegt. Der Npc hat aber nur die Option "ENDE.".
Ursache: Eure Dialogdatei wurde nicht geparst. D.h. sie wurde nicht von Gothic gelesen und deshalb kann euch keine Dialogoption gegeben werden. Die Option "ENDE." ist eine Option die von der Engine gestellt wird, wenn keine andere Option verfügbar ist. Man erkennt sie leicht an dem Punkt hinter dem ENDE.
Lösung: Die Dialog-Datei muss die unten aufgeführten Bedingungen erfüllen.
Sollte eine Bedingung nicht erfüllt sein, wird die Datei nicht geparst. Ihr könnt leicht überprüfen, ob eure Datei geparst wird, indem ihr mit Absicht einen Fehler in euer Script einbaut. Wenn keine Fehlermeldung kommt, dann wird eure Datei nicht geparst.
- Sie muss mit einem 'DIA_' beginnen. Groß/Kleinschreibung ist dabei egal.
- Sie muss mit einem '.d' enden. Beim Speichern der Datei muss darauf geachtet werden, dass keine Dateiendung wie *.d.txt entsteht. Also muss beim Speichern in ungeeigneten Editoren "Alle Dateien (*.*)" oder ähnlich bei der Filterauswahl ausgewählt werden.
- Die Dialog-Datei muss im Ordner
G1: Gothic I\_work\DATA\scripts\content\Story\MISSIONS
G2: Gothic II\_work\data\Scripts\Content\Story\Dialoge
liegen. - Ferner muss im GothicStarter (Modversion) das Feld 'Scripte parsen' aktiviert sein. Ohne dies, würden keine Scripte geparst werden und es würden die Informationen aus der Gothic.dat verwendet werden. Diese Datei wird bei jedem Scripte parsen neu erstellt.
- Ihr habt bereits Dialoge in dieser Datei, die funktionieren, aber eine bestimmte Dialogoption wird nicht angezeigt.
mögliche Ursache: Es gibt einen logischen Fehler in eurer _condition.
Lösung: Überprüft, ob auch tatsächlich alle Vorraussetzungen für euren Dialog herrschen.
mögliche Ursache: Euer Dialog ist nicht für den Npc für den es sein soll.
Lösung: Überprüft, ob unter 'npc =' die Npc-Instanz des gewünschten Npc eingetragen ist.
mögliche Ursache: Unter 'condition = ' ist nicht der Methodenname der darunter stehenden 'func int Dia_[...]_condition' angegeben. Damit ist die Vorraussetzung eine falsche.
Lösung: Kopiert die Methodenbezeichnung und fügt sie hinter 'condition = ' ein. So seid ihr sicher, dass der Fehler nicht bei der Rechtschreibung gelegen hat.
- Eure Dialogoption wird angezeigt, aber es passiert nichts, wenn ihr sie wählt.
Ursache: Es passiert schon etwas, aber ihr könnt davon nichts sehen. Die Outputs wurden nicht aufgelistet. D.h. das Programm weis nicht, welche Untertitel zu welchem AI_Output gehöhren.
Lösung: Ihr müsst die Output-Units erstellen. Eine Möglichkeit ist hier erläutert.
- Öffne den GothicStarter (modversion)
- Falls du schon eine Mod-ini hast,
- Falls in dieser ini der vdf= Eintrag leer ist,
- Nutze Sie!
- Sonst leere den vdf= Eintrag, sodass nichts hinter dieser Zeile steht.
- Sonst lege eine INI Datei an, indem du die GothicGame.ini kopierst und in der Kopie den vdf= Eintag änderst. Die neue INI muss auch im Ordner Gothic II\System sein. Du kannst alle anderen Einträge in der INI deinen Wünschen anpassen. Wähle deine neue INI im GothicStarter!
- Klicke auf 'Editor starten' - Der Spacer öffnet sich. (Gedult)
- Wenn der Spacer vollständig geladen ist, klicke in der Menüleiste auf 'World' - 'Reparse Script ...'
- Nun wähle deine Gothic.src im Verzeichnis:
\_work\data\Scripts\Content
aus und klicke auf öffnen. Die Scripte werden neu geparst. Sollten Fehlermeldungen erscheinen hast du Scriptfehler. (Gedult) - Nun klicke auf 'Toogels OutputUnits-Window' ([Bild: spacericon_h10.gif]) Es erscheint (meist am rechten Rand) das Fenster 'Output-Units'.
- Sollten noch Einträge vorhanden sein,
- können diese leicht entfernt werden, indem man mit 'Pos1' den ersten Eintrag wählt,
- 'Shift' gedrückt hällt
- und mit 'Ende' alle Einträge markiert.
- Jetzt kann man mit dem Button 'Del' (Er ist leicht in versenkt dargestellt) alle markierten Einträge entfernen.
- jetzt drückt man den Button 'Update'. Es werden nun alle Output-Units aus den Scripten gefiltert. (Gedult)
- Mit 'Save' werden diese nun gespeichert.
- Jetzt könnt ihr den Spacer beenden und euch an den Untertiteln erfreuen.
- Beim Starten von Gothic, oder dem Spacer erscheint eine Fehlermeldung.
Ursache: Simpel, es gibt einen Fehler in eurem Script.
Lösung: Ebenso simpel, behebt den Fehler.
Oft werden '};' vergessen. Überprüft ob alle '{' mit einem solchen geschlossen werden. Sucht dabei in der näheren Umgebung eurer Zeilenangabe in der Fehlermeldung.
Ebenfalls häufig wird ein ';' vergessen. Alle Befehle müssen damit abgeschlossen sein. (Nicht die Abfragen in if-Konstruktionen)
Oft hapert es auch an Rechtschreibung. Mit 'Strg + C' und 'Strg + V' könnt ihr leicht Kopieren und Einfügen. Das erspart Tipp-Arbeit und ist sicherer. - Der Npc soll den Hero anreden, aber tut es nicht.
mögliche Ursache: bei 'important = ' wurde nicht 'TRUE' geschrieben.
Lösung: Schreib es rein.
mögliche Ursache: die Condition (Vorraussetzung wurde nicht erfüllt)
Lösung: wie oben...
mögliche Ursache: Euer Npc reagiert überhauptnicht. Er hat eine fehlerhafte KI. In dem Fall reagiert er auch nicht auf Angriffe.
Lösung: Der Npc braucht einen korrekten TA (Tagesablauf).
Euer Npc braucht einen vollständigen Tagesablauf in seinem Npc-Script. Falls ihr für euren Npc einen eigenen Tagesablauf geschrieben habt, dann sucht euren Fehler dort.
- Die Dialogoption erscheint nur ein einziges mal, obwohl du sie ständig höhren willst.
Ursache: bei 'permanent = ' wurde nicht 'TRUE' geschrieben.
Lösung: Schreib es rein. - Ihr habt einen Händlerdialog geschrieben, aber das Handelsfenster startet nicht.
Ursache: Das Programm weis nicht, dass es sich bei eurem Dialog um einen Händlerdialog handelt.
Lösung: Unter 'description = ' fügt ihr noch die Zeile
'trade = TRUE;' ein.
Geändert von Nodrog (12.07.2011 um 17:40 Uhr)
-
Blender - Installation und grundlegende Bedienung
Dieser Beitrag bezieht sich auf Blender 2.48a, die aktuellste Version ist allerdings Version 2.49b.
Manche im folgendem erklärten Elemente sind deshalb möglicherweise anders zu handhaben.
Blender ist ein kostenloses 3D - Programm um Meshes wie die Welt, Bäume, Flüsse, Häuser, Berge, Tische, Waffen etc. erstellen kann. Animationen oder Gegenstände die mit einer Animation verknüpft sind z.B. Amboss -> Schmiedanimation oder Stuhl -> Hinsetzen - Aufstehenanimation kann man mit Blender (noch) nicht erstellen.
Installation:
Um Blender zu installieren muss man zuerst die aktuellste Version von
http://www.blender.org/download/get-blender/
herunterladen (ca. 10 MB) Benützt man das Installationsprogramm, wird man während der Installation gefragt wo sich das Arbeitsverzeichnis von Blender befinden soll ("Please specify where you wish to install Blender's user data files.") darunter kann man eine von drei Optionen wählen:
- im Anwendungsdaten-Verzeichnis des Systems.
- im Installationverzeichnis von Blender
- wer nicht weiß was das bedeutet braucht es auch nicht
Damit machne Scripte von/für Blender ordnungsgemäß laufen ist zusätzlich die Installation der aktuellen Python-Version notwendig: http://www.python.org/download/
Manchmal ist es notwendig Blender durch Python-Scripte (z.B. den 3DS Exporter) zu erweitern. Um diese zu Installieren kopiert man sie einfach in den Unterordner \.blender\scripts\ des Blender-Arbeitsverzeichnisses und startet Blender neu.
Objekte Im/Exportieren:
Es gibt nun einen neuen 3DS Im/Exporter so wie ASC Im/Exporter (für Animationen) von Kerrax den ich gerade teste. Möglicherweise ist dieser besser zum Arbeiten geeignet, ich werde dann diese Beitrag editieren.
Für alle die selbst testen wollen: http://krximpexp.sourceforge.net/
Um ein statisches Mesh von Gothic (Dateiendung: 3DS) zu importieren genügt der bereits mitgelieferte 3DS-Importer von Blender.
Um 3DS zu exportieren wird ein spezieller Exporter empfohlen. Ich verwende diesen, da er die Materialnamen richtig exportiert und noch dazu die Objekte automatisch vergrößert(um das 250-fache). (Achtung: Wird dieser Exporter verwendet, empfiehlt es sich beim Importieren mit dem normalen Importer, Size Constraint auf 0.0 zu stellen und nach dem Import alle Objekte auf das 0.004 (1/250) - fache zu skalieren (Dies erreicht man am Besten indem man alle importierten Objekte selektiert (das wird normalerweise nach einem Import automatisch erledigt) und die Taste s drückt und einfach die Zahl 0.004 eingibt. Am unteren Rand des 3D-Fensters sollte die Zahl zu sehen sein. Die Eingabe wird mit der Enter-Taste bestätigt).
Dadurch nimmt das Mesh nach dem Exportieren (wo es vergrößert wird) die normale Größe an.
Damit die Texturen in Blender angezeigt werden können, muss man angeben wo Blender diese zu suchen hat. Wechsle dazu zum User Preferences - Fenster und gib unter der Kategorie File Paths bei Textures das Verzeichnis [Gothic]/_work/data/Testures/ an.
Damit Blender nun die Texturen anzeigt muss man im 3D-Fenster den Draw type auf Textured ändern. Alternativ kann man auch die Tastenkombination Alt + Z drücken.
Damit die vorgenommenen Änderungen bei jedem Start von Blender übernommen werden ist es notwendig nun unter File --> Save Default Settings auszuführen. Dabei speichert Blender eine Datei namens .B.blend ab, welche die komplette momentane Szene mit allen Einstellungen und Objekten enthält. Diese Datei wird nun bei jedem Start von Blender automatisch geöffnet.
Interessante Seiten bezüglich Blender:
Für weitere Fragen stehe ich immer gerne zur Verfügung und ergänze bei Bedarf diesen Beitrag.
Mfg
Machtl
Geändert von Machtl (01.11.2009 um 17:54 Uhr)
-
Nützliche Einstellungen zum Finden einer Fehlermeldung mittels zSpy a) Die Optionen
1. Textfarbe und Schriftart
2. Textfilter
3. Logging
a) Die Optionen
Ihr findet die Optionen hier.
[Bild: zSpy_Options.jpg]
1. Textfarbe und Schriftart
Um den zSpy-Bildschirm lesbarer zu gestallten, bietet sich die Möglichkeit an, eine andere Schriftgröße oder/und eine andere Schriftart auszuwählen.
Vorgehensweise (Schriftart):
Klickt im Options-Kontextmenü auf Font. (Bild)
Es öffnet sich nun dieses Menü. (Bild)
Hier wählt eine Schriftgröße und Schriftart aus, die euch gefällt (oder am lesbarsten erscheint).
Mit einem Klick auf OK habt ihr die Schriftart geändert.
Vorgehensweise (Textfarbe):
Wählt im Options-Kontextmenü Color. (Bild)
Es öffnet sich nun das gezeigte Menü.
Kickt das gewünschte Wort an, dessen Farbe ihr verändern wollt.
Code:
Informations: Eher nebensächliche Hinweise zu: gerade geladenen Datein, Einstellungen usw. usf.
Warnings: Hinweise zu ungewöhnlichen Vorgängen (bereits geladene Datein, plötzlicher Abbruch usw.)
Faults: "Memory leaks found" und
Critical Errors: Wichtige, richtige spielabsturzverursachende Fehler, die ihr modifiziert habt.
Found Entries: Einträge, die über den Textfilter (siehe dazu 2.) gefunden worden sind.
2. Textfilter
Nach einem Absturz oder einfach "zwischendurch" könnt ihr den zSpy-Bildschirmlog, also die Bildschirmausgabe vom Programm nach Worten durchsuchen.
Vorgehensweise:
Klickt im Options-Kontextmenü auf Textfilter. (Bild)
Es öffnet sich nun ein Eingabefenster.
Gebt dort einfach einen Suchbegriff ein. z.B.: "5 Info" (ohne Anführungszeichen).
In diesem Beispiel würde der nächste/erste Eintrag in der Farbe für "Found Entries" markiert werden, der eine 5, gefolgt von einem Leerzeichen und dem Wort Info enthält.
Wenn man nun "Find next" anklickt, wird der nächste Eintrag mit dem Suchbegriff markiert. (Bild)
Dies geht aber nur, wenn zuvor nach einem Suchbegriff gesucht worden ist.
Es gibt dann noch die Möglichkeit, alles zu markieren, was den Suchbegriff beinhaltet.
Vorgehensweise:
Wie zuvor, nur wählt hier den Harken "all". (Bild)
3. Logging
Fehlermeldungen in zSpy ab zu schreiben oder ein Bild davon zu machen kann ziemlich aufwendig sein bzw. unnötig Speicherplatz kosten.
Dazu gibt es die Möglichkeit, das zSpy einfach eine Datei zum Nachlesen anlegt.
Vorgehensweise:
Klickt im Options-Kontextmenü auf Logging. (Bild)
Es öffnet sich nun ein Einstellungsfenster. (Bild)
Code:
Categories
Hier wählt ihr aus, was ihr alles in die Datei aufnehmen wollt. Von mir ungetestet aber sicherlich hilfreich ist es, wenn man nur "Faults" und Critical Errors aufzeichnen lässt.
Das Problem dabei wäre aber, dass ihr dann eventuell nicht wissen, in welcher Datei der Fehler liegt. Deswegen lasse ich stets einfach alle Harken aktiviert.
Remote UDP-Host
Für Gothic-Modding ist das erstmal nicht nutzbar, da dies eine Einstellung für online-Anwenungen ist.
Mit einem Harken bei "Log on file" wird die Datei zum Schreiben "freigegeben".
Der Harken bei "Clear on start of application" sorgt dafür, dass die Log-Datei nicht immer weiter beschrieben, sondern beim Programmstart der Inhalt gelöscht wird.
Zuletzt solltet ihr noch in das Eingabefeld den Pfad und Dateinamen für die Log-Datei angeben.
Ich vernwede hier meistens den Desktop oder den System-Ordner von Gothic, da ich dort meistens am schnellsten hin komme um die Datei zu öffnen.
Ich hoffe euch helfen diese Tipps bei eurer Fehlersuche, ich zumindest finde zSpy seitdem ich davon weiß viel nützlicher.
Oparilames nachdem er seinen Gesellenbrief erhalten hat:
»Das war's mit dir, du Mistvieh!«
Geändert von Oparilames (18.07.2009 um 01:29 Uhr)
-
Diverse nützliche Forenthreads
Ich habe diverse Threads hier im Forum aufgelistet, die für die Modder nützlich sein könnten. Enthalten sind (vor allem) scriptseitige Systeme, die entweder "erweiternd" wirken (Arrays, Floats) oder aber auch das Scripten vereinfachen (Hooks, Zeitscripts).
Desweiteren sind auch Tipps zum Modelling und Texturing aufgelistet.
Wer einen anderen Thread dort verlinkt haben möchte, soll mir bitte eine PN schreiben (Oder es selber tun).
Geändert von Milky-Way (21.06.2020 um 00:24 Uhr)
-
Einen Installer erstellen
Wenn eine Modifikation erstmal fertig ist oder zumindest schoneinmal getestet werden soll, wird meist ein Installer benötigt, damit der Spieler / Tester die Mod ohne größere Anstrengungen installieren und deinstallieren kann. Dieses Tutorial bezieht sich auf Modifikationen für Gothic II - Die Nacht des Raben, bei Gothic 1 müssen eventuelle Unterschiede beachtet werden, siehe insbesondere dieses Thema. In der Modderdatenbank gibt es eine Beispielmod / Installer für Gothic 1, siehe hier.
Teil 1 - die .mod
Der erste Schritt ist, eine *.mod zu erstellen, in der alle wesentlichen Dateien (bis auf die *.ini) enthalten sind. Eine .mod Datei kann man mit GothicVDFS, zu finden unter Gothic II\_work\tools\VDFS\GothicVDFS.exe, erstellen.
[Bild: GothicVDFS_small.jpg]
Mit einem Klick auf ( Builder ) (1) kommt man zum für diese Aufgabe relevanten Teil des Programms.
Zunächst kann bei 2 einstellen, wo und unter welchem Namen die fertige Datei später gespeichert werden soll. Über 3 sollte man das Verzeichnis seiner Gothic-Installation einstellen.
Der interessante Teil dieses Fensters ist auf dem Screenshot gelb umrahmt. Über [...] (4) kann man zusätzliche Dateien auswählen, die hinzugefügt werden sollen.
Allgemein gilt, dass nur kompilierte Dateien in die *.mod kommen und keine Rohdaten. Zusätzlich ergibt es keinen Sinn, Dateien hinzuzufügen, die im Vergleich zum Original unverändert geblieben sind, denn die hat der Mod-Spieler bereits selbst.
Eine Übersicht, welche Dateien hinzugefügt werden sollten:
Code:
_work\data\Anims\_compiled\*.MAN
_work\data\Anims\_compiled\*.MDH
_work\data\Anims\_compiled\*.MDL
_work\data\Anims\_compiled\*.MDM
_work\data\Anims\_compiled\*.MMB
_work\data\Anims\_compiled\*.MSB
_work\data\Meshes\_compiled\*.MRM
_work\data\Meshes\_compiled\*.MSH
_work\data\Presets\*.ZEN
_work\data\Scripts\_compiled\*.DAT
_work\data\Scripts\Content\Cutscene\OU.BIN
_work\data\Sound\SFX\*.WAV
_work\data\Sound\Speech\*.WAV
_work\data\Textures\_compiled\*-C.TEX
_work\data\Textures\_compiled\*.FNT
_work\data\Worlds\*.ZEN
Ein Asterisk (*) bedeutet, dass alle Dateien im Verzeichnis mit dieser Dateiendung gemeint sind (außer unveränderten Dateien). Eine Methode, die veränderten und neuen Dateien herauszufinden, ist, sie nach dem Datum der letzten Veränderung zu sortieren. Außerdem kann es helfen, neuen Texturen, Meshes,... ein Präfix wie zum Beispiel MOD_ zu geben. In die Eingabemaske (5) kann man dann beispielsweise _work\data\Textures\_compiled\MOD_*.TEX eingeben, um nicht alle Dateien einzeln auswählen zu müssen. Nach der Auswahl einer Datei, muss immer auf das [+] (6) geklickt werden, um die Datei hinzuzufügen. Erst danach kann eine neue Datei ausgewählt werden. Um eine Datei wieder auszutragen, sollte sie in der Liste markiert werden und dann auf [-] (7) geklickt werden. Die Pfadangaben sind übrigens immer relativ zum bei 3 angegebenen Root Path.
Im grün umrahmten Bereich können auf die gleiche Art und Weise Dateien ausgewählt werden, die nicht in die *.mod kommen sollen, aber im Prinzip durch das Asterisk (*) im gelb umrahmten Bereich enthalten wären.
Bei Timestamp (Zeit-Stempel - blau umrahmt) kann ein Datum für die *.mod ausgewählt werden. Es kann bei einem Textur-Patch Sinn ergeben, ein Datum etwas neuer als das der Original-.vdf zu wählen, damit keine Komplikationen mit Modifikationen entstehen.
Über [Save Script] (8) können die Einstellungen gespeichert und über [Open Script] (9) wieder geladen werden. Das ergibt auf jeden Fall Sinn, um bei späteren Versionen nicht alle Dateien neu auswählen zu müssen.
Mit [Build Volume] (10) kann die Datei im bei 2 angegebenen Verzeichnis erstellt werden. Vorher sollte man aber noch die beiden Backup-Ordner:
Gothic II\_backup-2.6_de
Gothic II\Addon-Backup
verschoben werden, da sonst unnötige Dateien im erstellten *.mod-Volumen zu finden sind. In GothicVDFS kann man unter ( Viewer ) auch .vdf und .mod Dateien öffnen, um zu sehen, ob die richtigen Dateien enthalten sind.
Teil 2 - der Installer
Mit einer fertigen *.mod und *.ini kann nun der Installer erstellt werden. Bei Gothic II sind bereits Dateien enthalten, die einem einen Großteil der Arbeit abnehmen. Was man noch machen muss:
- Installiere NSIS
- Kopiere die *.mod Datei nach Gothic II\_work\demo\install\Data\modvdf\
- Kopiere die *.ini Datei nach Gothic II\_work\demo\install\System\
- Öffne die Datei Gothic II\_work\demo\setup.nsi mit einem Texteditor:
Code:
;===============================================================================
;
; G2MDK - DemoMod Setup-Script
;
; System: NSIS 2.0 http://nsis.sf.net/
; Editor: HMNE 2.0 http://hmne.sf.net/
;
;===============================================================================
; Kompressionseinstellungen
CRCCheck force
;SetCompressor lzma
;SetCompressorDictSize 128 ; LZMA-Speicherverbrauch, siehe Tabelle
; DictSize Compress Decomp
; 8 MB 141 MB 10 MB (default)
; 12 MB 179 MB 14 MB
; 16 MB 217 MB 18 MB
; 24 MB 293 MB 26 MB
; 32 MB 369 MB 35 MB
; 48 MB 521 MB 50 MB
; 64 MB 673 MB 66 MB
; 96 MB 977 MB 98 MB
; 128 MB 1281 MB 130 MB
; 192 MB 1889 MB 194 MB
;!packhdr "packhdr.tmp" "upx.exe --best packhdr.tmp" ; http://upx.sf.net/
; Definitionen
; TODO: Version der Modifikation
!define VER_MAJOR 1 ; Major Version
!define VER_MINOR 0 ; Minor Version
!define VER_PATCH 1 ; Patch-Version (1=a, ...)
!define VER_FLAGS 0 ; Sprachversion
!define VER_FILE "${VER_MAJOR}.${VER_MINOR}a"
!define VER_TEXT "${VER_MAJOR}.${VER_MINOR}a"
; TODO: Eigenschaften der Modifikation
!define MOD_FILE "demomod" ; Mod-Dateiname (KEINE Leer- oder Sonderzeichen!)
!define MOD_NAME "G2MDK - DemoMod" ; Mod-Titel
!define MOD_COPY "Copyright © 2004, Pluto 13 GmbH" ; Mod-Copyright
!define MOD_COMP "Piranha Bytes" ; Mod-Herausgeber
!define MOD_LINK "http://www.piranha-bytes.com" ; Herausgeber-Link
!define MOD_HELP "http://www.piranha-bytes.com/mod" ; Support-Link
;===============================================================================
;
; MUI
;
!include "MUI.nsh"
Name "${MOD_NAME} ${VER_TEXT}"
OutFile "${MOD_FILE}-${VER_FILE}.exe"
InstallDir "$PROGRAMFILES\JoWooD\Gothic II\"
!define MOD_RKEY "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\${MOD_NAME}"
InstallDirRegKey HKLM "${MOD_RKEY}" "InstallLocation"
AllowRootDirInstall true
; Konfiguration (Installer)
!define MUI_WELCOMEPAGE_TITLE_3LINES
!define MUI_WELCOMEPAGE_TEXT "Dieser Assistent wird Sie durch die Installation von $(^Name) begleiten.\r\n\r\nEs wird empfohlen vor der Installation alle anderen Programme zu schließen.\r\n\r\n$_CLICK"
!define MUI_COMPONENTSPAGE_NODESC
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
!define MUI_FINISHPAGE_TITLE_3LINES
; Setup-Seiten (Installer)
!insertmacro MUI_PAGE_WELCOME
!insertmacro MUI_PAGE_LICENSE ".\setup\licence.rtf"
Page custom PageReinstall PageLeaveReinstall
!insertmacro MUI_PAGE_DIRECTORY
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_PAGE_FINISH
; Konfiguration (Uninstaller)
!define MUI_WELCOMEPAGE_TITLE_3LINES
!define MUI_WELCOMEPAGE_TEXT "Dieser Assistent wird Sie durch die Deinstallation von $(^Name) begleiten.\r\n\r\nBitte beenden Sie Gothic II und zugehörige Tools,\r\nbevor Sie mit der Deinstallation fortfahren.\r\n\r\n$_CLICK"
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
!define MUI_FINISHPAGE_TITLE_3LINES
; Setup-Seiten (Uninstaller)
!insertmacro MUI_UNPAGE_WELCOME
!insertmacro MUI_UNPAGE_CONFIRM
!insertmacro MUI_UNPAGE_COMPONENTS
!insertmacro MUI_UNPAGE_INSTFILES
!insertmacro MUI_UNPAGE_FINISH
; Setup-Sprache
!insertmacro MUI_LANGUAGE "German"
; Reservierte Dateien
ReserveFile "setup.ini"
!insertmacro MUI_RESERVEFILE_INSTALLOPTIONS
;===============================================================================
;
; Installer
;
; Setup.exe Versionsinformationen (Sprache = MUI_LANGUAGE)
VIProductVersion "${VER_MAJOR}.${VER_MINOR}.${VER_PATCH}.${VER_FLAGS}"
VIAddVersionKey "CompanyName" "${MOD_COMP}"
VIAddVersionKey "FileVersion" "${VER_TEXT}"
VIAddVersionKey "LegalCopyright" "${MOD_COPY}"
VIAddVersionKey "FileDescription" "${MOD_NAME}"
VIAddVersionKey "OriginalFilename" "${MOD_FILE}-${VER_FILE}.exe"
LangString NameInstFull ${LANG_GERMAN} "Vollständig"
InstType $(NameInstFull)
!include ".\setup\g2mod.nsh"
;-------------------------------------------------------------------------------
;
; Init (nicht angezeigt)
;
; Installer
Section -pre
Push $R0
SetDetailsPrint none
StrCpy $R0 "${MOD_RKEY}"
; Setup-Parameter in die Registrierung schreiben
ClearErrors
WriteRegExpandStr HKLM $R0 "InstallLocation" $INSTDIR
IfErrors "" write
MessageBox MB_OK|MB_ICONSTOP "Beim Schreiben der Werte für die spätere Deinstallation trat ein Fehler auf.$\r$\nStellen Sie sicher, dass Ihr Benutzerkonto über die notwendigen Rechte verfügt.$\r$\n$\r$\n(HKLM\$R0)"
Pop $R0
Abort
write:
WriteRegDWORD HKLM $R0 "VersionMajor" ${VER_MAJOR}
WriteRegDWORD HKLM $R0 "VersionMinor" ${VER_MINOR}
WriteRegDWORD HKLM $R0 "VersionPatch" ${VER_PATCH}
WriteRegDWORD HKLM $R0 "VersionFlags" ${VER_FLAGS}
WriteRegStr HKLM $R0 "DisplayIcon" "$INSTDIR\System\Gothic2.exe,0"
WriteRegStr HKLM $R0 "DisplayName" "${MOD_NAME}"
WriteRegStr HKLM $R0 "DisplayVersion" "${VER_TEXT}"
WriteRegDWORD HKLM $R0 "NoModify" 1
WriteRegDWORD HKLM $R0 "NoRepair" 1
WriteRegExpandStr HKLM $R0 "UninstallString" "$INSTDIR\${MOD_FILE}-uninst.exe"
WriteRegStr HKLM $R0 "Publisher" "${MOD_COMP}"
WriteRegStr HKLM $R0 "URLInfoAbout" "${MOD_LINK}"
WriteRegStr HKLM $R0 "HelpLink" "${MOD_HELP}"
Pop $R0
SectionEnd
;-------------------------------------------------------------------------------
;
; Modifikation
;
; Installer
LangString NameSecModFiles ${LANG_GERMAN} "${MOD_NAME}"
LangString TextSecModFiles ${LANG_GERMAN} "Installiere ${MOD_NAME}..."
Section !$(NameSecModFiles) SecModFiles
SectionIn RO ; nicht abwählbar
SetDetailsPrint textonly
DetailPrint $(TextSecModFiles)
SetDetailsPrint listonly
SetOverwrite on
; Installiere Mod-Konfiguration
SetOutPath "$INSTDIR\System"
File ".\install\System\${MOD_FILE}.ini"
; Installiere Mod-Volume
SetOutPath "$INSTDIR\Data\modvdf"
File ".\install\Data\modvdf\${MOD_FILE}.mod"
; Eventuelles Mod-Volume in /Data entfernen
!insertmacro g2mod_DeleteFile "$INSTDIR\Data\${MOD_FILE}.mod"
; Einträge im Startmenü
SetShellVarContext current
!insertmacro g2mod_CreateDirectory "$SMPROGRAMS\JoWooD\Gothic II\Modifikationen"
CreateShortCut "$SMPROGRAMS\JoWooD\Gothic II\Modifikationen\${MOD_NAME}.lnk" \
"$INSTDIR\System\GothicStarter.exe" "-game:${MOD_FILE}.ini"
CreateShortCut "$SMPROGRAMS\JoWooD\Gothic II\Modifikationen\${MOD_NAME} entfernen.lnk" \
"$INSTDIR\${MOD_FILE}-uninst.exe"
SectionEnd
; Uninstaller
Section !un.$(NameSecModFiles) unSecModFiles
SectionIn RO ; nicht abwählbar
; Mod-Volume und Mod-Volume-Map entfernen
!insertmacro g2mod_DeleteFile "$INSTDIR\vdfs_${MOD_FILE}.dmp"
!insertmacro g2mod_DeleteFile "$INSTDIR\Data\${MOD_FILE}.mod"
!insertmacro g2mod_DeleteFile "$INSTDIR\Data\modvdf\${MOD_FILE}.mod"
; /Data/modvdf wird nur entfernt, wenn es leer ist
!insertmacro g2mod_RemoveDirectory "$INSTDIR\Data\modvdf"
; Mod-Konfiguration entfernen
!insertmacro g2mod_DeleteFile "$INSTDIR\System\${MOD_FILE}.ini"
; Einträge im Startmenü entfernen
SetShellVarContext current
!insertmacro g2mod_DeleteFile "$SMPROGRAMS\JoWooD\Gothic II\Modifikationen\${MOD_NAME}.lnk"
!insertmacro g2mod_DeleteFile "$SMPROGRAMS\JoWooD\Gothic II\Modifikationen\${MOD_NAME} entfernen.lnk"
; Werden nur entfernt, falls die Verzeihcnisse leer sind...
!insertmacro g2mod_RemoveDirectory "$SMPROGRAMS\JoWooD\Gothic II\Modifikationen"
!insertmacro g2mod_RemoveDirectory "$SMPROGRAMS\JoWooD\Gothic II"
!insertmacro g2mod_RemoveDirectory "$SMPROGRAMS\JoWooD"
SectionEnd
;-------------------------------------------------------------------------------
;
; Spielstände
;
LangString NameSecModSaves ${LANG_GERMAN} "Spielstände von ${MOD_NAME}"
; Installer (nicht angezeigt)
Section -$(NameSecModSaves) SecModSaves
; Mod-Savegame Verzeichnis anlegen
!insertmacro g2mod_CreateDirectory "$INSTDIR\saves_${MOD_FILE}\current"
SectionEnd
; Uninstaller
Section un.$(NameSecModSaves) unSecModSaves
; Mod-Savegames entfernen
RMDir /r "$INSTDIR\saves_${MOD_FILE}"
SectionEnd
;-------------------------------------------------------------------------------
;
; Cleanup (nicht angezeigt)
;
; Installer
Section -post
SetDetailsPrint none
; Uninstaller schreiben
Delete "$INSTDIR\${MOD_FILE}-uninst.exe"
WriteUninstaller "$INSTDIR\${MOD_FILE}-uninst.exe"
SectionEnd
; Uninstaller
Section -un.post
SetDetailsPrint none
; Registrierungsdaten entfernen
DeleteRegKey HKLM "${MOD_RKEY}"
; Uninstaller entfernen
Delete "$INSTDIR\${MOD_FILE}-uninst.exe"
SectionEnd
;===============================================================================
;
; Player-Kit
;
Section -g2mpk
SetOverwrite on
SetDetailsPrint none
SetShellVarContext current
!insertmacro g2mod_InstallPlayerKit
SectionEnd
;===============================================================================
;
; Callback-Funktionen
;
; Installer (Init)
Function .onInit
Push $R0
SetCurInstType 0
!insertmacro MUI_INSTALLOPTIONS_EXTRACT "setup.ini"
; Kein 'unsichtbares' Setup
SetSilent normal
; $INSTDIR bereits gültig?
IfFileExists "$INSTDIR\System\Gothic2.exe" done
; Sonst Add-ON Installation suchen (Registrierung)
Call g2mod_GetInstallLocation
Pop $R0
StrCmp $R0 "" done
; Übernehmen
StrCpy $INSTDIR $R0
done:
Pop $R0
FunctionEnd
; Uninstaller (Init)
Function un.onInit
Push $R0
; $INSTDIR gültig?
IfFileExists "$INSTDIR\System\Gothic2.exe" done
; Mod-Installation suchen (Registrierung)
ReadRegStr $R0 HKLM "${MOD_RKEY}" "InstallLocation"
StrCmp $R0 "" wrong
StrCpy $INSTDIR $R0
IfFileExists "$INSTDIR\System\Gothic2.exe" done
; Nicht gefunden...
wrong:
MessageBox MB_YESNO|MB_ICONQUESTION "Das Installationsverzeichnis scheint ungültig zu sein.$\r$\nSoll die Deinstallation trotzdem fortgesetzt werden?" IDYES done
Pop $R0
Abort
done:
Pop $R0
FunctionEnd
; Reinstall
LangString TextReinstTitle ${LANG_GERMAN} "Vorherige Installation"
LangString TextReinstHead1 ${LANG_GERMAN} "Wählen Sie aus, wie $(^Name) installiert werden soll."
LangString TextReinstOpt1A ${LANG_GERMAN} "Vorher deinstallieren"
LangString TextReinstOpt1B ${LANG_GERMAN} "Nicht deinstallieren"
LangString TextReinstHead2 ${LANG_GERMAN} "Wählen Sie die auszuführende Wartungsoption aus."
LangString TextReinstOpt2A ${LANG_GERMAN} "Erneut installieren"
LangString TextReinstOpt2B ${LANG_GERMAN} "$(^Name) deinstallieren"
LangString TextReinstWrong ${LANG_GERMAN} "Eine inkompatible Version ist bereits installiert!\r\nWenn Sie diese Version wirklich installieren wollen,\r\nsollten Sie die aktuelle Version vorher deinstallieren."
LangString TextReinstOlder ${LANG_GERMAN} "Eine ältere Version ist auf Ihrem System installiert.\r\nEs wird empfohlen die aktuelle Version vorher zu deinstallieren."
LangString TextReinstNewer ${LANG_GERMAN} "Eine neuere Version ist bereits auf Ihrem System installiert!\r\nEs wird empfohlen die ältere Version nicht zu installieren. Wenn Sie diese ältere Version wirklich installieren wollen, sollten Sie die aktuelle Version vorher deinstallieren."
LangString TextReinstEqual ${LANG_GERMAN} "$(^Name) ist bereits installiert."
Function PageReinstall
; Installationsverzeichnis lesen
ReadRegStr $R0 HKLM "${MOD_RKEY}" "InstallLocation"
StrCmp $R0 "" 0 +2
Abort
; Version überprüfen
ReadRegDWORD $R0 HKLM "${MOD_RKEY}" "VersionFlags"
IntCmp $R0 ${VER_FLAGS} major wrong wrong
major:
ReadRegDWORD $R0 HKLM "${MOD_RKEY}" "VersionMajor"
IntCmp $R0 ${VER_MAJOR} minor older newer
minor:
ReadRegDWORD $R0 HKLM "${MOD_RKEY}" "VersionMinor"
IntCmp $R0 ${VER_MINOR} patch older newer
patch:
ReadRegDWORD $R0 HKLM "${MOD_RKEY}" "VersionPatch"
IntCmp $R0 ${VER_PATCH} equal older newer
wrong:
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 1" "Text" "$(TextReinstWrong)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 2" "Text" "$(TextReinstOpt1A)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 3" "Text" "$(TextReinstOpt1B)"
!insertmacro MUI_HEADER_TEXT "$(TextReinstTitle)" "$(TextReinstHead1)"
StrCpy $R0 "1"
Goto start
older:
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 1" "Text" "$(TextReinstOlder)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 2" "Text" "$(TextReinstOpt1A)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 3" "Text" "$(TextReinstOpt1B)"
!insertmacro MUI_HEADER_TEXT "$(TextReinstTitle)" "$(TextReinstHead1)"
StrCpy $R0 "1"
Goto start
newer:
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 1" "Text" "$(TextReinstNewer)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 2" "Text" "$(TextReinstOpt1A)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 3" "Text" "$(TextReinstOpt1B)"
!insertmacro MUI_HEADER_TEXT "$(TextReinstTitle)" "$(TextReinstHead1)"
StrCpy $R0 "1"
Goto start
equal:
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 1" "Text" "$(TextReinstEqual)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 2" "Text" "$(TextReinstOpt2A)"
!insertmacro MUI_INSTALLOPTIONS_WRITE "setup.ini" "Field 3" "Text" "$(TextReinstOpt2B)"
!insertmacro MUI_HEADER_TEXT "$(TextReinstTitle)" "$(TextReinstHead2)"
StrCpy $R0 "2"
start:
!insertmacro MUI_INSTALLOPTIONS_DISPLAY "setup.ini"
FunctionEnd
Function PageLeaveReinstall
!insertmacro MUI_INSTALLOPTIONS_READ $R1 "setup.ini" "Field 2" "State"
StrCmp $R0 "1" 0 +2
StrCmp $R1 "1" inst done
StrCmp $R0 "2" 0 +3
StrCmp $R1 "1" done inst
inst:
HideWindow
ReadRegStr $R1 HKLM "${MOD_RKEY}" "UninstallString"
ClearErrors
ExecWait '$R1 _?=$INSTDIR'
IfErrors nope
IfFileExists $R1 "" nope
Delete $R1
nope:
StrCmp $R0 "2" 0 +2
Quit
BringToFront
done:
FunctionEnd
; Installer (Verzeichnisprüfung)
Var VerifyMessageOnce
Function .onVerifyInstDir
; Version 2.6 deutsch installiert ?
!insertmacro g2mod_IfInstallVersion $INSTDIR "2.6.0.0" done
; Basisversion 2.6 ?
!insertmacro g2mod_IfInstallVersionBase $INSTDIR "2.6" code
Goto nope
code:
; Deutsche Version ?
!insertmacro g2mod_IfInstallVersionCode $INSTDIR 0 done
; Keine 2.6-er (deutsch)...
nope:
; Meldung nur einmalig anzeigen
StrCmp $VerifyMessageOnce "done" +3
MessageBox MB_OK|MB_ICONINFORMATION "Wählen Sie das Verzeichnis aus, in welchem sich 'Gothic II - Die Nacht des Raben' 2.6 (deutsch) befindet."
StrCpy $VerifyMessageOnce "done"
Abort
done:
FunctionEnd
- Lösche den Bereich "Kompressionseinstellungen" bis "Definitionen" (rot markiert)
- Passe im Bereich "Definitionen" die "Version der Modifikation" an (orange markiert). Falls Du kein 1.0a haben möchtest, dann lösche auch hier das rot markierte a
- Bei "Eigenschaften der Modifikation" können die grün markierten Texte verändert werden. WICHTIG: Der Eintrag bei MOD_FILE muss der Dateiname der .mod und der .ini sein! Beim Rest sollte klar sein, was es bewirkt.
- Alles andere sollte bleiben, wie es ist. Also Datei speichern und schließen.
- Jetzt mit der rechten Maustaste auf die Datei Gothic II\_work\demo\setup.nsi klicken, bis das Kontextmenü geöffnet wird.
- Dort auf "Compile NSIS Script (Choose Compressor)" klicken
- "Best Compressor" auswählen und je nach Größe der Modifikation eine Zeit lang warten. Mit "Test Intaller" gucken, ob alles funktioniert und mit "Close" das Fenster schließen.
- Die neue *.exe im Verzeichnis Gothic II\_work\demo\ ist der Installer der Modifikation und kann umbenannt oder hochgeladen werden.
Bei Änderungswünschen oder Fragen bitte per PN an mich wenden.
Geändert von Milky-Way (29.07.2016 um 18:07 Uhr)
-
HowTo: Wie komme ich an die Gothic 1-Texturen?
Eine Anleitung die ich selbst immer wieder suche, wie man an die Gothic-Texturen rankommen kann (funktioniert auch so mit Gothic II):
1. Du lädst dir ZTEX und GothicVDFS runter.
1.2 Beides entpacken
2. Du startest die GothicVDFS.exe
3. Du drückst rechts neben "Filename" auf die drei Punkte und gehst in dein ...\Gothic\Data - Verzeichnis und wählst dort die Textures.vdf aus
4. Unten klickst du auf "Extract Volume"
5. Schritt 3 und 4 wiederholst du für die Textures_Patch.vdf und die Fonts.vdf
6. Im Ordner, in dem die GothicVDFS.exe liegt, sollte sich nun ein Ordner namens "_work" gebildet haben. Du gehst also in diesem "_work"-Ordner, dann in den dortigen "Data"-Ordner und dort in den "Textures"-Ordner und dort wiederum in den "_compiled"-Ordner. Dort kopierst du alles und fügst alles in "...\Gothic\_work\Data\Textures\_compiled" ein.
7. Du kopierst die GothicZTEX.exe und die GothicZTEX.ini in dein "...\Gothic\_work\Data\Textures"-Verzeichnis und machst einen Doppelklick auf die GothicZTEX.exe.
8. Du klickst auf "DO IT"
9. Warten - die Texturen sollten sich automatisch entpacken
10. Endlich fertig
Geändert von Milgo (05.04.2011 um 21:03 Uhr)
-
Hier soll eine Tipp-Sammlung aus dem Forum entstehen. Ich versuche dann die Sammlung in diesem Post aktuell zu halten und hoffe auf möglichst viele Beiträge und Hinweise in dem Diskussionsthread.
Ein Post ist hier wohl weniger aufwendiger als ein Eintrag im Wiki.
Skripte
Tutorials
Tipps
Ich hoffe auf rege Beteiligung, wie gesagt in diesem Thread.
Geändert von Milky-Way (21.06.2020 um 00:17 Uhr)
-
Jobbörsen
Nachfolgend sind die Jobbörsen der Modding-Community aufgelistet:
Anfänger suchen Teams
Teams suchen Mitarbeiter
Betatester
Sprecher
Geändert von Milky-Way (01.02.2021 um 17:54 Uhr)
-
Tools
B.lang.los |
Beliebig lange Untertitelzeit |
Sektenspinner |
DecDat |
Ermöglicht Analyse und Daedalus-Export der kompilierten Scripte (.dat) |
Gottfried |
DiaDepp |
Zum schnellen Erstellen von Dialogen |
Sektenspinner |
DiaText |
Fehler (Rechtschreibung, Grammatik) in Dialogen finden |
Milky-Way |
DMP Helper |
Zur Vermeidung der ständiges VDFS-Aktualisierung |
Gottfried |
DOPA-PARTER |
Zum rendern von Partikeleffekten |
Sektenspinner |
Farbeimer |
Zur Einfärbung von Daedalus-Code in WoG-Posts |
Sumpfkrautjunkie |
FNT Edit |
Zur Bearbeitung von Gothic-Fonts |
ThielHater |
Font2Targa |
Windows-Fonts in Gothic-Fonts umwandeln |
Gottfried |
G2Ext |
Für unendliche Möglichkeiten für C++-Versierte |
v.a. Thunderhawk |
Grekains Npc-Creator |
Zum simplen Erstellen von Npc-Skripten |
Grekain |
GVE |
Um in Savegames die Werte von Variablen zu ändern |
Sumpfkrautjunkie |
Miranda Dialog Creator |
Zum schnellen Erstellen von Dialogen |
Fizzban |
NameGen |
Zur schnellen NPC-Namensfindung |
Sumpfkrautjunkie |
ReaDat |
Ermöglicht eine Analyse der kompilierten Scripte (.dat) |
Gottfried |
Redefix |
Zur schnellen Erstellung von OU-Daten |
Sumpfkrautjunkie |
Spacer-Patch |
Zum Speichern größerer Welten im Spacer |
MaGoth |
Sprachausgabe, problem? |
Transferiert Dialogscripte in übersichtliche Tabellen (zB. für die Sprecher) |
Umfi |
Sprachrohr |
Für kleinere Sprachausgabe-Dateien |
Fizzban, Milgo |
Stampfer |
Texteditor für Gothic |
Sumpfkrautjunkie |
TA-Generator |
Schneller aufwändige Tagesabläufe erzeugen |
Kurzer |
TA-Randomizer |
Tagesabläufe durch zufällig bestimmte Zeiten realistischer wirken lassen |
Marthog |
ZEN-AntiMurks |
Zur Verschiebung von Welten und reparieren von Items |
Sektenspinner |
Geändert von Milky-Way (29.12.2016 um 19:27 Uhr)
Grund: Stampfer hinzugefügt
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
|
|