Einführung in die Inhaltsentwicklung

Bist du schon einmal über einen offensichtlichen Fehler im Spiel gestolpert wie z.B. einen Rechtschreibfehler? Hast du überlegt diesen im Mantis-Bugtracker zu melden aber es dann doch gelassen? Hättest du ihn selber behoben, wenn du die Mittel dazu gehabt hättest? Wenn ja lies weiter, dieses Tutorial ist für dich.

Dieses Tutorial beschreibt einen einfachen Weg etwas zur Entwicklung Illarions beizusteuern indem man einfache Fehler, wie z.B. Rechtschreibfehler, selber behebt. Es gibt eine grundlegende Einführung in unseren Entwicklungsprozess und unsere Entwicklungsrichtlinien. Das bedeutet in alles das, was du wissen musst, um etwas zur Entwicklung Illarions beizutragen.

Illarion verwendet zur Versionsverwaltung die freie Software Git, die ursprünglich für die Quellcode-Verwaltung des Linux-Kernels entwickelt wurde. Git ermöglicht es mehreren Entwicklern gleichzeitig an einem Projekt zu arbeiten, ohne dass es zu Konflikten zwischen den Beiträgen der einzelnen Entwicklern kommt. Auch können verschiedenen Entwicklungszweige definiert werden, so dass das laufende Spiel nicht von der Entwicklung beeinträchtigt wird. Der Umgang mit Git ist für Einsteiger eine kleine Herausforderung. Wenn du dich einmal daran gewöhnt hast, ist es sehr einfach. Versprochen!

Setup

Vorraussetzungen

Bemerkungen

  • GitHub steht in keinerlei Beziehung zum Illarion e.V.
  • Du kannst natürlich andere Editoren benutzen, aber in diesem Fall bist du auf dich gestellt, falls sie die nötigen Voraussetzungen nicht erfüllen.
  • Für jeden Schritt mit Git ist auch der Konsolenbefehl angegeben.
  • Die Entwicklungssprache Illarions ist Englisch. Daher macht es Sinn, die englische Version der Werkzeuge zu benutzen, um bei Rückfragen keine Übersetzungsprobleme zu haben.

Einmalige Vorbereitungen

  • Rufe mit deinem Internetbrowser folgende Seite auf: https://github.com/Illarion-eV/Illarion-Content
  • Klicke auf "Fork", um auf GitHub dieses Repository in deinen eigenen Account zu kopieren ("fork").
  • Die URL zu deiner Kopie (Fork) des Repositorys für Spielinhalte wird dann so aussehen: https://github.com/<dein_account_name>/Illarion-Content

Windows/Mac

  • Starte SourceTree und folge den Bildschirmanweisungen.
  • Öffne die "Options" im "Tools"-Menü und setze "Default text encoding" auf iso-8859-1. Klicke OK.
  • Klicke auf "Clone / New".
  • Gebe die "HTTPS clone URL" aus deinem GitHub-Fork als "Source Path / URL" ein.
  • Wähle als "Destination Path" einen Pfad auf deiner Festplatte wo eine weitere, diesmal lokale Kopie des Repositorys gespeichert werden soll.
  • Klicke auf "Clone". (Du hast jetzt die gesamten Spielinhalte bereits zweimal kopiert!)
  • Im "Repository"-Menü klicke auf "Add Remote..." und füge mittels "Add" eine Remote mit dem Namen "upstream" und der URL https://github.com/Illarion-eV/Illarion-Content hinzu.

Linux/Konsole

  • git clone [Deine GitHub-Fork-URL]
  • git remote add upstream https://github.com/Illarion-eV/Illarion-Content

Lokaler Server

Generelles

  • Die Verwendung eines lokalen Servers ist optional.
  • Der lokale Server ermöglicht es dir, deine Änderungen im Spiel zu überprüfen, bevor du sie dem Team zur Verfügung stellst.
  • Am lokalen Server, welcher in einer virtuellen Umgebung auf deinem Rechner läuft, hast du volle Entwicklerrechte. Sage mit dem Testcharakter "!?", um eine Liste der Kommandos zu erhalten.
  • Spielserver und lokaler Server stehen nicht in Verbindung miteinander. Du kannst nicht mit anderen Spielern auf deinem lokalen Server spielen - du kannst aber auch nichts am Spielserver kaputt machen.

Download und Setup

Generelle Arbeitsschritte

Fehler finden und korrigieren

  • Schreibe dir den genauen Text des Fehlers auf. Fasse dich so kurz wie möglich, um vielleicht den selben Fehler auch noch anderswo zu finden.
  • In Notepad++ wähle "Find in Files..." im "Search"-Menü.
  • Gib deinen Fehlertext unter "Find what" ein und wähle deine lokale Kopie des Repositorys unter "Directory" aus.
  • Klicke "Find All" um alle Vorkommnisse des Fehlers aufzulisten.
  • Betrachte diese um dann entweder "Replace with" und "Replace All" zu benutzen um alles zu beheben, oder um die einzelnen Dateien mittels Doppelklick auf die gefundenen Zeilen zu öffnen und die Fehler von Hand zu bereinigen und zu speichern.

Teilen deiner Arbeit unter Windows/Mac

  • Um deine lokale Kopie mit der Entwicklungsversion zu aktualisieren, wähle in SourceTree mittels Rechtsklick die "upstream"-Remote aus der Liste auf der linken Seite, wähle "Pull from upstream" und dann "develop" als "Remote branch to pull". Die Version, die gerade im Spiel vorhanden ist, ist im Branch "master".
  • Falls "develop" oder "master" nicht aufgelistet sind, musst du erst auf "Refresh" klicken. Für die Website wird nur der Branch "master" gepflegt.
  • Drücke den "Commit"-Knopf in der oberen Leiste um einen Satz von Änderungen zum Versenden vorzubereiten.
  • Überprüfe deine Änderung durch Anwählen jeder einzelnen Datei. Füge sie deinem "Commit" mit dem Aufwärtspfeil hinzu oder füge alle Dateien mit dem doppelten Aufwärtspfeil hinzu.
  • Gebe eine aussagekräftige "commit message" im Imperativ ein (wie ich hier). Beachte, dass die Nachricht in Englisch geschrieben werden muss. Sie sollte in etwa lauten: "Fix spelling error in NPC John Doe". Falls du mehr als eine kurze Zeile benötigst, benutze einen prägnanten Titel und lass die zweite Zeile leer.
  • Schließlich drücke den "Commit"-Knopf um deinen Satz von Änderungen lokal zu speichern.
  • Klicke den "Push"-Knopf in der oberen Leiste und bestätige mit "OK" um den Satz deiner Änderungen an deinen GitHub-Account zu schicken. Zumindest beim ersten Mal wirst du dein GitHub-Login eingeben müssen.

Teilen deiner Arbeit unter Linux oder der Konsole

  • git pull upstream develop
  • git add [Geänderte Dateien]
  • git commit
  • git push

In beiden Fällen

  • In deinem Illarion-Content Fork in deinem GitHub-Account siehst du nun (nach Neuladen) den Titel der letzten Commit-Nachricht.
  • Klicke auf "Pull Request" rechts über der Nachricht und kontrolliere zum letzten Mal deine Änderungen bevor du mittels "Click to create a pull request for this comparison" bestätigst.
  • Falls der automatische Titel nicht aussagekräftig genug ist, gebe einen (englischen) Kommentar ein.
  • Zu guter Letzt drücke den "Send pull request"-Knopf. Du wirst via e-Mail benachrichtigt wenn deine Änderungen eingebaut werden. Kurz darauf werden sie im Spiel erscheinen.
  • Gut gemacht! Vielen Dank, dass du Illarion verbessert hast!

Weitere Schritte und Möglichkeiten

  • Schreibe deine eigenen NPCs mit easyNPC.
  • Gestalte Dungeons mit dem Mapeditor.
  • Schreibe Quests oder wirke an Kampf- und Magiesystem mit.
  • Illarion benutzt Lua 5.2, ein Buch, das Lua 5.0 behandelt ist online verfügbar.
  • Schau dir die Illarion-Erweiterung zu Lua an.
  • Lerne mehr über Git, das schnelle verteilte Versionierungssystem.
  • Sprich mit unseren Inhaltsentwicklern im IRC-Chat (#illarion im QuakeNet).