Ergebnis 1 bis 20 von 2334

Thema: Programmwunsch und -erstellungsthread #2

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Zitat Zitat von Cherry Beitrag anzeigen
    Könnten wir nicht die UpdateEvents-Funktion so umbauen, dass sie nur ein Flag setzt, und am Ende der Eventverarbeitung in einem Frame das eigentliche UpdateEvents ausführen, wenn das Flag gesetzt ist? Ich seh momentan keinen Grund warum man mehr als 1x pro Frame die Events aktualisieren sollte, was meinst du?
    Also ich hab nicht probiert, ob das mit diesem neuen Antilag-Patch Probleme verursacht, aber eine Situation würde mir einfallen, wo man zwischendurch neu evaluieren muss:

    Code:
    Event:
    
    Seite 1 (Paralleler Prozess, ohne Startbedingung):
    
    Message "A"
    Schalter 1 an
    Message "B"
    
    Seite 2 (Autostart, Bedingung Schalter 1 an):
    
    Message "C"
    Ausgabe muss sein: AC, das parallele Event bricht sofort ab, sobald eine andere Bedingung erfüllt ist.
    Wenn Seite 1 nen anderer Typ ist, ist die Ausgabe immer "ABC".

    Das Verhalten weicht übrigens beim XP und neuer ab, da ist die Ausgabe auch bei parallelen Events "ABC", ist also ne 2k/3-Besonderheit.

  2. #2
    Zitat Zitat von Ghabry Beitrag anzeigen
    Also ich hab nicht probiert, ob das mit diesem neuen Antilag-Patch Probleme verursacht
    Ohne Patch: AC
    Mit Patch: ABC
    Mit Patch mit [0.0 Wait] vor B: AC


    Zitat Zitat von Ghabry Beitrag anzeigen
    zwischendurch neu evaluieren
    Inwiefern?
    Wieder zum Ausgangszustand des "alle Events abklappern, wo Eventbedingungen erfüllt sein könnten und viele Frameeinbrüche verursachen" zurück?
    Einen CommentCommand @Update für einen erzwungenen Eventupdate einführen? (wovon ältere Spiele dann nichts haben)
    Sich darüber aufregen wie dämlich es sich anhört, den Code für irgendeine Funktion auf mehrere EventPages zu verteilen statt irgendwo intern zu verschachteln oder <CallEvent> richtig zu nutzen?
    Edit:
    "EventUpdate(Global)" = 1x je Frame, updatet jedes Event auf der Map nach einem Eventbefehl
    und
    "EventUpdate(Local)" = nach jedem einzelnen Eventbefehl, updatet nur das Event, aus dem der Befehl hervorgeht (+eigene EventPages)
    ?

    Geändert von bugmenot (08.09.2014 um 21:03 Uhr)

  3. #3
    Also eigentlich wollte ich mich nicht in die Diskussion einmischen, sondern Cherry ein Beispiel bringen, wo die Annahme nicht funktioniert, weil ihm spontan keins einfiel.

    Die einfachste Lösung wäre natürlich nur 1x neu zu evaluieren. Würde ich auch persönlich für die sauberste halten, als so ein rumgefrickel wie @Update oben hinzuschreiben. Vorm patchen sollte sich nur der Entwickler bewusst sein, dass seine parallelen Events im Spiel sich anders Verhalten, wenn der von mir genannte Fall eintritt.

  4. #4
    Hm, für diesen Fall könnte man ja einführen, dass UpdateEvents nur das aktuelle Event (das am Bottom des Calltrees) updatet.

    Geändert von Cherry (09.09.2014 um 14:24 Uhr)

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •