Warning: ob_start(): function 'compress_handler' not found or invalid function name in /www/htdocs/xfmantis/core.php on line 18
0001623: mzUFO wird mit UFO.escape nicht sofort beendet - Mantis
Mantis Bugtracker
  

Viewing Issue Simple Details Jump to Notes ] View Advanced ] Issue History ] Print ]
ID Category Severity Reproducibility Date Submitted Last Update
0001623 [X-Skript] Allgemein major always 31.07.07 15:45 03.09.07 03:06
Reporter Natter View Status public  
Assigned To Jim_Raynor
Priority normal Resolution fixed  
Status closed   Product Version V0.910 - Beta 4
Summary 0001623: mzUFO wird mit UFO.escape nicht sofort beendet
Description Wenn das letzte registrierte UFO mit UFO.escape entkommt, dann ird die Mission nicht sofort beendet (getestet durch anschließende Ausgabe von Nachrichtenfenstern).

Dies ist eventuell auch die Ursache dafür, dass der aktuelle Spielsatz DarkAge abstürzt, sobald das UFO mit geskripteter KI verschwindet (event_UFOCommandComplete eird nochmal ausgelöst?).
Additional Information
Attached Files  error-31-07-2007-14-24.txt [^] (3,095 bytes) 31.07.07 15:46
 CommandTest.xms [^] (1,658 bytes) 01.08.07 00:40
 UKI000Forschuhgsschiff.xms [^] (5,123 bytes) 01.08.07 01:16

- Relationships

- Notes
(0002586)
Jim_Raynor
31.07.07 15:54

Häng mal bitte noch dein Testskript an, dann ist es für mich leichter zum testen ;)
 
(0002587)
Natter
31.07.07 16:26
edited on: 31.07.07 18:09

Du brauchst mehrere Skripte - hab sie dir alle in die UKI.zip gepackt. Ist nicht mehr der Orginalzustand, aber Fehler tritt noch auf.

Ansonsten kannst du dir auch DarkAge aus dem Forum (Spielsatzintern) downloaden - dort müsstest du nur die Zeile UFO.UserKI:=true; ergänzen

 
(0002588)
DirkF
31.07.07 20:49

Man sollte sich vielleicht mal genau angucken, wann das Event "CommandComplete" ausgelöst wird und wann nicht - schließlich ging dieses Event früher ja auch öfter verloren, und jetzt scheint es auch bei UFO.Escape auszulösen obwohl das keinen Sinn ergibt...
 
(0002589)
Jim_Raynor
31.07.07 22:19

siehe Rückmeldung in http://www.xforce-online.de/forum/index.php?action=vthread&forum=13&topic=1571&page=-1#4 [^]

Es wird kein CommandComplete mehr nach dem Escape aufgerufen ...
 
(0002590)
Jim_Raynor
01.08.07 00:40

So, ich kann es nicht nachvollziehen. Habe jetzt mal ein kleineres Testskript geschrieben und da gibt es keine probleme. Allerdings muss ich auch ehrlich sagen, dass ich garnicht so richtig weiß, wo denn eigentlich das Problem ist. Fakt ist:

- die Events werden gelöscht, wenn auch das UFO aus dem Speicher gelöscht wird
- bei Escape, wird kein CommandComplete ausgelöst. Es macht nichts weiter als Nachricht "entkommen" zu senden und dann das UFO-Objekt zu zerstören.
- Wenn das letzte UFO mit Escape "zerstört" wird, läuft das Skript erstmal weiter, da die Prüfung ob alle UFOs weg sind, erst später passiert. Sofort beendet wird ein Skript nur mit mission_win, mission_loose oder mission_abort.

Mit den Testskript da, konnte ich auch nichts so richtig anfangen, da da noch einiges fehlt (zum Beispiel die Globale Variable). Ich bitte also um ein allein-Ablauffähiges skript (kann auch eine angepasste Version von meinem sein), bei dem es zu dem Problem kommt.
 
(0002591)
Natter
01.08.07 01:17

Mit obigen Skript sollte es aber funktionieren.
 
(0002593)
Jim_Raynor
01.08.07 10:00

Na dann bin ich mal gespannt. Lässt sich der Fehler auch im Skript-Editor nachvollziehen oder nur im Spiel?

Vielleicht hat es sich aber wirklich auch mit 0001612 und kann das deshalb nicht reproduzieren ... Naja mal schauen.
 
(0002594)
Natter
01.08.07 16:22

Nur im Spiel. In medit klappt alles.
 
(0002596)
Jim_Raynor
01.08.07 22:47

Gut, ich habe was gefunden, und das was ich gefunden habe gefällt mir nicht so richtig. Das Problem ist, dass Escape aus CommandComplete heraus aufgerufen wird ... und kann es passieren, dass noch einiges mit dem UFO gemacht wird ... Einzigster Workaround ist, einen Timer von einer Minute zu registrieren und dann dort das UFO flüchten zu lassen. In der Version 0.910 möchte ich da nichts mehr dran ändern, da es doch neue Probleme nachsichziehen kann. Zu dem brauche ich erstmal eine richtige Idee, wie ich das Problem elegant lösen kann ...
 
(0002597)
DirkF
01.08.07 23:05

Wie wäre es, wenn UFO.Escape zwar alle betreffenden Funktionen und ereignisse aufruft, aber statt dem Löschen des Objektes nur ein internes Flag "zu löschen" setzt. Und am Anfang der nächsten Rundenbearbeitung (bevor irgendwelche Skripte gestartet werdne können) werden alle UFOs mit diesem Flag gelöscht.

Eventuell zusätzlich zum Flag das UFO noch auf hidden/keine Ereignisse umschalten (siehe die entsprechenden Mantistickets)
 
(0002599)
Jim_Raynor
02.08.07 10:05

Ja, ich denke so werde ich es machen. Aber ich bin mir unsicher, ob ich es noch in die Version 0.910 aufnehme oder nicht ... Wer weiß, was für Seiteneffekte das wieder auslöst.
 
(0002600)
DirkF
02.08.07 10:30

Gerade wegen der unbekannten Seiteneffekte meinte ich ja das man das UFO dann zusätzlich vom Geoscape wegnehmen sollte - und diese Funktion ist meines Wissens nach sowieso erst für später geplant, kann man ja beides in der 0.915 umsetzen.
 
(0002604)
Jim_Raynor
02.08.07 21:16

Ich habe es jetzt doch in die Version 0.910 aufgenommen. Schlimmere Seiteneffekte als jetzt können nicht auftreten ;)
 

- Issue History
Date Modified Username Field Change
31.07.07 15:45 Natter New Issue
31.07.07 15:46 Natter File Added: error-31-07-2007-14-24.txt
31.07.07 15:54 Jim_Raynor Note Added: 0002586
31.07.07 15:54 Jim_Raynor Relationship added related to 0001560
31.07.07 16:25 Natter File Added: UKI.zip
31.07.07 16:26 Natter Note Added: 0002587
31.07.07 18:09 Natter Note Edited: 0002587
31.07.07 20:49 DirkF Note Added: 0002588
31.07.07 22:19 Jim_Raynor Note Added: 0002589
01.08.07 00:40 Jim_Raynor Note Added: 0002590
01.08.07 00:40 Jim_Raynor Status new => feedback
01.08.07 00:40 Jim_Raynor File Added: CommandTest.xms
01.08.07 01:16 Natter File Deleted: UKI.zip
01.08.07 01:16 Natter File Added: UKI000Forschuhgsschiff.xms
01.08.07 01:17 Natter Note Added: 0002591
01.08.07 10:00 Jim_Raynor Note Added: 0002593
01.08.07 16:22 Natter Note Added: 0002594
01.08.07 22:47 Jim_Raynor Note Added: 0002596
01.08.07 22:47 Jim_Raynor Status feedback => confirmed
01.08.07 23:05 DirkF Note Added: 0002597
02.08.07 10:05 Jim_Raynor Note Added: 0002599
02.08.07 10:30 DirkF Note Added: 0002600
02.08.07 21:16 Jim_Raynor Status confirmed => resolved
02.08.07 21:16 Jim_Raynor Fixed in Version  => V0.910 - Final
02.08.07 21:16 Jim_Raynor Resolution open => fixed
02.08.07 21:16 Jim_Raynor Assigned To  => Jim_Raynor
02.08.07 21:16 Jim_Raynor Note Added: 0002604
03.09.07 03:06 Gast Status resolved => closed


Mantis 1.0.7[^]
Copyright © 2000 - 2007 Mantis Group
Powered by Mantis Bugtracker