Kampfüberbleibsel

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

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

TheBigAl_ist-einmalig.de
Posts: 235
Joined: Mon, 12. Mar 07, 00:40
x3ap

Kampfüberbleibsel

Post by TheBigAl_ist-einmalig.de »

Hallo Gemeinde,

hat jemand ne Ahnung wodurch die Überbleibsel (Raketen und so) bestimmt werden die nach einem Kampf zurückbleiben?
Kann man es iwie ändern, das zB Triebwerks- oder Rudererweiterungen auch über bleiben?


Gruß Al
User avatar
X2-Illuminatus
Moderator (Deutsch)
Moderator (Deutsch)
Posts: 25130
Joined: Sun, 2. Apr 06, 16:38
x4

Post by X2-Illuminatus »

TheBigAl_ist-einmalig.de wrote:hat jemand ne Ahnung wodurch die Überbleibsel (Raketen und so) bestimmt werden die nach einem Kampf zurückbleiben?
Wenn ich mich recht entsinne, können nur Waren zurückbleiben, die im Frachtraum eines Schiffs / einer Station lagen, das / die IS zerstört wurde. Ob es eine genaue Formel gibt, weiß ich allerdings nicht.
TheBigAl_ist-einmalig.de wrote:Kann man es iwie ändern, das zB Triebwerks- oder Rudererweiterungen auch über bleiben?
Ändern nicht, da die Sache hardcoded ist. Man könnte aber ein eigenes Script an SIGNAL_ATTACKED und/oder SIGNAL_KILLED binden, das dann entsprechend des zerstörten Schiffes fliegende Warencontainer mit Tunings im Raum erstellt.
Nun verfügbar! X3: Farnham's Legacy - Ein neues Kapitel für einen alten Favoriten

Die komplette X-Roman-Reihe jetzt als Kindle E-Books! (Farnhams Legende, Nopileos, X3: Yoshiko, X3: Hüter der Tore, X3: Wächter der Erde)

Neuauflage der fünf X-Romane als Taschenbuch

The official X-novels Farnham's Legend, Nopileos, X3: Yoshiko as Kindle e-books!
User avatar
JSDD
Posts: 1379
Joined: Fri, 21. Mar 14, 20:51
x3tc

Post by JSDD »

... hübsche signatur :D

... ne ne, kannst das nicht beeinflussen soweit ich weiß, die auswahl der überbleibsel ist "hardcoded"
... man könnte n script machen, welches zusätzliches zeug beim zerstören von schiffen erstellt, z.B. sekundäres SIGNAL_KILLED einbinden

EDIT: ... war wohl eine/r schneller :roll:

EDIT2: ... wenn du gern übertunte schiffe haben willst, hätt ich ne mission für dich: 1. TRADE: Warenangebot
To err is human. To really foul things up you need a computer.
Irren ist menschlich. Aber wenn man richtig Fehler machen will, braucht man einen Computer.


Mission Director Beispiele
TheBigAl_ist-einmalig.de
Posts: 235
Joined: Mon, 12. Mar 07, 00:40
x3ap

Post by TheBigAl_ist-einmalig.de »

X2-Illuminatus wrote:
TheBigAl_ist-einmalig.de wrote:hat jemand ne Ahnung wodurch die Überbleibsel (Raketen und so) bestimmt werden die nach einem Kampf zurückbleiben?
Wenn ich mich recht entsinne, können nur Waren zurückbleiben, die im Frachtraum eines Schiffs / einer Station lagen, das / die IS zerstört wurde. Ob es eine genaue Formel gibt, weiß ich allerdings nicht.
TheBigAl_ist-einmalig.de wrote:Kann man es iwie ändern, das zB Triebwerks- oder Rudererweiterungen auch über bleiben?
Ändern nicht, da die Sache hardcoded ist. Man könnte aber ein eigenes Script an SIGNAL_ATTACKED und/oder SIGNAL_KILLED binden, das dann entsprechend des zerstörten Schiffes fliegende Warencontainer mit Tunings im Raum erstellt.
Guter Vorschlag mit dem Script, klingts auch nicht kompliziert, aber ich habe da null plan davon :o
Eher es in die Hose geht lass ichs, trotzdem Danke :D
JSDD wrote:... hübsche signatur :D

... ne ne, kannst das nicht beeinflussen soweit ich weiß, die auswahl der überbleibsel ist "hardcoded"
... man könnte n script machen, welches zusätzliches zeug beim zerstören von schiffen erstellt, z.B. sekundäres SIGNAL_KILLED einbinden

EDIT: ... war wohl eine/r schneller :roll:

EDIT2: ... wenn du gern übertunte schiffe haben willst, hätt ich ne mission für dich: 1. TRADE: Warenangebot
Klingt interessant, auch die anderen Missionen. Die "TRADE" ist aber nur Handel, keine Mission, oder?

Gruß Al
TheBigAl_ist-einmalig.de
Posts: 235
Joined: Mon, 12. Mar 07, 00:40
x3ap

Post by TheBigAl_ist-einmalig.de »

X2-Illuminatus wrote:
TheBigAl_ist-einmalig.de wrote:Kann man es iwie ändern, das zB Triebwerks- oder Rudererweiterungen auch über bleiben?
Ändern nicht, da die Sache hardcoded ist. Man könnte aber ein eigenes Script an SIGNAL_ATTACKED und/oder SIGNAL_KILLED binden, das dann entsprechend des zerstörten Schiffes fliegende Warencontainer mit Tunings im Raum erstellt.
Ok, ich will es mal versuchen.
Das Ziel ist es dass bei einem Abschuß nicht nur Raketen oder so übrigbleiben sondern auch 10% der instalierten Erweiterungen, mal Ruder- mal Tunings. Aber nur wenn etwas über bleibt.

Hab mir ein paar Totus angeschaut aber iwie blick ich da nicht durch, aber ich hab schon mal den Editor aktiviert, dem Script einen Namen und eine Beschreibung gegeben :D
Was nun?
Hier sind 2 Möglichkeiten, "Arguments" und "Code", was kommt wohin?
Womit fang ich an und an was häng ich es wie an?
Vor allem wie mach ich das dass das Script autamatisch startet und nur IS läuft?
:o
User avatar
JSDD
Posts: 1379
Joined: Fri, 21. Mar 14, 20:51
x3tc

Post by JSDD »

TheBigAl_ist-einmalig.de wrote: Was nun?
Hier sind 2 Möglichkeiten, "Arguments" und "Code", was kommt wohin?
Womit fang ich an und an was häng ich es wie an?
... wenn du kein englisch kannst bist du sowieso verloren ^^ wenn doch, dann: *link*
oder kurz:
... argumente sind parameter/werte, die du von "außen" an das script übergeben kannst (wenn script manuell aufgerufen oder via anderes script aufgerufen)

test:
erstell 2 scripts: das erste mit einem argument (irgendeins, egal was, einfach mit der maus drüber und EINFÜGEN taste drücken), das zweite ohne sämtliche argumete
im ersten script: 1zeile --> clicken --> loogbook commands --> write to loogbook anklicken --> ESCAPE drücken
dann geh auf den <?> wert und wähl dein argument aus
speichern
2. script: 1.zeile --> ckick --> general commands --> script commands --> call script --> dann solltest du n haufen an scripts sehen (alle ingame vorhandenen scripts) --> such dein erstes script aus
dann solltest du genau wie zuvor beim "write to logbook ..." n parameter auswählen können ... click drauf, scroll runter und wähle "select string" --> gib abcwasweisdennich ein --> ENTER --> script speichern
ACHJA: am anfang der call script zeile gibts noch n parameter --> draufklicken --> <no returnvalue> anclicken (bedeutet: der return wert, den das aufgerufene script zurückgibt, interessiert nicht)
(info: jeder script aufruf gibt einen wert zurück, befehl "return ...", der meist automatisch beim speichern eingefügt wird)
dann:
gehe mit maus über 2. script & drück R --> ENTER --> ENTER (damit lässt das script laufen, geht immer so) ... öffne mal deine persönl. nachrichten ... & siehe da: hast ne message bekommen ;)

--------------------------------------

wenn du dann mal durchgecheckt hast:
entweder das bestehende signalscript "häcken", d.h. auf eigene gefahr vanilla script ändern, oder n sekundäres signal SIGNAL_KILLED ins game einbinden: (siehe dazu im link: tutorial commands etc)

der befehl ...
global secondary signal map: ...
... sollte der passende sein ...

ich z.B. hab in meinem game piraten M8 & M7M, & damit die anständig mit raketen versorgt werden hab ich (von Lucike/Feuerriese's Xenon Upgrade abgeguckt :D) das signal SIGNAL_CHANGEDSECTOR benutzt

global secondary signal map: add signal=SIGNAL_CHANGESECTOR race=Pirates class=M8 script='JSDD.Pirate.Missile.Boat.Rearm' prio=100 name='REARM_PIRATE_M8'

hier ne lib zum ertellen von containern: *link*
solltest aber etwas "zurückhaltend" mit der geschichte umgehen, denn die anzahl an übertunings ist NICHT begrenzt !! (flog soeben mit nem merkur knappe 4.000 m/s ^^)

TheBigAl_ist-einmalig.de wrote:Vor allem wie mach ich das dass das Script autamatisch startet und nur IS läuft?
:o
... wenn man ein script an ein signal knüpft, läuft es immer dann, wenn das signal triggert
... siehe mein beispiel: ich will dass:
auf jedem schiff, dass soeben den sekto gewechselt hat ...
auf jedem schiff, dass zu den Piraten zählt ...
auf jedem schiff, dass der Klasse M8 angehört ...
das script JSDD.Pirate.Missile.Boat.Rearm gestartet wird ...
mit priorität 100 ...
k.a. was name="..." hier bedeutet ...

bei dir könnt das so aussehen:
global secondary signal map: add signal=SIGNAL_KILLED race=null class=Movable Ship script='dein.script' prio=100 name='KEINE_AHNUNG_IRGEND_N_STRING'
(diese zeile in ein setup.wasweisich script schreiben)

damit sollte es klappen
in "dein.script" kommt alles rein, was du als antwort auf das signal machen willst, z.B.:

wähle zufallszahl von 0 bis 100
wenn zufallszahl > 97, dann erstelle warencontainer im tunings
(wieder zufallszahl von 0 - 1, wenn 1 dann engine tuning, wenn 0 dann ruder tuning oder so ähnlich ...)

sicher, dass es nur IS laufen soll ??
dann:

if [THIS] -> is in active sector (die zeile findest du unter general object commands)

... hier dein code ...

end

-------------------------------------------------

hier mal n fertiges beispiel

siehe im setup:
genauso könntst du auch SIGNAL_CAPTURED (triggert beim kapern) oder SIGNAL_DAMAGED (triggert beim beschädigen) etc nutzen
To err is human. To really foul things up you need a computer.
Irren ist menschlich. Aber wenn man richtig Fehler machen will, braucht man einen Computer.


Mission Director Beispiele
TheBigAl_ist-einmalig.de
Posts: 235
Joined: Mon, 12. Mar 07, 00:40
x3ap

Post by TheBigAl_ist-einmalig.de »

Also nach längerem rum probieren hab ich zwar nicht den Durchblick aber zumindest mal grob kapiert wie der Hase läuft :o
Das Englisch nicht das problem, eher die Kürzel und der Zusammenhang, da happerts immer noch, aber dein Beispiel JSDD funtzt nach kleiner anpassung super, danke für deine Hilfe :D


Gruß Al

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