Also werden nur die Events geupdated, die von einem Change Switch bzw. Change Variable direkt betroffen sind?
Also werden nur die Events geupdated, die von einem Change Switch bzw. Change Variable direkt betroffen sind?
--Elektra Kingdom v.4.12 Demo 5 in der Mache *click
Offizieller Blog zum Spiel News, Links, Screenshots, etc. *click
Tanalin Integer Scaler Fullscreen Tool für RPG Maker 2000 / 2003 Spiele *click
VirtualMIDISynth Fix für kaputte MIDI Musik *click
Windows Photo Viewer Fix für unscharfe Windows Fotoanzeige *click
RPG Maker 2000 / 2003 (Steam) Korrektes Vollbild , Performance+ & Ultimate *click
Erm... immer wenn irgendetwas passiert (oder der entsprechende Eventbefehl erfolgt), das die PreConditions auf der linken Seite von Events erfüllen könnte (ChangeSwitch, ChangeVariable, AddItem, ChangeParty, ChangeTimer) ... erfolgt nach jedem solchen Eventbefehl ein EventUpdate, das ALLE Events auf der momentanen Map und ALLE CommonEvents anvisiert.
Wenn man im Hintergrund irgendwelche Logik- oder Arithmetik-Prozesse laufen hat, die aus zig Zeilen bestehen, die in jedem Frame wiederholt werden... kann man entweder einen 0.0 wait setzen (damit das Spiel Zeit hat, sich wieder zu beruhigen... dann muss man aber auch mittendrin waits setzen, weil 2 Frames warten statt vorher 1 ohne wait auch nicht viel bringen könnte...) ...oder halt das Auslagern von Rechenarbeit auf das Durchchecken von mehreren hundert Events unterbinden.
Diese Maker waren nie darauf ausgelegt, mit vorgegebenen Mitteln, irgendetwas großes durch den Nutzer ausrechnen zu lassen.
Der Patch wird leider kein generelles Laggen durch riesige Maps mit hunderten sich bewegenden Events oder durch ständige Festplattenzugriffe durch unnöttiges <ShowPicture> beheben.
Edit:
Solange man einen Block an ForkConditions + Switches + Variables hintereinanderreiht und vor und nach dem Block Switch[1000] an/ausschaltet, sollte es selbst bei parallel laufenden Events keine Probleme geben.
Geändert von bugmenot (26.03.2014 um 11:21 Uhr)
Die Checkerei wird also bei jeder Aktion durchgeführt, die die Seitenbedingungen betreffen könnte?
Es erschliesst sich mir halbwegs, warum das bei dem Event durchgeführt wird, aus dem der Befehl stammt,
da sich mitten im Frame etwas Wichtiges ändern kann, aber alle überprüfen? Es hätte ja eigentlich gereicht,
wenn diese durchgecheckt werden, sobald sie in der Ausführung im derzeitigen Frame dran sind. òo
Was mit den CommonEvents ist, kann ich nicht genau sagen. Aber bezüglich von MapEvents werden in einer 'for i = 1 to EventAmount'-Schleife die Parameter des jeweiligen Events abgerufen und gleich hinterher die Seitenbedingungen durchgecheckt. Bei jeder solchen Aktion, die ein EventUpdate ausführt. Ohne irgendwo mittendrin zu warten.
Sagt mal Leute, wäre es möglich eine Art eigene Scene zusammenzubauen?
Also ich meine ein komplett eigenes Menü, aber im Standardstil, ohne Pictures etc. zu verwenden. Dass man das ganze praktisch hardcoded?