RPG-Maker Quartier

Hier dreht sich alles um die RPG-Maker-Reihe von ASCII/Enterbrain. Der RPG-Maker ist ein Tool, mit dem du dir dein eigenes kleines Rollenspiel erstellen kannst. Du findest hier alles, was du dazu brauchst. Aber natürlich umfasst die Community noch mehr!
Aktuelle Zeit: Di Mär 03, 2020 1:55

Alle Zeiten sind UTC + 1 Stunde



Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste



Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 
Autor Nachricht
Offline
Official Oldschool
Official Oldschool
Beiträge: 9034
BeitragVerfasst: Do Jun 01, 2006 15:12 
Aloha erstmal.

Verwirrender Titel eh? Jedoch beschreibt der Titel ganz gut die häufigste Fragestellung im Technikforum. Es wird gepostet um zu fragen wie Sache XYZ gemacht wird.Das endet meist in unsäglichen Fragethread. In diesem postet die Person Amok und fragt eine Sache nach der anderen. Bedauerlichweise sind diese Fragen leider keine. Sie drehen sich lediglich um die Umsetzung.

Jedoch bemerkt man sehr gut das die entsprechenden Personen keinen Finger gerührt haben um es selbst zu versuchen.
Andere wissen einfach nur nicht was sie mit dem neu gelernten aus Kurs und Ebook anfangen sollen.
Was ich nun hiermit erreichen will? Ich möchte allen die selbst etwas erreichen wollen helfen. Wie sonst auch.

Dies möchte ich tun indem ich ein Tutorial schreibe. Das Thema dieses Tutorials soll lauten :

Wie mache ich das ?!



Wie der Titel verrät (oder auch nicht) möchte ich euch hier beibringen wie man systematisch an ein Problem rangeht. Ich setze voraus das ihr euch ein gewisses Grundwissen erarbeitet habt. Solches Wissen ist elementar um selbst Probleme lösen zu können. Ihr könnt das? Gut. Dann an die Arbeit.



Inhalt

Post 1 - Wie plane ich eine Truhe ?

Post 2 - Werkzeugkasten des Makers

Post 3 - Wie plane ich ein AKS? & Schlusswort


Zuletzt geändert von Makenshi am Do Jun 01, 2006 18:40, insgesamt 4-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
Offline
Official Oldschool
Official Oldschool
Beiträge: 9034
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 15:12 
Post 1 - Wie plane ich eine Truhe ?

Unser erstes Beispiel soll etwas simples sein. Nämlich eine recht häufige Frage :

Wie mache ich eine Truhe/Tür mit einer Animation auf?



Habt ihr noch nie gemacht? Ihr wisst nicht wie? Dann beschäftigt euch mit dem Kurs und dem Ebook. Ach...habt ihr? Ihr wisst trotzdem noch nicht wie? Dann gehen wir mal dran. Wir müssen die vor uns liegende Aufgabe in ihre Teile zerstückeln. Was brauchen wir?

- Ein Event für die Truhe ( Im Maker erstellen )
- Die Grafik einer Truhe (RTP)
- Eine Animation (RTP)
- Einen Soundeffekt für die Öffnung (RTP)
- Einen Soundeffekt als Bestätigung (RTP)

Alles haben wir im Maker. Wunderbar. Wie setzen wir es um? Erstmal sollten wir eine normale Truhe erstellen die sich normal und nur einmalig öffnen lässt. Wir erstellen also ein 2 Seiten Event. Auf der ersten Seite ist die Truhe(geschlossen) als Grafik ausgewählt. Was an Code reinkommt ist denke ich klar. Wir brauchen erstmal ein einen Soundeffekt damit man hört das sich die Truhe öffnet.
Nun kommt unsere Animation. Wie mache wir eine Animation? Um eine Animation simpel über ein Charaset (wie in diesem Fall) zu erzeugen haben wir Move Events. Über dieses Commando im Maker kann man alle Events die es auf der Map gibt bewegen , unsichtbar machen und weiß der Henker was.

Wir rufen nun diesen Move Event Befehl auf. Dort stellen wir die Befehle "Face Right" , "Face Up" und "Face Down" ein. Als Event solltet ihr am besten "This Event" auswählen. Damit könnt ihr dieses Move Event auch für andere Truhen nutzen. Sonst müsstet ihr es immer wieder einstellen.
Nach dem Move Event sollte ein "Move all" folgen. Dies ist der 3te Befehl von unten , rechte Spalte auf der 2ten Seite des Eventbefehlsregisters. Dadurch sichern wir das erst die Animation abläuft und dann erst unser restlicher Code kommt.


Als nächstes wäre eine Message empfehlenswert. In diese schreiben wir rein welches Item der Spieler soeben erhalten hat. z.B. :

Zitat:
Heiltrank gefunden !


Danach spielen wir einen weiteren Soundeffekt ab. Dieser soll signalisieren -> Spieler du hast ein Item bekommen.
Hiernach folgt nun ein "Add Item" Befehl über dem wir unserem Helden den Heiltrank in die Tasche "zaubern".

Die Truhe hat nun ihre Schuldigkeit getan nicht wahr? Also aktivieren wir nun unseren Switch und aktivieren damit die 2te Seite unseres Truhen Events. Dort sollte die Grafik unserer Truhe eingestellt sein wie sie geöffnet ist.

Gut. Wir haben eine Truhe gemacht. Wozu? Sollte doch ein Tutorial über Logik werden? Wird es. Wird es. Was haben wir gemacht? Wir haben geplant.

- Wir haben analysiert was für Ressourcen wir für unsere Truhe brauchen. (Sowohl grafisch als auch soundtechnisch)

- Wir haben uns überlegt was wir Makertechnisch machen müssen. ( 2 Seiten Event)

- Wir haben uns die Umsetzung vorher überlegt. ( Move Event Nutzung für die Animation , Abspielung von zwei Sounds und Ausgabe einer Message)


Zuletzt geändert von Makenshi am Mi Sep 05, 2007 16:44, insgesamt 8-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
Offline
Official Oldschool
Official Oldschool
Beiträge: 9034
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 15:12 
Post 2 - Werkzeugkasten des Makers

Wir sollten also wenn uns die Frage qüalt "Wie mache ich das?!" folgendes überlegen :

- Was brauche ich an Ressourcen für die Aufgabe? Ergo -> Was brauch ich für Grafiken? Was für Sounds? Sonst
noch etwas was ich benötige?

- Wie setze ich das ganze im Maker um? Ist es umsetzbar? Welche Befehle und Prinzipien kann ich dafür benutzen?


Bevor ich euch die Werkzeuge des Makers zeige...mit Befehlseventregister meine ich das hier :

Bild



Unsere Werkzeuge :

- Message(1te Seite des Eventbefehlregisters , 1ter Befehl von oben , linke Seite) :

Befehl um Textnachrichten auszugeben. Ebenfalls sehr nützlich um Fehler in Scripten zu finden. Diese Befehle
stoppen den Eventfluss sobald sie z.B. in einem Parallel Process vorkommen. Ebenfalls lassen sich in ihnen mit
dem Kommando "\v[Variablennummer]" Variablenwerte ausgeben. Auf diese Art und Weise kann man rausfinden wo
Fehler im eigenem Script sind. Wunderbares Werkzeug.


- Switche(1te Seite des Eventbefehlregisters , 7ter Befehl von oben , linke Seite) :

Dies ist eine sogenannte Boolesche Variabel. Herr Boolean war ein Mathematiker...nur zur Info. Diese Variable
die im Maker mit dem Namen "Switch,Schalter usw." betitelt wird kann nur den Wert 0 oder 1 annehmen.
Ergo ist sie perfekt um AN/AUS Zustände und ähnliches umzusetzen.

Beispiele : Truhen , Lichtschalter , Entgültiges Ausschalten von Events uvm.


- Variable(1te Seite des Eventbefehlregisters , 8ter Befehl von oben , linke Seite) :

Hier haben wir es mit dem Variablentyp "Integer" zutun. Die Makervariante kann Werte von "-9999999" bis
"9999999" annehmen. (2k) Diese Schmuckstücke des Makers sind unser tägliches Werkzeug. Mit ihrer Hilfe können
Werte(HP,MP,EXP,Geld  usw.) abgespeichert werden. Der Makerbefehl hierfür hat zudem auch noch zahlreiche
Kommandos um die Variablen zu addieren , subtrahieren , multiplizieren zu "modularen" und noch vieles mehr.

Auch ein paar wichtige Daten können wir über diese Kommandos bekommen. So kann man die aktuelle X/Y Position eines Events auf der Karte (also auch des Helden) auf der Karte erhalten. Dies ist in Pixelgenauen Angaben wie auch in Koordinaten für das 16x16 Pixel Rastersystem des Makers möglich. Welches Rastersystem? Achtet mal auf die Map wenn ihr im Event Modus seid....alles ist in Kästchen. Jedes dieser Kästchen hat eine Höhe von 16 Pixeln und eine Breite von 16 Pixeln. Der Maker zählt das Kästchen was ganz oben in der Ecke ist als Kästchen 0/0. Das dadrunter ist 0/1. Das rechts von diesem Kästchen wäre 1/0. Zuviel um es sich so vorstellen?

Die Bilder nahen :

Bild

In genau sowas ist der ganze Bildschirm eingeteilt. Der Maker teilt diesen Koordinatenbereich nochmal in
16x16 Pixel Große Kästchen ein. Jeder Event passt genau in eines dieser Kästchen. Ergo muss es 16x16 Pixel groß
sein.  Der Maker kann damit also feststellen auf welchem Punkt des Monitors die Events in diesem Kästchensystem sind.

Dies ist sehr nützlich um ein einfaches Kampfsystem zu erschaffen. Wir können also mithilfe des Variablen Befehls auch an solche wichtigen Daten kommen. Schaut ihn euch also gut an.


- Memorize Position(2te Seite des Eventbefehlregisters , 6ter Befehl von oben , linke Seite) :

Dieser Befehl speichert ab auf welcher Map der Held sich grade befindet. Dies tut er indem er die aktuelle Map
ID abspeichert. Jede Map die ihr im Maker erstellt hat eine solche Map ID.

Zudem speichert er die aktuellen X und Y Koordinaten des Helden ab.


- Store Terrain ID/Store Event ID(2te Seite des Eventbefehlregisters , 3 - 4ter Befehl von oben , linke
Seite) :


Diese 2 Befehle arbeiten fast gleich. Der Terrain ID Befehl frag ab welche Terrain ID das Feld hat auf den er
angewendet wird. Dies kann über Koordinaten als auch manuell geschehen. Jeder Terraintyp im Maker hat eine
eigene ID. Diese könnt ihr übrigens in der Datenbank unter den Chipsets selbst einstellen. Diese ID liefert
euch dieser Befehl.

Der Event ID Befehl arbeitet ebenfall so. Nur liefert er euch anstelle der Terrain ID die ID vom entsprechenden
Event das sich auf dem per Koordinaten oder manuell angegebenen Feld befindet.



- Show Picture , Move Picture , Delete Picture(2te Seite des Eventbefehlregisters , 6 - 8ter Befehl von
oben , rechte Seite) :


Diese 3 Befehle sind für die allumfassende Manipulation von Bildern da die ihr in den Maker importiert habt.
Ihr könnt sie per Show Picture anzeigen , mit Move Picture bewegen und mit Delete Picture wieder löschen.

Jedigliche grafische Realisierung die über Pictures/Bilder erfolgen soll benötigt diese Befehle. Schaut sie
euch an. Schaut was ihr damit anstellen könnt. Ihr werdet sie auf jeden Fall brauchen.


- Show Battleanimation(2te Seite des Eventbefehlregisters , 7ter Befehl von unten , rechte Seite) :

Zeigt eine Battleanimation. Für die Realisierung von grafischen Effekt sicherlich toll. Auch fürs eigene KS
nicht zu verachten.


- Flash Sprite(2te Seite des Eventbefehlregisters , 5ter Befehl von unten , rechte Seite) :

Hiermit könnt ihr ein Event auf der Karte blinken lassen. In welcher Farbe und noch viel mehr könnt ihr
ebenfalls damit realisieren.


- Move Event(2te Seite des Eventbefehlregisters , 4ter Befehl von unten , rechte Seite) :

Der Befehl schlechthin um Events auf der Map durch die Gegend zu bewegen. Auch zur Realisierung von Animationen
wichtig. Überlegt am besten warum die Animation im Truhen Beispiel durch "Face Up" usw. entstand. Schaut euch
dafür das Charaset der RTP Truhe an. Dann fällt es euch sofort wie Schuppen von den Augen.

Alles in allem bietet der Move Event Befehl auch noch jede Menge Optionen mit denen man die Bewegungen genauer
seinen Wünschen anpassen kann.

Sehr wichtiger Befehl.


- Proceed with Movement(2te Seite des Eventbefehlregisters , 3ter Befehl von unten , rechte Seite) :

Wartet mit dem fortsetzen des Nachfolgenden Code bis alle momentan laufenden Move Event Befehle abgelaufen
sind. Sehr nützlich um z.B. Gespräche nach Bewegungen durch Move Events zu timen.


- Halt all Movement(2te Seite des Eventbefehlregisters , 2ter Befehl von oben/unten , rechte Seite) :

Stop sofort alle laufenden Move Event Befehle.


- Wait(2te Seite des Eventbefehlregisters , 1ter Befehl von oben/unten , rechte Seite) :

Der Wait Befehl löst ein Warten innerhalb des Codes aus. Der darauffolgende Code wird also um die angezeigte
Zahl von Millisekunden verzögert.


- Play , Fade , Memorize und Play Memorized BGM(3te Seite des Eventbefehlregisters , 1-4ter Befehl von
oben , linke Seite) :


Spielt eine Hintergrundmusik ab = Play
Lässt eine Hintergrundmusik langsam ausklingen = Fade
Merkt sich die aktuelle BGM = Memorize
Spielt die gemerkte BGM ab = Play Memorized


- Play Sound Effect(3te Seite des Eventbefehlregisters , 5ter Befehl von oben/unten , linke Seite) :

Spielt einen auswählbaren Soundeffekt ab.
Wird auch durch den Ineluki Patch genutzt um script.wav Dateien abzuspielen.


- Key Input Processing(3te Seite des Eventbefehlregisters , 7ter Befehl von oben , linke Seite) :

Hierrüber könnt ihr abfragen ob ein Spieler eine dort eingestellte Taste gedrückt hat. In die von euch
eingestelle Variable wird ein Wert gesendet sobald der Spieler die entsprechende Taste drückt. Dadurch wissen
wir nun das er sie gedrückt hat.

Sehr nützlich also um z.B. eigene Menüs umzusetzen. Leider unterstützt der Maker nicht allzuviele Tasten. Der Inluki Patch hilft ihm jedoch auf die Sprünge. Wer mehr zu dem Thema wissen will sollte sich den Link in meiner
Signatur anschauen.


- Allow/Disallow Main Menu(3te Seite des Eventbefehlregisters , 4ter Befehl von oben , rechte Seite) :

Damit könnt ihr den Zugriff auf das normale Makermenü verhindern. Wunderbar wenn man ein eigenes Menü machen möchte und/oder wenn ihr die Taste X/ESC nutzen wollt.


- Fork(3te Seite des Eventbefehlregisters , 5ter Befehl von oben , rechte Seite) :

Eine IF Abfrage verbirgt sich hinter diesem Befehl. Mit ihrer Hilfe könnt ihr den Zustand von unseren Switch und Integer Variablen abfragen. Erinnert ihr euch an die Erklärung vom Key Input Processing ? Dort habe ich ja gesagt das beim Druck einer Taste ein Wert in die eingestellte Variable gesendet wird.

Mithilfe dieses Befehl könnt ihr abfragen welchen Wert diese Variable nun hat. Beim Drücken der Taste Enter wird der Wert "5" in die Variable gesendet. Wenn wir nun abfragen ob die Variable den Wert "5" hat , dann wissen wir das zu dem Zeitpunkt wo sie ihn hat  wohl die Taste "ENTER" gedrückt worden sein muss.

Dementsprechendes können wir dann in den Fork die entsprechendes Befehle setzen die auf Druck der Taste "ENTER" erfolgen sollen.

Bild

So sähe das ganzen bildlich aus.


- Loop(3te Seite des Eventbefehlregisters , 8ter Befehl von oben , rechte Seite) :

Eine Schleife die den in ihr befindlichen Code immer und immer wieder wiederholt. Dies tut sie solange bis der Befehl Break Loop erfolgt.


- End Event Processing(3te Seite des Eventbefehlregisters , 6ter Befehl von unten , rechte Seite) :

Beendet das aktuelle Event auf der Stelle.


- Erase Event(3te Seite des Eventbefehlregisters , 5ter Befehl von unten , rechte Seite) :

Löscht das aktuelle Event temporär.
Beim nächsten betreten der Karte auf dem das Event sich befindet ist es wieder aktiv.


- Call Event(3te Seite des Eventbefehlregisters , 4ter Befehl von unten , rechte Seite) :

Ruft ein bestimmtes Map oder Common Event auf. Gut geeignet um rechenintensive Sachen wie HP Leisten und ähnliches nur einmal aufzurufen. So spart ihr Rechenleistung.


- Insert Comment(3te Seite des Eventbefehlregisters , 3ter Befehl von unten , rechte Seite) :

Legt einen Kommentar im Maker Code an. Göttliche Funktion. Damit könnt ihr euren Code für euch erkannbar machen. Sehr wichtig um sich später in großem Makercode zurechtzufinden.



Ziemlich großer Werkzeugkasten huh? Wenn der Befehl bei euch anders heisst -> Einfach auf die Positionsangabe
rechts vom Befehl schauen. All diese Werkzeuge sind dafür da uns beim realisieren unserer Vorstellungen zu helfen. Sie sind nur das hauptsächliche. Es gibt auch noch ein paar andere Sachen die euch vielleicht auch mal nützen könnten. Schaut euch einfache alle Seiten des Eventbefehlregisters an.


Zuletzt geändert von Makenshi am Do Nov 01, 2007 17:13, insgesamt 9-mal geändert.

Nach oben
 Profil  
Mit Zitat antworten  
Offline
Official Oldschool
Official Oldschool
Beiträge: 9034
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 15:12 
Post 3 - Wie plane ich ein AKS? & Schlusswort

Nun zum Abschluss gibt es noch ein sicherlich gewünschtes Beispiel...das eigene AKS. Zumindestens die Planung davon :

Grafiken :

- Charaset vom Helden
- Schlaganimation vom Helden (als BA oder Charaset)
- Monstercharaset
- Ein Chipset um eine Testumgebung zu erschaffen
- KS HUD Grafiken (HP Leisten usw.)

Sounds :

- Schlagsounds
- Kampfschreie (als Vorschlag)
- Monster und Heldensterbesound
- Treffergeräusche der jewaligen Waffen

Aufgaben im Codetechnischen

Was brauchen wir nun alles ? Aus was besteht so ein AKS? Wir teilen uns den großen Brocken "AKS" in viele kleine Häppchen auf :

- HP/Mana/EXP Leiste erschaffen
- Kollisions/Trefferabfrage erschaffen (zwischen Held und Monster ; zwischen Monster und Schwert des Helden usw.)
- Level Up Verfahren ( Was geschieht nach einem Level Up? Erstellt euch ein Common Event und callt dieses bei Bedarf)
- Schlag auslösen ( Animation abspielen , Trefferabfrage für das Schwert callen)
- Monster ( Random Movement [KI wäre zu schwer erstmal] , Kollisionsabfrage von Monster zu Helden callen [Held und Monster kollidieren = Lebensverlust] )


Das wäre die Grundplanung für ein simples AKS. Es würde jedoch AKS genannt werden können....nicht mit so simplen Scripten vergleichbar wie dem Dreamland AKS. Wie löst ihr nun diese Probleme? Schaut in unserer Werkzeugliste nach welche Werkzeuge euch dabei helfen können die Probleme zu lösen die sich euch auftun.
Schreibt eure Gedanken auf Papier auf. Werdet kreativ und habt Spaß daran es zu sein. Das ist das was man "Scripten" am Maker nennen kann.


Schlusswort


Egal ob ihr ein AKS oder eine simple Truhe macht...das ist das was die Technik am Maker ausmacht. So macht ihr das. So könnt ihr eure Ideen umsetzen.
Falls euch Fehler auffallen -> postet. Jeder kann Fehler machen. Ich hoffe das dieses Tutorial hilft euch in diese Gedankenwelt einzuführen und euch darin dienlich ist. Danke übrigens an Schorsch den ich vollquasseln durfte während ich das hier schrieb. *g*


Gehabt euch wohl.


- Makenshi


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Attention-whore
Attention-whore
Benutzeravatar
Beiträge: 1882
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 16:15 
Makenshi dein Tutorial hat mich sehr beeindruckt.
Es enthält alles was man braucht und es ist eine gute Hilfestellung
für Neuanfänger mit dem RPG-Maker 2000/2003/XP. Dein Tutorial
ist sehr emfehlendswert.

_________________
http://www.phpsec.de - Alles über PHP, IT-News, Websicherheit und mehr.


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Attention-whore
Attention-whore
Benutzeravatar
Beiträge: 1549
Alter: 27
Wohnort: Essen / Bergerhausen
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 16:28 
Wow , sehr schön ich glaube das ist , was sich wohl jeder Anfänger wünscht... Daumen hoch ! Alles sehr übersichtlich und zusätzlich teilweise gebildert...
Alles zusammen macht einen sehr schönen Eindruck...

Shaldy.

_________________
Bild


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Citizen Nerd
Citizen Nerd
Benutzeravatar
Beiträge: 1067
Alter: 28
Wohnort: dunkel
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 17:15 
Dito.
Ein sehr gutes Tut, sollte in die Linkliste aufgenommen werden...

_________________
Bild
Zeph hat geschrieben:
ich esse gerne Döner, sie ist gerne Döner


Nach oben
 Profil ICQ  
Mit Zitat antworten  
Offline
Technik-Freak
Technik-Freak
Benutzeravatar
Beiträge: 6635
Wohnort: Köln =0
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 19:18 
Wird sofort gemacht....

_________________
Bild

1,24€ die Minute


Nach oben
 Profil  
Mit Zitat antworten  
Offline
Official Oldschool
Official Oldschool
Beiträge: 9034
 Betreff des Beitrags:
BeitragVerfasst: Do Jun 01, 2006 20:24 
Huch Oo Was ein Feedback. ^^
Freut mich das es euch gefällt. Und natürlich danke für den Listeneintrag.


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 9 Beiträge ] 

Alle Zeiten sind UTC + 1 Stunde


Du darfst keine neuen Themen in diesem Forum erstellen.
Du darfst keine Antworten zu Themen in diesem Forum erstellen.
Du darfst deine Beiträge in diesem Forum nicht ändern.
Du darfst deine Beiträge in diesem Forum nicht löschen.
Du darfst keine Dateianhänge in diesem Forum erstellen.

Suche nach:
Gehe zu:  
cron
Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de