Animation ohne Kampf-Animation?

  • Hallo allerseits!


    Ich hab eine Frage, und vielleicht gibt es ja eine Lösung:


    Wenn ich im Moment eine Animation abspielen will (z.B.: der Spieler zieht sein Schwert) mach ich das über eine Kampf-Animation, die ich dann am Screen

    direkt über dem Spieler zeige. Währenddessen wird der Spieler unsichtbar, weil die Animation ihn zeigt. Mit dem richtigen Timing sieht das dann rund aus.


    Ich erstelle also zunächst außerhalb vom Maker die Einzelbilder, mache ein Animations-Sheet daraus, und erstelle dann eine Kampf-Animation im Maker um diese dann abzuspielen.
    Scheint mir aber eigentlich unsinnig: Obwohl ich die fertige Animation eigentlich schon habe, muss ich sie als Einzelbilder exportieren und nochmal neu zusammenstoppeln.


    Gibts da eine bessere Lösung dafür? Passendes Plugin oder sowas hätte ich keines gefunden... Oder ist die Methode einfach falsch? Oder gibts einfach keine andere?


    MFG

  • Beim 2000er hatte kannte ich es so mit verschiedenen charasets, anderes Set mit zbsp 4 frames (links oben rechts unten) den Charakter das Set zugewiesen und die frames mit Bewegungssteuerung "abgespielt" quasi ihn drehen lassen damit die anderen frames abgespielt werden. Da finde ich aber deine Variante besser ? denke mal die pros hier haben ne Möglichkeit

    Wenn du mich unterstützen willst, kaufe mir gern einen

    kofi2.png

  • Hey!


    Ist zwar ein nettes Plugin, aber leider nicht das was ich suche denke ich.

    Was du verlinkt hast ist doch eher dafür gedacht, die normale Geh-Animation mit mehr Frames auszustatten, oder?


    Was ich jedoch meine ist: Normale Animationen, welcher Art auch immer, im Game anzeigen zu lassen, ohne diese vorher als Kampf-Animation im Maker erstellen zu müssen.


    Oder benutzt du das Plugin auf eine besondere Art und Weise, die das (einfach) möglich macht?

  • Jep, du kannst das Plugin schließlich flexibel nutzen.

    Deine normalen Sprites werden weiterhin, wie gewohnt, behandelt und die Plugin-Sprites, mit den entsprechenden Dateinamen, können quasi unendlich viele Sprites, pro Blickrichtung haben, wobei die einzelnen Frames von links nach rechts abgespielt werden, womit du jegliche Animation darstellen lassen könntest.

    Die Vorgehensweise werde ich auch für mein eigenes SV-BS nutzen.

    Mighty greetings


    Mighty Mufflon aka Paddy

    MMG_-_Banner_1.png

  • Hi.


    Ich benutze das DynamicEquip-Plugin von SumRndDde. Wenn du eine Database-Waffe (zb schwert) anlegst, legt dein Charakter einen vordefinierten sprite an. der hut, die klamotten, alles bleibt gleich nur der waffen-sprite wird dem charakter hinzugefügt. so kannst du waffen, hüte, klamotten nach belieben wechseln und nur das jeweilige equip-sprite wird hinzugefügt. eine art on-map-character-editor. wenn du jetzt mit ausgewählter waffe ENTER drückst, kannst du über einen equip-dummy eine animation einfügen. klingt kompliziert, ist aber sehr effiktiv. wenn du den dreh raus hast, kannst dreihundert waffen einfügen und brauchst nur die waffen modelieren, nich den ganzen char.

  • Mighty Mufflon Ah ok, jetzt verstehe ich wie du es meinst.


    Hab es jetzt grundsätzlich Mal hinbekommen, in dem ich die Helden-Grafik ändere, die Schritt-Animation einschalte und dann eben bis zum Ende der Frames warte.

    Funktioniert an sich ganz gut, denke so hast du das gemeint?


    Hab allerdings dennoch ein Problem:

    Siehst du eine Möglichkeit, die Frames schneller abspielen zu lassen?

    Selbst bei höchster Geschwindigkeit/Frequenz ist die Animation bei 5 Frames recht ruckelig, weil normale Kampf-Animationen wohl um einiges schneller abspielen.


    Pixeldrama Das ist jetzt dann glaube ich tatsächlich nicht das, was ich suche.

    Es geht mir nicht um Waffen-Sprites, etc.. sondern ganz allgemein um Animationen eines Charakter-Sprites. Trotzdem danke!


    MFG

  • Mh, jetzt ist die Frage, findet die Animation auf der Stelle statt oder soll sich der Char dabei noch horizontal und/oder vertikal bewegen?

    Wenn es dir zu langsam sein sollte und die Animation findet ohnehin "fixiert" statt, dann nutz doch einfach den Show-Picture-Befehl und spiel darüer die einzelnen Frames ab.
    Du kannst dann zwischen den Pictures/Frames minimal 1 Warteframe setzen (0 geht logischerweise nicht, da du sonst die Animation nicht mehr erkennen würdest^^), sofern dir das dann zu schnell sein sollte, erhöhst die Warteframes, nach Belieben, einfach.

    Mighty greetings


    Mighty Mufflon aka Paddy

    MMG_-_Banner_1.png

  • Im Normalfall an seber Stelle als kurzzeitiger Ersatz für den Helden/Spieler.


    Nun gut, dann müsste ich aber wieder jeden Frame einzeln als Bild anlegen, an korrekter Stelle (also direkt über dem Helden) anzeigen, und löschen und den nächsten, etc... Dann werden es halt zig Bild-Dateien bestehend aus jeweils nur 1 Frame.
    Wäre natürlich auch eine Lösung, aber ich hätte gehofft dass es doch etwas einfacher geht.


    Das einzige was ich jetzt noch gefunden hätte wäre ein Plugin von Iavra (iavra gif). Damit kann ich zumindest mehrere Frames als 1 Bild erstellen und dieses dann "abspielen", da kann man auch die Framerate bzw. Geschwindigkeit bestimmen. Dann wäre es nur 1 Datei pro Animation.


    Nur an der korrekten Stelle, also direkt über dem Helden, muss es halt auch abgespielt werden. Die X und Y Koordinaten vom Spieler sind ja noch einfach, aber weil man das Bild ja nicht mit Anker "unten mittig" anzeigen lassen kann, gibts noch nen Offset.


    Im Prinzip bleibt also die Frage:

    Kann man die Höhe eines Bildes (das nicht angezeigt wird, also nur aufgrund der Dateiangabe) in einer Variable abspeichern? Weiß das vielleich jemand? Dann wäre das eine brauchbare Lösung.



    Danke Mal für alle Vorschläge! Falls jemand noch andere Ideen hat, immer her damit ;)

  • Öhm, du kannst Bilder einfach die ganze Zeit "unsichtbar", also mit 0 Opacity anzeigen und eben dann die Opacity hochschrauben, wenn du das Bild brauchst oder du legst dir tatsächlich einfach Variablen an, für die verschiedenen Animationen und wählst dann eben beim Show-Picture-Befehl die Variablen aus, anstatt direkte Werte.

    Ich hab' gerade noch was gefunden: https://galvs-scripts.com/2015/10/24/mv-move-route-extras/

    "

    FEATURES


    This plugin adds script commands you can use in ‘Move Routes’ that enable you to do extra things during autonomous and forced movement such as:


    – jump forward x spaces


    – ...


    – repeat commands a number of times


    – play ballons/animations


    – set graphic to a particular frame


    So könntest du, über eine Moveroute den gewünschten Frame ansteuern und dies eben auch mit einem Minimum von 1 Warteframe, zwischen den Frames, abspielen lassen.

    Mighty greetings


    Mighty Mufflon aka Paddy

    MMG_-_Banner_1.png

  • Hey, danke nochmal für den Tipp!


    Hab es jetzt aber doch anders gelöst.

    Vielleicht kann es ja jemand brauchen, meiner Meinung nach ist es die einfachste Methode eine (bereits vorhandene/erstellte) Animation im Maker anzuzeigen, ohne dass diese extra als Kampf-Animation erstellt werden muss:


    Plugin:

    Iavra Gif


    Vorgangsweise:

    Wenn z.B. ein Gif vorhanden ist: Das GIF als Sprite-Sheet in 1 Zeile exportieren und im Projekt abspeichern.

    Es müssen also alle Frames in 1 Zeile als Bild gespeichert werden.


    Dann die Datei so benennen wie im Plugin angegeben, und schon kann man mit nur 1 "Bild-Zeigen" Befehl eine komplette Animation abspielen. Die Anzahl der Frames und auch die Geschwindigkeit werden im Dateinamen angegeben.


    Man muss somit nicht per Move-Route die Frames auswählen, noch sonstige Befehle nehmen:

    Bild zeigen, frames abwarten, Bild löschen und das wars.


    Noch ein Tipp: Wenn man mit der Animation (so wie ich) kurzzeitig den kompletten Helden ersetzen will, einfach die aktuelle Helden-Position in Variablen speichern und das Bild dort anzeigen lassen, und zwar als Position "mittig". Die Animation muss dann nur so erstellt werden, dass die vertikale Mitte des Bildes der "Standpunkt" vom Helden ist, er also von der Mitte weg nach oben steht. Klingt etwas kompliziert, aber ich denke wenn man genau die Situation haben möchte, weiß man was ich meine. Wenn nicht, gerne fragen 8o


    MFG