Der Fluch der Parallel Prozesse und der Absturz

  • Ja hallo und so, ja das Thema kann man ein Problem nennen^^


    Und zwar habe ich eine Auswahl gemacht On-Map-"Menü" quasi und der Maker mag mich deswegen wohl nicht mehr.

    Entweder zieht der Spieler ein Feld weiter als er darf oder aber der Maker nimmt keine Befehle mehr entgegen aka. Pfeiltasten.


    Jetzt könnte man meinen ich rede hier gerade in einer anderen Sprache, deswegen komme ich mal kurz und knackig auf dem Punkt.

    Maker startet - Spieltest startet - Titelbild taucht auf - Neues Spiel (Mit runtergedrückter Pfeiltaste) - Map erscheint - Bewegung per Pfeiltasten nicht mehr möglich.
    Halte ich keine Pfeiltaste gedrückt funktioniert das Event 1a.


    Jetzt muss ich noch erwähnen das 2 Parallel Prozesse auf der Karte laufen.
    Eins ändert die Grafik des Spielers und schaltet auf Seite 2 um für eine ständige Animation bzw. Bewegung des Spielers.
    Das andere fragt ständig die Position des Spielers ab und ob eine Eingabe nach rechts oder links getätigt wird, auch dieses ist ein Parallel Prozess, weil der Autorun keine Events auslöst mit der Option "Durchgang"


    Vielleicht kann mir jemand mit dem bockigen Maker helfen, das würde mein On-Map-"Menü" retten^^

  • Bitte stelle doch eine Demo, oder zumindest Screenshots deines Menücodes zur Verfügung. Dann finden wir die Ursache bestimmt schneller als pur zu raten. :)

    Aber um mal einen Schuss ins Blaue zu machen: Hast du einen Warten-Befehl am Ende deiner Befehlsketten, die auf PP laufen? (Einer der typischsten Probleme ist, dass der Maker ohne Wartezeit Befehle so schnell wiederholt, dass sie nicht nur die Performance ins die Knie zwingen, sondern sich auch manchmal selbst blockieren, oder aufheben.)

  • Okay mögliche Fehler:

    - Zum einen: Setze immer eine Wartezeit ans Ende eines Events. Damit läuft das Spiel um einiges flüssiger ;)

    - Bei den Move-Befehlen (weiß jetzt nicht ob das im MV auch so ist) gibt es normalerweise ein häkchen das man setzen kann, wenn ein Held bzw. das Event hängen bleibt. Friert sonst ein (War beim 2k3 zumindestens so)

    Aber um ehrlich zu sein überblcike ich das ganze net ganz xD

    Kleiner Tipp: Versuch alles mit Kommentaren zu versehen, so findest du zum einen schneller wieder rein (falls du mal ne Zeit lang nichts dran machst) und bei Fehlern können wir die Sachen besser nachvollziehen :D


    Was ich verstehe:


    Also Event 001 ändert das Akteurbild, macht ihn zum Geist und deaktiviert die "Geh-Animation".
    Danach schaltet sich das Event selbst. Okay.


    Das Dorf-Event gibt dir im Grunde ne Auswahl-Möglichkeit bei Berührung. Auch gerafft.


    Event 006: Seite 1 verstehe ich nciht ^^ Würd ich mal sagen ist nur ein Test, ob das Event überhaupt läuft xD

    Seite 2 steuert dann die Links/Rechts-Bewegung. Warum dann aber Seite 3? oO


    -MrSerji

  • Seite 3 ist dazu da, weil Seite 2 nur den Start des Events regelt, also Bewegung um nur 2 Felder, Seite 3 macht das ganze die ganze Zeit um 4 Felder, bis der Spieler sich für eine der 4 Optionen entscheidet.
    Dazu kommt noch das Seite 3 verhindert das man sich an den Rand bewegen kann, es ist quasi Ende an Event 1 und Event 4. Das Dorf ist Event 2^^ dafür ist halt die Koordinatenabfrage drin mit der Variable am Anfang :3

    Was für ein Wait wird den empfohlen von der Zeit her?

    Und das mit den Haken probier ich mal, vielleicht hat das Teil echt einfach ein Problem am Anfang und lädt halt die Events um Millisekunden später als die Eingabe kommt^^
    E: Du bist echt der Held im Erdbeerfeld :D Der hatte einfach Probleme und mit dem Haken hat sich das ganze aufgelöst :O

    Warum auch immer der Maker mit der Tasteneingabe schneller ist als von den Events her :P

    Dieser Beitrag wurde bereits 1 Mal editiert, zuletzt von Amarouk ()

  • Wenn Event 001 auf Seite 2 schaltet ist in der permanenten Animation des Spieler ein Warte befehl. Somit wird er diese Animation im Loop abspielen und keine Bewegung mehr zulassen bis dieses Event ausgeschaltet ist. Ist das evtl das Problem?


    Ich meine diesen Befehl auf Seite 2:



    Edit: ah wie ich gerade gelesen habe ist das Problem schon gelöst :)

  • Reicht schon der niedriegste. Mache z.B. beim 2k3 ein Wait von 0.0. Sind aber in Wirklichkeit dann 1,4etc. Millisekunden.

    Frame 1 sollte reichen. Ich muss aber schon sagen du machst das ganze sehr umständlich :/
    Ich würde das ganze mit Picturen machen. Du bewegst dich ja nur zwischen Links und Rechts.


    Vorschlag:

    Da kannst du eine Variable als Start nehmen und die auf z.B. 100 stellen. Wenn die Taste Rechts gedrückt ist wird +1 und bei Links -1 gerechnet.
    Dann wird dementsprechend die Position abgefragt und angezeigt.
    Also bei 100 bewegt sich der Held zur Startposition. bei 99 nach Links 101 nach Links. Die Animation bzw. die Gehrichtung kannst du auch einfach "errechnen". Nimmst den gewünschten Wert der Position minus der jetzigen.


    Beispiel:

    X = 101 - 100

    X = 1

    Abfrage: Wenn X = 1 ist dann wird nach rechts bewegt und bei -1 nach Links.

    Und die Position (Also auf Dorf etc) musst du dann einzeln setzen.


    Oder du machst die Positionen mapbedingt mit den Koordinaten gleichgesetzt.

    Also da wo du startest sind auch die Koordinaten zu übernehmen.

    Ganz grob gesagt, die Tile-Koordinate mal die Anzahl der Pixel in einem Tile (48 waren es beim MV glaub ich...)

    Dann bewegst du dich mit der Anzahl von 4 Schritten (Wären dann zusammengerechnet der Wert von 192. Bei rechts + und - bei links)

    Und die Picture lässt du dann mit der X/Z-Koordinate bewegen und nicht selbst eingestellt :)


    Hoffe mal damit kannst du was anfangen :)


    -MrSerji


    Edit:

    @Jitsu:

    Das stimmt so auch nicht. Dieser Hacken ist gleichgesetzt wie in den alten Makern.

    Dieser Move-Befehl muss erst beendet sein, bevor das Event weiter macht.

    Der Loop wird erst beim ersten Häkchen aktiviert.

    Wenn es natürlich hängen bleibt (also der Spieler gegen ne Wand oder so läuft), dann gehts nicht weiter und bleibt im Loop,

    daher sollte man immer den Hacken bei "Weiter, wenn Bewegung unmöglich" machen. Das macht das ganze dann "negieren" :)

    Sprich trotz Blockade müsste das Event weiter gehen :=)


    Ich hoffe mal das stimmt jetzt auch so xD
    Ich muss mir mal den MV zu gemüte tun :)


    @Amarouk:
    Welcher Hacken genau? Das Warten oder bei Unmöglich weiter?

    Dieser Beitrag wurde bereits 3 Mal editiert, zuletzt von MrSerji ()

  • Jap, stimmt natürlich. War aber auf den ersten Blick schon mal auf dem richtigen Weg :D

  • Ich war noch nie für Einfachheit bekannt :D
    Das z.B. was du mir da geschrieben hast ist für mich gerade "Wait what?" :D
    Ich hätte das ganze auch noch viel einfacher machen können und den Spieler quasi "einkesseln" können.
    Damit hätte er nur die Richtung ändern brauchen in oben, unten, rechts und links und hätte gar kein Movement gehabt :D
    Aber man will ja was zeigen^^'
    Gut gut, funktioniert nun und hier kann von mir aus zu gemacht werden bevor man noch einen auf den Deckel bekommt wegen Ideen und oder Smalltalk :D
    (Ja sowas habe ich schon abbekommen, weil man Punkte oder so was gesammelt hat pro Beitrag der nicht im Spambereich war)
    [Ich lass aber niemanden hier dafür laufen sowas zu machen, weil Panda ist nett^^]
    {Weiß ich durch dieses komische eine Forum für den VX dessen Name mir entfallen ist :P}

  • Jop, solange es funktioniert ist ja alles gut^^


    Ich werde wohl die nächsten Tage (Jetzt erst nächsten Monate wahrscheinlich, da Arbeit gerade stressig ist^^) einige Tutorials zu Menüs im MV machen. Also Inventar, Map (So Teleport-Menü mit Karten etc) und mal ein allgemeines InGame-Menü und alles auf Basis von Eventen.


    Da hier sicher nicht jeder JS kann, könnte das vllt helfen^^

    Muss mich nur selbst nochmal reindenken, da ich den MV eigentlich net nutze.

    Hab den erst seit dem letzten Sale erworben :D


    Ich werde dann btw. auch mal das erklären was ich dir hier versucht hab zu erklären. Gut Deutsch xD


    -MrSerji