09.06.2008, 09:45 | #1 (permalink) |
Registriert seit: 06.10.2006
Ort: Manila
Alter: 43
Beiträge: 8.433
|
Fahrzeug Warnmeldung
Kann mir jemand verraten, wo mein Fehler liegt?
(Script reagiert nicht) Habs auch schon mit: Code:
_plane = vehicle _this Script(.sqs ... oder sollte ich lieber .sqf nehmen?): Code:
_plane = vehicle _player #checkEngine ?!(alive _plane): goto "exit" ? (isEngineOn _plane) : goto "Dammage" ~0.2 goto "checkEngine" #Dammage ? (getdammage _plane > 0.7) : goto "Loop" ~0.2 goto "Dammage" #Loop ?!(alive _plane): goto "exit" ?! (isEngineOn _plane) : goto "sleep" ?! (getdammage _plane > 0.6) : goto "Dammage" _plane vehicleRadio "F16_Caution"; ~6 goto "Loop" #sleep ?!(alive _plane): goto "exit" ? (isEngineOn _plane) : goto "Dammage" ~0.2 goto "sleep" #exit exit Bei dem Script stimmt auch was nicht: (Dürfte aber wahrscheinlich auch in der zweiten Zeile ein Fehler sein...?) Code:
_F16 = vehicle _this _alarm = "zsu" _kv = 1.0 #checkEngine ?!(alive _F16): goto "exit" ? (isEngineOn _F16) : goto "scan" ~0.2 goto "checkEngine" #scan _kv = _alarm knowsabout _F16 : goto "Loop" goto "scan" #Loop ?!(alive _F16): goto "exit" ?! (isEngineOn _F16) : goto "sleep" _F16 vehicleRadio "F16_gundish"; ~0.980 goto "Loop" #sleep ?!(alive _F16): goto "exit" ? (isEngineOn _F16) : goto "Loop" ~0.2 goto "sleep" #exit exit
__________________
MSI B450 Gaming Plus Pro | AMD Ryzen 7 5700X3D | Nvidia RTX 3060 TI | Teamgroup 32GB DDR-4 3200 | Track NP 5 | Linux Mint |Seasonic 750W Geändert von Duke49th (09.06.2008 um 10:01 Uhr). |
09.06.2008, 10:39 | #2 (permalink) |
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
|
Nuuuunnnn... also ich persönlich würde SQF benutzen, aber das bleibt in 99% dem Scripter selbst überlassen. Da eine plausible Erklärung warum SQS oder SQF zu finden ist mir bis heute noch nicht gelungen...
Weiterhin würde ich das erste Script grundsätzlich anders aufrufen. Und zwar würde ich dem Flugzeug eine EventHandler Engine verpassen, der sobald das Flugzeug den Motor startet, das Script aufruft. Ich finde es jedenfalls unnötig ein Script in einem Loop laufen zu lassen, bis der Motor an ist... Ansonsten solltest Du im ersten Script _plane = _this select 0; einfügen. Begriffen habe es auch nie, aber manchmal hilfts... Zum zweiten Script, das übrigens noch mehr Fehler als nur die zweite enthält... _alarm = "zsu" wird nicht funktionieren, weil zsu ein Variablenname ist und sowas nicht in Hochkommata gestellt wird. Also: _alarm = zsu wäre die richtige Variante. Die knowsAbout-Zeile solltest Du auch nochmal überdenken... |
09.06.2008, 10:49 | #3 (permalink) |
Registriert seit: 06.10.2006
Ort: Manila
Alter: 43
Beiträge: 8.433
|
Danke soweit!
Und wie das? Ich bin ja schon froh, überhaupt herausgefunden zu haben, daß man über die config ein Script aufrufen kann. Da mir in 4 verschiedenen Foren nicht einer verraten konnte oder wollte wie das geht. (Wen modemMaik mir nicht den Tipp gegeben hätte mal ins Scud Addon zu schauen, hätt ichs auch aufgegeben...) Das mit dem knowsabout war nur ne Idee. Da es ja sowas wie eine Aufschaltung durch die KI scheinbar nicht gibt bzw. es wohl scheinbar nicht abgefragt werden kann.
__________________
MSI B450 Gaming Plus Pro | AMD Ryzen 7 5700X3D | Nvidia RTX 3060 TI | Teamgroup 32GB DDR-4 3200 | Track NP 5 | Linux Mint |Seasonic 750W |
09.06.2008, 11:02 | #4 (permalink) |
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
|
Hast Du schonmal was vom Wiki gehört? Dort findest Du eigentlich immer gute Erklärungen zum jeweiligen Befehl. Manchmal auch Beispiele. Villeicht auch im aktuellen Editing Guide von MrMurray, den ich allerdings nicht gelesen habe.
|
09.06.2008, 11:29 | #5 (permalink) |
Registriert seit: 22.12.2005
Beiträge: 323
|
Ich hab das erste Script mal in SQF geschrieben und jede Zeile mit einem Kommentar erklärt. Was das zweite Script genau machen soll ist mir aber ein Rätsel?!
Code:
_plane = vehicle _this; //Aktivierung über >>>nul=PLANE execVM "script.sqf";<<< keine []!!!! while {alive _plane} do { //Das Script wiederholt sich, solange das Flugzeug noch lebt waitUntil{((IsEngineOn _plane) && (getDammage _plane > .7) || !(alive _plane)}; //Solange warten bis der Motor an ist UND die Beschädigung größer als 0.7 ist ODER das Flugzeug nicht mehr lebt if (alive _plane) then { //Wenn das Flugzeug noch lebt die folgenden Zeile ausführen, ansonsten gehts gleich wieder in die Schleife, die aber beendet wird, da das Flugzeug nicht mehr lebt _plane vehicleRadio "F16_Caution"; //Der Funkspruch waitUntil{(getDammage _plane) < .7}; //Warten, bis der Schaden wieder kleiner ist und dann die Schleife durchlaufen }; };
__________________
SP Mission, coming soon... |
09.06.2008, 17:39 | #6 (permalink) |
Registriert seit: 06.10.2006
Ort: Manila
Alter: 43
Beiträge: 8.433
|
Danke, werds probieren. Das zweite Script soll etwas in Richtung RWR werden. Also ein Radarfrühwarngerät. Weiß halt nicht wie es rüberkommen werden wird mit knowsabout....obs überhaupt so klappt. @Bulliwyf: Nein, wiki? Was ist das? Was soll denn an den Erklärungen bitte gut sein? Vieles im Wiki ist undokumentiert oder schlecht dokumentiert. Für Dich vielleicht ausreichend, für nen script-noob wie mich ist es absolut unbefriedigend. Mr-Murray's Editing Guide ist zwar nicht schlecht, aber wenn Du ihn noch nicht gelesen hast, dann wunderts mich auch nicht warum Du öfters auf diesen verweist. Da stehen einige script Basics drinnen...mehr nicht. Da gehts ums Missionsediting, nicht um Addonerstellung.
__________________
MSI B450 Gaming Plus Pro | AMD Ryzen 7 5700X3D | Nvidia RTX 3060 TI | Teamgroup 32GB DDR-4 3200 | Track NP 5 | Linux Mint |Seasonic 750W |
09.06.2008, 18:26 | #7 (permalink) |
Registriert seit: 11.03.2005
Ort: HH
Alter: 52
Beiträge: 1.930
|
Im Wiki steht, das mit dem knowsAbout-Befehl einen Wert zwischen 0-4 zurückgegeben wird. Das ist in den Notizen von Hardrock sogar noch explizit beschrieben. Dort ist zwar alles auf Englisch geschrieben, aber wenn man sich in die Computerwelt begibt, dann muss man sich zwangsläufig mit Englisch auseinandersetzen. Wie auch immer...
Du schreibst in Deinem Script _kv = _alarm knowsabout _F16 : goto "Loop", bekommst aber von knowsAbout eine Zahl geliefert... was glaubst Du, passiert mit Deinem Script? |
09.06.2008, 20:26 | #8 (permalink) |
Registriert seit: 06.10.2006
Ort: Manila
Alter: 43
Beiträge: 8.433
|
@pspsps91: Funktioniert auch nicht. Gibt keine Fehlermeldung, aber passiert auch nichts.
Danke trotzdem für die Mühe.
__________________
MSI B450 Gaming Plus Pro | AMD Ryzen 7 5700X3D | Nvidia RTX 3060 TI | Teamgroup 32GB DDR-4 3200 | Track NP 5 | Linux Mint |Seasonic 750W |
09.06.2008, 20:52 | #9 (permalink) |
Registriert seit: 22.12.2005
Beiträge: 323
|
ok sry,... ich habs nicht getestet... nearTargets - Bohemia Interactive Community Aber das könnte deinen knowsAbout Befehl ersetzten... irgendwie mit einer ForEach Schleife alle erkannten Feinde abfragen und prüfen obs ein Shilka, oder was auch immer ist.
__________________
SP Mission, coming soon... |
09.06.2008, 20:57 | #10 (permalink) |
Registriert seit: 06.06.2008
Beiträge: 209
|
Schau dir doch einfach die Beispiele bei Extendend_Eventhandlers an. Ansonsten zerschiesst du dir andere Mods. Code:
_kv = _alarm knowsabout _F16 : goto "Loop" Desweiteren benötigt knowsAbout laut Biki eine lokale Einheit. Und im MP sollte sie selten lokal sein. |
09.06.2008, 21:56 | #11 (permalink) |
Registriert seit: 06.10.2006
Ort: Manila
Alter: 43
Beiträge: 8.433
|
Ohne es genau zu wissen, denke ich nicht. Sind ja nur ein paar kleine scripts, die Sounds abspielen. Ich hab das Prinzip des knowsabout ja scheinbar eh falsch verstanden. Aber die schleife ist ja gewollt...nur das rauskommen ausm loop hab ich vergessen... Ist ja auch egal...solange ich es eh nicht schaffe mehr als ein Script aufzurufen, isses alles wurscht. Noch schlimmer ist das ich die Texturen nur im Buldozer und nicht im Spiel angezigt bekomme.
__________________
MSI B450 Gaming Plus Pro | AMD Ryzen 7 5700X3D | Nvidia RTX 3060 TI | Teamgroup 32GB DDR-4 3200 | Track NP 5 | Linux Mint |Seasonic 750W |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
2. Fahrzeug??? | PsychoSam | Editing | 8 | 17.04.2005 08:17 |
fahrzeug in Fahrzeug | Towei | Editing | 2 | 04.12.2004 18:50 |
Fahrzeug respawn | FLoH | Editing | 1 | 15.07.2004 13:53 |
Fahrzeug Respawn | KalleFreshman | Editing | 17 | 25.06.2004 13:23 |