16.05.2013, 19:10 | #1 (permalink) |
SQF-Handbuch
Aktuelle Version: v06 SQF-Scriptguide v06 Abend liebe Community, mein Name ist [3.JgKp]James und ich bin Mitglied der 3. Jägerkompanie . Ich arbeite seit einigen Wochen aufgrund eines claninternen Lehrgangs an einem SQF-Handbuch zusammen mit Bunkerfaust und würde dieses gerne nach Fertigstellung veröffentlichen, da der Hauptgedanke dieses Werkes die Einführung völlig unerfahrener Leser in SQF ist, damit auch diese möglichst bald Scripte schreiben oider wenigstens nachvollziehen können. Das ganze wird drei große Teile haben: Teil I : SQF-Grundlagen: Beschreibung aller wesentlichen Sprachelemente, also Syntax, Datentypen, Kontrollstrukturen Teil II: Lokalität (SQF im Multiplayer) Teil III: Beispielscripte und nützliche Tipps Im Moment bin ich halbwegs gut mit Teil I beschäftigt, die anderen werden dann folgen. Warum schreibe ich bereits zu einem so frühen Stadium des Projektes? Weil dieses "Buch" für euch ist und ich daher ähnlich wie Mr. Murray euer Feedback bzw, eure Wünsche mit einbauen möchte. Das heißt konkret: Was wünscht ihr euch in diesem Handbuch? Was möchtet ihr persönlich zu ArmA und SQF wissen, was über Scripte erklärt bekommen? In diesem Sinne möchte ich diesen Thread gerne verstanden wissen. Eventuell kann ich auch von Zeit zu Zeit Probekapitel herausgeben, aber ich scheue mich etwas wegen des Copyrights. Aber ich denke, mit einer geschützten PDF sollte das Lesen alleine kein Problem bereiten. Ich hoffe, dass dieses Projekt auf Interesse stößt. Wenn jemand glaubt, dass sei völlig überflüssig und der Zug sei abgefahren, kann er dies gerne mitteilen. Außerdem fokussiere ich mich derzeit vollständig auf ArmA2, da ich für ArmA3 noch keine Zeit hatte. Sollten sich wesentliche Dinge aus ArmA2 in ArmA3 bzgl SQF geändert haben, werde ich dies natürlich nachtragen (müssen). Ich möchte zum Abschluss betonen, dass ich keine Einführung in den Missionsbau schreibe. Wie man diverse Dinge wie Einheiten in Türmen, Animationen oder dergleichen hinbekommt, sollte nicht so sehr Sinn und Zweck dieses Handbuches sein. Es soll wirklich SQF an sich erklären und mit SQF vertraut machen, so dass man mit den vielen Hilfen wie Comref und BIS Wiki in der Lage ist, jedes Programm in SQF selbst umsetzen zu können bzw. ein Problem mithilfe eines Scriptes lösen zu können. Für gezielte Lösungen ist Mr. Murray bzw. das Internet die bessere Lösung. Auch die Beispielscripte aus Teil III sollen Grundkonzepte widerspiegeln, nicht alle Eventualitäten abdecken. Vielen Dank und einen schönen Abend PS: Bitte nicht über den veralteten Nickname hier wundern, obwohl ich noch Mitglied der GNC bin schreibe ich hier wie gesagt als Mitglied der 3. Geändert von [GNC]JamesRyan (31.07.2014 um 10:37 Uhr). |
|
16.05.2013, 19:58 | #2 (permalink) |
User gesperrt
Registriert seit: 20.10.2009
Ort: Jetzt auch im BIF
Alter: 40
Beiträge: 9.163
|
Das klingt doch super. Freue mich auf deine Arbeit.
In welcher Form möchtest du denn dein sqf Handbuch an den Mann bringen? Also als pdf Datei oder wie ... ? Und wird das etwas kosten? Vielleicht bei einer Ausgabe als Taschenbuch. Einen speziellen Wunsch kann ich dir so nicht sagen, nur das es einsteiger freundlich sein sollte. |
16.05.2013, 20:01 | #3 (permalink) |
Hallo Ahtnteppop (a propos benutzerfreundliche Usernames... )
ja, meine momentane Intention ist die Veröffentlichung als PDF mit voller Interaktion, d.h. integrierten Lesezeichen, Links und Verweisen, so dass man quasi permanent mit weiteren Materialien arbeiten kann. Natürlich wäre diese PDF aber irgendwie geschützt...ich weiß nur nicht wie. Ich kann das Kopieren schlecht verbieten, wenn man die Beispiele rauskopieren möchte, aber so ist natürlich Ideenklau am leichtesten. Und das Drucken zu verbieten halte ich auch für unfair, da ich jemand bin, der soetwas ausgedruckt vorm PC haben will... Es gibt auch verschiedene Online-Plattformen, die die eigenen Bücher vermarkten. Da kann man seine PDFS quasi als Bücher dann anbieten. Damit kenne ich mich aber viel zu wenig aus, da bräuchte ich von euch Hilfe. Also ich tendiere bisher natürlich zu einer kostenlosen PDF. Also Kosten würden dann nur in der gedruckten Version anfallen wie bei dslyecxis TTP. Einsteigerfreundlichkeit ist mein großes Anliegen |
|
22.07.2013, 19:57 | #6 (permalink) |
Die Arbeit geht langsam aber stetig voran, inzwischen habe ich Teil I weitgehend abgeschlossen. Ich bin zuversichtlich das Dokument Ende August in einer alpha-Version veröffentlichen zu können.
Ich wäre aber über etwas mehr Feedback bzw. Beteiligung von Seiten der Community sehr dankbar, auch für Testleser bzw. Probeleser mit möglichst geringen Kenntnissen Sollte der ein oder andere also noch Wünsche bezüglich des Inhaltes haben, braucht er nicht hinterm Berg damit zu halten. Ich nehme gerne alle Ratschläge und Anregungen mit auf. |
|
22.07.2013, 20:27 | #7 (permalink) |
User gesperrt
Registriert seit: 20.10.2009
Ort: Jetzt auch im BIF
Alter: 40
Beiträge: 9.163
|
Schön, dass du noch fleißig dabei bist.
Einen neuen Wunsch oder so, kann ich dir jetzt aber nicht sagen. Ich werde mir dein Werk dann in der alpha Phase runterladen und fleißig drin lesen. |
22.07.2013, 22:21 | #9 (permalink) |
Hauptsächlich wie eingangs beschrieben:
"Das heißt konkret: Was wünscht ihr euch in diesem Handbuch? Was möchtet ihr persönlich zu ArmA und SQF wissen, was über Scripte erklärt bekommen? In diesem Sinne möchte ich diesen Thread gerne verstanden wissen. " Das betrifft natürlich nicht dich, Vienna Aber gerade Profis wissen natürlich, welche Techniken besonders wichtig zu kennen sind, weil sie in fortgeschritenen Projekten Anwendung finden. Primär hatte ich aber eigentlich erwartet, dass viel mehr Amateure und Einsteiger sich über so ein Handbuch freuen würden, da es etwas vergleichbares weder auf Deutsch noch auf Englisch gibt. |
|
22.07.2013, 23:36 | #10 (permalink) |
Registriert seit: 14.02.2013
Beiträge: 28
|
Also ich könnte es durchaus gebrauchen. Ein kleines bissschen Ahnung habe ich schon, aber das reicht nur für die minimalistischsten Zwecke. Ich wäre sicherlich auch etwas bewandter damit, wenn ich mich mehr damit befasse.
Wie auch immer, es wäre mir eine Ehre Ihnen als Leser zu dienen. Wenn du soweit bist, dass es den Alphastatus erreicht, lass es mich wissen. |
23.07.2013, 07:08 | #11 (permalink) |
Registriert seit: 06.11.2006
Beiträge: 43
|
Sehr interessant! Ich bin gespannt wenn es etwas zum anschauen gibt, dann könnten ich auch Feedback und Tipps geben!
Der 2.Teil wäre für mich äusserst wichtig! Auch das allg. Multiplayer gedöns! Weder im Murray Guide noch sonst wo wird schön erklärt, wie das mit den Lokalitäten funktioniert und was das ganze Gerüst bedeutet und genau hier fängt das Interessante doch erst an. Ich mache schließlich keine Missionen nur für mich selbst, sondern meist nur für ein Clan. |
23.07.2013, 11:00 | #12 (permalink) |
Registriert seit: 16.07.2010
Beiträge: 305
|
Die Funktion onEachFrame würde ich interessant finden, da es vor allem für die Darstellung eines Textes sehr performant ist. Auch die Bevorzugung von attachTo im Gegensatz zu setPos wäre für angehängte Objekte nennenswert, da die Synchronität deutlich stabiler ist. Performancevergleiche wären auch nützlich, wie z.B.: for, forEach, while. Der Run-Code für waitUntil sollte auch Erwähnung finden, da die Bedingung sonst pro Frame überprüft wird und somit extrem viel Performance flöten geht. Mich würde es auch interessieren, ob exitWith wirklich Probleme verursacht, wenn es für das Beenden eines Scripts benutzt wird, da es mittlerweile von jeden Scripter nur noch dafür benutzt wird. Die Verwendung von geschweiften anstelle von runden Klammern in mehrteiligen Bedingungen wäre auch nennenswert, da sonst alle Bedingungen überprüft werden, da es egal ist, ob die erste schon falsch war oder nicht. Die Berechnung für das automatische Ausrichten(Dreidimensional) zu einem Objekt könnte auch jemand gebrauchen. Der Unterschied zwischen call und spawn sollte auch nicht vergessen werden. Try catch wäre ebenfalls nützlich. Schade, dass du keine Missionsbespiele machst, denn meiner Meinung nach wurde das Thema Headless Client heutzutage nicht gut genug dokumentiert oder erklärt, da hier großes Potenzial steckt, aber es nicht leicht umzusetzen ist. Wenn es für die dynamische Integration des HC genau detaillierte Informationen mit einem Bespiel geben würde, wäre damit fortgeschrittene Missionsdesigner schon sehr geholfen.
Geändert von Rockhount (23.07.2013 um 12:27 Uhr). |
23.07.2013, 14:12 | #13 (permalink) |
@Daemion
Ich gebe mir Mühe...MP ist aber mit einigen Grundsätzen, die ich darlegen werde, wirklich nicht all zu schwierig, das sollten wir also hinbekommen @Rockhount: wow danke..das sind mal Anregungen. Geschwindigkeitsvergleich wird reinkommen, allerdings werde ich nicht auf jeden Befehl eingehen, das wäre dann ja ein Kompendium und ich selbst habe nicht vor, meine Freizeit damit zuzubringen, jeden Befehl auf Performance etc. zu testen Dafür kann man ja eine Zeit-Mess-Funktion vorstellen und jeder macht das selber. Ansonsten sehr gute Anregungen. Das mit dem try-catch-Block wusste ich bis vor wenigen Tagen auch noch nicht und habe es auch nie benutzt aber als Java-Programmierer natürlich sehr angenehm. PS: Und von wegen waitUntil: das ist immer noch wesentlich performanter als es mit while zu prüfen Aber klar, dass man jede Schleife mit sleep steuern kann, wird aufgenommen HC nutzen wir zwar in Missionen, aber es beschränkt sich bei mir darauf, dass wir in die Skripte quasi ein if (player == hc) reinschreiben, mit dem Aufsetzen selbst habe ich mich noch nie beschäftigt. Haben da aber einiges, da kann ich bestimmt meinen CoAutor dransetzen, der hat den auch eingerichtet. |
|
08.08.2013, 08:07 | #15 (permalink) |
Registriert seit: 06.09.2011
Beiträge: 13
|
Ich finde die Idee mit einem SQF Handbuch großartig. Mir wäre vor allem der grundlegende Aufbau eines Scriptes wichtig. Ein paar Befehle kenne ich ja, nur Syntax und Co. bereiten mir Schwierigkeiten. Also wie eröffne ich das Script, wie verbinde ich mehrere Scripte usw. Es gab zu OFP Zeiten mal eine gute Scriptanleitung, die so ähnlich aufgebaut war. Ich kann mich aber leider nicht mehr an den Verfasser erinnern.
__________________
www.79pzgren.de |
03.09.2013, 00:32 | #17 (permalink) |
Habe euch nicht vergessen, aber Urlaub steht vor der Türe, das zieht die Motivation zum Schreiben wahnsinnig nach unten XD
Ich poste hier die Alpha-Version von Teil I am Ende der Woche, dann sollte ich die fehlenden zwei Kapitel geschrieben haben, dann habt ihr erstmal 90 Seiten zum Probelesen. Teil II und III lassen dann leider auf sich warten, ich weiß auch nicht, wie viel Sinn das vor ArmA3 macht, da ich nicht weiß, was sich dort gerade im Hinblick auf MP und Lokalität tut...Notfalls bleibt es bei Teil I, der ist mir eh am wichtigsten. |
|
04.09.2013, 10:24 | #19 (permalink) |
Registriert seit: 06.09.2011
Beiträge: 13
|
Dann trifft es sich ja gut das ich dieses Wochenende keine großen Pläne habe.
__________________
www.79pzgren.de |
07.09.2013, 15:44 | #20 (permalink) |
So hier nun in aller letzter Minute der Link zur Alpha-Version.
Ich bin mit Teil I leider nicht 100% fertig geworden, aber ich denke, ihr werdet noch so viel zum Ergänzen oder Verbessern finden, dass die fehlenden zwei Kapitel niemandem weh tun. Der Hauptteil ist geschafft und darauf bin ich stolz. SQF-Scriptguide Das ist der Link zur Datei. Ihr dürft sie momentan online anschauen und natürlich frei kopieren, der Download ist aber hoffentlich verständlicherweise noch gesperrt, bis ich das Dokument offiziell freigebe und es durch mich beendet wurde. Ich hoffe, das ist im heutigen Internetzeitalter für niemanden ein Problem, sonst tut es mir an dieser Stelle leid. Derjenige kann mir ja eine pm schicken. Zu dieser Version: Ich habe mich dazu entschlossen, bei längeren Code-Beispielen stets Zeilennummern an den Rand dazuzufügen. Das führt leider dazu, dass die Beispiele nicht mehr kopierbar sind, jedenfalls nicht OHNE diese Nummern. Wenn jemand da eine Lösung wieß, wäre ich dankbar, oder wenn alle einhellig sagen, kopieren ist wichtiger, als Zeilennummern im Text nachzuvollziehen, würde ich die Zeilennummern wieder wegnehmen. An sich sind die meisten Skripte recht kurz, so dass man sie eh selber abtippen und verändern sollte, ich hoffe, dass dieser Kompromiss funktioniert. PS: Das Wichtigste: Bitte alle Änderungswünsche, Kritik, vor allem aber Fehler, Unstimmigkeiten oder zusätzliche Wünsche, was ich noch aufnehmen oder beschreiben soll, bitte direkt an mich senden. Dazu gibts direkt bei der Einleitung drei Möglichkeiten, mich zu erreichen. Danke an alle Leser. Ich werde jede Anregung mit Sicherheit aufnehmen. Geändert von [GNC]JamesRyan (07.09.2013 um 15:57 Uhr). |
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|