Verbesserter Schildeffekt (TC)

Hier ist der ideale Ort um über Scripts und Mods für X³: Terran Conflict und X³: Albion Prelude zu diskutieren.

Moderators: Moderatoren für Deutsches X-Forum, Scripting / Modding Moderators

Post Reply
Einheit 101
Posts: 621
Joined: Sat, 3. Jan 09, 23:57
x3tc

Verbesserter Schildeffekt (TC)

Post by Einheit 101 » Mon, 17. Dec 12, 11:40

€DIT::: Die Arbeit hieran nähert sich dem (erfolgreichen!) Ende.
http://www.youtube.com/watch?v=BawjmBPt ... rA&index=1

Guten Abend. Ich möchte ein Thema aufgreifen, das schon mehrfach angesprochen wurde: eine Art Schildblase für Schiffe. Meine Überlegung sah wie folgt aus: ein 3D Modell einer blase mit entsprechender Textur und ein Effekt, de die Textur stets wandern lässt, um Dynamik in die Optik zu bringen(so weit, so einfach) Danach ein scene Eintrag für die schiffe, welche die neue blase erhalten sollen (damit das Objekt zugewiesen wird) Per Script sollte nun, falls möglich, auf die blase zugegriffen werden. ihr alpha wert wird dadurch so lange auf Minimum (transparent) gehalten, bis das Schiff angegriffen wird. Bei einen Treffer setzt das Script den alpha wert der Schild-Textur auf ca. 100, wodurch die blase kurzzeitig sichtbar wird. Nach ganz kurzer zeit wird die Textur wieder transparent. Somit wäre es möglich einen Effekt zu erzeugen, der zwar nicht auf Einschläge reagiert, aber immerhin da ist. Die frage ist nun: ist die Script Engine von X3 TC mächtig genug, auf 3D Modelle zuzugreifen und den alpha wert von Texturen zu ändern? Das erstellen von einer blase mit beweglicher Textur ist mit gewissem Aufwand meines Wissens nach problemlos möglich, auch das zuweisen des Effekts in einer scene. Selbst wenn man die Sichtbarkeit nicht beeinflussen kann (weil die Script engine zu schwach ist), kann man wenigstens einen sichtbaren Effekt erzeugen. Kann jemand was dazu sagen? Ich werde demnächst jedenfalls einige versuche dazu starten.
Last edited by Einheit 101 on Thu, 17. Jan 13, 22:25, edited 1 time in total.

User avatar
Reflexer
Posts: 862
Joined: Sat, 21. Feb 09, 13:54
x3ap

Post by Reflexer » Mon, 17. Dec 12, 11:48

die scriptsprache bietet hierzu definitiv keine möglichkeit!

Einheit 101
Posts: 621
Joined: Sat, 3. Jan 09, 23:57
x3tc

Post by Einheit 101 » Mon, 17. Dec 12, 12:11

Okay. Dann werde ich mal testen, wie das ganze aussieht, wenn der Schild permanent sichtbar ist. Danke erstmal!

Bhatou
Posts: 182
Joined: Sun, 25. Dec 11, 13:01

Post by Bhatou » Mon, 17. Dec 12, 17:45

mag ja kein spielverderber sein, aber ich persönlich habs gerne mit massenschlachten und ungemeines credit verpulvern mit mega teuren superraketen :twisted:

wenn dann , ich schmeis einfach mal ein paar zahlen in den raum, 4 träger in einem system sind, jeder hat ca 60 angedockte jäger, mal abgesehen von den armen armen armen zivilisten die ins kreuzfeuer kommen und den ganzen asteroiden und stationen...

*hust* du merkst worauf ich hinaus will ? :D gib jedem dieser dinger noch ne bewegliche blase um sich herum und das chaos ist perfekt :D

Einheit 101
Posts: 621
Joined: Sat, 3. Jan 09, 23:57
x3tc

Post by Einheit 101 » Mon, 17. Dec 12, 19:02

Fast richtig. Meine Mod sieht jedoch vor, dass kleine schiffe keine blasen erhalten. Ich hab auch schon eine neue Theorie aufgestellt, die eigentlich funktionieren müsste, da ich etwas vergleichbares bereits gesehen habe. Voraussetzung dafür ist, dass man:
-per Script in Bruchteilen von Sekunden Objekte erstellen, verschieben und löschen kann
-es ein Event gibt, das sehr schnell in folge auslöst
ODER
-es eine Funktion gibt, welche Objekte an andere objekte attached (klebt, um es salopp zu sagen)

User avatar
Reflexer
Posts: 862
Joined: Sat, 21. Feb 09, 13:54
x3ap

Post by Reflexer » Mon, 17. Dec 12, 19:11

standardobjekte.... die gehen.

siehe hierzu das MSCI -> bei "create objects". Diese Objekte können erzeugt werden. Du kannst also nicht "irgendwas" scriptseitig erzeugen. es beschränkt sich auf die hier angegebenen objekttypen.

UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 13817
Joined: Sun, 20. Nov 05, 23:45
x4

Post by UniTrader » Mon, 17. Dec 12, 20:17

Einheit 101 wrote:Fast richtig. Meine Mod sieht jedoch vor, dass kleine schiffe keine blasen erhalten. Ich hab auch schon eine neue Theorie aufgestellt, die eigentlich funktionieren müsste, da ich etwas vergleichbares bereits gesehen habe. Voraussetzung dafür ist, dass man:
-per Script in Bruchteilen von Sekunden Objekte erstellen, verschieben und löschen kann
-es ein Event gibt, das sehr schnell in folge auslöst
ein @wait 0 ms ist immmer genau einen Frame lang, du solltest den Code darin allerdings möglichst effizient halten, da zu umfangreiche berechnungen die Framerate einbrechen lassen...
Objekte darin entfernen und verschieben ist auch kein problem, nur das erstellen kann je nach komplexität des erstellten Objektes zu einem kurzen aussetzer führen, weil das Objekt geladen werden muss (ich glaube wenn es ein bereits erstelltes Modell im Sektor gibt ist der aussetzer kürzer..)
(um genau zu sein ist die absolut minimale Wartezeit 1 Frame, sprich wenn du bei 50fps eine wartezeit von 10 ms willst wird trotzdem 20 ms gewartet...)
ODER
Einheit 101 wrote:-es eine Funktion gibt, welche Objekte an andere objekte attached (klebt, um es salopp zu sagen)
gibt es nicht.

User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Mon, 17. Dec 12, 20:33

Zu sagen wäre nur noch, daß ein Script ein Objekt mit einer Auflösung von 1m bewegt, die Engine aber mit 0,002m.
Bei kleinen Objekten ruckelt das sichtbar.

Man kann auch nicht garantieren, daß ein Script in jedem Frame 1x läuft.
Es kommt an die Reihe... wenn es eben dran ist.
Ein 0-1 ms Wait wird das oft erreichen wenn scripttechnisch sonst nicht viel los ist.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

Einheit 101
Posts: 621
Joined: Sat, 3. Jan 09, 23:57
x3tc

Post by Einheit 101 » Mon, 17. Dec 12, 20:44

Das Objekt ist nicht komplex, nur eine ellipse. Ich hätte, wenn überhaupt, sowieso vor, das Objekt beim betreten eines Sektors irgendwo abseits kurz zu erzeugen, damit es nicht mitten im Spiel zu genau diesem lag kommt. Was die ruckler angeht, die sind sicher zu verschmerzen, bei 400m langen, transparenten ellipsen :D

€DIT: Massig Prominenz hier, ich verneige mich :o

Bhatou
Posts: 182
Joined: Sun, 25. Dec 11, 13:01

Post by Bhatou » Mon, 17. Dec 12, 20:57

vermutlich lieg ich hier etwas falsch mit der theorie... liegt wohl daran das ich vom scripten selber nicht viel verstehe..


aber wie wurde der hyperraum gemacht, von der zpm mod ? dieses rießige blaue ding, was eine walhalle winzig wirken lässt, das ist das einzige komische riesige bewegliche ding, um das schiff herum, das meine cpu's anfangen lässt den wecker zu klingeln

User avatar
Gazz
Posts: 12430
Joined: Fri, 13. Jan 06, 17:39
x3tc

Post by Gazz » Mon, 17. Dec 12, 21:28

Je größer das Objekt, das schrittweise bewegt wird, desto weniger ist ein Ruckeln sichtbar.
Mit 400m sollte das schon hinhauen.

Und Promillenz? Das war nur eine Tasse Glühwein!


Du wirst feststellen, daß es hier recht einfach ist, Hilfe zu ganz konkreten Problemen zu bekommen.
Bei einem "Macht mir mal jemand schnell dieses und jenes Mod?!" siehts anders aus. =P
Last edited by Gazz on Mon, 17. Dec 12, 21:31, edited 1 time in total.
My complete script download page. . . . . . I AM THE LAW!
There is no sense crying over every mistake. You just keep on trying till you run out of cake.

User avatar
Reflexer
Posts: 862
Joined: Sat, 21. Feb 09, 13:54
x3ap

Post by Reflexer » Mon, 17. Dec 12, 21:31

genau! und gazz und unitrader sind nicht promillent, sondern einfach vorlaut :D :p

UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 13817
Joined: Sun, 20. Nov 05, 23:45
x4

Post by UniTrader » Mon, 17. Dec 12, 21:47

Gazz wrote:Du wirst feststellen, daß es hier recht einfach ist, Hilfe zu ganz konkreten Problemen zu bekommen.
Bei einem "Macht mir mal jemand schnell dieses und jenes Mod?!" siehts anders aus. =P

~~~ signed ~~~

User avatar
Reflexer
Posts: 862
Joined: Sat, 21. Feb 09, 13:54
x3ap

Post by Reflexer » Mon, 17. Dec 12, 21:53

Gazz wrote:Du wirst feststellen, daß es hier recht einfach ist, Hilfe zu ganz konkreten Problemen zu bekommen.
Bei einem "Macht mir mal jemand schnell dieses und jenes Mod?!" siehts anders aus. =P
wobei ich da ja (wenn ich einen guten tag habe) auch mal nett bin und sowas mache ;)

Einheit 101
Posts: 621
Joined: Sat, 3. Jan 09, 23:57
x3tc

Post by Einheit 101 » Mon, 17. Dec 12, 21:55

Okay ich hab nochmal nachgesehen und festgestellt, dass mein Handy NICHT promillenz geschrieben hat... :lol:

Btt: mit
-Create special (alternativ “create asteroid“, modifizierten astro spawnen :D)
-force object position wegen der col
-ignore collision (schüsse sollen durch gehen)
-get x,y,z position / get + Set rotation a,b,g

Müsste sich was basteln lassen. Für den Anfang. Sobald ich damit fertig bin, noch 10 schiffe zu erstellen und balancen, werde ich den lötkolben auspacken. Ne einfache Eklipse mit statischer Textur dem Spieler Schiff anhängen, dann nach und nach Bedingungen hinzu (Wenn dass Schiff getroffen wird, wenn es sich um dieses oder das Schiff handelt, wenn es sich um die oder die Waffe handelt, etc. pp.)

Und natürlich die Textur irgendwann animieren. Sonst sieht das ja doof aus.

Post Reply

Return to “X³: Terran Conflict / Albion Prelude - Scripts und Modding”