Es wäre nun aber auch kein Problem mehrere move events zu nutzen. Sollte es sich hierbei um einen NPC handeln, der alleine läuft, könnte man auch einen PP nutzen.Zitat
Im 2k sollte das kein Problem sein.
Kommt halt drauf an was man macht. Ich hab z.B. ne Verfolgungsjagd über ne größere Map, da reichen die 200 Befehle nicht aus. Ich könnte mit mehreren Moveevents arbeiten, aber dann müsste ich entweder mehrere Switches oder Variablen nehmen oder die Position abforken - alles viel zu kompliziert. xD
Wieso Position abforken? So wie ich das hier versteh tackerst du einfach die Moveevents hintereinander, machst dein ersten Moveevent mit meinetwegen 200 Befehlen / Schritten und n Wait dahinter. Der Wait berechnet sich auf Movespeed Normal in dem Fall mit 200 x (8 x 0,0 Sek.). Dann machst du den nächsten Movebefehl etc.pp.
Wozu mit Waitbefehlen unnötig kompliziert machen?
Um eine Bewegung abzuwarten, gibt es den Befehl, der sich direkt unter MoveEvent befindet.
In jedem Fall ist aber Austricksen dieses Limits im Ergebnis verlässlicher als mehrere solche Anweisungskollektoren
nacheinander einzubauen, ausser es gibt irgendwo eine Abzweigung nach bestimmten Voraussetzungen, dann muss
es eh unterbrochen werden.
Jo, "proceed with Movement" benutz ich persönlich nie. Hat bei mir irgendwie auch nie so recht funktioniert. Aber kompliziert sind Waits jetz ja als Ersatz auch nicht.
Wird bei "Proceed with Movement" nicht darauf gewartet, bis ALLE Move-Events auf der Karte fertig sind? So habe ich das nämlich in Erinnerung.
PeAcE
MorDen
Wenn man ein längeres Movement hat, würde ich die Bewegung nicht über "move route" steuern. Sondern einfach, wie ich sagte, einen Parallel Process machen:
Move Event 200 Befehle
proceed with movement (im 2k: move all)
Move Event 200 Befehle
proceed with movement (im 2k: move all)
Es kann nichts schief gehen, solange du nichts in den weg donnerst. Sprich nen Stein oder so. Dann blockiert natürlich alles.
Und solange du drauf achtest, dass auf der map auch jedes moving funzt, kann mit "proceed with movement" nichts schief gehen
ich habs immer benutzt und klappt gut.
@MajinSonic:
Und was machst du bei mehreren sich bewegenden events mit unterschiedlicher geschwindigkeit und unterschiedlichem timing/waits/richtungswechsel in ihren bewegungsabläufen? dann hackt das Movement nach den 200 befehlen bei einigen events. Wie das ist, wenn du jedem der sich bewegenden events seine route vorgibst in einem eigenen Parallel-Process weiß ich grad nicht aussem kopf.
Dann musst du die Bewegungsabläufe anpassen. Und zwar so, dass sie alle gleich groß sind, oder aber, dass du den Events mit weniger als 200 Befehlen eine Move Route gibst.
Proceed with movement bezieht sich auf ALLE Events. Da ist es völlig egal aus welchem Event der Move Befehl kommt.
Also wenn du jedem seinen eigenen PP gibst, so kann es passieren, dass da einiges durcheinander kommt. Muss aber nicht. Das ist alles eine Frage der Abstimmung.
Du solltest es dann mit Bewegungsabläufen nicht übertreiben.
Das würde einiges erklären. Ich hab damals bei Insanity versucht mit Halt all Movement AKS-Gegner zu stoppen (Grund: Menüaufruf), die via Move Toward Hero und zusätzlichen Varis gesteuert wurden und sie per Proceed with Movement wieder zu "aktivieren", weil ich davon ausgegangen bin, dass Halt all Movement jegliche Eventbewegung instant stoppt. Beides hat nicht geklappt, daher hab ich die beiden Befehle wohl missverstanden und sie daher auch nie mehr beachtet. Als Alternative hab ich das mit Switches gelöst.
Geändert von TwoFace (27.08.2013 um 23:08 Uhr)
jaja, pushaber ist der einzige Sammelthread für sowas den ich kenne.
RPG2k/2k3:
Wenn man zwei parallele Events hat die "Wait" ausführen und ein anderes Event kollidiert mit einem dieser Events, dann wird das Wait beim kollidierten Event doppelt so schnell ausgeführt (bei 2 kollisionen in 1/4 der zeit usw.)
Wait (^^), was wie. Kannst du mir das noch mal genauer erklären, welches Wait du meinst (den Eventbefehl oder Move-Event-Befehl), und welche Art kollidieren? Ich hör das zum ersten Mal nämlich (und würds entsprechend gern im offiziellen Maker fixen).
--
Mir war nichtmal bewusst dass ich nominiert wurde, aber: Cool! Hälfte des Lobes muss aber unbedingt an Archeia!Now all new and shiny:CherryShare | Patches und Tools | Programmwunschthread | www.cherrytree.at | Cherry = CherryDT
Das hat mit dem Verhalten hier zu tun: https://github.com/EasyRPG/Player/issues/884
Wenn ein Event/der Spieler mit einem Event kollidiert, dann kommt das im Weg stehende Event zum Zug und aktualisiert seine MoveRoute und seinen Interpreter. Und wenn das Interpreter gerade irgendeinen Wait ausführt (Event Wait... oder Move Picture Wait...) dann zählt der Wait-Zähler schneller herunter (bei 1 kollision 2x so schnell, bei 2 4x usw.).
Erstelle einfach eine Map mit 2 Parallelen Events die Befehl "Wait..." machen und renne mit deinem Spieler gegen eines dieser Events. Du wirst sehen, dass das kollidierte Event in der halben Zeit fertiggewartet hat.
Die Tage auch noch etwas Interessantes entdeckt, als ich nach einem Weg gesucht habe das Spiel im 2k zu pausieren (bzw. alle Events sollen ihre Bewegung pausieren):
"Enter Password" (mit Wait Until Key Hit) ist da ein geeigneter Kandidat. Lässt sich als (Common)Event per Switch (PP oder Auto) ausführen, auch ohne, dass Buttons ausgewählt werden. Events bleiben stehen (pausieren ihre Bewegung), PP-Events laufen weiter.
Das Interessante hier: Die Message Option "Allow other Events to continue" (in "Message Style") betrifft auch das Verhalten bei "Enter Password"!
Und noch etwas Anderes: Man kann Vehicle auf ungültige Koordinaten Teleportieren (mit "Setup Vehicle Place"). So kann man mit Teleport zu Variable Map:0, X:0, Y:0 ein Vehicle wieder aus dem Spiel nehmen.