PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Call Event Limit Exceedet...



übelster Held
15.03.2005, 20:23
also..., ich bastle nun schon seit einiger Zeit an meinem eigenen
Ks rum, und da erscheint nach einiger zeit des Kämpfens diese wunderschöne Meldung "Call event limit exceedet..." (oder so)
Soweit ich weiß passiert das, wenn ein event so 1000x in
einer Reihe is... mehr aber auch nicht.
Erscheint das nur wenn ein Event sich immer wieder selber called,
oder auch wenn ein Autostart/PP ein Event immer wieder Called...
In meinen Ks benutzte ich hauptsächlich Call events und keine
Autostarts um die Menüs/Befehle zu wechseln/zu bearbeiten...
hab auch ein PP das jenachdem welchen Wert eine Variable
annimmt ein paar andere events called...

üH

Dhan
15.03.2005, 20:36
mach für deine Call Events folgendes, liste auf, welches Call Event welche Priorität hat (die du schriftlich festlegst) und lasse niemals ein Call Event ein anderes mit einer höheren Priorität aufrufen, dann kommts net zu dem Fehler

übelster Held
15.03.2005, 21:05
HÄ???
wie stellst du dir das vor?
Bei mir sind doch alls Calls gleichwichtig^^
sie sind nicht so angeordnet: 1,2,3,4,5,6,7,8,9,10.....
sonder eher so: 1, 2, 3, 4, 22, 1, 2, 16, 19, 20, 21, 22, 1, 9, 13, 22, 1, ...
also es geht immer wieder zum anfangspunkt zurück...

Dhan
15.03.2005, 21:10
na ich meine, dass du halt eine art rangstruktur hast sodass endlosschleifen in call events vermieden werden

übelster Held
15.03.2005, 22:47
und das funktioniert?

ich hab mir mal so gedacht (wess net obs geht, habs noch net ausprobiert), wenn ich am ende bin,
dass ich dann einen Switch anschalte, und in einen PP
wird dadurch der Anfang wieder gecallt... wenn du wesst wie ichs mein...

Fab4
16.03.2005, 12:31
also ich weiß nicht wa der fehler bedeuten soll , aber im endeffekt ist es doch egal was ihr da so sagt, wenn man einen event aufruft wird dieser als funktion eingesetzt wie in c++ und nicht nebenbei aufgerufen. wenn dieser dann vorbei ist, gehts ganz normal in der programmstruktur weiter.
wie das jetzt mit schleifen im maker abläuft (cycle) weiß ich nicht

FF
16.03.2005, 13:46
weio machst du das nicht mit nem label?
oder mit nem anderen common event, dass ein weiteres callt?

übelster Held
16.03.2005, 14:46
@ Freier Fall
Hab ich ja gemacht... so wie ein ring... das letzte Event hat das erste
gecallt...

aber irgendwann hängt sich die Sch###e auf...
habs jetzt mitn pp gemacht, musste dafür meine
ganzen Menüs in Autostarts verwandeln (haben sich vorher
immer wieder selbst gecalled, wenn dies notwendig war...),
aber jetzt dürfte es ganz gut laufen... (bei 150 attacken in einen
Kampf hab ich aufgehört...)

FF
16.03.2005, 15:37
vergiss nicht, da noch waits zwischen zu machen.

übelster Held
16.03.2005, 16:17
Danke für den tipp,
aber ich hab zwar nur 26 Beiträge geschrieben,
trotzdem hab ich ein bissl Ahnung vom Makern...
ich hab schon aufwendigere Vorkehrungen treffen müssen, damit
das dieses KS nicht in Zeitlupe abläuft (bei der Anzahl an Berechnungen),
als dieses Wait von 0,1 einzufügen...
Aber nichts für ungut...^^

FF
16.03.2005, 16:32
du kannsta cuh einen wait von 0.0 machen geht genauso gut^^
ich meinte nur, dass es bei PPs noch schneller zu Stau kommt, asl wenn man sie callt .
Sry, falls ich dich beleidigt hab.....

mfg Freierfall

übelster Held
16.03.2005, 16:45
bei mir hats aber bei einem wait von 0.0 noch geruckelt...
musste sogar schon vereinzelt waits von 0.2 einfügen...
ich hab net alles zu pps gemacht, nur eins, welches das "1." Event
aufruft, wenn das letzte call-Event zuende ist...

ich bin doch net beleidigt... *zu mama lauf und mich über den bösen
bösen Freien Fall beschwer* :D

EDIT: soll ich auch bei den Autos :D ein wait einfügen, ruckelt zwar noch net, was aber nicht ist, kann ja noch kommen :D

Fab4
16.03.2005, 18:32
bei mir hats aber bei einem wait von 0.0 noch geruckelt...
musste sogar schon vereinzelt waits von 0.2 einfügen...
ich hab net alles zu pps gemacht, nur eins, welches das "1." Event
aufruft, wenn das letzte call-Event zuende ist...

ich bin doch net beleidigt... *zu mama lauf und mich über den bösen
bösen Freien Fall beschwer* :D

EDIT: soll ich auch bei den Autos :D ein wait einfügen, ruckelt zwar noch net, was aber nicht ist, kann ja noch kommen :D
das leigt aber einfach nur daran das du zuviel aufeinmal machst bzw ablaufen lässt.... und eigentlich ist es genau das was ne gute technik ausmachen... es muss gut laufen ohne zu ruckeln, und das ist alles ausnahmslos möglich auch mit waits von 0.0 oder garkeinen waits...

waits werden bei ner vernünftigen sturktur nut gebracuht wenn schlaifen vorkommen die unter umständen keine aktion ausführen dass sie nciht durchgehend ncihts tut und ressourcen klaut sondern einfach kurz wartet.

Dhan
16.03.2005, 23:21
@ Freier Fall
Hab ich ja gemacht... so wie ein ring... das letzte Event hat das erste
gecallt...

Genau das ist falsch, benutze lieber ein einziges CE, das auf PP gestellt ist, sich also selbst wiederholt

nach dem Prioritätsprinzip wärs übrigens sofort als falsch erkennbar, das letzte Event hätte dann die niedrigste Priorität und dürfte nach den Prioritätsregeln das erste Event mit der höherer Priorität nicht callen


Um die mal die Priorität verständlich zu machen:
http://dhan.de/priority.jpg
Die Höhe eines Rechtecks in Pixeln entspricht hier seiner Priorität.
Ein Rechteck über einem anderen Rechteck ist ein von diesem Event gecalltes Event
umd as mal zu verdeutlichen:
Orange ist ein PP, wiederholt sich also, der Rest besteht aus Call Events
Orange callt Gelb, Violett und nochmal Gelb
Gelb callt Rot, Grün, Blau und nochmal Grün
Rot callt Grün
Violett callt Grün und Blau
natürlich enthalten die Events außer den Calls noch Code

das Prinzip der Priorität bedeutet hierbei: Ein Event kann nur ein Event callen, das eine kleinere Höhe hat (sonst würde es ja nicht hineinpassen, mal bildlich gesprochen)
auf diese Weise können keine Endlosschleifen entstehen

hast du das Prinzip so verstanden?

klamo
16.03.2005, 23:54
superschönes bild zum problem, dhan :)

nur ein kleiner logischer fehler ist drin:

du beschreibst den ablauf im bild von oben nach unten...
dann sollte der pfeil aussen herum, der ja die wiederholung andeutet,
unten beginnen und nach oben laufen, dort seine spitze haben,
um zu zeigen, dass es hier wieder weitergeht :)

übelster Held
17.03.2005, 14:34
@Dhan
Schönes, buntes Bild :D
ich habs schon vorher verstanden, musste nur erstmal deine Worte
richtig deuten, danke trotzdem für die Mühe...

das mit den letzten Event, dass das 1. Event callt, so hat ichs
zuerst, doch dann hab ich ein PP gemacht und die Nachricht (call event
limit exeedet ) kommt nicht mehr...schade^^

Dhan
18.03.2005, 08:52
du beschreibst den ablauf im bild von oben nach unten...
dann sollte der pfeil aussen herum, der ja die wiederholung andeutet,
unten beginnen und nach oben laufen, dort seine spitze haben,
um zu zeigen, dass es hier wieder weitergeht :)
hüstel hüstel ich weiß nicht was du meinst :rolleyes:
(habs jetz geändert, danke für den Hinweis)

btw, mir ist sowieso noch eine Ungereimtheit bei mir aufgefallen, wenn man dem blauen eine höhere Priorität zu gesteht und es vor seinem eigentlichen Script grün callen lässt, erspart man sich die grün-blau Blöcke ^^
ne aber fürs Beispiel passts ja ^^