Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : Ungewünschter Aufruf einer BattleAnimation



Davy Jones
25.06.2012, 23:39
Testing stockt bei mir grad, weil ein unangenehmer Bug den Durchlauf versaut. Im Grunde beklaue ich NPCs, kriege aber dauernd immer dieselbe BattleAni vorgesetzt, oftmals mehr als 10 Stück hintereinander.

1) Hier für diesen Fall braucht Variable [1409: Jennys Stehlen] mindestens den Wert 2, damit der NPC beklaut werden kann:
http://i.minus.com/j99gIs0REVM48.png
Zu sehen ist hier der NPC-Event auf der Dorfmap, die anderen drei Screenshots zeigen Common Events.
---------------------------------------------------------------------------------------------------------------------------------
2) Nehmen wir mal an Jenny hat Erfolg mit ihrer Klauerei, dann kommt das hier:
http://i.minus.com/jyUSjlM2dzpet.png
Alle Gruppen und deren Inhalt wird komplett abgefragt.
---------------------------------------------------------------------------------------------------------------------------------
3) So, hier kommt der Deal: Variable [1534: Stehlvariable] kommt bei absolut jedem NPC zum Einsatz (Am Anfang des Gesprächs im jeweiligen NPC-Event, hier nicht sichtbar), wobei jedem Heini ein neuer Wert zugeordnet wird. So kann das System die Personen unterscheiden, die grade beklaut werden.
http://i.minus.com/jbpLlJcOyPwDZK.png
Danach kommt eine einfache Abfrage: Beim ersten Mal gibt es Amethyst, Silbermünze, etc. und beim zweiten Mal einfach nur Call Event: BEREITS GESTOHLEN. Warum? Ja, der NPC hat schließlich nix mehr.
---------------------------------------------------------------------------------------------------------------------------------
4)
http://i.minus.com/jbdpZfdoAMQkcX.png
Und genau hier ist der Hund begraben. Diese Animation kommt teilweise bis zu 14mal und ich habe keine Ahnung warum.

Hat jemand eine Idee?

Kyuraan
26.06.2012, 04:54
Hmm. Ich hab zwar nur kurz drüber geschaut, aber ich denke mal:
Wenn bei einem Versuch nichts zu holen war (else handler) wo dann die BA aufgerufen wird, ist das bei den restlichen 13 Personen auch der Fall. Scheint so, als würde das bei jeder Person so durchlaufen, weshalb die BA 14 mal aufgerufen wird. Scheinbar werden alle [WE STEHLEN]-Variablen auf 1 gesetzt. Vielleicht werden die Variablen ausversehen noch in einem anderen Skript benutzt? Oder benutzt du irgendwelche Patches? Ich frag mich auch, wie du die [StehlVariable Nummer] ermittelst, da Sie ja bei allen 14 Personen zuzutreffen scheint.

Davy Jones
26.06.2012, 12:39
Ich frag mich auch, wie du die [StehlVariable Nummer] ermittelst, da Sie ja bei allen 14 Personen zuzutreffen scheint.

3) [...] Variable [1534: Stehlvariable] kommt bei absolut jedem NPC zum Einsatz [...], wobei jedem Heini ein neuer Wert zugeordnet wird. So kann das System die Personen unterscheiden, die grade beklaut werden.
Und das sieht dann so aus:
http://i.minus.com/ibnR1ejqWsXuyx.png
Der hier hat den Wert 46 bekommen, und das wird dann abgefragt.


Scheinbar werden alle [WE STEHLEN]-Variablen auf 1 gesetzt.
Ist nicht möglich, weil vorher die Abfrage mit der [Stehlvariablen] überwunden werden muss.

Kyuraan
26.06.2012, 16:48
Uff, naja wenn man nicht mehr sehen kann, wäre alles andere nur raten. Das einzige was mir jetzt noch auffällt ist, wenn die Gruppen der Leute gecallt werden. Du hast auch sicher keine [StehlVariable Nummer]-Abfrage mehrfach mit dem gleichen Wert belegt? Wahrscheinlich nicht. Wie gesagt man sieht einfach zu wenig. Und das ganze System scheint ja wohl VIEL größer zu sein.

Davy Jones
26.06.2012, 17:15
Das Skript ist zu groß um es in der Gänze zu zeigen, allerdings ist es überall gleich aufgebaut. Die Gruppen sind abgesehen von anderen Variablen und Werten schlichtweg identisch, das gleiche gilt für die NPC-Events.

Ich dachte eigentlich dass es einen spezifischen Fehler gäbe, den ich so nicht einkalkuliert habe. Scheinbar muss ich aber wohl doch den unbequemen Weg über die Labels gehen.

Cherry
26.06.2012, 21:31
Du könntest es einfach mal kurz mit dem EventExporter exportieren, dann kann man es auch im Forum gut betrachten. Auch wenn es "überall gleich aufgebaut" ist, kann ja ein Fehler im Detail stecken.

Ansonsten könnte dir noch das hier empfehlen: http://www.multimediaxis.de/threads/104116-Programmwunsch-und-erstellungsthread-2?p=2801470&viewfull=1#post2801470
Damit kannst du genau nachvollziehen, welche Eventzeilen ausgeführt werden und welche Variablenwerte/Switchwerte vorhanden sind.

Davy Jones
26.06.2012, 23:13
Hat sich erledigt, der obige Skript ist vollkommen fehlerfrei.

Es handelt sich um einen blöden Copypasta-Fehler in Gruppe 4 mit genau 14 Wiederholungen der BattleAni.

In Screenshot 3 sieht man nämlich dass sich der Else-Branch mit "Call Event: Bereits Gestohlen" in der zweiten Condition befindet. In Gruppe 4 (und auch nur dort) befindet er sich in der ersten Bedingung. Habs dadurch rausgefunden dass ich einfach ein paar Gruppen rausgelöscht hatte um zu sehen wo er meckert.

Trotzdem danke für die Hilfestellung, dieses Problem hier ist jetzt endgültig erledigt =D