Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 23.06.2014, 08:09   #1 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard Probleme mit Auslöser nach SaveGame

Moinsen,

ich stehe vor einem Problem, welches ich nicht in den Griff bekommen.
Ich habe 3 feindliche Teams. HHTeam1 , HHTeam2, HHTeam3
Bevor es zum Gefecht kommt, lasse ich das Spiel speichern.


Zu einem hatte ich einen Trigger genommen:
Rot nicht vorhanden / Einmal ....

zum anderen habe ich es mit
Code:
waituntil {sleep 2; ({alive _X} count units HHteam1 == 0) && ({alive _X} count units HHteam2 == 0) && ({alive _X} count units HHteam3 == 0)};
probiert. Das Script wurde aus der Init heraus geladen und definiert mir den Missionsverlauf. Der werden dann diverse Funksprüche geladen und Variablen gesetzt, um die Mission zeitlich zu steuern.
Ich lasse zur Sicherheit ein Script anlaufe, welche mir die aktuellen lebenden Einheiten anzeigt. Es leben keine Einheiten mehr.


So und nun das Komische. Sterbe ich nicht und es muss nicht neu geladen werden, funkionieren beide Varianten.
Sterbe ich und lade Neu, funkionieren beide Varianten nicht.

Nachfolgend käme eine Einblendung, dass die Aufgabe erledigt wurde.
Drunken Officer ist offline   Mit Zitat antworten
Alt 23.06.2014, 08:55   #2 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Wahrscheinlich wird der Spielstand nicht so genau gespeichert, dass nach dem Laden exakt der selbe Zustand wie beim Speichern gegeben ist. z.B. in welcher Zeile ein Skript gerade beim Speichern steht, oder wie der Zustand der Auslöser ist, wie die Gruppen bestückt sind usw.

Teste das einmal, indem du Funk-Auslöser anlegst, die dir z.B. die Inhalte der Variablen und Gruppen anzeigen.
Vienna ist offline   Mit Zitat antworten
Alt 29.06.2014, 08:00   #3 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

So ich habe eine Testvariable auf false gesetzt.

Die Mission startet, es zieht das Script an, welche meine Gespräche und tasks steuert.

Ich habe jetzt die dritte Version genutzt und manuell einen Trigger stellt. Mittels Funk-Trigger lasse ich alle Einheiten der Gruppen HHTeam1 .. 3 töten. Die Teams gehören zur roten Fraktion

Der Trigger löst aus, dies wird mit via hint angzeigt und dann wars das.
Die Varibale würde sofort geändert werden, wenn der Trigger aktiviert wird. Dazu nutze ich
Code:
testvar = false;
bla bla... chat ...
savegame;
waituntil {sleep 1; fz1 distance falle < 15};
bombe = "r_80mm_he" createVehicle (getpos falle);
fz1 setdammage 0.7;
player leaveVehicle fz1;
 
AL_Hinterhalt = createTrigger ["EmtyDetector", getPos falle];
AL_Hinterhalt setTriggerArea [170,170,0,false];
AL_Hinterhalt setTriggerActivation ["EAST", "NOT PRESENT",false];
AL_Hinterhalt setTriggerStatements ["this", "hint 'test... alle tod' ", ""];
 sleep 7;
radiochat...
sleep 10; 
saveGame;
 
waitUntil { sleep 1; triggeractivated AL_Hinterhalt};
testvar = true;
player sideRadio "Chat05";
Auch hier wieder, wenn das Spiel nicht geladen wird, ist alles tippi toppi. Das Script rennt durch.
Wird es geladen, dann löst der Trigger aus und nicht geht mehr.

Kontrolltrigger:
funk
mehrfach
hint format ["Testvar: %1", testvar];
Drunken Officer ist offline   Mit Zitat antworten
Alt 29.06.2014, 08:36   #4 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Anscheinend wird die Variable testvar nicht gespeichert.

Teste das mit player groupChat str isNil "testvar"; wenn das Ergebnis true ist, dann existiert die Variable gar nicht nach dem Laden.
Vienna ist offline   Mit Zitat antworten
Alt 30.06.2014, 19:56   #5 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

So die Variable gab es.
Ich habe es jetzt gelöst.

Ich habe meine eigentliche task.sqf gesplittet in task1.sqf, task2.sqf usw.
in die init habe ich geschrieben
task1 = false; task2 ....

Dann lasse ich an Speicherpunkt den nachfolgenden task = true werden.
Auf der Karte sind 5 Auslöser plaziert, welche warten bis der task wahr wird und die sqf wird geladen.

Ich habe keine Ahnung, warum es mit eienr sqf nicht funktioniert. Evt. wird die SQF einmal geladen und wartet dann bei einem waituntil. Wird aber beim Spiel neuladen nicht aktualisiert.
Drunken Officer ist offline   Mit Zitat antworten
Alt 01.07.2014, 07:26   #6 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Wenn es die Variable nach dem Laden wieder gibt, war der Inhalt wie zum Zeitpunkt des Speicherns?

Den aktuellen Zustand eines Skripts speichern wird automatisch nicht möglich sein. Das ist beim Setzen des Speicherpunktes zu beachten.

Wenn globale Variable und deren Inhalt wider hergestellt werden, dann muss man eben mit solchen den Spielstand sichern. Den Zustand von Auslösern und Skripten mit diesen schalten. Skripte müssen zuvor natürlich wieder geladen werden und globale Variable enthalten, die ein Spielstand herstellen ermöglichen.

Sonst werden vermutlich nur noch Position und Zustand von Objekten gesichert?
Vienna ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Auslöser Bug? Teleport zum MHQ. JeeperCreeper Editing & Scripting 2 07.11.2013 16:18
Ein Objekt als Auslöser & Rundenmodus Paspertou Editing & Scripting 2 05.10.2013 23:05
Auslöser per kommando aktivieren McDonalds Editing & Scripting 5 07.09.2013 16:16
2 Auslöser arbeiten zusammen Sol.LrMartyn Editing & Scripting 11 05.11.2011 18:29
Gruppe per Auslöser bewegen Deep Five-9te Editing & Scripting 2 07.01.2011 07:46


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116