Nirn.de

Gast

Thema: [Tutorial] RPG Maker XP - eigene Spiele erschaffen!  (Gelesen 11670 mal)

  • Diplomat
    • Klingen
Da ich zur Zeit selbst wieder mit dem RPG Maker arbeite und mein altes Tutorial etwas sehr veraltet ist, habe ich mich dazu entschlossen, es zu überarbeiten. Ich schreibe es neu und beziehe mich auf den RPG Maker XP (kurz RMXP). Wer sich mit dem RMXP auskennt, der sollte auch mit dem neueren VX keine Probleme haben. Leider ist es nicht so, dass neu auch besser bedeutet, so bietet der VX zwar einen leichteren Einstieg und erweitere Scripting-Möglichkeiten, schränkt aber das Mapping stark ein. Deshalb bleibe ich persönlich lieber beim RMXP.

Was ist ein RPG Maker?
Ein RPG-Maker ist ist ein Programm, mit dem man alle möglichen Spiele im Rahmen der Engine selbst erschaffen kann. In den meisten Fällen sind es Rollenspiele, wer sich aber richtig gut mit dem Maker und dem Scripting auskennt, der kann auch Jump'n'Run, Adventures, Rennspiele und dergleichen erstellen. Dazu braucht es allerdings viel Können und Erfahrung im Bereich Programmierung und Scripting.
Anfänger und auch die meisten Erfahrenen nutzen RPG Maker für Rollenspiele, da diese durch die Gameengine des Makers schon zu gewissen Teilen vorgefertigt sind.
Der meiner Meinung nach beste RPG Maker ist der RPG Maker XP.

Um den RMXP zu bekommen gibt es verschiedene Möglichkeiten:
- Trail herunter laden und Lizenz kaufen
- Suchmaschinen
- Mir eine PN schreiben  ;)

Wie auch schon beim anderen Maker benötigt man das Programm an sich und ein Run Time Package (RTP). Im RTP sind alle Daten vorhanden, die man zum erstellen eines eigenen Spiels braucht - sollte man mehr brauchen, kann man jederzeit mehr in das Projekt importieren.
Beim konvertieren des Projekts zum Spiel werden automatisch alle benötigten Daten in die Installationsdatei gepackt.

Zu den Abkürzungen in diesem Tutorial:
LMT: Linkte Maustaste
RMT: Rechte Maustaste

Nun dann, auf geht's. Ich werde etwas erstellen und die Schritte dazu beschreiben. :)
Am Ende jedes Abschnitts gibt es das Projekt als rar-Datei (WinRar wird zum entpacken benötigt) dann noch zum Download, damit ihr euch alles nochmal genau im Maker angucken könnt.

Inhaltsverzeichnis:
1) Das Mapping
2) Events und Quests
3) Gegenstände und Handel
4) Der Kampf - Fertigkeiten und Berechnungen
5) Der Kampf - spannendere Bossbegegnungen, Elemente und Zustände

In Planung:
6) Die Helden und Klassen
7) Erweiterte Events: Tag- und Nachtwechsel und andere atmosphärische Details
8) Übersetzungen, Einstieg ins Scripting


1) Das Mapping
In diesem Abschnitt werden wir uns mit dem Wahrscheinlich wichtigstem Thema befassen: Das Mapping. Es bedeutet nichts anderes, als das herstellen von Karten. Öffnet dazu den RMXP. Klickt dann auf das leere Blatt unter "File" (New Project), zu finden links oben.
Gebt einen Projekt-Namen und den Titel ein, lasst den Pfad aber so, wie er ist! Jetzt seht ihr momentan nur eine leere Fläche. Links unten ist ein Ordner eures Spiels und eine Datei Namens MAP001. Da das ein ganz unschöner Name ist, ändern wir den mal. Dazu rechtsklickt ihr drauf und klickt anschließend auf das oberste Symbol, "Map properties". In unserem Projekt wollen wir ein Dorf machen, also nennen wir die Karte so. Aber zuerst erkläre ich die Begriffe dort:

Name: Das erübrigt sich wohl...
Tileset: Bestimmt, welche Gegenstände bzw. Terrainarten euch zur Verfügung stehen.
Map Size: Größe der Map.
Encounters: Stellt die Monstergruppen ein, die euch auf dieser Map zufällig begegnen sollen.
Steps Average: Häufigkeit der Angriffe. Die Zahl gibt die durchschnittliche Anzahl an Schritten ein, nach der man in einen Kampf gerät - sollte nicht zu niedrig sein, sonst stört das den Spielfluss. eine Zahl von 10 bedeutet dabei 10%, 100 hingegen 1% Chance pro Schritt, von einer Gruppe Gegnern angegriffen zu werden.
Auto-Change BGM: Wählt die Hintergrundmusik aus, die beim betreten der Karte abgespielt werden soll.
Auto-Change BGS: Wählt den Hintergrundsound (z.B. Regen oder Wind) aus, der beim betreten der Karte abgespielt werden soll.


Als erstes nennen wir unsere Karte "Dorf". Als Tileset wählen wir Farm Village, damit lässt sich schon ein sehr schönes Dorf machen. Die Größe sollte etwa 30x25 betragen (ist ein kleines Dorf), als Musik passt "Town02" ganz gut zu einem Bauerndorf. Die Musik lässt sich mit "Pitch" im Musik-Auswah-Menü noch in der Tonhöhe und der Geschwindigkeit (je höher, desto schneller und umgekehrt) justieren. So kann man mit den vorgefertigten Liedern noch Variationen reinbringen, wenn man möchte. Den Rest lassen wir erst mal so, wie es ist. Alle Einstellungen werden mit "Ok" bestätigt.

Über der Map-Auswahl seht ihr das Tileset, das sich geändert haben müsste.
In der Symbolleiste sind 14 wichtige Symbole, die wir für's Mapping brauchen:


Von links nach rechts:
1. bis 5.: Standardfunktionen; ausschneiden, kopieren, einfügen, löschen, rückgängig machen. Diese Funktionen funktionieren selbstverständlich auch mit den entsprechenden Windows-Tastenkombinationen.
6. bis 9.: Diese vier Symbole schalten zwischen den Mapping-Ebenen ("Layer) um. Der RMXP hat 4 Ebenen: 3 für's Mapping und eine für Events (Events benötigt man, um Objekte wie NPCs, Dialoge usw. zu programmieren). Dabei gilt die einfache Regel: Je niedriger die Ebene, desto weiter unten wird eine platzierte Textur angezeigt. Wenn ihr z.B. ein Fass auf Eben 2 abstellt und auf Ebene 3 einen Hügel darüber macht, dann ist das Fass nicht mehr zu sehen. Platziert ihr ein Fass auf Ebene 3 und wollt auf Ebene 2 einen Baum davor stellen, dann schwebt das Fass vor dem Baum.
Events lassen sich auch als Mapping-Ebene verwenden, allerdings ist das etwas aufwendig und nur bei Notfällen zu empfehlen, wenn die 3 Ebenen nicht ausreichen. Dazu müsst ihr bei der Erstellung eines Events als Grafik nur die geschwünschte Textur des Tilesets verwenden.
Die nächsten fünf Symbole sind typische Werkzeuge, wie man sie auch aus Grafikprogrammen wie Paint kennt. Markiert ihr einen Abschnitt im Tileset (können auch mehrere Felder sein), so könnt ihr diesen einzeln auf die Karte platzieren oder ihr "malt" damit, ihr könnt ihn aber auch im Rechteck "ziehen" oder eine Ellipse zeichnen (man kann die Auswahl mit der RMT rückgängig machen, solange man die LMT noch nicht losgelassen hat). Der Eimer ist das "Füllen"-Symbol, damit ändert ihr die gesammten zusammenliegenden Texturen einer Art in die aktuell gewählte. Mit dem letzten Werkzeugsymbol könnt ihr einen Abschnitt auf eurer Karte auswählen, denn ihr dann verschieben oder ausschneiden/kopieren/löschen könnt. Dabei werden alle Ebenen berücksichtigt.

Es ist nicht möglich, auf einer Karte etwas auszuschneiden und auf einer anderen wieder einzufügen, außer die Karten haben das gleiche Tileset!

Die letzten drei Symbole, die für's Mapping relevant sind, bestimmten die Zoom-Stufe, mit der man auf die Karte schaut.

Wir beginnen also nun mit dem Mapping. Um für die Karte einen "Grundbaustein" zu schaffen, auf dem wir bauen können, wählen wir "Füllen" aus und begeben uns auf die unterste Mapping-Ebene. Dazu eignet sich als Bodentextur Gras am besten. Mit der Wasser-Textur oder der anderen Grastextur lassen sich Variationen im Boden oder Flüsse/Seen einbauen, um die Karte abwechslungsreich zu gestalten. Die Texturen in der oberen Reihe eines jeden Tilesets sind sogenannte "Autotiles", d.h. sie werden nicht so, wie sie dort sind, auf die Karte gesetzt, sondern sie passen das Aussehen an ihre Form und Größe an. Die Texturen mit weißer umrandung müssen auf der zweiten oder dritten Ebene auf die Karte gesetzt werden, sonst fehlt dort die Bodentextur.

Nachdem der Grund fertig ist (am besten schon dabei in der Höhe variieren, wenn es die Textur zulässt und man das möchte), setzen wir weitere Sachen auf die Karte, denn sonst sieht es noch ziemlich leer aus. Stellt den Maker auf die zweite Ebene um und seht, wie alles aus der ersten Ebene abgedunkelt wird.

Jetzt könnt ihr Fester, Zäune, Bäume, Büche und vieles mehr auf eure Karte setzen. Solange bei Häusern keine weiße Textur dabei ist, würde ich sie auch auf der ersten Ebene setzen. Das erlaubt einem mehr Freiheit, was Fenster und eventuelle Objekte vor den Fenstern angeht.



Das Endergebnis könnte dann z.B. so aussehen:



Und damit Gratulation, ihr habt eure erste Karte fertig! :D
Ihr beherrscht nun das Mapping. Übung macht den Meister, ihr werdet automatisch besser je mehr Karten ihr erstellt, und bringt Geduld mit, wenn ihr an Karten arbeitet. ;)

Ihr könnt das bisherige Projekt hier herunterladen.

2) Events und Quests

Egal wie schön eine Karte ist, ohne (bewegliche) Objekte wie NPCs ist sie recht langweilig. In diesem Abschnitt möchte ich euch das Herzstück des RPG Makers vorstellen: Events.
Mit ihnen macht man nahezu alles. Diagloge, NPCs, Scripts, Quests, Übergänge von Karte zu Karte und animierte Objekte, nur um mal ein paar Beispiele zu nennen.

In diesem Abschnitt möchte ich ein paar Quests und bewegliche Objekte (NPCs, Türen, Truhen) einbauen.

Eines der Häuser sieht ja ziemlich verlassen aus. Aber das soll es auch sein. Denn eine Quest soll sein, etwas aus diesem Haus herauszuholen. Leider ist die Tür an der Seite, die man anhand des Weges erkennt, vernagelt. Also brauchen wir noch Werkzeug um sie aufzubrechen, allerdings verlangt der Besitzer des Werkzeugs dafür eine Gegenleistung.

Was brauchen wir? Mindestens eine zusätzliche Map (für das Haus), ich werde noch eine zweite einbauen, wo man das Werkzeug erhalten kann.
Um eine weitere Map zu erstellen, klickt unten links mit der RMT auf die Karte "Dorf" und dann auf "New Map". Die Karte wird automatisch als dem Dorf untergeordnete Karte erstellt (das erleichtert die Zuordnung von z.B. Häusern den richtigen Dörfern). Wählt als Tileset "Farm Village In", damit das innere des Hauses zur äußeren Erscheinung passt.

Macht euch bei inneren Strukturen erstmal klar, wie es im groben aussehen soll, und füllt nicht verwendete Flächen am besten mit schwarzen Texturen aus.


Eingänge sollten möglichst am Rand liegen, da es optisch sonst etwas seltsam erscheint, wenn im Spiel dann der Bildschirm noch weiter scrollt und die Bodentextur direkt ins Schwarze übergeht.

Nachdem ihr die Grundstruktur für das Haus erstellst habt, könnt ihr euch den Feinheiten und Dekorationen widmen. Ich habe dem Haus noch einen Kamin verpasst, um über ein Event etwas mehr Atmosphäre zu schaffen. Mehr dazu gleich.
So könnte das Haus fertig aussehen:


Ihr seht auf dem Bild 5 Events. Das Event mit dem S gibt die Startposition der Spielergruppe an, zu der man gelangt, nachdem man im Hauptmenü "New Game" ausgewählt hat. Um eine Startposition zu setzen muss man auf der Event-Ebene einfach einen rechtsklick machen und "Player's Starting Position" auswählen.
Wofür sind nun die anderen Events?
Das Event ganz unten ist da, damit man das Haus verlassen kann. Doppelklickt auf die Stelle, wo man das Haus verlassen soll. Da seht ihr nun viele Fenster und Auswahlmöglichkeiten, das wichtigste Fenster ist das große. Dort kommen alle Event- und Script-Befehle rein. Doppelklickt auf das große Fenster und geht auf Seite 2 in dem Auswahlmenü, um dort "Transfer Player..." auszuwählen. Wählt als Zielort das Feld direkt unter dem Haus, auf der Karte "Dorf". Damit alles glatt abläuft, müsst ihr links noch "Through" unter Options aktivieren und unter Trigger "Player Touch". "Through" sorgt dafür, dass der Spieler nicht gegen eine unsichtbare Wand läuft, und "Player Touch" bedeutet, dass der Spieler das Feld nur berühren muss, damit der Effekt eintritt (wenn Through aktiviert ist, muss der Spieler darüber laufen).

Zwei der fünf Events sind nur da, um die Atmosphäre zu heben. Das eine Event ist direkt im Kamin, das ander über einer Kerze. Was machen diese nun? Nichts im dem Sinn. Das große Feld bleibt leer. Allerdings wählen wir stattdessen eine "Graphic" aus: Für den Kamin das unterste Feuer im Charset "185-Fire02". Man kann dort auch noch die Transparenz ("Opacity - 255 ist volle Deckkraft, 0 ist unsichtbar) und die Farbe (über den Regler und über "Blending") ändern. Allerdings reicht der Standard völlig aus, also einfach nur eine der untersten Flammen wählen.
Damit das Feuer im Kamin auch animiert ist, muss der Haken bei "Stop Animation" unter Options gemacht werden. "Stop Animation" stoppt nicht die Animation, sondern die Laufanimation wird auch ausgeführt, während das Objekt sich nicht bewegt. Und Laufanimationen sind die Animationen, die in den Charsets von links nach rechts ausgeführt werden.
Mehr muss dann auch gar nicht gemacht werden. Das Feuer brennt nun im Spiel.

Falls man mit der Geschwindigkeit des Flackerns nicht einverstanden ist, kann man die Geschwindigkeit unter "Autonomous Movement" erhöhen. Bei sich bewegenden Objekten ist das auch gleichzeitig die Bewegungsgeschwindigkeit. Die Frequenz ("Freq") gibt an, wieviel Zeit zwischen den einzelnen Schritten vergeht. Da sich das Feuer nicht bewegt, ist die Frequenz egal.

Das zweite Atmosphäre Event ist ein Lichtschein, der von der Kerze ausgeht. Der Schein ist auch unter "185-Fire02" zu finden, ansonsten ist es das gleiche wie beim Kamin - fast. Es kann sein, dass der Lichtschein unter der Kerze angezeigt wird, dann muss man zusätzlich noch das Häckchen bei "Always on Top" setzen.

Jetzt fehlt nur noch der Questgeber, in meinem Fall eine Questgeberin. Ihre Katze ist in das verlassene Haus geschlichen und kam bisher nicht wieder raus. Die Aufgabe des Spielers soll es sein, Werkzeug zu besorgen um Zutritt zum Haus zu erlangen.
Erstellt ein Event und wählt eine beliebige Grafik aus. Ich habe mich für "120-Civilian20" entschieden. Unter "Autonomous Movement" stellen wir Random ein, damit die junge Frau nicht stur auf einer Stelle bleibt. Damit sie auch etwas sagt, müssen wir Dialoge hinzufügen. Doppelklickt wieder in das große Eventfenster und wählt auf der ersten Seite "Show text..." aus. Schreibt das, was der NPC sagen soll, aber achtet darauf, dass ihr nicht zu weit rechts vom schwarzen Pfeil oben kommt, sonst ist euer Text abgeschnitten. Damit es auch wirklich ein Dialog wird, wollen wir den Spieler entscheiden lassen, ob er dem armen Mädchen hilft oder nicht. Fügt wieder ein neues Kommando mit einem Doppelklick hinzu und wählt diesmal "Show Choices". Damit können wir den Spieler wählen lassen.
Sollte der Spieler bei der Auswahl im Spiel Esc drücken, wird die Wahl abgebrochen - was dann passieren soll, sehr ihr rechts neben den möglichen Antworten. In der Regel wird Choice 2 dann ausgewählt.

Das ganze könnte dann vorerst so aussehen:


Nun haben wir aber das Problem, dass sie immer wieder diesen Dialog ausführt - und der Holzfäller im Norden weiß auch noch nichts davon. Wir brauchen also etwas, was den Status der Quest festhält.
Kommen wir nun zu den "Switches" und den Variablen!
Da die Quest aus mehreren Stufen (Werkzeug holen, Tür aufschlagen, Katze holen, Katze zurückbringen) besteht, brauchen wir einen Zähler, der diese Stufen für uns zählt. Das nennt man eine Variable. Wir beeinflussen eine Variable mit dem Kommando "Controll Variables". Dort wählen wir eine einzelne Variable aus (man kann auch den Namen für diese anpassen) und setzen sie mit der Operation "Set" auf 1 (die anderen sind Mathematische vorgänge, addieren, subtrahieren, multiplizieren, dividieren und ... mod - weiß schon gar nicht mehr, wie man das ausschreibt, aber das müsste die Rechenart sein, mit der man bestimmt, ob eine Division einen Rest ergeben würde oder nicht). Damit nun die junge Frau nicht immer wieder den gleichen Dialog startet, müssen wir eine neue Event Page machen. Das geht am einfachsten, indem wir auf "Copy Event Page" und "Paste Event Page" drücken. Jetzt müssen wir nicht alles neu auswählen, sondern nur modifizieren.

Wenn ein Event mehrere Seiten hat, ruft der Maker immer die letzte zuerst auf und geht erst weiter nach links, wenn die Bedingung nicht erfüllt ist. Damit die zweite Seite also erst aufgerufen ist, wenn die Variable auf 1 ist, müssen wir das unter "Conditions" auch angeben. Im Kommandofenster markieren wir alles mit Strg + A und löschen alles. Dann erstellen wir einen Text, wo die Questgeberin dem Spieler so etwas wie "Bitte beeile dich, meine Katze hat bestimmt Angst" sagt. Nun gehen wir weiter in der Quest.

Irgendwo im Dorf platzieren wir einen Holzfäller hin, der gerade Pause macht. Lasst euren Helden über einen Dialog nachfragen, ob man sich die Axt ausleihen darf. Damit es deutlicher wird, wer gerade spricht, könnt ihr einfach die Namen in die Dialoge einfügen, z.B.:
"Holzfäller:
Ich mache gerade Pause, was gibt's?"
Wollt ihr den Helden sprechen lassen, dann könnt ihr einfach \n[1] verwenden. Im Spiel erscheint dann der Name des Helden, der in der Datenbank die Nummer 1 hat.

Die Datenbank ist auch nun unser Stichwort. Der Held soll dem Holzfäller für die Axt drei Rüben besorgen, also brauchen wir noch die 2 Gegenstände. Klickt in der Symbolleiste auf das Symbol für die Datenbank ("Data Base"). Geht zum Reiter "Items" und erhöht das Maximum um zwei. Auf die Datenbank selbst gehe ich später noch ein, ihr braucht aber erstmal zwei Questgegenstände um weiter zu kommen. Wählt nur einen Namen, eine Beschreibung und wenn ihr möchtet ein Icon aus, ändert sonst nichts. Nun könnt ihr die Gegenstände (33 und 34) als Questgegenstände verwenden.
Der Holzfäller braucht 5 Seiten! Auf der ersten sagt er einfach was. Auf der zweiten (Bedingung: Variable 001 ist 1 oder größer) sagt er, dass er Rüben für die Axt möchte - erhöht danach die Variable auf 2 - auf der dritten (Bedingung: Variable 001 ist 2 oder größer) sagt er irgendwas, nachdem der Dialog gelaufen ist aber man die Rüben noch nicht hat. Die letzten zwei Seiten kommen noch, erstmal geht's an die Rüben.

Falls ihr noch kein Feld auf der Karte habt, dann erstellt euch schnell eines. Falls ihr es schon habt und dort auch Rüben drauf sind, löscht die Rüben. Nun erstellt ihr ein Event auf dem Feld. Als Grafik wählt ihr die Rübe vom Tileset. Das Event braucht 4 Seiten insgesamt: Einmal dafür, dass sie einfach nur da ist (es passiert nichts), einmal dafür, dass der Held den Auftrag vom Holzfäller bekommen hat und sie sammeln kann, einmal dafür, dass der Held bereits 3 Rüben hat und einmal dafür, dass er die Rübe gesammelt hat.
Was müsst ihr also auf Seite 2 tun? Es ist recht simpel. Wir erhöhen die Variable "Rübe" (002 habe ich so genannt) um 1 und fügen dem Inventar des Helden den Gegenstand "Rübe" hinzu (Seite 1, "Change Items..."). Damit die Rübe auch wirklich gepflückt wird, brauchen wir etwas, was diesen Status speichert. Das erledigen wir mit einem "Switch".

Ein Switch ist eine simple Variable, die nur zwei Werte kennt: AN und AUS.
Um einfache Sachen zu speichern reichen Switches aus. Damit man nicht zig hundert globale switches braucht, bringt jedes Event vier sogenannte "Self Switches" mit. Dieser gilt dann nur für das Event. Fügt also das Kommando "Controll Self Switch..." hinzu und setzt den Schalter A auf ON. Auf Seite 3 lassen wir den Helden sagen, dass er genügend Rüben gesammelt hat (Bedingung: Variable 002 ist auf 3 oder höher), und auf Seite 4 lassen wir die Grafik nun LEER, mit der Bedingung, dass der Self Switch A auf ON steht.
Was passiert nun? Anfangs ist keine Bedingung aktiv. Der Maker geht die Seiten durch und landet bei 1, die Rübe wird angezeigt. Sobald man die Aufgabe von Holzfäller erhalten hat, ist die Bedingung erfüllt und das Spiel hält bei Seite 2 an. Nachdem wir drei Rüben gepflückt haben, gibt es 2 Möglichkeiten: Die Bedingung von Seite 4 ist erfüllt (wir haben genau diese Rübe gepflückt), dann bleibt das Spiel beim berechnen der Events auf Seite 4 stehen und die Rübe verschwindet und bleibt auch verschwunden. Oder wir haben diese eine Rübe nicht gepflückt sondern 3 andere, dann bleibt das Spiel auf Seite 3 stehen und zeigt die Rübe an, lässt sie uns aber nicht pflücken.


So, die Rüben wären erledigt, nun zurück zum Holzfäller: Seite 4 des dieses Events. Als Bedingung muss die Variable 002 auf 3 oder höher sein, schließlich haben wir nun 3 Rüben. Fügt einen Dialog ein, entfernt die Rüben und gebt dem Helden die Axt. Vergesst nicht, die Variable 001 auf 3 zu setzen.
Die Tür ist einfach nur ein Event in der Wand des Hauses, aber achtet darauf, dass der Spieler sie finden kann (z.B. mit einem Weg, der dort hin führt). Das Event soll bei Berührung aktiviert werden. Ohne Bedingung soll einfach gesagt werden, dass die Tür zugenagelt ist. Auf der zweiten Seite (na, was muss als Bedingung hin?) entfernen wir die Axt mit einem entsprechenden Text aus dem Inventar und und erhöhen die Questvariable wieder um 1. Die dritte Seite teleportiert den Helden in das verlassene Haus zur Katze.

Ihr solltet nun in der Lage sein, den restlichen Questverlauf alleine zu gestalten. ;)

Eines fehlt allerdings noch: Die Tür zum Haus der Questgeberin!
Erstellt ein Event und nehmt als Grafik eine geschlossene Tür ("170-door01"). Beim aktivieren der Tür soll folgendes passieren: Die Tür öffnet sich, der Spieler geht einen Schritt nach vorne und wird teleportiert.
Das macht man wie folgt:
Die Animation der Tür ist von oben nach unten im Charset das Öffnen. Und die Blickrichtungen sind folgende von oben nach unten im Charset: Nach unten, nach links, nach rechts und nach oben. Das Kommando zum Bewegen befindet sich auf der zweiten Seite und heißt "Set Move Route". Lasst das Event in die entsprechenden Richtungen drehen und wartet zwischendurch immer mal wieder 2-4 Frames. Wichtig! Ihr müsst den Befehl "Through ON" erteilen, sonst kann der Held das Haus nicht betreten!

Mit dem Befehl "Wait vor Move's Completion" stellt ihr sicher, dass die Bewegung komplett ausgeführt wird, ehe der nächste Befehl kommt: Lasst euren Helden auf die Tür zugehen und danach teleportieren.
Das ganze sieht dann so aus:


Das gleiche Prinzip gilt auch bei Truhen, nur dass diese über einen Self Switch geöffnet bleiben sollten (mit der entsprechenden Grafik).

So, das war's mit diesem Abschnitt! Tut mir leid, dass es so lang war, aber ich hoffe, dass ihr nun einiges über den Umgang mit Events, Switches, Variablen und der Verwirklichung von Quests gelernt habt.

Das Projekt gibt es inklusive der Quest hier zum Download.
~ Signatur ~
  24.08.2009, 15:57
  • Offline


  • Diplomat
    • Klingen
3) Gegenstände und Handel

Im Laufe des Tutorials fügen wir einen Ort hinzu, wo man viel kämpfen und dadurch Gold verdienen kann und außerdem auch einen Händler, bei dem man sein verdientes Gold verprassen und eigens erstellte Waffen kaufen kann. Außerdem dient der Händler gleichzeitig als Herberge, gegen einen kleinen Goldbetrag wird man sich dort ausruhen können, was Wunden heilt und MP wiederherstellt.

Als erstes brauchen wir einen Händler. Baut ihm ein Haus mitsamt Keller (Keller als zweite Map)
Im Haus des Händlers brauchen wir: Ein Bett, eine Treppe und 3 Events (Händler-NPC, Teleport ins Dorf, Teleport in den Keller).


Da der Händler auch Gegenstände zum Verkauf anbietet, schauen wir doch einfach mal in der Datenbank nach ein paar Waffen, Rüstungen und Items. Ob ihr nun eigene Items erstellt oder bestehende ändert, ist egal. Am wichtigsten ist eine Preisanpassung für's Tutorial, da man sonst hunderte von Gegnern töten müsste, ehe man sich was leisten kann. ;)
Alternativ kann man auch die Beute der Gegner erhöhen, das ist euch überlassen. Ich habe die Preise um 90% gesenkt, also einfach bei allen Gegenständen, die mein Händler zum Kauf anbieten soll, eine 0 weggestrichen.
Fall ihr einen neuen Gegenstand erstellen möchtet, solltet ihr natürlich wissen, was genau die Werte machen, die dort angegeben sind. Ihr seht einmal die Liste aller Items, dann Name, Icon und Beschreibung. Gehen wir näher auf die Werte dort ein:

Waffen
Waffen haben zusätzlich erstmal zwei Animationen. Eine Animation für den Angreifer und eine für das Ziel. Animationen lassen sich in der Datenbank erstellen und/oder verändern - wie genau das geht, werde ich in einem späteren Abschnitt noch erklären, aber ihr könnt dort ja auch selbst ein wenig herumprobieren. Es ist eigentlich ziemlich einfach.
Zusätzlich bieten Waffen 8 Attribute: Der Einkaufspreis, die ATK (bestimmt die Trefferchance und den Schaden), physische und magische Verteidigung (bestimmt den Schaden, den man von gegnerischen Angriffen und Zaubern erhält), Stärke (erhöht den physischen Schaden), Geschicklichkeit (bestimmt kritische Trefferchance und die Trefferchance), Beweglichkeit (Schutz vor kritischen Treffern und erhöhte Chance auszuweichen) und Intelligenz (bestimmt Stärke von magischen Fertigkeiten). Alles lässt sich erhöhen - aber auch verringern.
Außerdem lässt sich die Waffe noch mit einem Element tränken. Jeder Gegner hat eine gewisse Anfälligkeit oder einen gewissen Schutz gegen Elemente, wenn eine Waffe mit einem entsprechenden Element belegt wird und man damit angreift, dann erhöt oder verringert sich der Schaden entsprechend.
Außerdem kann man der Waffe noch einen Zustand zuweisen, den sie entweder verursacht oder aufhebt. Mehr zu dem Thema im nächsten Kapitel.

Rüstungen
Rüstungen können wie Waffen die 4 Attribute und den Schutz erhöhen. Zusätzlich können sie die Ausweichchance direkt um einen gewissen Prozentsatz erhöhen ("EVA" für evasion).
Ein Charakter kann bis zu 4 Rüstungsarten tragen, die unter "Kind" aufgelistet sind: Ein Helm, ein Schild, eine Körperrüstung und einen Ring (oder wasauchimmer ihr als Schmuck verwendet). Auto-State verleiht dem tragenden Charakter automatisch einen Status. Sehr nützlich bei mächtigen verzauberten Gegenständen, die einen defensiven Zustand verleihen, oder bei verfluchten Gegenständen, die einen negativen Zustand mitbringen.

Gegenstände
Gegenstände können alles mögliche sein. Questgegenstände und benutzbare Gegenstände, sie können Zustände heilen, verursachen, HP und SP regenerieren oder Schaden anrichten. Items im Kampf brauchen ein Ziel, außer sie sollen ein Event auslösen. Solche Events werden unter "Common Events" in der Datenbank geschrieben, da sie nicht von der Karte abhängig sein dürfen. Occasion ist die Verwendbarkeit der Items. Die von Questitems sollte auf "Never" stehen, damit man sie nie benutzen kann. Wie bei der Waffe kann man einem Item 2 Animationen zuweisen. Außerdem kann man einen Sound für das Item wählen, der bei der Benutzung im Menü abgespielt wird, und man kann ein Common Event abspielen. Das Common Event kann alles mögliche machen, z.B. eine Uhr anzeigen und bei erneutem Tastendruck wieder schließen oder einen Teleport verursachen oder oder oder.

Unten steht ihr insgesamt 12 Attribute bei Items. Zum einen den Preis und zum anderen nur bisher unbekannte: Mit Consumable stellt man ein, ob ein Item verbrauchbar ist oder nicht. Parameter erhöht einen Charakterwert dauerhaft um einen bestimmten Wert ("Param Inc"). Dann können Items noch HP und SP (oder MP, wie man es auch nennen möchte) wiederherstellen, entweder um einen bestimmten Betrag oder um einen Prozentwert der gesamten HP/MP. Mit einem Minus davor richtet der Gegenstand dann Schaden an.
Die Hit Rate gibt die Erfolgschance in % an. PDEF-F und MDEF-F geben den Einfluss von Physischer und Magischer Verteidigung an. Bei 0 wird die Verteidigung ignoriert, bei 50 wird sie zur Hälfte und bei 200 wird sie doppelt mit einberechnet (wichtig bei Schadensverursachenden Gegenständen).

Auch Gegenständen können Elemente zugewiesen werden und wie schon angesprochen können sie einen Zustand ändern (+ für Zustand hinzufügen und - für Zustand entfernen).

Nun wollen wir dem Händler auch ein paar Angebote geben. Erstellt im Händler-Event am besten 3 Choices: Bett mieten, handeln und wieder gehen (Benennung beliebig).
Dann bekommt ihr für jede Option eine "When" Möglichkeit, in der ihr wieder Befehle einbauen könnt. Der Handel ist einfach: Auf Seite 2 der Befehlsliste gibt es einen "Shop Processing", mit dem ihr den Handel starten könnt. Fügt dort die Gegenstände hinzu, die der Händler anbieten soll.

Der schwierigere Teil ist das Ausruhen:
Hier lernen wir das erste Mal Abfragen innerhalb einer Liste mit Befehlen kennen, denn wir müssen feststellen, ob der Spieler sich das Bett überhaupt leisten kann. Ich habe noch eine Wahlmöglichkeit eingebaut, ob der Spieler für 5g das Bett mieten möchte oder nicht. Wenn nein, dann passiert nichts - der Dialog wird also abgebrochen. Wenn ja, dann kommt die Abfrage "Conditional Branch" auf der ersten Seite der Befehlsmöglichkeiten. Diese Abfrage bietet 4 Seiten mit den unterschiedlichsten Möglichkeiten, auf Seite 4 kann der Goldstand abgefragt werden, was hier auch getan werden soll. 5 oder mehr muss der Spieler haben, um sich ein Bett leisten zu können.
In dem Fall, in dem der Spieler nicht genug hat, soll eine Meldung deswegen kommen. Der normale Ablauf wird aber schwieriger: Eine Möglichkeit dazu ist, den Bildschirm abzudunkeln, einen Sound abzuspielen und den Spieler neben das Bett zu teleportieren, dann die Gruppe komplett zu heilen und den Bildschirm wieder aufhellen lassen. So sieht der Teil dann fertig aus:


Nun brauchen wir nur noch einen Ort, wo der Spieler sich das Gold zum Handeln verdienen können soll. Fügt einen Keller hinzu, falls ihr es noch nicht getan habt, und fügt diesem unter Map Properties -> Encounters den Trupp "Ghost*2" hinzu. Stellt die Schritte recht niedrig, schließlich ist der Ort nur zum Kämpfen da. Etwa 10-20 sollten reichen.

Und damit sind wir auch schon fertig mit diesem Kapitel! Ich hoffe wie immer, dass es euch geholfen hat!

Download des bisherigen Projekts


4) Der Kampf - Fertigkeiten und Berechnungen

Die Basis um andere Spieler Abenteuer erleben zu lassen ist nun gegeben. Ein wichtiger Punkt in den meisten Abenteuern ist der Kampf, und diesen auszubalancieren ist vermutlich eine der schwierigsten Aufgaben beim Erstellen eines eigenen Spiels. Es hilft, wenn man sich bei den Werten seiner Gegenstände und Helden an die vorgegebenen Werte richtet. Andernfalls muss man das ganze Kampfsystem neu ausbalancieren, wenn man ein gutes Spiel auf die Beine stellen möchte, und dieser Abschnitt soll hauptsächlich dazu sein, euch bei der Ausbalancierung eines eigenen Kampfsystems oder einfach von neuen Waffen und Rüstungen, die ihr hinzufügt, zu helfen.

Nun folgt etwas für die Mathematiker unter uns.

Wie berechnet sich der normale Schaden im Kampf?
Im Script Edidor finden sich folgende Zeilen:
Code
atk = [attacker.atk - self.pdef / 2, 0].max
self.damage = atk * (20 + attacker.str) / 20
Einfach gesagt wird der Basis-Schaden dadurch errechnet, dass man die def des Gegners von der atk des Angreifers abzieht und das ganze durch zwei teilt - der Wert ist 0, wenn die def größer sein sollte als die atk des Angreifers. Der normale Schaden besteht dann aus dem Produkt des Basis-Schadens  und 1 + einem zwanzigstel der Stärke (str).
Rechenbeispiel: man führt ein Schwert mit 100 ATK, der Gegner hat eine DEF von 80. Der Basisschaden ist also 10. Der Held hat insgesamt 60 Stärke, also ist der zugefügte Schaden 10 * (20 + 60) / 20 = 40 (oder 10 * (1 + 60 / 20) = 40, wie man lieber rechnen möchte).

Die kritische Trefferchance in % wird so berechnet:
4 * attacker.dex / self.agi
Bedeutet, wenn die DEX (Geschicklichkeit) des Angreifers genauso hoch ist wie die AGI (Beweglichkeit) des Verteidigers, dann ist die Chance 4%.
Ist die DEX doppelt so hoch wie die AGI des Getroffenen, dann ist die Chance 8%, ist sie nur halb so hoch 2%.

Die Ausweichchance wird auf diese Weise berechnet:
eva = 8 * self.agi / attacker.dex + self.eva
Einfach beschrieben: 8 mal das Verhältnis aus der eigenen AGI zu der DEX des Gegners plus Evasion auf der Ausrüstung oder durch Zustände.

Das wird berechnet, wenn man im Kampf auf "Attack" drückt. Drückt man auf "Defend", dann macht der Charakter nichts, kassiert aber aus allen Quellen nur halben Schaden.

Nun der kompliziertere Teil:
Fertigkeiten. Geht in die Datenbank und dann auf "Skills". Das sieht so ähnlich aus wie bei den Gegenständen, nur die 12 Attribute sind teilweise anders.
Sp Cost sind die Kosten für die Fertigkeit. Power gibt die Grundstärke wieder - bei Heilungen negativ, weil man sozusagen negativen Schaden anrichtet. Alle Attribute, bei denen F hintersteht, geben an, wie stark das jeweilige Attribut zur Schadensberechnung mit in die Berechnung einfließt. Bei einer ATK-F von 0 ist die Fertigkeit ein Zauber, bei 1 oder größer eine physische Fertigkeit - die Angaben sind Prozentual, d.h. bei 100 wird für die Berechnung des Schadens 100% der atk des Angreifers benutzt und deshalb ist die Fertigkeit bei 0% entsprechend als Zauber definiert. Die EVA-F gibt an, wie stark sich die Ausweichchance des Gegners auf die Fertigkeit auswirkt. Auch die Angaben sind prozentual. Wenn dort der Wert 100 steht, hat die Fertigkeit keinen Einfluss auf den Ausweich-Wert des Gegners, bei 50 wird er halbiert und bei 0 kann der Gegner der Fertigkeit nicht ausweichen. Bei PDEF oder MDEF (nicht beides!) sollte auch immer 100 stehen, es sei denn, ihr wollt, dass die Fertigkeit teile des gegnerischen Schutzes negiert. Wenn ihr bei beiden 50 eingebt, dann richtet die Fertigkeit zur Hälfte physischen und zur Hälfte magischen Schaden an.
Variance erstellt eine Varianz, d.h. eine Schadensspanne. Dabei bedeutet 15, dass der tatsächliche Schaden (oder die tatsächliche Heilung) bei 85%-115% des errechneten Wertes liegen kann.

Die genaue Berechnung für den Schaden einer Fertigkeit sieht so aus:
self.damage = power * rate / 20 (self ist das getroffene Ziel, user der Angreifer und Skill die entsprechende Fertigkeit)
Was ist hier power und was rate?
power = skill.power + user.atk * skill.atk_f / 100
Sollte power größer als 0 sein, dann spielt die Rüstung des Gegners noch eine Rolle. Dann werden nämlich die Ergebnisse folgender Terme von der Power abgezogen:
self.pdef * skill.pdef_f / 200
self.mdef * skill.mdef_f / 200
(das ist der Grund, warum nie bei PDEF und MDEF 100 stehen sollte, sonst wird doppelt abgezogen - es sei denn, ihr wollt das ;))

Die rate gibt an, wie viel von jedem Attribut in die Berechnung des Schadens mit einfließt:
rate = 20 ist die Grundstärke, die zur Berechnung dient (wie beim normalen Angriff auch, da die rate in der endgültigen Berechnung ebenfalls durch 20 geteilt wird - das sorgt dann dafür, dass das Ergebnis mindestens 1 ist). Dann wird dieser Wert nach folgender Berechnung erhöht:
user.str * skill.str_f / 100
Das jeweils für alle 4 Attribute (str, dex, agi, int). Steht in der Datenbank für eure Fertigkeit also, dass die Fertigkeit zu 100% von intelligenz abhängt, dann wird die gesamte Intelligenz der rate hinzugerechnet.

Ein Rechenbeispiel: Ihr erstellt einen Feuerballzauber mit einer Power von 50 und einer INT-F von 100.
Euer Held hat 200 int und der Zauber soll ein besonderer Zauber sein, der die Hälfte der gegnerischen MDEF ignoriert (MDEF-F von 50). Der Gegner hat eine MDEF von 160.
Zuerst wird die Power verrechnet. Da der Zauber nicht von der ATK abhängt ist das ziemlich einfach:
Power = 50 + 0 = 50.
Sie ist größer als 0, also muss hier noch die MDEF des Gegners mit einbezogen werden:
Power = 50 - 160 * 50 / 200 = 10.

Nun müssen wir die rate berechnen:
rate = 20 + 200 * 100 / 100 = 220
Der Schaden ist demnach:
Schaden = 10 * 220 / 20 = 110.


So, das war das wichtigste an Berechnungen, die gemacht werden müssen, wenn man selbst das Kampfsystem ausbalancieren möchte.
Das werden wir in unserem Projekt nicht umsetzen - es ist nur wichtig, das zu wissen.


5) Der Kampf - spannendere Bossbegegnungen, Elemente und Zustände

In diesem Kapitel des Tutorials gehen wir auf weitere Elemente des Kampfes ein. Wir stellen einen Bossgegner in den Keller und beschäftigen uns mit Elemente und Zustände - außerdem fügen wir noch einen Zustand hinzu.

Als erstes erstellen wir den Bossgegner. Da es im Keller "spukt", habe ich mich für einen Lich entschieden.
Geht in die Datenbank unter Enimies, dort ist bereits ein Lich vorhanden, wie praktisch. Wir müssen nur noch die Werte ein wenig anpassen.
Entfernt die Fertigkeit "Mass Sleep", denn so setzt er sie einfach unkontrolliert ein. Attack reicht vorerst. Allerdings ist der STR Werte noch ein wenig zu hoch für unsere Helden, also schrauben wir den etwas herunter (ich habe ihn auf 91 gesetzt und die ATK auf 140) und im Gegenzug die HP etwas hoch, damit der Kampf etwas länger dauert.

Nun kommen wir zu den Elementen:
Wie ihr beim Lich seht, steht bei Fire ein B und bei vs Undead ein A. Das bedeutet: Fertigkeiten oder Waffen mit jedem jeweiligen Element richten mehr Schaden an. Das A steht für 200% Schaden, das B für 150%, das C für 100% (standard), das D für 50%, das E fü 0% und das F für -100% (Gegner wird dadurch geheilt). Bei den Zuständen hat das den Effekt, dass die Chance für den Zustand erhöht oder verringert wird. Mit der rechten und linken Maustaste auf einen Zustand oder auf ein Element schaltet man durch die Stufen A-F durch.

Die Zustände kann man in der Datenbank unter "State" bearbeiten, Elemente lassen sich unter "System" hinzufügen oder entfernen.
Also schauen wir uns einfach mal ein paar Zustände an, denn die geben den Kämpfen eine gewisse Würze. :D
Der Zustand "Knockout" bedeutet, dass die Figur 0 HP hat. Das wird durch das "Regard as HP 0" festgelegt. Ihr könnt es auch "Tot" oder "Bewusstlos" nennen, das liegt ganz bei euch. Die Animation dort wird ausgeführt, sobald jemand von dem Zustand betroffen ist.
Die Bedeutung der dort aufgeliteten Optionen ist folgende:
"Nonresistance" sorgt dafür, dass dem Zustand nicht widerstanden werden kann, "Can't Get EXP" verhindert, dass von dem Zustand betroffene EXP bekommen, Can't evade verhindert das Ausweichen der Charaktere, solange sie unter dem Zustand leiden und Slip Damage zieht jede Runde 10% der gesamten HP vom Ziel ab.
Restriction verhindert bestimmte Aktionen vom Ziel. Es gibt vier Möglichkeiten: Das Ziel kann nicht mehr zaubern, es greift unkontrolliert Gegner an, es greift unkontrolliert seine eigenen Verbündeten an oder es kann gar nichts mehr machen.

Die Attribute unten bedeuten, dass die Attribute für die Dauer des Zustands auf den Wert gesetzt werden. Rating ist nur der Faktor, der angibt, welcher Zustand angezeigt wird, wenn das Ziel unter mehreren leidet (höhere werden vor niedrigeren angezeigt). Alle Attribute, bei denen % bei steht, sollten auf 100 stehen - es sei denn, man möchte das Attribut während der Wirkung des Zustands verringern oder erhöhen.
Zustände können auch die Verteidigung gegen bestimmte Elemente erhöhen oder andere Zustände verursachen oder entfernen. Man kann also über Zustände auch alle möglichen Schutzzauber erstellen.

Damit der Zustand nicht ewig anhält, gibt es sogenannte Release Conditions. Man kann nach X Runden für jede Runde eine Chance angeben, mit der der Zustand wieder aufgehoben werden soll und eine Chance für jeden erhaltenen Treffer.
Erstellen wir uns doch einfach mal einen neuen Zustand. Ich habe mir überlegt, ein Flammenschwert beim Händler kaufbar zu machen, und dieses soll den Zustand "Brennend" auslösen. Also machen wir uns diesen Zustand. Idee dahinter: Jede Runde Schaden, 2 Runden lang. So einen ähnlichen Zustand gibt es schon: "Venom". Also erhöhen wir die Anzahl der Zustände um 1, kopieren Venom und fügen es wieder ein. Release Condition muss noch auf 2 Runden und 100% geändert werden und die Animation sollte eine andere sein. Sehr einfach zu machen ist folgende:

Geht in das Menü Animations und erhöht die Anzahl der Animationen um 1 (oder um 2, falls ihr für das Flammenschwert auch noch eine machen möchtet). Nennt diese Animation "Brennend" und setzt ihre Dauer auf 20-30 Frames. In dem großen Feld rechts oben fügt ihr nun einen "Flash" hinzu, also ein Aufblitzen eines Objekts. Es sollte in diesem Fall das Ziel sein. Mischt euch einen roten Farbton zusammen und stellt die Stärke auf etwa 80-100 ein (sonst blitzt es zu stark auf). Fertig. :)

Jetzt brauchen wir noch diese Animation für den Zustand eintragen und ein Schwert erstellen, was den Zustand auslöst (und das Element "Fire" hat) sowie dieses dem Händler geben.

Jetzt fehlt nur noch der Bosskampf. Damit die Spieler einem Gegner begegnen können, muss er einer Gruppe bzw. Truppe ("Troops") zugeordnet werden. Geht also ins Menü Troops und fügt eine neue Truppe ein. Dort seht ihr wieder verschiedene Buttons, ein Vorschau-Fenster sowie die Auswahl aller Monster. Sucht den Lich und fügt ihm der neuen Truppe mit dem Pfeil-Button ("<") hinzu. Mit dem anderen Pfeil könnt ihr Gegner wieder entfernen, mit C entfernt ihr alle und mit A positioniert ihr alle in einer Reihe. Wenn ihr auf Autoname klickt, wird die Truppe automatisch je nach Gegnern benannt. Battletest startet einen Testkampf und Battleback ändert den Hintergrund für den Testkampf.

Interessant ist der untere Teil. Der ermöglicht es uns, den Kampf abwechslungsreich zu gestalten, indem wir Events einbauen!
Hier kommt der "Mass Sleep" des Lichs wieder ins Spiel. Um ihn nicht so zufällig zu machen, wollen wir, dass der Lich ihn bei 65% und 35% einsetzt (oder welche Zahlen ihr auch immer haben wollt).
Dazu müsst ihr das als Condition angeben und im Event-Fenster den befehl "Force Action" hinzufügen. Wählt aus, dass der Lich die Fertigkeit "Mass Sleep" sofort einsetzen soll. Ihr könnt auch noch einen Text dazu schreiben.


Fertig. Testet den Kampf ruhig noch aus und ändert nach eurem belieben die Werte des Lichs. :cool:
Vergesst nicht, den Lich im Keller hinzuzufügen. Am besten nicht als Random Encounter, sondern als Event, das nach dem gewonnenen Kampf verschwindet. ;)

Das war's mit diesem Abschnitt. Die Version dazu gibt es hier als Download.
~ Signatur ~
  24.08.2009, 15:58
  • Offline


  • Diplomat
    • Klingen
Und noch ein Platzhalter.
Kann man ja hinterher wieder löschen, wenn ich auch so gut auskomme. :P
~ Signatur ~
  24.08.2009, 15:59
  • Offline


  • Hexer
    • Magiergilde
Wow, einer, der mit dem RPG-Maker arbeitet. :) Gibts den eigendlich irgendwo zu kaufen, oder muss man sich das Teil bestellen. Davon gibt es afaik ja keine dt. Version..

Joa, RPG-Maker... damit kann man ja wirklich viel spielen. Sieht man ja an Düsterburg und Vampires Dawn. Ich hab mal so ne Art Harvest Moon gemacht, aus jucks..

Oder soll das Tutorial nur für normale RPGs sein? (ich meine, man kann sich ja auch sein eigenes Menü basteln etc...)
1. Die Null finden.
2. Die Eins kompliziert schreiben.
3. Taylorentwickeln.
  24.08.2009, 16:04
  • Offline
  • http://orwan-hull.deviantart.com


  • Diplomat
    • Klingen
Zitat
Original von Orwan Hull
Wow, einer, der mit dem RPG-Maker arbeitet. :) Gibts den eigendlich irgendwo zu kaufen, oder muss man sich das Teil bestellen. Davon gibt es afaik ja keine dt. Version..
Ja, du musst musst den Maker für 60$ kaufen. Im Internet findest du nur Trail Versionen, für die du dann nach 30 Tagen die Lizenz kaufen musst (ob es weiter Einschränkungen gibt, weiß ich nicht) oder illegale Vollversionen, die oft auch nicht ganz Virenfrei sind.

Zitat
Oder soll das Tutorial nur für normale RPGs sein? (ich meine, man kann sich ja auch sein eigenes Menü basteln etc...)
Das Tutorial soll für "normale RPGs" sein. Ich möchte aber auch etwas tiefer in die Materie gehen und einige Dinge zum Scripting erläutern (ist auch nötig, wenn man sein eigenes Spiel komplett übersetzen möchte).
~ Signatur ~
  24.08.2009, 16:11
  • Offline


  • Drachengott
    • Nirn.de Team
Zitat
Original von Elessar
Ja, du musst musst den Maker für 60€ kaufen oder ...

Na komm, wir wollen hier mal keine Werbung für illegale Aktivitäten machen. Sollte wohl jeder selber und für sich privat wissen. Daher bitte ein wenig diskreter.

@ Topic: RPG Maker ist cool. Habe vor einigen Jahren viel damit rumgespielt. Wenn man weiß, was man tut, kann man damit definitiv viel machen.

Für Leute, die nicht großartig programmieren wollen, jedenfalls eine sehr gute Sache.
  24.08.2009, 16:22
  • Offline
  • http://www.jafjaf.de


  • Hexer
    • Magiergilde
Gibt'd den wohl bei Media Markt? Ich wollte schon längst umsteigen, da man mit XP viel größere Sprites machen kann. Beim 98er geht das ja noch nicht.

Achja und lol, mir ist klar, dass man dafür blechen muss. Sonst würe ich danach ja nicht fragen. Und mit 56k kann man das sowieso vergessen. ;)
1. Die Null finden.
2. Die Eins kompliziert schreiben.
3. Taylorentwickeln.
  24.08.2009, 16:39
  • Offline
  • http://orwan-hull.deviantart.com


  • Diplomat
    • Klingen
Zitat
Original von Alsan
Na komm, wir wollen hier mal keine Werbung für illegale Aktivitäten machen. Sollte wohl jeder selber und für sich privat wissen. Daher bitte ein wenig diskreter.

So besser? :P

Hab den zweiten Abschnitt schon zur Hälfte fertig, leider dauert es etwas, weil ich das ja nebenher selber mit dem Maker mache. :)
~ Signatur ~
  24.08.2009, 16:57
  • Offline


  • Novize
    • Magiergilde
Ich hab mir mal die Trial geholt und teste es gerade. Dein Tutorial ist der Hammer! :)
  24.08.2009, 17:39
  • Offline
  • TheMetalCrusade


  • Diplomat
    • Klingen
Danke, ich bin nun auch mit dem zweiten Teil fertig und habe direkt einen Bug in der Download-Version behoben, der das Spiel mal eben um 5 MB größer gemacht hat.  :|

Wenn ein Moderator das liest, könnte er dann bitte meinen alten Thread von der "Pinnwand" nehmen und diesen Thread stattdessen anpinnen? Danke.
Und diesmal nicht schließen wäre nett. ;)

Edit: Danke! :)
~ Signatur ~
  24.08.2009, 19:38
  • Offline


  • Diplomat
    • Klingen
Entschuldigt den Doppelpost, aber 2 weitere Kapitel sind fertig.

Könnt ihr mir bitte eine Rückmeldung geben, ob alles verständlich ist (vor allem der Teil mit den Berechnungen) und mir eventuelle Fehler (auch Rechtschreibfehler) melden? Danke. :)
~ Signatur ~
  25.08.2009, 18:57
  • Offline


  • Aspirant
    • Magiergilde
Bei den Bildern sieht es so aus, als ob Pokemon damit gemacht worden wäre!!!  :D

Moddi
« Letzte Änderung: 05.01.2012, 21:47 von moddi2222 »
  05.01.2012, 21:45
  • Offline


  • Skelett-Magier
    • Untot
Spiele, die mit dem RPG Maker XP erstellt worden, sehen häufig so aus. Ein Merkmal für solche Spiele ;)

/edit

btw. Threadfledderei!  :D
  05.01.2012, 21:59
  • Offline


  • Späher
    • Klingen
gibts eigentlich noch interressante Alternativen zum RP  maker ?

Von Programmierung hab ich net sonderlich viel Ahnung,...

Ich kann einfache basics in Java ohne grafische Oberflächen, aber eigentlich gibt es solche tools ja, damit man nicht programmieren muss, oder ;)?
Ich rufe in diesen Kreis, um sich dem Streit zu stellen:
Den, der zwischen Licht und Dunkelheit wandert.
Den, der Gerechtigkeit von Recht scheidet.
Den, der immer Schlichter und Richter ist.
Ich rufe den Goldenen Avatar!
  06.01.2012, 18:38
  • Offline


  • Diplomat
    • Klingen
Bei den Bildern sieht es so aus, als ob Pokemon damit gemacht worden wäre!!!  :D
Kein Wunder, Pokemon benutzt die gleiche Engine, auch die ganz alten Final Fantasy-Teile wurden mit einem ähnlichen Programm erstellt.

gibts eigentlich noch interressante Alternativen zum RP  maker ?

Von Programmierung hab ich net sonderlich viel Ahnung,...

Ich kann einfache basics in Java ohne grafische Oberflächen, aber eigentlich gibt es solche tools ja, damit man nicht programmieren muss, oder ;)?
Stimmt, damit lassen sich Spiele super einfach erstellen, selbst ohne Programmierkenntnisse.
Alternativen weiß ich selbst keine. Hab mich bisher nur mit dem RP Maker beschäftigt.

Btw, das erinnert mich daran, die letzten Punkte noch fertig zu stellen...
Aber im Moment bin ich zu beschäftigt. Gibt einfach viel zu viele Spiele die gespielt werden möchten, und dann bin ich ja auch noch dabei, mein eigenes zu erstellen.  :P
~ Signatur ~
  07.01.2012, 16:34
  • Offline