Include Scanner Tutorial

Erstellt von: Pretor

Vielen Dank an: CapitanFuture für die Erlaubnis einer seiner Waffen für das Tutorial zu nutzen.
Kritik und Anregungen zum Tutorial (oder IS) : armada@knuddlbaer.de


Vorwort

Warum wurde der IS programmiert und was bringt der IS?

Nun ich suchte nach einer Möglichkeit wie ich über 1300 Dateien ansehen kann *1 und vor allem die Verknüpfungen zwischen diese erkenne ohne zwischen 7 Verzeichnissen hin und her zu springen um dort die gelinkte Datei zu finden. Mit über 27 Scanner ist der IS gut ausgestattet um eine Menge Verknüpfungen aufzuzeigen die vielleicht nicht jedem bekannt sind. Vor allem Anfängern bekommen so eine leichteren Überblick.

Wenn man z.B. gezielt wissen will wie Arbeitet diese Waffe und was für Texturen benutzt sie kann dies der IC anzeigen. Das werde ich später mit einer Waffen von CapitanFuture zeigen, dem Dead Man Superjammer für A2, einer sehr interrasanten Waffe, wie ich finde, da sie es schafft ein halbes duzend verschiedener Waffen Effekte zu kombinieren. Aber dazu später mehr. Bevor wir anfangen zu laufen müssen wir erst mal lernen zu krabbeln ;)

*1 Anm. des Entwicklers: Bei 27 Scannern werden rund 1,5 mio. Zeilen Text ausgewertet.


1. Analyse der ersten Waffe

Wir fangen klein an und wollen erst mal den Sensorjammer des Romulanischen Griffin anschauen. Wir offnen im IC den Ships Ordner und klicken auf rcruise1.odf ( mit r und schnell c drücken springt der cursor zu rcargo.odf und wenige odfs später ist man bei der gewünschten Datei[für User die gerne Tastatur benutzen])

Was sehen wir jetzt?

Wir sehen das rcruise ein Schiff der cruise1 klasse ist weil es die Werte dieser Klasse aus cruise1 includiert und wir sehen dass folgende Waffen benutzt werden: rc1phas aus dem Phasers Ordner, grcloak.odf und gposijam.odf aus dem speiacl_weapons Ordner.


Uns interessiert jetzt nur der Sensor Jammer und darum erweitern wir diesen Vollständig. Das sieht dann so aus:

So man sieht jetzt das Ordinance File und dort das verlinkte Sprite sowie das „Wellen odf file“ welche wiederum auf die Wsenjam.tga verlinkt. Mit einen rechtklick können wir uns das tga und die odf ansehen:

Wenn wir uns alle Dateien angesehen haben sollten wir nun folgendes über den Senso Jammer wissen.

Der Sensor Jammer ist eine Waffe von Typ areacannon welche feindliche Units in einer Reichweite von 500 grids mit einer „Patrone“ vom Type posijammer trifft und für 20 sec die Sensoren deaktiviert. Zu dem wird ein Welleneffekt vom Typ shockwavexplode (OHNE Schaden!) benutzt, allerdings nur um optisch eine Welle mit der wsenjam.tga anzuzeigen.

Zu Info: Den Classlabel shockwavexplode kann man „damageBase“ Werte zuweisen.

So jetzt schauen wir uns man die Minen der Spezies 8472 an. Da wir uns gerade im Ships Ordner befinden und ich zu faul bin ins Station Verzeichnis zu wechseln aber weiß das der 8472_Defender die Minen baut, klicken wir uns so zur Mine.


Der 8472_Defender Baut die 8472_Mine und den 8472_Sentinel aber der interessiert uns im Moment nicht.

Wir sehen dass die Mine einige Eigenschaften von turret.odf und station.odf (Basisklassen) erbt.

Das für mich interessante ist der Verweis auf „xmineExplosion.odf“ im Other Verzeichnis ( Man merkt nicht alle Waffen liegen auch in Waffen Ordnern) über das Schlüsselwort „selfDestruct“

xmineExplosion.odf ist eine Welle von Typ „fireballexplode“ welche eigentlich keinen Schaden machen (siehe fireball Verweis von Basisklasse Craft). Zudem tritt fireballexplode auch nicht optisch als Welle in Erscheinung sondern als eine „Explosionanimation“ durch den Verweis auf die Sod Datei „xplode“ Die Welle auf die durch shockwave verwiesen wird, und welche den Schaden macht und auch im Game grafisch als Welle auftritt ist „xmineExplosionD.odf“ welche auch im Other Ordner zu finden ist. Shockwave verstehe ich als eine Art Ordinance file für Wellen. (darum auch Orange im IS wie ordName)

xmineExplosionD.odf ist also eine Welle von Typ „shockwavexplode“ welche 16 Units trffen kann und einen Schaden von 1000 Verursacht. Zudem wird die „wselfdes.tag“ benutzt. Weitere Eigenschaften wurden vorher in derMinen.odf festgelegt

3 Analyse des Dead Man Superjammer für A2 von CaptainFuture.

Ich habe mich für diese Waffe entschieden weil sie von der technischen Umsetzung sehr interrasant ist und zudem noch hübsch anzusehen ist und zeigt das die Omegawelle doch nicht ganz so nutzlos ist wie unser allseits geschätzter Westworld in seinen BBOM geschrieben hat. Zudem kann der IC zeigen wie nützlich dieser für das verstehen von „Nicht Standart Armada Waffen“ ist.

Den DM Superjammer könnt unter folgende Adressen finden.

http://de.geocities.com/captainfuturedepot/dl2.html

oder

http://www.armadafleetcommand.com/armada/main/special_weapon_torpedo.htm

Die Waffe besteht unter anderem aus 17 odf, 2 Sod, 2 Wave und 3 Tga Files allso „bischen“ mehr als üblich ;)

Nachdem wir das zip wie es in der readme steht installiert haben, schauen wir uns dies im IC an. (Ich habe die Waffe der Einfachheit den fbattle gegeben). Als ich mir zum ersten mal den DMSJ angesehn habe hatte der IC nur eine Handvoll Scanner. Darum sah das IC Ergebnis zu erst so aus:

Hmm Dmsuja2 und Dmsuja3 das sind die Wellen files, dmsuja4 das Ordinance File aber wo sind die anderen 13 odfs? Damals dachte ich noch das man von Ordinace Files nicht verlinken kann was sich aber (zum glück ;)) als Fehlannahme rausstellte. Also habe ich die Dmsuja4.odf genauer unter die lupe genommen und folgenden Eintrag gefunden.

objectName = "dmsuja5"

Anschießend in der IC INI einen neuen Scanner definiert und dann den Dmsuja1 in special_weapons Ordner noch mal angesehen

Ein Object mit Waffen? Sehr interrasant!

Voll ausgeklappt sieht das ganze so aus.

Faszinierend! ;) ne Waffe welche mehre Waffen schießt. Das ist doch mal was. J

Schauen wir uns das ganze doch mal genauer an.

Dmsuja1.odf: eine Waffe von Typ „areacannon“ die alle feindlichen Units in einer Reichweite von 750 grid triff.

Dmsuja2.odf: Erstes Wellenfile von Typ „fireballexplode“ was mit dbName auf "Xdmsuja.sod" verweist

Dmsuja3.odf: Zweites Wellenfile von Typ „omegaexplode“ mit der „dmsuja.tga“ als Textur. Der Eintrag rays ist gleich die Anzahl der Ecken der Omegaexplosion und hat kein Einfluss auf die maximal getroffenen Units. Das File dient einfach nur zu schönen Grafischenshow. Man kann hier die Omegaexplosion vergrößern, strecken zeihen und die Farbe ändern, aber keinen Schaden definieren.

So jetzt wird’s interrasant J

Dmsuja4.odf: Das Ordinance File von Typ „utribeam“ mit dem Eintrag objectName = "dmsuja5"

So um die Waffe besser im Editor beobachten zu können schalten wir den Grafischen Wellen effekt ab in den wir z.B. in Dmsuja3. rays auf = 0 setzen.

Dann änderen wir in Dmsuja4.odf scaleValue in 10 und wenden uns den Dmsuja5.odf zu

Dmsuja5.odf: Das Objektfile von Typ „u_ball_obj“ (Sehr interessantes Objekt J). Hier ändern wir den lifeTimer in 15.0 ab.

Jetzt Starten wir Armada im Editormodus und testen jetzt unsere modifizierte Waffe. Ich habe 4 Warbirds mit dem fbattle angegriffen. Da Ergebnis sollte dann in etwa so aussehen:


Zum vergrößern klicken

So um es deutlicher machen noch eine Nahaufnahme.


Zum vergrößern Anklicken

Wir haben mit unseren Modifikationen den eigentlichen Übeltäter sichtbargemacht der für den totalen Ausfall aller Subsysteme verantwortlich ist: Mein ab diesem Zeitpunkt heiß geliebtes U_ball_object. :O)

Der Dmsuja1 verpasst über die FlächenKannone allen Feindlichen Units in Reichweite das Dmsuja5.odf Object. „Normalerweise“ ist es sehr klein und dadruch unsichtbar und existiert nur 1 sec. Aber diese Zeit reicht dem U_ball_Object um 6 Waffen mit geringer Reichweite abzufeuern.

Dmsuja6.odf

Dmsuja8.odf

Dmsuja10.odf

Dmsuja12.odf

Dmsuja14.odf

Dmsuja16.odf

Dies sind alle Waffen von Typ „areacannon“ die alle Feinde in einer Reichweite von 125 grid treffen. Ein Warbird (Unit) der NICHT in Reichweite von Dmsuja1.odf ist aber maximal 125 Grid von sein Flügel Nachtbar entfernt ist welcher gerade noch von ein U_ball_Obj getroffen wurde, erleidet das gleiche schicksal da er in Waffen reichweite des U-Ball_objects ist. Um das zu vermeiden kann man die range auf z.B. 25 änderen.

Schaut euch das bild aufmerksam an und ihr seht was ich meine.


Zum vergrößern anklicken

 

Die Warbirds oben wurden von keinem U_ball infiziert, aber werden von den Waffen des U_ball, welche am Nachtbar sind, getroffen. (grüner Schild Effekt)

Die Ordinance files Dmsuja7, 9, 11, 13 ,15 und 16 enthalten die „Patronen“ welche die SubSysteme für 60 sec deaktivieren. In dmsuja9.odf treffen wir eine alten bekannten ;), den „posijammer“ des Griffin.

Auflistung der einzelnen Ordinance Files mit ClassLabel

Dmsuja7 myotron deaktiviert Waffen

Dmsuja9 posijammer deaktiviert Sensoren

Dmsuja11 shieldh deaktiviert Schilde

Dmsuja13 micro raubt Spezialenergie

Dmsuja15 polerontorpedo deaktiviert zufällig ein Subsstem außer Schilde

Dmsuja17 warpcoreoverload deaktivert Antrieb

Alles waffen die wir schon bei normalen Schiffen gesehen haben. Wenden wir uns jetzt noch mal der Dmsuja5.odf zu. (Gekürzte Version ohne grafischen Schnikschnack)

So zu merken ist das ClassLabel „u_ball_obj“.

Dann wird ein Sod mit hps benötigt. Die benutzte Fdmsuja.sod ist nicht anderes als die umbenannte schon in Armada2 vorhandene Wuitrbal.sod. (schaut sie euch im Storm3D Viewer oder besser einen Hexeditor an). Wichtig: bei dieser Sod heist der Hardpoint NICHT hp sonderen null14. Wer will kann auch eine andere Sod nehmen. Dann muss aber null14 in z.B. hp01 geändert werden. Ich hab emir den spass gegönnt und mit baseName auf fbattle.sod verwiesen. Bei Einsatz der Waffe sieht das dann so aus:

Sieht nun etwas merkwürdig aus, man erkennt nicht mehr die Feindschiffe aber die Waffe funktioniert immer noch J.

Fazit: Der SuperJammer ist im Grunde eine Weiterentwicklung vom guten alten „Borg Ultritium Burst“

Welcher von einer „Cannon“ in eine „areacannon“ ohne benötigtes Ziel umgewandelt, mit 6 bekannten Waffen ausgestattet und mit einem hübschen 3D Welleneffekt versehen wurde. Jetzt wo man es weiß eine doch simple Waffe aber einer Waffe Waffen zu geben, darauf muss man erst mal kommen J.

So ich hoffe euch hat dieser kleine Kurs die Nützlichkeit des IC einwenig erläutern können. Ich setzte ihn sehr gerne ein weil man gezielt odfs an der richtigen Stelle findet und per Rechtsklick einfach editieren kann. Er eignet sich einfach wunderbar zu schnellen „Grundelagenvorschung“ da er viele Verknüpfungen anzeigt die nicht allen bekannt sind oder schnell in einer odf überlesen werden. Zur Zeit sind über 25 Scanner in der Ic Ini definiert und es sind noch nicht alle. Lest die Anleitung und fügt die Scanner hinzu bzw. löscht die welche ihr braucht bzw. nicht braucht. Schaut euch einfach mal alle Waffne an vielleicht versteht ihr dann besser die Funktionsweise von bestimmte Waffen, falls dieses vorher noch unklar waren. Unten noch ein paar Screenshots von einigen interessanten Standart Armada Waffen. Objecktname und U_Ball_obj ein wenig genauer unter die Lupe zu nehmen kann ich nur jeden empfehlen.

Mit freundlichen Grüßen Pretor

PS: SciTe interessierte werden unter http://www.scintilla.org/ fündig.

 

Im gnebulaGeration.odf habe die Armada Entwickler ein Unnützen Fehler eingebaut. Wer sieht es? :)