Beiträge von Kojote

    Ich bin bei unserem neuen Projekt jetzt gerade fertig mit den Grundmechaniken, einigen Events und dem Großteil der Plugins. Wahnsinn was das schon an Zeit futtert!


    Freu mich jetzt langsam echt die Story weiter zu planen und vor allem Maps zu bauen und Karten zu erstellen! :D

    Stimmt, da ist ein Fehler in der Bewegungsroute! 8o


    Vielen Dank fürs melden!

    An bestimmten Punkten nur heilen? Stelle ich mir schwierig vor. Nach jeden Kampf dann zum Arzt laufen? Meinst du nicht das nervt den Spieler?

    Hi!


    Was findet ihr bei einem Spiel besser (aus Spielersicht)? Wenn man Essen und Tränke einnimmt um HP und MP zu regenerieren oder eine automatische Regeneration von selbst? Habt ihr vielleicht andere Ideen oder Vorliegen?


    Ich bin gespannt und Danke fürs mitmachen! :D

    Ich hatte das beides probiert:


    Code
    this.drawIcon(5, 0, 0);
    Code
    super.drawIcon(5, 0, 0);

    Aber da ich mich mit dem Aufbau kaum auskenne scheint es nicht die richtige Lösung zu sein. Prinzipiell müsste es ja beim Titel hin.

    Code
    createPartyItemTitleWindow () {    
         const rect = this.partyItemsTitleWindowRect();    
         this._partyItemTitleWindow = new Window_Title(rect);   
         this._partyItemTitleWindow.drawIcon(5, 0, 0);
         this._partyItemTitleWindow.setTitle('Inventar');    
         this.addWindow(this._partyItemTitleWindow);  
    }

    Sonneneffekt ohne Plugin und Script


    Engine: Das Tutorial wurde mit dem RPG Maker MZ erstellt, funktioniert jedoch mit jedem anderen RPG Maker

    Rechte: Für kommerzielle und nicht-kommerzielle Verwendung im RPG Maker.

    Credits: Game Alchemists - http://gamealchemists.com


    Downloadübersicht aller Tutorials:

    Bitte melden Sie sich an, um diesen Inhalt zu sehen.


    Download des Tutorials-Projekts:

    Bitte melden Sie sich an, um diesen Inhalt zu sehen.


    Youtube-Tutorial:

    Hi!


    Vielleicht kann mir wer bei einer kleinen Scripterei helfen. Hab nen kleinen Denkfehler und komm nicht weiter. Vielleicht kann da gerade FlipelyFlip helfen? :D


    Ich habe ein Plugin, in diesem werden drei Menüzeilen angezeigt.


    Nr. 1:


    Nr. 2:

    Code
      createPartyItemTitleWindow () {
        const rect = this.partyItemsTitleWindowRect();
        this._partyItemTitleWindow = new Window_Title(rect);
        this._partyItemTitleWindow.setTitle('Inventar');
        this.addWindow(this._partyItemTitleWindow);
      }



    Nr. 3:

    Code
      createStorageItemTitleWindow () {
        const rect = this.storageItemsTitleWindowRect();
        this._storageITemTitleWindow = new Window_Title(rect);
        this._storageITemTitleWindow.setTitle('Truhe');
        this.addWindow(this._storageITemTitleWindow);
      }


    Es geht um die Strings Ablegen, Entnahme, Abbruch, Inventar und Truhe. Vor allen fünf Namen wollte ich wie auch im restlichen Menü Icons haben. Simpel und einfach funktioniert '\I[5]' als Text nicht. Grund kenne ich mittlerweile, da die Methode die den String ausliest keine Zeichen verarbeitet. Also wollte ich das mit 'drawIcon' und seinen drei Parametern lösen. Versuche ich das, bekomme ich nen Bug, dass die Methode 'drawIcon' nicht existiert. Da sie jedoch in der API ist, müsste er sie doch finden. Hast du ne Idee wie ich die Items davor bekomme?

    Ich wühl mich gerade durch die Eingeweide (Datenbank) des MZ. Macht echt Spaß! :schlag2:


    Die Frage aller Fragen: Wie bekommt man einen sechsten Ausrüstungstypen in das Spiel. Yanfly bietet die Möglichkeit mit dem Item und Equipment Core weitere Möglichkeiten. Diese scheinen sich aber auf Zubehör zu beschränken. Einen weiteren Waffentypen neben der Hauptwaffe zu erstellen ist echt schwer.

    Hach ja die leiben Importfehler von 3D Programmen fallen mir da gerade ein!


    So wurde in einem 3D Programm links aus einem Löwen auf der rechten Seite im Spiel ein... nun ja ... :hmm:


    Eine Säbelzahnkatze! :D




    Ich überlge geraed meine Meilensteine. Da müsste ich nun echt drüber nach denken. :hmm:


    Bei mir bleiben eher die Bugs und Probleme hängen die mich ärgerten. :augenbrauen:

    Haha!


    Ein Schritt mit '_data' statt 'setValue':


    Code
    $gameVariables._data[35] = ($gameVariables.value(35) / 100);
    
    $gameVariables._data[35] = ($gameVariables.value(35) * 5);


    Damit schafft er es nun folgendes zu rechnen


    (544 : 100) * 5 = 27,200000000000003


    (50 : 100) * 5 = 2,5


    27,5 zu 27,200000000000003... nun ja er ist anscheinend nicht sonderlich präzise beim rechnen. :D


    2,5 zu 2,5... das hat er hinbekommen.


    Gut runden wir wieder.


    Bei den HP kommt er von 27,200000000000003 nun nach dem runden auf 25!


    Bei den MP kommt er von 2,5 nun nach dem runden auf 5!


    Er rundet wieder auf den nächsten vollen 5er! Was rundet der? :p:

    Hi!


    Tja, dass ist die Frage! :D


    Ich möchte einen Abzug (5%) bei HP und MP beim Spieler berechnen. Die HP des Spielers betragen 544, die MP liegen bei 50!


    Der Zeexi berechnet mal im Kopf


    544 : 100 = 5,44

    5,44 * 5 = 27,5


    Der Abzug der HP beträgt 27,5 betragen!


    50 : 100 = 0,5

    0,5 * 5 = 2,5


    Der Abzug der MP beträgt 2,5 betragen!


    Der Maker rechnet


    (544 : 100) * 5 = 25


    (50 : 100) * 5 = 0


    Der Abzug der MP beträgt 0 betragen!


    Auswertung


    Woher kommt dieser eklatante Unterschied? 27,5 zu 25 bei den HP und 2,5 zu 0 bei den MP. Ich kann mir ja noch vorstellen, dass er rein mit Intagern arbeitet obwohl ich irgendwie im Hinterkopf habe, dass er eigentlich mit Floats rechnet. Dann müsste er aber auf die nächste Zahl auf oder abrunden. Er scheint aber Intager zu nutzen und diese auch noch zu runden. 8o


    Ich habs mit den normalen Berechnungen im Maker versucht, per Script und auch zwischen durch noch die Variablen gerundet. Selbes Ergebnis!


    Code
    $gameVariables.setValue(35, $gameVariables.value(35) / 100);
    
    $gameVariables.setValue(35, Math.round($gameVariables.value(35)));
    
    $gameVariables.setValue(35, $gameVariables.value(35) * 5);
    
    $gameVariables.setValue(35, Math.round($gameVariables.value(35)));

    Hat jemand ne Idee was der Maker für nen Unsinn treibt?

    Die guten Kacheln


    Wenn ihr euer kleines einmal ausprobiert, dürftet ihr nun euren Protagonisten herumspringen sehen. Ganz gut bisher, doch fehlen noch ein paar Kleinigkeiten! Zum Beispiel unsere Kacheln fehlen noch, hierzu habe ich für euch einmal etwas vorbereitet:


    rpgmakerforum.de/attachment/274/


    :achtung: Anmerkung: Die Grafik wurde aus dem Original Tileset des RPG Maker MV erstellt, ihr könnt sie also frei nutzen, so fern ihr den RPG Maker MV besitzt. Diese Grafik müsst ihr in euer Projekt einfügen unter:


    :pfeilblaurechts: Bibliotheken\Dokumente\Eigene Dokumente\Games\NAME EURES PROJEKTES\img\characters


    :achtung: Anmerkung: Der RPG Maker MV hat manchmal etwas Problem mit dem Nachladen von Grafiken, startet am besten noch einmal den Maker neu, wenn ihr die Grafik eingefügt habt.


    Wie ihr noch von ganz am Anfang des Tutorials sicher wisst, sind dies die Bodenplatten, welche über dem Abgrund liegen. Ihr könnt euch nun heraus suchen, welche Bodenplatten begehbar werden und welche später zu einem Absturz führen. Oder ihr erstellt euch mit den freien Bodenplatten neue. Ich werde als begehbare Platten die erste Spalte nutzen, dazu den Mond aus der zweiten Spalte. Somit hätte ich fünf Symbole die ich betreten kann und sieben die ich nicht betreten kann.


    Weiter geht es! Wir legen also jetzt fest, welche Tilesets begehbar werden. Dazu hatten wir uns ja auf dem Boden Markierungen gemacht. Alle Events, die auf einem blauen Untergrund liegen, bekommen jetzt eine Grafik zugewiesen.


    Öffnet also euer Event 2, Bodenplatte 2, und klickt auf das Bild ganz rechts in eurem Ereignis-Editor:


    rpgmakerforum.de/attachment/275/


    In der linken Leiste suchen wir nun unsere Grafikdatei und wählen auf der rechten Seite unser Symbol aus. Ist es ausgewählt bestätigt ihr zwei Mal mit OK:


    rpgmakerforum.de/attachment/276/


    Habt ihr alles richtig gemacht, sieht es bei euch nun so aus:


    rpgmakerforum.de/attachment/277/


    Diesen Schritt wiederholt ihr nun bei allen anderen Events, die auf einem blauen Untergrund liegen. Achtet dabei etwas auf Abwechslung der Symbole:


    rpgmakerforum.de/attachment/278/


    Damit wären wir mit den „guten“ Kacheln fertig!



    Die bösen Kacheln


    In diesem Schritt werden wir uns nun um die „bösen“ Kacheln kümmern. Denn wir müssen noch festlegen was passiert, wenn der Protagonist auf eine falsche Kachel tritt. Entscheiden könnt ihr dies selbst, ob nun ein Pfeil kommt, der den Spieler abschießt oder ob er durch die Bodenplatte fällt oder etwas ganz anderes. Ich habe mich dazu entschieden, dass der Protagonist durch die Bodenplatte fällt.


    Demzufolge müssen wir, sobald der Protagonist die Kachel betritt folgendes machen:


    :pfeilblaurechts: Der Protagonist muss unsichtbar werden, da er durch die Bodenplatte fällt

    :pfeilblaurechts: Die Begleiter des Protagonisten müssen unsichtbar werden, da sie ebenfalls durch die Bodenplatte fallen

    :pfeilblaurechts: Es muss ein Sound abgespielt werden, dass die Bodenplatte bricht

    :pfeilblaurechts: Es muss ein Loch im Boden angezeigt werden, durch welches Protagonist und seine Begleiter fallen

    :pfeilblaurechts: Der Spieler muss Game Over gehen


    Als Beispiel dient uns Bodenplatte 5. Am Ende unserer Bedingungsabfrage kommt als erstes der Befehl, dass der Protagonist unsichtbar ist. Dazu gehen wir in die Ereignisbefehle auf die zweite Reiterseite. Auf dieser Seite aktivieren wir Transparent ändern..., Schalten die Transparenz auf EIN und bestätigen mit OK:


    rpgmakerforum.de/attachment/279/


    Auf derselben Reiterseite finden wir auch den passenden Befehl, um unsere Gruppe unsichtbar zu machen. Wir gehen auf Spieler-Gefolge ändern und sagen hier AUS, bestätigt wird wieder mit OK:


    rpgmakerforum.de/attachment/280/


    Bei euch sieht das ganze demnach so aus:


    rpgmakerforum.de/attachment/281/


    Fertig? Dann geht es weiter, wir brauchen noch einen Sound, der zeigt, dass die Bodenplatte bricht. Geht wieder in die Ereignisbefehle auf die zweite Reiterseite und suchen uns SE abspielen.


    Eingestellt wird hier folgendes:


    :pfeilblaurechts: SE-Sound: Damage2

    :pfeilblaurechts: Lautstärke: 90%

    :pfeilblaurechts: Tonhöhe: 50%


    rpgmakerforum.de/attachment/282/


    Anschließend wird wieder mit OK bestätigt.


    Was nun noch fehlt, ist das Loch im Boden, dazu erstellen wir erst einmal einen Eigenschalter, der uns auf eine neue Eventseite bringt. Geht in die Ereignisbefehle auf die erste Reiterseite. Klickt hier auf Selbstschalter steuern, im neuen Fenster auf Selb.schalter A, Operation EIN, wie immer bestätigen wir mit OK.


    Passt auf, dass dieser Befehl ganz am Ende steht:


    rpgmakerforum.de/attachment/283/


    Erzeugt wird nun als letztes eine neue Ereignisseite, dies funktioniert recht einfach im Ereignis Editor:


    rpgmakerforum.de/attachment/284/


    Es öffnet sich ein neuer Reiter, in diesem stellen wir folgendes ein:


    :pfeilblaurechts: Selb.schalter: A

    :pfeilblaurechts: Optionen: Gehen und Richtung Fixieren

    :pfeilblaurechts: Priorität: Unter Charakter

    :pfeilblaurechts: Auslöser: Autorun (Autorun ist dafür da, dass das Event sofort gestartet wird, sobald es aufgerufen wird und der Protagonist sich nicht bewegen kann)


    rpgmakerforum.de/attachment/285/


    Fassen wir noch einmal zusammen, was passiert nun:


    Sobald der Protagonist das Event betritt, wird sowohl er, als auch seine Gruppe unsichtbar geschaltet. Ein Sound wird abgespielt, dass die Bodenplatte bricht und das Event wird auf eine neue Eventseite umgeleitet. Dies alles würde innerhalb eines Bruchteils einer Sekunde passieren. Der Protagonist geht also auf die Platte und wäre sofort Game Over. Recht unschön, denn der Spieler wird nun machen: Hääää???? Es muss also Zeit gegeben werden, das der Spieler realisiert, dass der Protagonist durch die Bodenplatte bricht.


    Wir sorgen also für einen Halt, dies nennt man Warte-Befehl. Geht also auf die zweite Reiterseite der Ereignisbefehle und da auf Warten. Hier stellen wir einen passenden Wert ein, ich trage 80 Frames ein. Ein Frame bedeutet 1/60 einer Sekunde. Stelle ich also 80 Frames ein, wird ein Wartebefehl von 1,3 Sekunden ausgeführt. Ihr könnt hier gern etwas mehr oder weniger eintragen, ist halt Geschmackssache. Bestätigt wird wie immer mit OK.


    rpgmakerforum.de/attachment/286/


    Im letzten Schritt auf dieser Eventseite wird noch der Game Over ausgelöst. Wieder einmal begeben wir uns in das Fenster der Ereignisbefehle, dieses Mal dritte Reiterseite, hier finden wir ganz groß Game Over:


    rpgmakerforum.de/attachment/287/


    Als aller letztes auf dieser Eventseite müssen wir die neue Grafik des Events eintragen, den Schaden im Boden. Ihr kennt den Schritt schon aus Teil 4 des Tutorials, aus diesem Grund erkläre ich nicht noch einmal alles. Das Event würde nun so aussehen:


    rpgmakerforum.de/attachment/288/


    Damit wäre diese Eventseite auch fertig. Da auf jeder Bodenplatte dasselbe passiert, können wir die nun erstellten Eventbefehle Kopieren und in den Events einfügen, die einen roten Untergrund haben.


    Zu allererst kopieren wir uns die Eventseite und fügen sie durch Einfügen in den anderen Events ein:


    rpgmakerforum.de/attachment/289/


    Danach müssen wir noch den letzten Teil des Events kopieren:


    rpgmakerforum.de/attachment/290/


    Mit gedrückter Shift-Taste, markiert ihr euch den gesamten Bereich und fügt ihn in alle anderen Events ein, die einen roten Untergrund haben.


    Fertig? Dann fehlen nun noch die restlichen Grafiken der roten Events. Dieses Mal nutzt ihr die Grafiken die übrig sind, keinesfalls die gleichen, die wir bei den guten Kacheln verwendet haben, bei mir sieht das ganze nun so aus:


    rpgmakerforum.de/attachment/291/


    Wie ihr seht, habe ich den Boden wieder komplett grau gefärbt. Im Grund genommen könnt ihr die Markierungen unter den Kacheln lassen, es ist eine gute Hilfe, falls ihr mal etwas verändern wollt. Da die Kacheln genau so groß sind wie der Untergrund würde man die Farbe auch nicht sehen. Ich habe sie nur einmal für euch entfernt, damit ihr die nun fertigen Kacheln besser sehen könnt.


    Im Grunde genommen wäre das Event nun fertig und bespielbar. Doch fehlt dem Spieler noch der Hinweis, welche Kacheln er betreten kann und welche besser nicht. Ihr könnt dies machen wie ihr wollt, ich werde dem Spieler im nächsten Teil des Tutorials eine kleine Hilfe geben.



    Die Hilfe


    In diesem Teil werden wir den Spieler eine kleine Hilfe geben, wie er unbeschadet auf die andere Seite kommt. Dazu habe ich an der Wand einen kleinen Zettel angebracht und ein Event erzeugt. Da ich dies alles schon einmal erklärt habe, hier nur einmal kurz meine Einstellungen:


    rpgmakerforum.de/attachment/292/


    Um den Spieler eine Hilfe zu geben, werde werden wir den Spieler eine Grafik anzeigen lassen, genauer gesagt dies hier:


    rpgmakerforum.de/attachment/293/


    Eingefügt wird die Grafik in eurem Projekt unter:


    :pfeilblaurechts: Bibliotheken\Dokumente\Eigene Dokumente\Games\NAME EURES PROJEKTES\img\pictures


    :achtung: Anmerkung: Die Grafik des Pergaments ist frei von pixbay.de von OpenClipart-Vectors, das Geschmiere darauf ist von mir, ihr könnt sie gern verwenden.


    Gehen wir zurück zum Event, hier soll das Bild langsam, mit einem kleinen Blendeffekt eingefügt werden. Dazu gehen wir wieder einmal in den Ereignisbefehlen, auf die zweite Reiterseite. Wir suchen uns den Befehl Bild anzeigen... und stellen folgendes ein:


    :pfeilblaurechts: Bild Nummer: 1

    :pfeilblaurechts: Bild: Laurenz_Schatz_Zettel

    :pfeilblaurechts: Deckkraft: 0 (bedeutet das, dass Bild zwar aufgerufen wird, es jedoch keine Deckkraft hat, sprich es ist unsichtbar)


    Alles andere lassen wir genau so und bestätigen wie immer mit OK.


    rpgmakerforum.de/attachment/294/


    Damit wir einen Blendeffekt bekommen, gehen wir abermals in die Ereignisbefehlen und klicken auf Bild bewegen..., hier werden folgende Einstellungen vorgenommen:


    :pfeilblaurechts: Bild Nummer: 1

    :pfeilblaurechts: Deckkraft: 255 (bedeutet das, dass Bild nun auf volle Sichtbarkeit geschalten wird)

    :pfeilblaurechts: Dauer: 60 (bedeutet das, dass Bild innerhalb von 60 Frames (1 Sekunde) voll sichtbar wird)

    :pfeilblaurechts: Warten auf Schluss muss markiert sein (sorgt dafür das, dass Bild erst komplett angezeigt wird, bis ein weiterer Eventbefehl bearbeitet wird)


    Wie immer, OK zum Bestätigen, damit hätten wir das Bild erst einmal angezeigt:


    rpgmakerforum.de/attachment/295/


    Das Bild wäre jetzt für den Spieler sichtbar, doch wollen wir auch, dass der Spieler das Bild wieder entfernen kann. Aus diesem Grund nutzen wir nun eine Schleife. Eine Schleife im RPG Maker ist ein Prozess der innerhalb eines Events so lange abgespielt wird, bis man ihn beendet, keinesfalls ist dies mit einem Parallelen Prozess zu verwechseln. Eine Erläuterung folgt gleich.


    Die Schleife findet ihr in den Ereignisbefehlen, auf die ersten Reiterseite:


    rpgmakerforum.de/attachment/296/


    Nun zur Erklärung, die Schleife würde nur den dauerhaft markierten Bereich wiederholen, so lange, bis aus dem inneren Bereich der Schleife ein Abbruch Befehl kommt. Der Unterschied zu einem Parallelen Prozess ist, dass der Parallele Prozess ständig das gesamte Event abarbeitet, die Schleife nur einen begrenzten Bereich:


    rpgmakerforum.de/attachment/298/


    Warum brauchen wir eine Schleife? Wir werden jetzt, so lange das Bild angezeigt ist dauerhaft abfragen, ob der Spieler eine Taste drückt. Drückt er diese Taste, wird das Event beendet und die Grafik wird wieder vom Bildschirm verschwinden.


    Dazu erzeugen wir eine Bedingungsabfrage, gehen in Bedingte Verzweigung auf die vierte Reiterkarte und wählen eine Tastenabfrage aus, hierbei die Taste OK, diese Taste wäre die Enter-Taste auf der Tastatur:


    rpgmakerforum.de/attachment/299/


    Wir fragen also dauerhaft ab, ob die Enter-Taste gedrückt wird, passiert dies, soll die Schleife verlassen werden, dazu nutzen wir den Befehl Schleife unterbrechen in den Ereignisbefehlen, auf Reiterseite 1:


    rpgmakerforum.de/attachment/300/


    Die Schleife hat beim RPG Maker einen kleinen Bug. Würde man diese Einstellungen nun so nutzen würde sich der RPG Maker bzw. das Spiel aufhängen. Grund ist, dass die Schleife sehr schnell abgearbeitet wird und durch die schnellen und vielen Wiederholungen sich beinahe versucht, selbst zu überholen. Dabei entsteht ein Bug und das Spiel friert ein. Diesen Bug kann man aber leicht beheben, in dem wir einen Warte-Frame einfügen, dieser löst das Problem:


    rpgmakerforum.de/attachment/301/


    Was soll nun noch passieren? Das Bild soll langsam ausgeblendet werden, dazu nutzen wir wieder den Befehl Bild bewegen..., dieses Mal wird aber die Deckkraft auf 0 gesetzt:


    rpgmakerforum.de/attachment/302/


    Zum Schluss soll das Bild wieder verschwinden, dazu nutzen wir den Befehl Bild löschen...:


    rpgmakerforum.de/attachment/303/


    Am Ende sieht das Event so aus:


    rpgmakerforum.de/attachment/304/


    Damit wären wir am Ende unseres kleines Tutorials angekommen. Ich hoffe ihr hatten Spaß daran und könnt euer Spiel um ein schönes, kleines Minispiel erweitern. Ich wünsche Euch viel Erfolg!

    Grüße!


    Ich will vor dem Ausführen eines Events überprüfen ob er Spieler einen bestimmten Gegenstand im Inventar hat. Normal könnte man das über eine Bedingungsabfrage machen. Problem ist, bei 20 Items wird das etwas sinnlos und unübersichtlich. Kennt jemand nen Scriptcall mit dem man ein bestimmtes Item abfragen kann?