PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Problem mit Kampfsystem ._.



Quetschi
29.03.2013, 23:57
Hey,

ich bin gerade dabei, mein eigenes Kampfsystem zu erstellen. Allerdings ist nun ein Problem aufgetaucht, welches eigentlich passieren dürfte. Ich hab alles immer wieder und wieder überprüft, aber finde den Fehler nicht.
Das Problem besteht darin, dass wenn der 2. Kampfteilnehmer auf Seite des Spielers den Gegner angreift und danach der Gegner zum Zug kommt, dieser die Werte des 2. Kämpfers für seinen Angriff erhält.
Eigentlich werden aber bei jedem Angriff die Variablen "Angreifer Level", "Angreifer Angriffskraft", "Angreifer Wille" usw. ebenso wie "Verteidiger Level" usw. auf die Werte desjenigen gesetzt, der gerade seinen Zug hat.
Bei den Verteidigerwerten klappt dies wunderbar, nur bei den Angreifer werten will das irgendwie nicht funktionieren.

Beispielhaft:

Kämpfe 2 ist Level 6 und hat 25 Angriffskraft
Der Gegner ist Level 1 und hat 4 Angriffskraft

Wenn ich den Gegner mit Kämpfer2 angreife erhält dieser ~25 Schadenspunkte, so weit so gut, greift allerdings der Gegner an hat er für den Angriff auch Level 6 und 25 Angriffskraft.

Es hilft auch nichts die genannten Variablen am Anfang der Übergabe wieder auf 0 zu setzen oder nachdem der Schaden ausgeteilt wurde. Kann es sein, dass die Variablen aus irgendeinem Grund "kaputt" sind und nicht richtig funktionieren?

Der Eventcode des Zuges von Kämpfer2:



- SCRIPT -
<> Fork Condition: If Variable [1122] == 1 then ...
. <> Comment: Angriff
. <> Change Variable: [2021] = 16
. <> Call Event: Common Event #80
. <> Change Switch: [558] = OFF
. <> Call Event: Common Event #64
. <> Erase Picture: #11
. <> Fork Condition: If Switch [570] == OFF then ...
. . <> Change Switch: [4] = OFF
. . <> Call Event: Common Event #82
. . <> Change Variable: [2002] -= 1000
. . <> Change Switch: [542] = OFF
. . <> Change Variable: [1122] = 1
. . <> Erase Picture: #1
. . <> Erase Picture: #10
. . <>
. : Else ...
. . <> Change Switch: [570] = OFF
. . <>
. : End of fork
. <>
: Else ...
. <> Fork Condition: If Variable [1122] == 2 then ...
. . <> Comment: Abwehr
. . <> Change Switch: [562] = ON
. . <> Change Switch: [4] = OFF
. . <> Erase Picture: #11
. . <> Change Variable: [2034] = V[1823]
. . <> Change Variable: [2034] /= 100
. . <> Change Variable: [2034] *= 5
. . <> Change Variable: [2033] = V[2034]
. . <> Change Variable: [2033] *= -1
. . <> Change Variable: [1122] = 12
. . <> Change Switch: [559] = ON
. . <> Call Event: Common Event #91
. . <> Call Event: Common Event #82
. . <> Change Variable: [2002] -= 900
. . <> Change Switch: [542] = OFF
. . <> Change Variable: [1122] = 1
. . <> Erase Picture: #1
. . <> Erase Picture: #10
. . <> Change Switch: [559] = OFF
. . <>
. : Else ...
. . <> Fork Condition: If Variable [1122] == 3 then ...
. . . <> Comment: Technik
. . . <> Call Event: Common Event #77
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [1122] == 4 then ...
. . . . <> Comment: Item
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Wait: 0,0 sec.



Zum Vergleich der Code von Kämpfer1:



- SCRIPT -
<> Fork Condition: If Variable [1122] == 1 then ...
. <> Comment: Angriff
. <> Change Variable: [2021] = 16
. <> Comment: Normaler Angriff hat 16 Stärke
. <> Call Event: Common Event #80
. <> Comment: Passive Fähigkeit für vor dem Angriff angelegt?
. <> Change Switch: [558] = OFF
. <> Comment: Schaden ist NICHT magisch
. <> Call Event: Common Event #64
. <> Comment: 1 Ziel auswählen
. <> Erase Picture: #11
. <> Comment: Cursor_off.png löschen
. <> Fork Condition: If Switch [570] == OFF then ...
. . <> Comment: Wenn bei der Zielauswahl nicht Esc gedrückt wurde
. . <> Change Switch: [4] = OFF
. . <> Comment: Cursor ausschalten
. . <> Call Event: Common Event #82
. . <> Comment: Passive Fähigkeit für nach den Angriff angelegt?
. . <> Change Variable: [2001] -= 1000
. . <> Comment: Speedverbrauch 1 normaler Angriff hat 1000
. . <> Change Switch: [541] = OFF
. . <> Comment: Zug beenden
. . <> Change Variable: [1122] = 1
. . <> Comment: Cursor Position auf 1 setzen, damit die KI nicht mit der Zielauswahl
. . : durcheinander kommt und man beim nächsten Zug Angriff ausgewählt
. . : hat
. . <> Erase Picture: #1
. . <> Comment: Auswahlfenster.png löschen
. . <> Erase Picture: #10
. . <> Comment: Cursor.png löschen
. . <>
. : Else ...
. . <> Change Switch: [570] = OFF
. . <>
. : End of fork
. <>
: Else ...
. <> Fork Condition: If Variable [1122] == 2 then ...
. . <> Comment: Abwehr verringert gegnerischen Schaden um 37,5% und heilt
. . : um 5% der MaxHP
. . <> Change Switch: [561] = ON
. . <> Comment: Schutz aktivieren
. . <> Change Switch: [4] = OFF
. . <> Comment: Cursor ausschalten
. . <> Erase Picture: #11
. . <> Comment: Cursor_off.png löschen
. . <> Change Variable: [2034] = V[1803]
. . <> Comment: Schadenrechenhilfe = MaxHP
. . <> Change Variable: [2034] /= 100
. . <> Comment: Schadenrechenhilfe/100 für Prozente
. . <> Change Variable: [2034] *= 5
. . <> Comment: Schadenrechenhilfe*5 = 5% der MaxHP
. . <> Change Variable: [2033] = V[2034]
. . <> Comment: Schaden = Schadenrechenhilfe
. . <> Change Variable: [2033] *= -1
. . <> Comment: Schaden = *-1 , da es heilen soll
. . <> Change Variable: [1122] = 11
. . <> Comment: Cursorposition auf den Helden, der am Zug ist (Hier: 11)
. . <> Change Switch: [559] = ON
. . <> Comment: Es wird geheilt
. . <> Call Event: Common Event #91
. . <> Comment: Heilung findet statt
. . <> Call Event: Common Event #82
. . <> Comment: Passive Fähigkeit für nach dem Abwehren angelegt?
. . <> Change Variable: [2001] -= 900
. . <> Comment: Speedverbrauch Abwehren hat 900
. . <> Change Switch: [541] = OFF
. . <> Comment: Zug beenden
. . <> Change Variable: [1122] = 1
. . <> Comment: Cursor Position auf 1 setzen, damit die KI nicht mit der Zielauswahl
. . : durcheinander kommt und man beim nächsten Zug Angriff ausgewählt
. . : hat
. . <> Erase Picture: #1
. . <> Comment: Auswahlfenster.png löschen
. . <> Erase Picture: #10
. . <> Comment: Cursor.png löschen
. . <> Change Switch: [559] = OFF
. . <> Comment: Heilung = AUS
. . <>
. : Else ...
. . <> Fork Condition: If Variable [1122] == 3 then ...
. . . <> Comment: Technik
. . . <> Call Event: Common Event #76
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [1122] == 4 then ...
. . . . <> Comment: Item
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Wait: 0,0 sec.



Das aufgerufene Commonevent ist die Zielauswahl und in diesem wird eigentlich nichts an Werten verändert, lediglich eben die Ziel-ID und es wird "Werte übergeben" aufgerufen.

Werte übergeben:



- SCRIPT -
<> Change Variable: [2022-2031] = 0
<> Comment: Übergibt Angreifer- und Verteidigerwerte
:
: EL und ZU noch ergänzen
<> Fork Condition: If Switch [541] == ON then ...
. <> Comment: Wenn Kämpfer1 am Zug ist
. <> Change Variable: [2022] = V[1802]
. <> Comment: Angreifer Level = Kämpfer1 Level
. <> Change Variable: [2023] = V[1811]
. <> Comment: Angreifer Angriffskraft = Kämpfer1 Angriffskraft
. <> Change Variable: [2024] = V[1808]
. <> Comment: Angreifer Vitalität = Kämpfer1 Vitalität
. <> Change Variable: [2025] = V[1809]
. <> Comment: Angreifer Wille = Kämpfer1 Wille
. <> Change Variable: [2026] = V[1810]
. <> Comment: Angreifer Geschick = Kämpfer1 Geschick
. <>
: Else ...
. <> Comment: Wenn Kämpfer1 nicht am Zug ist, verfahre mit dem der am Zug ist so.
. <> Fork Condition: If Switch [542] == ON then ...
. . <> Change Variable: [2022] = V[1822]
. . <> Change Variable: [2023] = V[1831]
. . <> Change Variable: [2024] = V[1828]
. . <> Change Variable: [2025] = V[1829]
. . <> Change Variable: [2026] = V[1830]
. . <>
. : Else ...
. . <> Fork Condition: If Switch [543] == ON then ...
. . . <> Change Variable: [2022] = V[1842]
. . . <> Change Variable: [2023] = V[1851]
. . . <> Change Variable: [2024] = V[1848]
. . . <> Change Variable: [2025] = V[1849]
. . . <> Change Variable: [2026] = V[1850]
. . . <>
. . : Else ...
. . . <> Fork Condition: If Switch [544] == ON then ...
. . . . <> Change Variable: [2022] = V[1902]
. . . . <> Change Variable: [2023] = V[1907]
. . . . <> Change Variable: [2024] = V[1908]
. . . . <> Change Variable: [2025] = V[1909]
. . . . <> Change Variable: [2026] = V[1910]
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Switch [545] == ON then ...
. . . . . <> Change Variable: [2022] = V[1922]
. . . . . <> Change Variable: [2023] = V[1927]
. . . . . <> Change Variable: [2024] = V[1928]
. . . . . <> Change Variable: [2025] = V[1929]
. . . . . <> Change Variable: [2026] = V[1930]
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Switch [546] == ON then ...
. . . . . . <> Change Variable: [2022] = V[1942]
. . . . . . <> Change Variable: [2023] = V[1947]
. . . . . . <> Change Variable: [2024] = V[1948]
. . . . . . <> Change Variable: [2025] = V[1949]
. . . . . . <> Change Variable: [2026] = V[1950]
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Fork Condition: If Switch [547] == ON then ...
. . . . . . . <> Change Variable: [2022] = V[1962]
. . . . . . . <> Change Variable: [2023] = V[1967]
. . . . . . . <> Change Variable: [2024] = V[1968]
. . . . . . . <> Change Variable: [2025] = V[1969]
. . . . . . . <> Change Variable: [2026] = V[1970]
. . . . . . . <>
. . . . . . : End of fork
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Fork Condition: If Variable [1122] == 21 then ...
. <> Comment: Wenn Gegner1 das Ziel ist, übergib die Werte.
. <> Change Variable: [2027] = V[1902]
. <> Change Variable: [2028] = V[1907]
. <> Change Variable: [2029] = V[1908]
. <> Change Variable: [2030] = V[1909]
. <> Change Variable: [2031] = V[1910]
. <>
: Else ...
. <> Comment: Ansonsten das richtige Ziel suchen und Werte übergeben.
. <> Fork Condition: If Variable [1122] == 22 then ...
. . <> Change Variable: [2027] = V[1922]
. . <> Change Variable: [2028] = V[1927]
. . <> Change Variable: [2029] = V[1928]
. . <> Change Variable: [2030] = V[1929]
. . <> Change Variable: [2031] = V[1930]
. . <>
. : Else ...
. . <> Fork Condition: If Variable [1122] == 23 then ...
. . . <> Change Variable: [2027] = V[1942]
. . . <> Change Variable: [2028] = V[1947]
. . . <> Change Variable: [2029] = V[1948]
. . . <> Change Variable: [2030] = V[1949]
. . . <> Change Variable: [2031] = V[1950]
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [1122] == 24 then ...
. . . . <> Change Variable: [2027] = V[1962]
. . . . <> Change Variable: [2028] = V[1967]
. . . . <> Change Variable: [2029] = V[1968]
. . . . <> Change Variable: [2030] = V[1969]
. . . . <> Change Variable: [2031] = V[1970]
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Fork Condition: If Variable [1985] == 11 then ...
. <> Change Variable: [2027] = V[1802]
. <> Change Variable: [2028] = V[1811]
. <> Change Variable: [2029] = V[1808]
. <> Change Variable: [2030] = V[1809]
. <> Change Variable: [2031] = V[1810]
. <>
: Else ...
. <> Fork Condition: If Variable [1122] == 11 then ...
. . <> Change Variable: [2027] = V[1802]
. . <> Change Variable: [2028] = V[1811]
. . <> Change Variable: [2029] = V[1808]
. . <> Change Variable: [2030] = V[1809]
. . <> Change Variable: [2031] = V[1810]
. . <>
. : Else ...
. . <> Fork Condition: If Variable [1985] == 12 then ...
. . . <> Change Variable: [2027] = V[1822]
. . . <> Change Variable: [2028] = V[1831]
. . . <> Change Variable: [2029] = V[1828]
. . . <> Change Variable: [2030] = V[1829]
. . . <> Change Variable: [2031] = V[1830]
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [1122] == 12 then ...
. . . . <> Change Variable: [2027] = V[1822]
. . . . <> Change Variable: [2028] = V[1831]
. . . . <> Change Variable: [2029] = V[1828]
. . . . <> Change Variable: [2030] = V[1829]
. . . . <> Change Variable: [2031] = V[1830]
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [1985] == 13 then ...
. . . . . <> Change Variable: [2027] = V[1842]
. . . . . <> Change Variable: [2028] = V[1851]
. . . . . <> Change Variable: [2029] = V[1848]
. . . . . <> Change Variable: [2030] = V[1849]
. . . . . <> Change Variable: [2031] = V[1850]
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [1122] == 13 then ...
. . . . . . <> Change Variable: [2027] = V[1842]
. . . . . . <> Change Variable: [2028] = V[1851]
. . . . . . <> Change Variable: [2029] = V[1848]
. . . . . . <> Change Variable: [2030] = V[1849]
. . . . . . <> Change Variable: [2031] = V[1850]
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Fork Condition: If Switch [560] == ON then ...
. <> Comment: Wenn eine Technik benutzt wurde, können sich die Werte
. : eventuell ändern
. <> Call Event: Common Event #88
. <>
: End of fork
<> Fork Condition: If Switch [558] == OFF then ...
. <> Comment: Wenn der Schaden nicht magisch ist, die Formel für physischen
. : Schaden aufrufen
. <> Call Event: Common Event #89
. <>
: Else ...
. <> Comment: Andernfalls die für magischen Schaden
. <> Call Event: Common Event #90
. <>
: End of fork



Am Anfang werden die "Problemwerte" noch einmal auf 0 gesetzt, was ja scheinbar auch nichts bringt :/
Am Ende wird erst abgefragt ob eine Technik benutzt wurde und wenn ja, dann werden die Werte eventuell noch verändert (das ist bei dem Problem aber irrelevant, da ich sowieso noch keine Techniken eingebaut habe).
Danach wird abgefragt ob der Schaden nicht magisch ist und wenn das zutrifft wird die physische Schadensformel aufgerufen, andernfalls die magische.
In diesen Events wird der Schaden berechnet mit den Werten, die übergeben wurden und dann das Event zum Schaden austeilen aufgerufen.

Schaden ausgeben:



- SCRIPT -
<> Comment: Je nachdem welches Ziel angegriffen wird, wird der Schaden
: ausgeteilt
:
: 20 = Alle Gegner
: 21 = Gegner1
: 22 = Gegner2
: 23 = Gegner3
: 24 = Gegner4
:
: 10 = Alle Helden
: 11 = Held1
: 12 = Held2
: 13 = Held3
:
:
: Wehrt das Ziel ab, verringert sich der Schaden um 37.5%
<> Fork Condition: If Variable [1122] == 20 then ...
. <> Change Variable: [1904] -= V[2033]
. <> Change Variable: [1924] -= V[2033]
. <> Change Variable: [1944] -= V[2033]
. <> Change Variable: [1964] -= V[2033]
. <>
: Else ...
. <> Fork Condition: If Variable [1122] == 21 then ...
. . <> Fork Condition: If Switch [565] == ON then ...
. . . <> Change Variable: [2033] *= 625
. . . <> Change Variable: [2033] /= 1000
. . . <>
. . : End of fork
. . <> Change Variable: [1904] -= V[2033]
. . <>
. : Else ...
. . <> Fork Condition: If Variable [1122] == 22 then ...
. . . <> Fork Condition: If Switch [566] == ON then ...
. . . . <> Change Variable: [2033] *= 625
. . . . <> Change Variable: [2033] /= 1000
. . . . <>
. . . : End of fork
. . . <> Change Variable: [1924] -= V[2033]
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [1122] == 23 then ...
. . . . <> Fork Condition: If Switch [567] == ON then ...
. . . . . <> Change Variable: [2033] *= 625
. . . . . <> Change Variable: [2033] /= 1000
. . . . . <>
. . . . : End of fork
. . . . <> Change Variable: [1944] -= V[2033]
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [1122] == 24 then ...
. . . . . <> Fork Condition: If Switch [568] == ON then ...
. . . . . . <> Change Variable: [2033] *= 625
. . . . . . <> Change Variable: [2033] /= 1000
. . . . . . <>
. . . . . : End of fork
. . . . . <> Change Variable: [1964] -= V[2033]
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Fork Condition: If Variable [1985] == 10 then ...
. <> Change Variable: [1804] -= V[2033]
. <> Change Variable: [1824] -= V[2033]
. <> Change Variable: [1844] -= V[2033]
. <>
: Else ...
. <> Fork Condition: If Variable [1122] == 10 then ...
. . <> Change Variable: [1804] -= V[2033]
. . <> Change Variable: [1824] -= V[2033]
. . <> Change Variable: [1844] -= V[2033]
. . <>
. : Else ...
. . <> Fork Condition: If Variable [1985] == 11 then ...
. . . <> Fork Condition: If Switch [561] == ON then ...
. . . . <> Change Variable: [2033] *= 625
. . . . <> Change Variable: [2033] /= 1000
. . . . <>
. . . : End of fork
. . . <> Change Variable: [1804] -= V[2033]
. . . <>
. . : Else ...
. . . <> Fork Condition: If Variable [1122] == 11 then ...
. . . . <> Fork Condition: If Switch [561] == ON then ...
. . . . . <> Fork Condition: If Switch [559] == OFF then ...
. . . . . . <> Change Variable: [2033] *= 625
. . . . . . <> Change Variable: [2033] /= 1000
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <> Change Variable: [1804] -= V[2033]
. . . . <>
. . . : Else ...
. . . . <> Fork Condition: If Variable [1985] == 12 then ...
. . . . . <> Fork Condition: If Switch [562] == ON then ...
. . . . . . <> Change Variable: [2033] *= 625
. . . . . . <> Change Variable: [2033] /= 1000
. . . . . . <>
. . . . . : End of fork
. . . . . <> Change Variable: [1824] -= V[2033]
. . . . . <>
. . . . : Else ...
. . . . . <> Fork Condition: If Variable [1122] == 12 then ...
. . . . . . <> Fork Condition: If Switch [562] == ON then ...
. . . . . . . <> Fork Condition: If Switch [559] == OFF then ...
. . . . . . . . <> Change Variable: [2033] *= 625
. . . . . . . . <> Change Variable: [2033] /= 1000
. . . . . . . . <>
. . . . . . . : End of fork
. . . . . . . <>
. . . . . . : End of fork
. . . . . . <> Change Variable: [1824] -= V[2033]
. . . . . . <>
. . . . . : Else ...
. . . . . . <> Fork Condition: If Variable [1985] == 13 then ...
. . . . . . . <> Fork Condition: If Switch [563] == ON then ...
. . . . . . . . <> Change Variable: [2033] *= 625
. . . . . . . . <> Change Variable: [2033] /= 1000
. . . . . . . . <>
. . . . . . . : End of fork
. . . . . . . <> Change Variable: [1844] -= V[2033]
. . . . . . . <>
. . . . . . : Else ...
. . . . . . . <> Fork Condition: If Variable [1122] == 13 then ...
. . . . . . . . <> Fork Condition: If Switch [563] == ON then ...
. . . . . . . . . <> Fork Condition: If Switch [559] == OFF then ...
. . . . . . . . . . <> Change Variable: [2033] *= 625
. . . . . . . . . . <> Change Variable: [2033] /= 1000
. . . . . . . . . . <>
. . . . . . . . . : End of fork
. . . . . . . . . <>
. . . . . . . . : End of fork
. . . . . . . . <> Change Variable: [1844] -= V[2033]
. . . . . . . . <>
. . . . . . . : End of fork
. . . . . . . <>
. . . . . . : End of fork
. . . . . . <>
. . . . . : End of fork
. . . . . <>
. . . . : End of fork
. . . . <>
. . . : End of fork
. . . <>
. . : End of fork
. . <>
. : End of fork
. <>
: End of fork
<> Comment: Wenn der Spieler am Zug war, Aggrowerte für die KI verteilen.
: Heilung gibt das doppelte an Aggro
<> Fork Condition: If Switch [541] == ON then ...
. <> Fork Condition: If Switch [559] == OFF then ...
. . <> Change Variable: [1987] += V[2033]
. . <>
. : Else ...
. . <> Change Variable: [2033] *= -2
. . <> Change Variable: [1987] += V[2033]
. . <>
. : End of fork
. <>
: End of fork
<> Fork Condition: If Switch [542] == ON then ...
. <> Fork Condition: If Switch [559] == OFF then ...
. . <> Change Variable: [1988] += V[2033]
. . <>
. : Else ...
. . <> Change Variable: [2033] *= -2
. . <> Change Variable: [1988] += V[2033]
. . <>
. : End of fork
. <>
: End of fork
<> Fork Condition: If Switch [543] == ON then ...
. <> Fork Condition: If Switch [559] == OFF then ...
. . <> Change Variable: [1989] += V[2033]
. . <>
. : Else ...
. . <> Change Variable: [2033] *= -2
. . <> Change Variable: [1989] += V[2033]
. . <>
. : End of fork
. <>
: End of fork
<> Fork Condition: If Variable [1804] > V[1803] then ...
. <> Change Variable: [1804] = V[1803]
. <>
: End of fork
<> Fork Condition: If Variable [1824] > V[1823] then ...
. <> Change Variable: [1824] = V[1823]
. <>
: End of fork
<> Fork Condition: If Variable [1844] > V[1843] then ...
. <> Change Variable: [1844] = V[1843]
. <>
: End of fork
<> Call Event: Common Event #92
<> Comment: Nachprüfen wer tot ist.



Danach wird nur geprüft ob die Kampfteilnehmer <= 0 HP haben und wenn ja werden sie als tot erklärt und dann wird halt je nachdem ob alle Kämpfer oder Gegner tot sind, das Win oder Game Over aufgerufen.


Ich hoffe mir kann jemand bei diesem Problem helfen, und noch viel mehr hoffe ich dass die Variablen nicht irgendwie "kaputt" sind. Das war ja auch glaub ich bei EFS mit einer Variable der Fall.
Falls notwendig, kann ich das Projekt auch gerne verschicken


MfG

Quetschi

Corti
30.03.2013, 00:13
Variablen kaputt halte ich für extremst unwahrscheinlich und das beschriebene Problem klingt nicht nach Zufall sondern nach einem Systemfehler.

Hier : mit diesem Tool kannste checken wo Variablen benutzt werden.
http://www.multimediaxis.de/threads/104052-Entdeckt-HOT-STUFF

djeurissen
30.03.2013, 00:35
Das ist mir zuviel, als das ich mich da jetzt reinlesen will...

Ich weiß ja nicht ob du deine Angaben prüfst, den kann es nicht sein das der Gegner keine 25 ATK sondern du einfach die Schadenspunkte übernimmst?

Quetschi
30.03.2013, 00:40
@Corti
Naja ich hab wie gesagt alles doppelt und dreifach und vierfach nachgeguckt. Ich werde morgen früh direkt nochmal mit dem Tool drüber schauen.

@djeurissen
Nein, das kann nicht sein. In den Events in denen der Schaden berechnet wird, wird die Schadensvariable und die beiden Variablen um bei der Rechnung Zwischenergebnisse zu speichern am Anfang auf 0 gesetzt. Hätte ich eventuell auch noch erwähnen sollen :x

djeurissen
30.03.2013, 00:49
Tja, dann benutz wie gesagt das Tool oder bau überall Messages rein die dir sagen wie die Variablen gerade stehen.
Sobald du bemerkst das es eine Abweichung gibt, kannst du den kreis schonmal eindämmen. Also bau auch eine Messagebox vor und nach dem Befehl ein der die Variablen auf 0 setzt. Vielleicht gibt es auch irgendwie eine Bug der die Variable immerwieder auf die selbe Zahl setzt...

Corti
30.03.2013, 09:20
djeurissen sagts schon, bau Messages rein. Du hast einen Zeitpunkt an dem ein falsches Ergebnis hast. Von dem Punkt an solltest du zurückverfolgen ab wann die Werte nicht mehr dem entsprechen was du erwartest. Ganz blöde Frage: Kennt du den Debugmode vom Maker? Drück mal F9 im Testmode.

Quetschi
30.03.2013, 10:23
Messages hab ich auch schon ausprobiert und durch den Makereigenen Debugmode habe ich ja erst herausgefunden, dass die Werte bleiben, da der Schaden der Gegner auf einmal so hoch war. Laut den Messages, werden die Werte korrekt übergeben.
Ebenso das Debug-Tool von sue445 liefert mir nur das Ergebnis, dass die Variablen eigentlich nur geändert werden wenn sie geändert werden sollen.

http://www.abload.de/thumb/debug_ergebnisse8di91.png (http://www.abload.de/image.php?img=debug_ergebnisse8di91.png)


Edit1:

Nach stundenlanger Suche hab ich den Fehler gefunden und muss gestehen, dass er recht blöd war :x
Ich hab vergessen die Variable KI-Ziel auf 0 zu setzen und deshalb hat der zuletzt angegriffene Held auch nochmal Schaden erhalten nachdem Kämpfer2 angegriffen hat^^
Das erklärt aber irgendwie immernoch nicht warum dies nur beim 2. Kämpfer der Fall war, auch als ich diesen zum Test entfernt habe, hab ich das nicht bei den anderen Kämpfer beobachten können...
Wie auch immer. Ich bin froh dass ich das Problem gefunden und behoben habe.


Edit2 - Ein neues Problem:

Ich habe ein weiteres Problem. Mein Abwehrbefehl spinnt auf einmal rum. Der Befehl wird nicht komplett ausgeführt und der Maker "hängt" quasi. Der Befehl hat vorher funktioniert und ich habe ihn nicht verändert,
noch habe ich Sachen geskriptet, die die gleichen Variablen und/oder Switches benutzen (Bereits mit dem genialen Tool nachgeguckt). Wenn ich Messages einfüge um zu gucken, wo der Befehl genau nicht weiter ausgeführt
wird, hängt das ganze noch früher.
Ich habe zum Testen hinter wirklich jeden Befehl eine Message getan. Wenn ich dann in meinem KS Abwehren auswähle werden nur die ersten beiden Befehle ausgeführt. Das hat mich dann ein bisschen gewundert, weil das
Event vorher noch viel weiter ausgeführt wurde. Also habe ich wieder zum Testen nur diese ersten beiden Messages entfernt, aber danach bleibt das Event nach einem Erase Picture und der Testnachricht stehen.
Weiß jemand welche Ursache das haben kann, das das Event einfach so stehen bleibt und nicht weiterarbeitet?

Quetschi
31.03.2013, 22:52
Hat denn keiner eine Idee woran das liegen kann, das das Event mittendrin plötzlich stoppt? :/
Ich hab schon alles ausprobiert was mir in den Sinn gekommen ist.
Ich habe bereits herausgefunden, dass das ganze mit meinem Eventcode zum Anzeigen des Schadens/der Heilung zusammenhängt, denn wenn ich dieses rausnehme funktioniert das Abwehren wunderbar.

Also habe ich wie bereits gesagt überall eine Message reingeschoben um zu gucken wo das ganze hängt. Aber komischerweise hängt das immer nach der ersten Message die erschienen ist.
Wenn ich garkeine Messages reinbaue, hängt sich das ganze auf wenn die Zahlen für die Heilung (mein Abwehrbefehl heilt um 5% der maximalen HP) kurz nach oben und wieder nach unten gehen sollten in einer Art Wellenbewegung.
Wenn ich die Bewegung rausnehme, stoppt das ganze trotzdem an dieser Stelle.

Noch komischer wird das ganze, da das Anzeigen des Schadens wunderbar funktioniert und es der gleiche Code ist (einfach kopiert) nur dass die Zahlen normal in weiß anstatt in grün angezeigt werden.
Wenn ich die aus der Abfrage ob geheilt wurde oder Schaden verursacht wurde den Eventcode für die Heilungszahlen rausnehme, hängt das Ganze sich auch auf.
Wenn ich das komplett rausnehme und einfach stur weiße Zahlen anzeigen lassen will, hängt es sich auch auf, obwohl es mit dem Angriffsbefehl weiterhin einwandfrei funktioniert.

Also habe ich erst einmal versucht den Code für die Darstellung der Heilung aus dem Common Event zu nehmen und in ein Map Event zu packen. Mit dem Ergebnis, dass es trotzdem nicht funktioniert.
Deshalb hab' ich dann versucht alles noch einmal neu zu machen und es hängt trotzdem an der gleichen Stelle.

Waits habe ich auch schon versucht reinzubauen, obwohl das beim Angriffsbefehl nicht notwendig war. Gestartet hab ich mit 0.0 Waits und bin dann bis 0.5 gegangen. Das hat mir soviel gebracht, dass das ganze
Event noch eher stoppt.
Und da es auch eher stoppt wenn ich Messages reinbaue, hab' ich mir zuerst gedacht es könnte an der Anzahl der Eventbefehle liegen. Daraufhin hab ich das mit dem Angriffsevents verglichen und festgestellt, dass
beim Angreifen noch viel mehr Eventcode ausgeführt wird. Also kann es eigentlich auch nicht daran liegen.

Gerade habe ich noch einmal ausprobiert, was passiert wenn ich die Heilung drinlasse und nur das Anzeigen der Höhe der Heilung weglasse. Ja, die Heilung findet statt, der Kämpfer befindet sich im Abwehrzustand und
der Zug wird beendet. Alles schön und gut aber ich hätte es gerne mit der Anzeige, nur verstehe ich nicht warum das nicht funktioniert, da es ja, wie bereits erwähnt, der selbe Eventcode ist wie beim normalen Schaden anzeigen nur in grün.
Außerdem stoppt es ja, wie ich ebenfalls bereits erwähnt habe, auch wenn ich die Zahlen in weiß anzeigen lassen, also mit dem Code der auf jeden Fall funktioniert wenn ich Schaden darstellen will.

Ich könnte das auch ohne die Anzeige machen, da man eine HP-Leiste und halt HP-Zahlen hat, aber trotzdem ist es für den Spieler besser mit der Anzeige, da er dann weiß um wieviel er geheilt
wurde ohne das noch ausrechnen zu müssen.

Hat irgendeiner eine Idee warum das anhält? ._.

Corti
01.04.2013, 04:06
Mal ganz doof gefragt: Ist alles was passiert sequenziell oder hast du irgendwas parallel zueinander laufen?

Quetschi
01.04.2013, 07:53
Ich arbeite eigentlich wenig mit parallelen Prozessen, sondern lasse alles per CallEvent aufeinander aufbauen. Zu dem Zeitpunkt sind 3 Stück am Laufen, mit denen die HP-Zahlen (also aktuell/maximal) angezeigt werden.
Eigentlich dürfte das nicht das Problem sein, da es beim Angriff ja funktioniert. Trotzdem habe ich sie eben auf Call gestellt und es ändert sich nichts, außer dass das KS am Anfang langsamer lädt. Das Anhalten beim Abwehrbefehl bleibt bestehen.

Davy Jones
01.04.2013, 10:26
Der fehleranfälligste Befehl im Maker ist Move Event (besonders wenn Ignore Impossible Moves nicht eingehakt wurde), gefolgt von Proceed with Movement (das man im Zweifelsfalle durch waits ersetzen sollte).

Hast du davon irgendwas im Code?

Quetschi
01.04.2013, 10:37
Nein hab ich nicht. Zumindest nicht an dieser Stelle.
Lediglich in einem Map Event, welches einen Action Key Trigger hat und nur ganz zu bekommen einmal aufgerufen wird um mir die Namen der Kampfteilnehmer anzuzeigen, also wird's wohl nicht damit zu tun haben.

Cherry
02.04.2013, 11:57
Wenn das der 2k3 ist:

Du könntest mal mit dem Debugaddon die Eventbefehlverarbeitung mitschneiden und dann nachschauen wo es hängt: http://www.multimediaxis.de/threads/104116-Programmwunsch-und-erstellungsthread-2?p=2801470&viewfull=1#post2801470
Aber bitte nicht deine RPG_RT.exe ersetzen, weil das Debugaddon selber ein paar kleine Macken hat, also lieber eine RPG_RT_Debug.exe oder so draus machen und nur zum Debuggen verwenden.

Wenn das der 2k ist:

Schick mir ein Testprojekt wo der Fehlerauftritt und ich schau für dich nach (weil da müsste ich ein bisschen tricksen dass das Debugaddon mit dem 2k läuft).

Quetschi
02.04.2013, 12:30
Wenn ich den Patch drauf ziehe und die RPG_RT.exe dann starten will kommt zuerst eine Meldung, dass RPG_RT.exe nicht mehr funkioniert und danach diese Meldung.

http://www.abload.de/thumb/errr34ual.png (http://www.abload.de/image.php?img=errr34ual.png)

Falls es hilft, ich hab den 2k3 v1.08 mit BetterAEP und DynRPG.

Edit: Okay es läuft, zwar ohne BetterAEP und DynRPG, aber da der Bug mit dem anhaltendem Event trotzdem auftritt wird es wohl nicht an beiden liegen.

Edit2: So ich hab das ganze jetzt mal aufzeichnen lassen, sogar mehrmals und ich bin wieder zu unterschiedlichen Ergebnissen gekommen.
Zuerst hängt es nach einem Move Picture Befehl, danach kommt es nichtmals dazu die Bilder anzeigen zu lassen.

Cherry
02.04.2013, 13:25
Nein, du sollst mit der F3-Funktion die Eventverarbeitung mitschreiben lassen.
F3 drücken bevor es hängt, bestätigen, warten bis es hängt, nochmal F3 drücken, Spiel schließen, trace.log-Datei anschauen (letzte Einträge).

Quetschi
02.04.2013, 13:54
Habe ich ja...und dort habe ich eben gestgestellt, dass es einmal vor dem Move Picture gestoppt hat und beim nächsten mal kam es nicht einmal bis dahin...

Cherry
02.04.2013, 15:05
Sorry, hab den Edit nicht gesehen.

Zeig mir mal die Logfiles.

Quetschi
02.04.2013, 15:55
Okay.

Fall 1:

[13:05:08, Frm 490] S[541:Kämpfer1 Zug] == ON
[13:05:08, Frm 490] Ev 2, Pg 14, Ln 1: <> Fork Condition: If Switch [541] == OFF then ...
[13:05:08, Frm 490] Ev 2, Pg 14, Ln 93: : End of fork
[13:05:08, Frm 490] V[1121:Cursor [Key]] := 0
[13:05:08, Frm 491] S[541:Kämpfer1 Zug] == ON
[13:05:08, Frm 491] Ev 2, Pg 14, Ln 1: <> Fork Condition: If Switch [541] == OFF then ...
[13:05:08, Frm 491] Ev 2, Pg 14, Ln 93: : End of fork
[13:05:08, Frm 491] V[1121:Cursor [Key]] := 5
[13:05:08, Frm 491] V[1121:Cursor [Key]] == 5
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 2: <> Fork Condition: If Variable [1121] == 1 then ...
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 16: : Else ...
[13:05:08, Frm 491] V[1121:Cursor [Key]] == 5
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 17: <> Fork Condition: If Variable [1121] == 4 then ...
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 31: : Else ...
[13:05:08, Frm 491] V[1121:Cursor [Key]] == 5
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 32: <> Fork Condition: If Variable [1121] == 5 then ...
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 33: <> Comment: Enter
[13:05:08, Frm 491] S[538:Esc=Flucht] == OFF
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 34: <> Fork Condition: If Switch [538] == OFF then ...
[13:05:08, Frm 491] V[1103:Anzeige X2] == 8
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 35: <> Change Variable: [1103] = 8
[13:05:08, Frm 491] V[1103:Anzeige X2] := 8
[13:05:08, Frm 491] V[1103:Anzeige X2] == 8
[13:05:08, Frm 491] V[1104:Anzeige Y2] == 184
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 36: <> Show Picture: #11, cursor_off, (V[1103], V[1104]), Mgn 100%, Tsp

0%/0%, No trans. color
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 37: <> Comment: Wenn das Fluchtmenü nicht aufgerufen ist, wird cursor_off

eingeblendet
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 39: <>
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 40: : End of fork
[13:05:08, Frm 491] S[541:Kämpfer1 Zug] == ON
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 41: <> Fork Condition: If Switch [541] == ON then ...
[13:05:08, Frm 491] Ev 29, Pg 1, Ln 42: <> Call Event: Map Event #16, Page #1
[13:05:08, Frm 491] V[1122:Cursor [Pos]] == 2
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 1: <> Fork Condition: If Variable [1122] == 1 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 33: : Else ...
[13:05:08, Frm 491] V[1122:Cursor [Pos]] == 2
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 34: <> Fork Condition: If Variable [1122] == 2 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 35: <> Comment: Abwehr verringert gegnerischen Schaden um 37,5% und heilt
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 37: <> Change Switch: [561] = ON
[13:05:08, Frm 491] S[561:Kämpfer1 Schutz] := ON
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 38: <> Comment: Schutz aktivieren
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 39: <> Change Switch: [4] = OFF
[13:05:08, Frm 491] S[4:cursor] := OFF
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 40: <> Comment: Cursor ausschalten
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 41: <> Erase Picture: #11
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 42: <> Comment: Cursor_off.png löschen
[13:05:08, Frm 491] V[2034:Schaden Rechenhilfe] == 0
[13:05:08, Frm 491] V[1803:Kämpfer1 MaxHP] == 264
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 43: <> Change Variable: [2034] = V[1803]
[13:05:08, Frm 491] V[2034:Schaden Rechenhilfe] := 264
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 44: <> Comment: Schadenrechenhilfe = MaxHP
[13:05:08, Frm 491] V[2034:Schaden Rechenhilfe] == 264
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 45: <> Change Variable: [2034] /= 100
[13:05:08, Frm 491] V[2034:Schaden Rechenhilfe] := 2
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 46: <> Comment: Schadenrechenhilfe/100 für Prozente
[13:05:08, Frm 491] V[2034:Schaden Rechenhilfe] == 2
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 47: <> Change Variable: [2034] *= 5
[13:05:08, Frm 491] V[2034:Schaden Rechenhilfe] := 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 48: <> Comment: Schadenrechenhilfe*5 = 5% der MaxHP
[13:05:08, Frm 491] V[2033:Schaden] == 0
[13:05:08, Frm 491] V[2034:Schaden Rechenhilfe] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 49: <> Change Variable: [2033] = V[2034]
[13:05:08, Frm 491] V[2033:Schaden] := 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 50: <> Comment: Schaden = Schadenrechenhilfe
[13:05:08, Frm 491] V[2033:Schaden] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 51: <> Change Variable: [2033] *= -1
[13:05:08, Frm 491] V[2033:Schaden] := -10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 52: <> Comment: Schaden = *-1 , da es heilen soll
[13:05:08, Frm 491] V[1122:Cursor [Pos]] == 2
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 53: <> Change Variable: [1122] = 11
[13:05:08, Frm 491] V[1122:Cursor [Pos]] := 11
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 54: <> Comment: Cursorposition auf den Helden, der am Zug ist (Hier: 11)
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 55: <> Change Switch: [559] = ON
[13:05:08, Frm 491] S[559:Heilung?] := ON
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 56: <> Comment: Es wird geheilt
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 57: <> Call Event: Map Event #16, Page #4
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 1: <> Comment: |_______________________________________________|
[13:05:08, Frm 491] V[1122:Cursor [Pos]] == 11
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 6: <> Fork Condition: If Variable [1122] == 11 then ...
[13:05:08, Frm 491] S[561:Kämpfer1 Schutz] == ON
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 7: <> Fork Condition: If Switch [561] == ON then ...
[13:05:08, Frm 491] S[559:Heilung?] == ON
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 8: <> Fork Condition: If Switch [559] == OFF then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 12: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 13: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 14: : End of fork
[13:05:08, Frm 491] V[1804:Kämpfer1 HP] == 264
[13:05:08, Frm 491] V[2033:Schaden] == -10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 15: <> Change Variable: [1804] -= V[2033]
[13:05:08, Frm 491] V[1804:Kämpfer1 HP] := 274
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 16: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 17: : Else ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 45: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 46: <> Comment: Wenn der Spieler am Zug war, Aggrowerte für die KI verteilen.
[13:05:08, Frm 491] S[541:Kämpfer1 Zug] == ON
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 48: <> Fork Condition: If Switch [541] == ON then ...
[13:05:08, Frm 491] V[2033:Schaden] == -10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 49: <> Change Variable: [2033] *= -2
[13:05:08, Frm 491] V[2033:Schaden] := 20
[13:05:08, Frm 491] V[1987:Kämpfer1 Aggro] == 0
[13:05:08, Frm 491] V[2033:Schaden] == 20
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 50: <> Change Variable: [1987] += V[2033]
[13:05:08, Frm 491] V[1987:Kämpfer1 Aggro] := 20
[13:05:08, Frm 491] V[2033:Schaden] == 20
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 51: <> Change Variable: [2033] /= 2
[13:05:08, Frm 491] V[2033:Schaden] := 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 52: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 53: : End of fork
[13:05:08, Frm 491] S[542:Kämpfer2 Zug] == OFF
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 54: <> Fork Condition: If Switch [542] == ON then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 59: : End of fork
[13:05:08, Frm 491] S[543:Kämpfer3 Zug] == OFF
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 60: <> Fork Condition: If Switch [543] == ON then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 65: : End of fork
[13:05:08, Frm 491] V[1804:Kämpfer1 HP] == 274
[13:05:08, Frm 491] V[1803:Kämpfer1 MaxHP] == 264
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 66: <> Fork Condition: If Variable [1804] > V[1803] then ...
[13:05:08, Frm 491] V[1804:Kämpfer1 HP] == 274
[13:05:08, Frm 491] V[1803:Kämpfer1 MaxHP] == 264
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 67: <> Change Variable: [1804] = V[1803]
[13:05:08, Frm 491] V[1804:Kämpfer1 HP] := 264
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 68: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 69: : End of fork
[13:05:08, Frm 491] V[1824:Kämpfer2 HP] == 508
[13:05:08, Frm 491] V[1823:Kämpfer2 MaxHP] == 508
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 70: <> Fork Condition: If Variable [1824] > V[1823] then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 73: : End of fork
[13:05:08, Frm 491] V[1844:Kämpfer3 HP] == 219
[13:05:08, Frm 491] V[1843:Kämpfer3 MaxHP] == 219
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 74: <> Fork Condition: If Variable [1844] > V[1843] then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 77: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 78: <> Comment: Schaden anzeigen lassen
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 79: <> Call Event: Map Event #16, Page #5
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 1: <> Change Variable: [1105-1112] = 0
[13:05:08, Frm 491] V[1105:Anzeige X3] := 0
[13:05:08, Frm 491] V[1106:Anzeige Y3] := 0
[13:05:08, Frm 491] V[1107:Anzeige X4] := 0
[13:05:08, Frm 491] V[1108:Anzeige Y4] := 0
[13:05:08, Frm 491] V[1109:Anzeige X5] := 0
[13:05:08, Frm 491] V[1110:Anzeige Y5] := 0
[13:05:08, Frm 491] V[1111:Anzeige X6] := 0
[13:05:08, Frm 491] V[1112:Anzeige Y6] := 0
[13:05:08, Frm 491] V[2033:Schaden] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 2: <> Change Variable: [2037-2040] = V[2033]
[13:05:08, Frm 491] V[2037:Schaden 1000er] := 10
[13:05:08, Frm 491] V[2038:Schaden 100er] := 10
[13:05:08, Frm 491] V[2039:Schaden 10er] := 10
[13:05:08, Frm 491] V[2040:Schaden 1er] := 10
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 3: <> Change Variable: [2038] Mod= 1000
[13:05:08, Frm 491] V[2038:Schaden 100er] := 10
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 4: <> Change Variable: [2039] Mod= 100
[13:05:08, Frm 491] V[2039:Schaden 10er] := 10
[13:05:08, Frm 491] V[2040:Schaden 1er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 5: <> Change Variable: [2040] Mod= 10
[13:05:08, Frm 491] V[2040:Schaden 1er] := 0
[13:05:08, Frm 491] V[1122:Cursor [Pos]] == 11
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 6: <> Fork Condition: If Variable [1122] == 11 then ...
[13:05:08, Frm 491] V[1105:Anzeige X3] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 7: <> Change Variable: [1105] = 238
[13:05:08, Frm 491] V[1105:Anzeige X3] := 238
[13:05:08, Frm 491] V[1106:Anzeige Y3] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 8: <> Change Variable: [1106] = 120
[13:05:08, Frm 491] V[1106:Anzeige Y3] := 120
[13:05:08, Frm 491] V[1107:Anzeige X4] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 9: <> Change Variable: [1107] = 245
[13:05:08, Frm 491] V[1107:Anzeige X4] := 245
[13:05:08, Frm 491] V[1108:Anzeige Y4] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 10: <> Change Variable: [1108] = 120
[13:05:08, Frm 491] V[1108:Anzeige Y4] := 120
[13:05:08, Frm 491] V[1109:Anzeige X5] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 11: <> Change Variable: [1109] = 252
[13:05:08, Frm 491] V[1109:Anzeige X5] := 252
[13:05:08, Frm 491] V[1110:Anzeige Y5] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 12: <> Change Variable: [1110] = 120
[13:05:08, Frm 491] V[1110:Anzeige Y5] := 120
[13:05:08, Frm 491] V[1111:Anzeige X6] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 13: <> Change Variable: [1111] = 259
[13:05:08, Frm 491] V[1111:Anzeige X6] := 259
[13:05:08, Frm 491] V[1112:Anzeige Y6] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 14: <> Change Variable: [1112] = 120
[13:05:08, Frm 491] V[1112:Anzeige Y6] := 120
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 15: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 16: : End of fork
[13:05:08, Frm 491] V[1122:Cursor [Pos]] == 11
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 17: <> Fork Condition: If Variable [1122] == 12 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 27: : End of fork
[13:05:08, Frm 491] V[1122:Cursor [Pos]] == 11
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 28: <> Fork Condition: If Variable [1122] == 13 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 38: : End of fork
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 39: <> Fork Condition: If Variable [2037] >= 9000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 42: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 43: <> Fork Condition: If Variable [2037] >= 8000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 46: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 47: <> Fork Condition: If Variable [2037] >= 7000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 50: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 51: <> Fork Condition: If Variable [2037] >= 6000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 54: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 55: <> Fork Condition: If Variable [2037] >= 5000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 58: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 59: <> Fork Condition: If Variable [2037] >= 4000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 62: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 63: <> Fork Condition: If Variable [2037] >= 3000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 66: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 67: <> Fork Condition: If Variable [2037] >= 2000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 70: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 71: <> Fork Condition: If Variable [2037] >= 1000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 74: : Else ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 75: <> Erase Picture: #5
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 76: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 77: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 78: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 79: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 80: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 81: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 82: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 83: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 84: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 85: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 86: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 87: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 88: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 89: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 90: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 91: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 92: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 93: : End of fork
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 94: <> Fork Condition: If Variable [2038] >= 900 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 97: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 98: <> Fork Condition: If Variable [2038] >= 800 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 101: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 102: <> Fork Condition: If Variable [2038] >= 700 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 105: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 106: <> Fork Condition: If Variable [2038] >= 600 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 109: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 110: <> Fork Condition: If Variable [2038] >= 500 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 113: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 114: <> Fork Condition: If Variable [2038] >= 400 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 117: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 118: <> Fork Condition: If Variable [2038] >= 300 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 121: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 122: <> Fork Condition: If Variable [2038] >= 200 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 125: : Else ...
[13:05:08, Frm 491] V[2038:Schaden 100er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 126: <> Fork Condition: If Variable [2038] >= 100 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 129: : Else ...
[13:05:08, Frm 491] V[2037:Schaden 1000er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 130: <> Fork Condition: If Variable [2037] >= 1000 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 133: : Else ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 134: <> Erase Picture: #6
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 135: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 136: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 137: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 138: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 139: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 140: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 141: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 142: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 143: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 144: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 145: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 146: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 147: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 148: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 149: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 150: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 151: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 152: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 153: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 154: : End of fork
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 155: <> Fork Condition: If Variable [2039] >= 90 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 158: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 159: <> Fork Condition: If Variable [2039] >= 80 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 162: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 163: <> Fork Condition: If Variable [2039] >= 70 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 166: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 167: <> Fork Condition: If Variable [2039] >= 60 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 170: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 171: <> Fork Condition: If Variable [2039] >= 50 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 174: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 175: <> Fork Condition: If Variable [2039] >= 40 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 178: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 179: <> Fork Condition: If Variable [2039] >= 30 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 182: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 183: <> Fork Condition: If Variable [2039] >= 20 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 186: : Else ...
[13:05:08, Frm 491] V[2039:Schaden 10er] == 10
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 187: <> Fork Condition: If Variable [2039] >= 10 then ...
[13:05:08, Frm 491] V[1109:Anzeige X5] == 252
[13:05:08, Frm 491] V[1110:Anzeige Y5] == 120
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 188: <> Show Picture: #7, z1, (V[1109], V[1110]), Mgn 120%, Tsp 0%/0%,

(R20%, G110%, B20%, C100%)
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 189: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 190: : Else ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 205: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 206: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 207: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 208: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 209: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 210: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 211: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 212: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 213: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 214: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 215: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 216: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 217: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 218: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 219: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 220: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 221: : End of fork
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 222: <> Fork Condition: If Variable [2040] == 9 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 225: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 226: <> Fork Condition: If Variable [2040] == 8 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 229: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 230: <> Fork Condition: If Variable [2040] == 7 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 233: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 234: <> Fork Condition: If Variable [2040] == 6 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 237: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 238: <> Fork Condition: If Variable [2040] == 5 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 241: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 242: <> Fork Condition: If Variable [2040] == 4 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 245: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 246: <> Fork Condition: If Variable [2040] == 3 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 249: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 250: <> Fork Condition: If Variable [2040] == 2 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 253: : Else ...
[13:05:08, Frm 491] V[2040:Schaden 1er] == 0
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 254: <> Fork Condition: If Variable [2040] == 1 then ...
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 257: : Else ...
[13:05:08, Frm 491] V[1111:Anzeige X6] == 259
[13:05:08, Frm 491] V[1112:Anzeige Y6] == 120
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 258: <> Show Picture: #8, z0, (V[1111], V[1112]), Mgn 120%, Tsp 0%/0%,

(R20%, G110%, B20%, C100%)
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 259: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 260: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 261: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 262: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 263: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 264: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 265: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 266: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 267: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 268: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 269: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 270: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 271: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 272: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 273: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 274: : End of fork
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 275: <>
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 276: : End of fork
[13:05:08, Frm 491] V[1106:Anzeige Y3] == 120
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 277: <> Change Variable: [1106] -= 10
[13:05:08, Frm 491] V[1106:Anzeige Y3] := 110
[13:05:08, Frm 491] V[1108:Anzeige Y4] == 120
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 278: <> Change Variable: [1108] -= 10
[13:05:08, Frm 491] V[1108:Anzeige Y4] := 110
[13:05:08, Frm 491] V[1110:Anzeige Y5] == 120
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 279: <> Change Variable: [1110] -= 10
[13:05:08, Frm 491] V[1110:Anzeige Y5] := 110
[13:05:08, Frm 491] V[1112:Anzeige Y6] == 120
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 280: <> Change Variable: [1112] -= 10
[13:05:08, Frm 491] V[1112:Anzeige Y6] := 110
[13:05:08, Frm 491] V[1105:Anzeige X3] == 238
[13:05:08, Frm 491] V[1106:Anzeige Y3] == 110
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 281: <> Move Picture: #5, (V[1105], V[1106]), Mgn 120%, Tsp 0%/0%, 0,1 sec.
[13:05:08, Frm 491] Ev 16, Pg 6, Ln 282: <> Wait: 0,0 sec.
Hier an dieser Stelle stoppt es. Eigentlich sollten noch die anderen Pictures bewegt werden und danach alle gelöscht werden und noch ein paar Variablen und Switches geändert werden.
[13:05:08, Frm 492] S[522:Kämpfer1 im Kampf] == ON
[13:05:08, Frm 492] Ev 0, Pg 0, Ln 1: <> Fork Condition: If Switch [522] == ON then ...
[13:05:08, Frm 492] V[2041:HP-Leistenrechnung] == 100
[13:05:08, Frm 492] V[1804:Kämpfer1 HP] == 264
[13:05:08, Frm 492] Ev 0, Pg 0, Ln 2: <> Change Variable: [2041] = V[1804]
[13:05:08, Frm 492] V[2041:HP-Leistenrechnung] := 264
[13:05:08, Frm 492] V[2041:HP-Leistenrechnung] == 264
[13:05:08, Frm 492] Ev 0, Pg 0, Ln 3: <> Change Variable: [2041] *= 100
[13:05:08, Frm 492] V[2041:HP-Leistenrechnung] := 26400
[13:05:08, Frm 492] V[2041:HP-Leistenrechnung] == 26400
[13:05:08, Frm 492] V[1803:Kämpfer1 MaxHP] == 264
[13:05:08, Frm 492] Ev 0, Pg 0, Ln 4: <> Change Variable: [2041] /= V[1803]
[13:05:08, Frm 492] V[2041:HP-Leistenrechnung] := 100
[13:05:08, Frm 492] V[2042:Kämpfer1 HP%] == 100
[13:05:08, Frm 492] V[2041:HP-Leistenrechnung] == 100
[13:05:08, Frm 492] Ev 0, Pg 0, Ln 5: <> Change Variable: [2042] = V[2041]
[13:05:08, Frm 492] V[2042:Kämpfer1 HP%] := 100
[13:05:08, Frm 492] Ev 0, Pg 0, Ln 6: <>
[13:05:08, Frm 492] Ev 0, Pg 0, Ln 7: : End of fork


Fall 2:

[13:20:54, Frm 534] V[1121:Cursor [Key]] := 5
[13:20:54, Frm 534] V[1121:Cursor [Key]] == 5
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 2: <> Fork Condition: If Variable [1121] == 1 then ...
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 16: : Else ...
[13:20:54, Frm 534] V[1121:Cursor [Key]] == 5
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 17: <> Fork Condition: If Variable [1121] == 4 then ...
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 31: : Else ...
[13:20:54, Frm 534] V[1121:Cursor [Key]] == 5
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 32: <> Fork Condition: If Variable [1121] == 5 then ...
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 33: <> Comment: Enter
[13:20:54, Frm 534] S[538:Esc=Flucht] == OFF
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 34: <> Fork Condition: If Switch [538] == OFF then ...
[13:20:54, Frm 534] V[1103:Anzeige X2] == 6
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 35: <> Change Variable: [1103] = 8
[13:20:54, Frm 534] V[1103:Anzeige X2] := 8
[13:20:54, Frm 534] V[1103:Anzeige X2] == 8
[13:20:54, Frm 534] V[1104:Anzeige Y2] == 184
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 36: <> Show Picture: #11, cursor_off, (V[1103], V[1104]), Mgn 100%, Tsp

0%/0%, No trans. color
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 37: <> Comment: Wenn das Fluchtmenü nicht aufgerufen ist, wird cursor_off

eingeblendet
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 39: <>
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 40: : End of fork
[13:20:54, Frm 534] S[541:Kämpfer1 Zug] == ON
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 41: <> Fork Condition: If Switch [541] == ON then ...
[13:20:54, Frm 534] Ev 29, Pg 1, Ln 42: <> Call Event: Map Event #16, Page #1
[13:20:54, Frm 534] V[1122:Cursor [Pos]] == 2
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 1: <> Fork Condition: If Variable [1122] == 1 then ...
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 33: : Else ...
[13:20:54, Frm 534] V[1122:Cursor [Pos]] == 2
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 34: <> Fork Condition: If Variable [1122] == 2 then ...
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 35: <> Comment: Abwehr verringert gegnerischen Schaden um 37,5% und heilt
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 37: <> Change Switch: [561] = ON
[13:20:54, Frm 534] S[561:Kämpfer1 Schutz] := ON
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 38: <> Comment: Schutz aktivieren
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 39: <> Change Switch: [4] = OFF
[13:20:54, Frm 534] S[4:cursor] := OFF
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 40: <> Comment: Cursor ausschalten
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 41: <> Erase Picture: #11
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 42: <> Comment: Cursor_off.png löschen
[13:20:54, Frm 534] V[2034:Schaden Rechenhilfe] == 0
[13:20:54, Frm 534] V[1803:Kämpfer1 MaxHP] == 264
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 43: <> Change Variable: [2034] = V[1803]
[13:20:54, Frm 534] V[2034:Schaden Rechenhilfe] := 264
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 44: <> Comment: Schadenrechenhilfe = MaxHP
[13:20:54, Frm 534] V[2034:Schaden Rechenhilfe] == 264
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 45: <> Change Variable: [2034] /= 100
[13:20:54, Frm 534] V[2034:Schaden Rechenhilfe] := 2
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 46: <> Comment: Schadenrechenhilfe/100 für Prozente
[13:20:54, Frm 534] V[2034:Schaden Rechenhilfe] == 2
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 47: <> Change Variable: [2034] *= 5
[13:20:54, Frm 534] V[2034:Schaden Rechenhilfe] := 10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 48: <> Comment: Schadenrechenhilfe*5 = 5% der MaxHP
[13:20:54, Frm 534] V[2033:Schaden] == 0
[13:20:54, Frm 534] V[2034:Schaden Rechenhilfe] == 10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 49: <> Change Variable: [2033] = V[2034]
[13:20:54, Frm 534] V[2033:Schaden] := 10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 50: <> Comment: Schaden = Schadenrechenhilfe
[13:20:54, Frm 534] V[2033:Schaden] == 10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 51: <> Change Variable: [2033] *= -1
[13:20:54, Frm 534] V[2033:Schaden] := -10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 52: <> Comment: Schaden = *-1 , da es heilen soll
[13:20:54, Frm 534] V[1122:Cursor [Pos]] == 2
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 53: <> Change Variable: [1122] = 11
[13:20:54, Frm 534] V[1122:Cursor [Pos]] := 11
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 54: <> Comment: Cursorposition auf den Helden, der am Zug ist (Hier: 11)
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 55: <> Change Switch: [559] = ON
[13:20:54, Frm 534] S[559:Heilung?] := ON
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 56: <> Comment: Es wird geheilt
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 57: <> Call Event: Map Event #16, Page #4
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 1: <> Comment: |_______________________________________________|
[13:20:54, Frm 534] V[1122:Cursor [Pos]] == 11
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 6: <> Fork Condition: If Variable [1122] == 11 then ...
[13:20:54, Frm 534] S[561:Kämpfer1 Schutz] == ON
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 7: <> Fork Condition: If Switch [561] == ON then ...
[13:20:54, Frm 534] S[559:Heilung?] == ON
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 8: <> Fork Condition: If Switch [559] == OFF then ...
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 12: : End of fork
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 13: <>
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 14: : End of fork
[13:20:54, Frm 534] V[1804:Kämpfer1 HP] == 264
[13:20:54, Frm 534] V[2033:Schaden] == -10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 15: <> Change Variable: [1804] -= V[2033]
[13:20:54, Frm 534] V[1804:Kämpfer1 HP] := 274
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 16: <>
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 17: : Else ...
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 45: : End of fork
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 46: <> Comment: Wenn der Spieler am Zug war, Aggrowerte für die KI verteilen.
[13:20:54, Frm 534] S[541:Kämpfer1 Zug] == ON
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 48: <> Fork Condition: If Switch [541] == ON then ...
[13:20:54, Frm 534] V[2033:Schaden] == -10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 49: <> Change Variable: [2033] *= -2
[13:20:54, Frm 534] V[2033:Schaden] := 20
[13:20:54, Frm 534] V[1987:Kämpfer1 Aggro] == 0
[13:20:54, Frm 534] V[2033:Schaden] == 20
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 50: <> Change Variable: [1987] += V[2033]
[13:20:54, Frm 534] V[1987:Kämpfer1 Aggro] := 20
[13:20:54, Frm 534] V[2033:Schaden] == 20
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 51: <> Change Variable: [2033] /= 2
[13:20:54, Frm 534] V[2033:Schaden] := 10
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 52: <>
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 53: : End of fork
Das Event endet jetzt schon viel früher und kommt nicht einmal dazu, die Zahlen anzuzeigen.
[13:20:54, Frm 534] S[542:Kämpfer2 Zug] == OFF
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 54: <> Fork Condition: If Switch [542] == ON then ...
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 59: : End of fork
[13:20:54, Frm 534] S[543:Kämpfer3 Zug] == OFF
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 60: <> Fork Condition: If Switch [543] == ON then ...
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 65: : End of fork
[13:20:54, Frm 534] V[1804:Kämpfer1 HP] == 274
[13:20:54, Frm 534] V[1803:Kämpfer1 MaxHP] == 264
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 66: <> Fork Condition: If Variable [1804] > V[1803] then ...
[13:20:54, Frm 534] V[1804:Kämpfer1 HP] == 274
[13:20:54, Frm 534] V[1803:Kämpfer1 MaxHP] == 264
[13:20:54, Frm 534] Ev 16, Pg 6, Ln 67: <> Change Variable: [1804] = V[1803]


Der Rest bzw. alles was vorher kam, sind nur Berechnungen zur HP-Anzeige

Cherry
02.04.2013, 15:59
Hm, das ist interessant, da dürfte eigentlich gar nichts hängen blieben. Ich kann jetzt dich nur noch um das Projekt (oder einen Auszug, in dem der Fehler auftritt) bitten und das händisch mit einem Debugger analysieren.

Quetschi
02.04.2013, 16:15
Ich finde es auch komisch. Naja hier das Projekt. Das ist aber jetzt wie gesagt ohne BetterAEP und DynRPG, da das mit dem Debugaddon nicht funktioniert hat.

Download (https://mega.co.nz/#!bIZHRZxT!LCwt9hL5cy4R2LugBJMsjVD_74UO2RYaeaBQ3CR8hCM (3.2 MB))

Cherry
02.04.2013, 20:27
Wie löse ich den Fehler aus?

Quetschi
02.04.2013, 20:46
Ups...vergessen zu erklären.^^
Einfach starten und dann nach rechts auf das Feld zwischen dem Jungen und dem Baumstumpf. Dann einfach draufstellen und Enter drücken.
Dann kurz warten und dann "Abwehr" auswählen und Enter drücken.

Cherry
02.04.2013, 22:03
Aaaaahhhhh, Fehler gefunden.

Du ziehst dir selbst den Boden unter den Füßen weg.

Zuerst eine Vorinformation: Der RPG Maker checkt zu Beginn jedes Frames die Startbedingungen der Events.
Event "EV0029", Seite 1, hat Switch 4 "Cursor" als Startbedingung.

Was passiert ist:

=== Framebeginn ===
RPG Maker überprüft Startbedingungen, Switch 4 ist an, also wird Event "EV0029", Seite 1, ausgeführt.
Event "EV0029", Seite 1, hat Switch 4 "Cursor" als Startbedingung.
Event "EV0029", Seite 1, callt Event "Heldenzüge", Seite 1.
Event "EV0029", Seite 1, stellt Switch 4 "Cursor" aus.
Event "Heldenzüge", Seite 1, callt Event "Heldenzüge", Seite 4.
(Event "Heldenzüge", Seite 1, stellt Switch 4 "Cursor" nochmal aus, warum auch immer.)
Event "Heldenzüge", Seite 4, callt Common Event "HP Anzeige".
Common Event "HP Anzeige" führt ein "Wait 0.0" aus, was bedeutet "auf nächsten Frame warten".
=== Nächstes Frame ===
RPG Maker überprüft Startbedingungen, Switch 4 ist aus, also wird Event "EV0029", Seite 1, nicht ausgeführt. <<< und zwar die Skripteinheit. Siehe unten.

Du musst geistig unterscheiden zwischen einer Eventseite als Einheit auf der Map (bzw. Common Event als Einheit in der Database) und als "Skripteinheit". Eine Skripteinheit hat einen Callstack (d.h. einen "Stapel" der sich merkt wenn das Event andere Events gecallt hat, damit am Ende des gecallten Event zur Ursprungsposition zurückgekehrt werden kann) und einen Linepointer, der dem RPG Maker sagt, was die aktuell ausgeführte Zeile ist (was nicht zwingend in derselben Einheit auf der Map sein muss! D.h., Event "EV0029", Seite 1, kann - wie es hier passiert - einen Linepointer haben der gerade auf Common Event "HP Anzeige" zeigt!), sowie ein paar andere Daten (aktuelle "Wartezeit" wenn gerade ein Wait aktiv ist, etc.). Effektiv ist jede "Skripteinheit" eine parallel laufende Instanz des Eventinterpreters des RPG Makers.

Der Linepointer (der interne "Skriptzeilencursor") für Event "EV0029", Seite 1, befindet sich zu Beginn des neuen Frames (durch das Wait 0.0 bedingt) gerade am Ende von Common Event "HP Anzeige", denn der Callstack von diesem Eventskript sieht gerade so aus:

===> Common Event "HP Anzeige", Zeile 22: <> Wait 0.0 <<< aktueller Linepointer
==> Event "Heldenzüge", Seite 4, Zeile 79: <> Call Event: Common Event "HP Anzeige"
=> Event "Heldenzüge", Seite 1, Zeile 51: <> Call Event: "Heldenzüge", Seite 4
> Event "EV0029", Seite 1, Zeile 42: <> Call Event: "Heldenzüge", Seite 1 <<< Ursprungsevent, wird dieses deaktiviert, wirkt sich das auf den gesamten Stapel aus

D.h., durch Deaktivieren von Switch 4, der Startbedingung für Event "EV0029", Seite 1 ist, wird die Ausführung der damit zugeordneten Skripteinheit unterbrochen, auch wenn diese gerade einen Linepointer hat der auf ein anderes Event zeigt (hier das Common Event). Dieser Effekt wird "scheinbar" erst durch "Wait 0.0" ausgelöst, weil das Wait auf den nächsten Frame wartet, und der RPG Maker nur zu Beginn jedes Frames die Startbedingungen überprüft, also das Ausschalten von Switch 4 solange keinen Effekt hat bis das Frame endet.

Du musst also deinen Code umbauen sodass du dir nicht mehr wie eingangs erwähnt selbst den Boden unter den Füßen wegziehst, z.B. indem du Switch 4 nicht als Startbedingung verwendest sondern das gesamte Event "EV0029" in ein "<> Conditional Branch: If Switch [0004:Zug] == ON" packst (obwohl ich vermute dass das nichtmal notwendig ist weil das Event ja niemals wieder von vorne beginnt während die zugehörige Skripteinheit noch nicht am Ende der Eventseite angelangt ist, was ja erst passiert wenn es aus den ganzen gecallten Events zurück ist - aber ich hab deine Events nicht so genau angeschaut um sagen zu können dass es 100% für dich passen würde).

Übrigens: Das Debugaddon hat leider einen Fehler der bei gecallten Eventseiten die falsche Eventseitennummer zeigt, darum steht alles was im Heldenzüge-Event passiert in der trace.log als "Pg 6" drinnen, obwohl es in Wirklichkeit in Seite 1 und 4 abläuft.

Quetschi
03.04.2013, 09:30
Aha :o Wieder etwas neues gelernt! Danke. :)

Aber nur, damit ich das richtig verstanden habe:
Wenn ich ein Event erstelle und auf Seite 1 als Startbedingung Switch1 setze und dann Seite 2 Aufrufe in der eine Schleife ist, die die Variable1 von 0 bis 10 hochzählt und am Ende einen 0.0 Wait hat.
Und dann eine Conditional Branch, dass wenn die Variable1 den Wert 5 hat soll Switch1 deaktiviert werden. Dann wird beim nächsten 0.0 Wait das ganze Event abgebrochen, weil bei Seite 1, welche Seite 2 gecallt hat, die Startbedingung nicht erfüllt ist und die Variable1 bleibt folglich beim Wert 5 stehen?

So ich geh' das mal im Maker ausprobieren. Sollte ja eigentlich reichen, wenn ich den Switch dann erst ganz am Ende deaktivieren lasse. Ansonsten mal gucken wie ich das löse.

Edit:
Wunderbar :) Es funktioniert. Noch einmal vielen, vielen Dank! :)
Wer hätte gedacht, das so etwas einfaches solche Folgen hat. Naja jetzt weiß ich es ja. Startswitch immer erst am Ende deaktivieren.

Cherry
03.04.2013, 20:44
Ganz richtig.
Schön dass es gelöst ist!