Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 03.01.2013, 21:29   #1 (permalink)
User gesperrt
5000 Beiträge
 
Registriert seit: 20.10.2009
Ort: Jetzt auch im BIF
Alter: 33
Beiträge: 9.163
Icon4 sqs oder sqf / Was gibt es zu beachten?

Hallo zusammen.

Ich habe mehrfach während meiner Zeit hier im hx3 irgendwo gelesen, dass das sqs Script veraltet ist und kaum jemand mehr sqs benutzt und jetzt nur noch sqf verwendung hat.
Jedoch sehe ich immer noch Leute die mit sqs arbeiten.

  • Also was ist nun richtig?
  • Kann man ungestört weiterhin sqs Scripte verwenden?
  • Treten irgendwelche Probleme auf wenn man beides in einer Mission verwendet?

Ich will jetzt niemanden anprangern der sqs Scripte benutzt bzw. selber schreibt. Nur mein Anliegen ist es darüber mehr zu erfahren.
Denn auch im Editing Guide von Mr. Murray sind viele Bsp. als sqs Script geschrieben, weil es ja für Armed Assault ist und dass es eine neue Version der Arma Bibel für Arma 2 wohl leider nicht geben wird.

Ich hoffe ihr könnt mir bei meinen Fragen helfen auch, wenn es für den einen oder anderen selbst verständlich ist?
AHTNTEPPOP ist offline   Mit Zitat antworten
Alt 03.01.2013, 22:01   #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

Es sollte in Arma keine Probleme mit der SQS-Syntax geben. Infos hier: http://community.bistudio.com/wiki/sqs

In einem SQS-Skript (SkriptName.sqs) dürfte auch SQF-Syntax entsprechend verwendbar sein.

In SQF-Skripten (SkriptName.sqf) wird es bei der Anwendung von SQS-Syntax Probleme geben.
Vienna ist offline   Mit Zitat antworten
Alt 04.01.2013, 00:43   #3 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 06.06.2008
Beiträge: 209
Standard

SQS-Skripte werden mit exec, SQF-Skripte mit execVM gestartet.

Ansonsten sind SQS-Skripte nur Zeilen basierend, während SQF Block basierend ist. Der einzige Grund noch SQS zu verwenden, ist, dass die entsprechende Person zu faul war SQF zu lernen oder den Vorteil nicht erkennt.
__________________
#include "signatur.h"
"I'm not slacking of. My addon is 'pboing'!"
i0n0s ist offline   Mit Zitat antworten
Alt 04.01.2013, 02:08   #4 (permalink)
50 Beiträge
 
Benutzerbild von Q_W_E_R
 
Registriert seit: 29.09.2012
Beiträge: 56
Standard

ich glaube bei .sqs kann man mit labeln arbeiten während man bei .sqf nicht mehr
mit labeln Arbeiten kann.
Q_W_E_R ist offline   Mit Zitat antworten
Alt 04.01.2013, 03:17   #5 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Klar, wie sollte man sonst in sqs ein mehrzeiligen Code-Block bilden. Aber das zeigt umso mehr, wie veraltet sqs ist. Außerdem wird am Ende eines sqs Scripts meines Wissens noch ein exit Befehl benötigt.
__________________

Geändert von Rockhount (04.01.2013 um 03:25 Uhr).
Rockhount ist offline   Mit Zitat antworten
Alt 04.01.2013, 10:14   #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

Ein .sqs Skript benötigt kein exit am Ende. Genau so wenig wie ein .sqf Skript irgend ein ausdrückliches Ende benötigt.

In einem .sqs Skript ist z.B. folgender .sqf Code erlaubt:

if (alive player) then {player groupChat format["Hallo %1!",name Player]}
for "_i" from 1 to 3 do {player groupChat format["Runde %1!",_i]}


solange der "Code-Block" in einer Zeile steht! Wie man sieht ist dabei kein ; am Ende einer Zeile erforderlich.
Vienna ist offline   Mit Zitat antworten
Alt 04.01.2013, 12:26   #7 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge2.500 Beiträge
 
Benutzerbild von Lester
 
Registriert seit: 26.11.2006
Ort: Kiel, S-H
Alter: 51
Beiträge: 3.010
Standard

Zitat von Q_W_E_R Beitrag anzeigen

ich glaube bei .sqs kann man mit labeln arbeiten während man bei .sqf nicht mehr mit labeln Arbeiten kann.

Das ist richtig *1 , zwingt aber letztendlich den Ersteller seine Scripte für die Verarbeitung logischer zu gestalten so was die Geschwindigkeit deutlich erhöht ist.
Anfangs ist das vielleicht etwas gewöhnungsbedürftig, im späteren Verlauf aber zunehmend förderlicher imo.


Letztendlich kann man durchaus sagen das die Geschwindigkeit SQS<>SQF so unterscheidlich ist wie Heissluftballon<>Düsenjet.
Wenn ich daran denke das ich zu OFP Zeiten den Unterschied zwischen 3 oder 4 Paradrop scripten merklich spüren konnte, muß man sich bei SQF schon reichlich mühe geben um auch nur annäherd etwas derartiges zu erreichen.



*1 einen einmaligen Sprung an eine bestimmte Stelle kann man mit einem betimmten Befehl durchaus realisieren via scopename / breakto.

Zudem gibt es "Tricks" das man z.B. Unterroutinen erstellt, die man dann mittels call aufrufen kann was dem eigentlichen Sinn von gelabelten Bereichen recht nahe kommt, die Verarbeitungsgeschwindigkeit nochmals erhöht und noch einige andere Möglichkeiten.




Zitat:

solange der "Code-Block" in einer Zeile steht! Wie man sieht ist dabei kein ; am Ende einer Zeile erforderlich.

Das verursacht/-e aber Fehler in der RPT ... solche Unarten sollte man sich ganz schnell abgewöhnen, also bitte immer am Zeilenende ein Semikolon, auch bei SQS.


Das mit dem Exit am Ende war afaik nur bei OFP noch notwendig !
__________________
Nur ein Beispiel das zeigt wie BI "support" definiert: https://feedback.bistudio.com/T75547

Geändert von Lester (04.01.2013 um 12:30 Uhr).
Lester ist offline   Mit Zitat antworten
Alt 04.01.2013, 13:56   #8 (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

Wer in der Lage ist ein SQS-Skript zu schreiben, dem wird der Umstieg auf die SQF-Syntax keine Probleme machen. Es ist im Grunde nur folgendes zu beachten: http://community.bistudio.com/wiki/Control_Structures

Anstelle des Rumgehüpfes mit goto gibt es die while und for Loops.

Nicht von den geschweiften Klammern {} verwirren lassen, die grenzen nur den "Code-Bereich" eines Befehles ab. Wenn man diese Klammern entsprechend anordnet, erhöhen sie erheblich die "Lesbarkeit" des Codes.
Vienna ist offline   Mit Zitat antworten
Alt 04.01.2013, 16:02   #9 (permalink)
User gesperrt
5000 Beiträge
 
Registriert seit: 20.10.2009
Ort: Jetzt auch im BIF
Alter: 33
Beiträge: 9.163
Standard

Gut danke erstmal für die Antworten.

Wenn ich das jetzt richtig verstanden habe ist sqs also nicht mehr Zeitgemäß.
Sollte man solche Skripte allerdings doch noch in eine Mission verbaut haben, würde es auch nicht schlimm sein da man vom Skript schreiben (also ich jedenfalls) keine Ahnung hat und dieses nur per Copy & Paste einfügt. (natürlich mit verweis auf den verfasser des Skriptes)

AHTNTEPPOP 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


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