[DISKUSSION] Allgemeine S&M-Fragen III

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
User avatar
X2-Illuminatus
Moderator (Deutsch)
Moderator (Deutsch)
Posts: 24950
Joined: Sun, 2. Apr 06, 16:38
x4

Post by X2-Illuminatus » Fri, 9. Dec 16, 20:49

Code: Select all

$wareTech = $ship-> get tradeable ware array from ship 
$sub = get number of subtypes of maintype [SSTYPE_W_TECH] 
while $sub 
  dec $sub 
  $ware = get ware from maintype [SSTYPE_W_TECH] and subtype $sub 
  if not find $ware in array: $wareTech 
   if $ship-> get amount of ware $ware in cargo bay 
    append $ware to array $wareTech 
   end 
  end 
end 

$count = 0 
for each $ware in array $wareTech using counter $count 
  $amt = $ship-> get amount of ware $ware in cargo bay 
   if $ware != {Triebwerkstuning} 
    = $newShip-> install $amt units of $ware 
   end 
end 
Ich würde vermuten, dass dein Problem in obigem Scriptausschnitt liegt. "get tradeable ware array from ship" wird all jene Waren zurückgeben, die nicht installiert sind. Damit auch den einen Laser bzw. den einen Schild, der zusätzlich im Frachtraum liegt. Im zweiten Abschnitt erhälst du mit "get amount of ware in cargo bay" die komplette Anzahl (in diesem Fall fünf) der entsprechenden Ware, die dann auch installiert wird. Dass du zu diesem Zeitpunkt schon die vier Laser und die vier Schilde, entsprechend der vorhanden Slots, installiert hast, wird dabei nicht berücksichtigt. Um zu verhindern, dass bereits installierte Laser und Schilde berücksichtigt werden, kannst du sie entweder im oberen Teil des Scripts, wenn du sie ins neue Schiffe installierst aus dem alten entfernen. Oder du ersetzt den "get amount of ware in cargo bay"-Befehl mit "get true amount of ware in cargo bay". Letzterer ignoriert installierte Waffen und Schilde.
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
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Post by Klaus11 » Sat, 10. Dec 16, 10:24

Hallo X2,

wieder einmal hat Deine Antwort mir sehr geholfen. :) Vielen Dank dafür.
Es gibt viele Varianten, wie die Laser und Schilde im Schiff verteilt sein können. Ich werde versuchen, meine Abfragen so zu gestalten, dass alle Möglichkeiten erfasst werden.
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

User avatar
Aldebaran_Prime
Posts: 1386
Joined: Sat, 20. Feb 10, 17:47
x4

Massenkonvertierung von Scripts im .xmxl in .pck Format

Post by Aldebaran_Prime » Thu, 29. Dec 16, 21:28

Hallo zusammen, ich habe schon viel gegoogelt, aber leider nichts gefunden:

Wie kann ich eine Massenkonvertierung von msci Scripts im .xml in das .pck Format machen?

Jetzt bitte kein Vorschläge, wie: "jedes Script im X-Studio einzeln öffnen und dann mit "Save as" als .pck speichern" ...
- es geht um 585 Scripts...

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Post by Klaus11 » Thu, 29. Dec 16, 22:21

Ich würde sie in eine Cat importieren und dabei komprimieren. Du kannst so viele auf einmal importieren, wie Du im Quell Ordner hast.

X3 Editor 2 machts möglich. :wink:
Last edited by Klaus11 on Thu, 29. Dec 16, 22:27, edited 1 time in total.
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

User avatar
JSDD
Posts: 1378
Joined: Fri, 21. Mar 14, 20:51
x3tc

Post by JSDD » Thu, 29. Dec 16, 22:24

ich persönlich hab immer scripts zurück ins .pck format mit dem x3editr2 konvertiert, drag&drop ein .xml script in irgendne .cat/.dat in x3editor2

einmal konvertiert, kann man hinterher dieselben wieder aus den x3editor2 extrahieren, aber mit NICHT gesetztem häkchen bei "decompress compressed files"

sollte genauso mit mehreren scripts funktionieren, oder gar mit ganzen script ordnern ;)

[wie mein vorredner bereits sagte ... :D]
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

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Post by Klaus11 » Thu, 29. Dec 16, 22:34

JSDD wrote:ich persönlich hab immer scripts zurück ins .pck format mit dem x3editr2 konvertiert, drag&drop ein .xml script in irgendne .cat/.dat in x3editor2

einmal konvertiert, kann man hinterher dieselben wieder aus den x3editor2 extrahieren, aber mit NICHT gesetztem häkchen bei "decompress compressed files"

sollte genauso mit mehreren scripts funktionieren, oder gar mit ganzen script ordnern ;)

[wie mein vorredner bereits sagte ... :D]
Du stimmst mir also zu? Und es sollte nicht nur mit mehreren Skripten funktionieren, es funktioniert tatsächlich mit mehreren Skripten.
Beim Exportieren die Dateien einfach mittels Leertaste auswählen (werden dann rot markiert) und dann exportieren.

Beim Importieren über "Add Files" auswählen. :D
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

User avatar
Aldebaran_Prime
Posts: 1386
Joined: Sat, 20. Feb 10, 17:47
x4

Post by Aldebaran_Prime » Thu, 29. Dec 16, 22:58

KLASSE!

Ich hätte jetzt zwar eine Lösung in Form irgend eines Scripts auf Basis Javascript oder Phyton etc. erwartet - aber warum kompliziert, wenn der gute alte X3E2 es auch manuell macht.

Danke und Euch alles galaktisch Gute für 2017!

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

Post by UniTrader » Fri, 30. Dec 16, 02:10

alternativ einfach die Dateiendung von .xml auf .pck ändern(wenns nur um die Dateipriorität geht) - obs dann vom Spiel durch den dekompressor gejagt wird hängt vom Inhalt ab, nicht von der Endung ;) (nen komprimiertes Script mit .xml am ende funktioniert auch, genauso wie ne xml mit .pck am ende ;) :D )
if not stated otherwise everything i post is licensed under WTFPL

Ich mache keine S&M-Auftragsarbeiten, aber wenn es fragen gibt wie man etwas umsetzen kann helfe ich gerne weiter ;)

I wont do Script&Mod Request work, but if there are questions how to do something i will GLaDly help ;)

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Andockvarianten

Post by Klaus11 » Tue, 10. Jan 17, 12:42

Hallo Leute,

ich suche ein besonderes Andockverhalten ausschließlich für Schiffe der Klasse „TS“.
Ich habe da einen Sternenzerstörer an dem nur Fighter und ein TS andocken soll. Die Fighter landen und starten horizontal. Das TS soll von unten an der großen Öffnung extern andocken und dabei nicht verschwinden. Ich habe zwar ein passendes Andockverhalten, aber das ist für M6, TS und TP ausgelegt. Ein M6 soll aber nicht am SD andocken können. Eine Information noch, das Andockverhalten für M6, TS und TP hat nicht die Bezeichnung „Standard“. Ich kann dieses also nicht einfach umbennen.

Bei den Andockvarianten, die mir vorliegen, durchquert das TS den halben SD. Das finde ich sehr unschön.

Wie könnte ich das Problem lösen?

MFG
Klaus
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

Ghostrider[FVP]
Posts: 3262
Joined: Wed, 6. Nov 02, 20:31
x3ap

Post by Ghostrider[FVP] » Tue, 10. Jan 17, 14:34

Siehe PM..

Gruß
Ghostrider
Föderation Vereinter Planeten -=)FVP(=-
Since 1998... join the future! X3-The Sonen
Image
Ghostrider's X-Universum [INDEX]Lucikes Scripts & Mods

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Job

Post by Klaus11 » Thu, 26. Jan 17, 15:00

Hallo Leute,

ich bastel gerade an einem Job. Ein besonderes Schiff soll durch die Galaxie düsen. Das Schiff ist in der TShips dem Player zugeordnet. So vermeide ich, dass das Schiff ungewollt auftreten kann.
Im Job muss ich es aber irgendeinem Volk zuordnen, damit das Schiff überhaupt auftaucht.
Nun möchte ich gerne einen speziellen Piloten an Bord des Schiffes haben. Dazu habe ich ein kleines Skript geschrieben, welches natürlich nicht funktioniert. Dieses Skript habe ich dem Schiff im Job zugeordnet.
Name: !config.PilotAnBord.ZB

Code: Select all

 $Ship->set pilot name to „Mustermann“
$Ship->set pilot speaker: voice=103, face=813, Pirate subrace=null, Argon female=null
Return null
Meine Fragen sind:
Ist es überhaupt möglich einen speziellen Piloten auf ein Job Schiff zu setzen?
Wenn ja, dann wie?
Ich freue mich über jede konstruktive Antwort

MFG
Klaus
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

User avatar
ubuntufreakdragon
Posts: 5189
Joined: Thu, 23. Jun 11, 14:57
x4

Post by ubuntufreakdragon » Thu, 26. Jan 17, 15:38

als erstes teste mal ob das script überhaupt läuft per write message to log o.ä.
dann versuch mal das ! am anfang des nahmens wegzulassen ist ja ein custom script.
auch könntest du das script per "r" drücken im ingame SE auf einem beliebigen Job schiff testen.
My X3 Mods

XRebirth, things left to patch:
In General; On Firing NPC's; In De Vries; Out Of Zone; And the Antiwishlist

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Post by Klaus11 » Thu, 26. Jan 17, 17:06

Ich danke dir für deine Antwort. Leider hilft sie mir nicht weiter.
Ja, das Skript funktioniert, wenn ich es manuell mit dem Buchstaben „r“ starte.
Beim Job.schiff funktioniert es leider immer noch nicht. Das Argument ship/ ship/type habe ich nun auch eingefügt. Das „!“ habe ich weggelassen und auch wieder benutzt. Ich habe noch eine Zeile angefügt, in dem ich das Schiff dem Volk der Argonen zuordne.
Trotzdem habe ich das gewünschte Ergebnis noch nicht erreichen können. :cry:

Edit:
In den Jobs kann man eine NPC ID vergeben. Vielleicht wäre das die Lösung. Nur, wie müsste ich da vorgehen?
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

User avatar
Ketraar
EGOSOFT
EGOSOFT
Posts: 11741
Joined: Fri, 21. May 04, 17:15
x4

Post by Ketraar » Thu, 26. Jan 17, 17:47

In den Jobs selber kann man nicht Piloten zu ordnen.

Man müsste das Schiff ingame "finden" und dann den Piloten austauschen.

MFG

Ketraar

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Post by Klaus11 » Thu, 26. Jan 17, 18:03

Ketraar wrote:In den Jobs selber kann man nicht Piloten zu ordnen.

Man müsste das Schiff ingame "finden" und dann den Piloten austauschen.

MFG

Ketraar
Danke für die schnelle Antwort. Nun brauche ich also ein anderes Skript. :wink:
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

User avatar
ubuntufreakdragon
Posts: 5189
Joined: Thu, 23. Jun 11, 14:57
x4

Post by ubuntufreakdragon » Thu, 26. Jan 17, 20:41

ein simples start Null-> script xyz args ship
und xyz args: ship
macht dann wait 1000ms
und setzt dann den piloten
My X3 Mods

XRebirth, things left to patch:
In General; On Firing NPC's; In De Vries; Out Of Zone; And the Antiwishlist

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Post by Klaus11 » Thu, 26. Jan 17, 20:55

ubuntufreakdragon wrote:ein simples start Null-> script xyz args ship
und xyz args: ship
macht dann wait 1000ms
und setzt dann den piloten
OK?
Mit wait 5000 habe ich es auch schon vergeblich versucht. Aber deine Kurzform der Skriptbeschreibung kann ich nicht ganz folgen. :oops:
start Null?
xyz wird wohl der Name des Skripts sein.
args, wahrscheinlich das Argument für das betreffende Schiff. Dann eine Übergabe an ein weiteres Skript?
Verzeih mir bitte, aber ich verstehe gerade nur Bahnhof. Es ist schwer jemandem zu folgen, der gerade anders an eine Problemlösung heran geht.
Mich interessiert deine Idee aber brennend. Ich würde sie gerne testen, wenn ich wüßte, wie.
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

X3TC-Spieler
Posts: 279
Joined: Fri, 17. Apr 09, 19:59
x3tc

Post by X3TC-Spieler » Sat, 28. Jan 17, 21:01

Hallo Leute,
Ich bin dabei mir ein neues turrets ins Spiel reinzupacken. Allerdings habe ich die ganze Zeit das Problem, dass es sich nicht drehen will. Habe einen neuen Eintrag in der dummy.txt und der components.txt erstellt. Eigentlich müsste alles funktionieren, aber Fehlanzeige. Zur Sicherheit habe ich dann noch ein altes turret mit dem neuen ersetzt. Sogar die scene datei habe ich mit neue modellen übernommen, aber der turret bewegt sich einfach nicht. Hat vielleicht jemand von euch eine Idee?

User avatar
ubuntufreakdragon
Posts: 5189
Joined: Thu, 23. Jun 11, 14:57
x4

Post by ubuntufreakdragon » Mon, 6. Feb 17, 06:58

die idee ist im config script ein 2. unabhängiges script zu starten(als unabhängiger prozess), welches dann eigenständig wartet und was später den piloten setzt.
Das kommt ins config script

Code: Select all

$null = Null
@ START $null -> call script 'xyz' :  ship=[THIS]
und das als eigenes script

Code: Select all

xyz args: ship
@ wait 1000 ms
*set pilot on ship
$ship->set pilot name to „Mustermann“
$ship->set pilot speaker: voice=103, face=813, Pirate subrace=null, Argon female=null
Return null
@ X3TC-Spieler
dumme frage dran gedacht den indexzähler(die anzahl der einträge) um 1 zu erhöhen, nachdem du die neuen einträge in dummy und components gemacht hast?
My X3 Mods

XRebirth, things left to patch:
In General; On Firing NPC's; In De Vries; Out Of Zone; And the Antiwishlist

User avatar
Klaus11
Posts: 859
Joined: Mon, 13. Feb 12, 17:23
x3ap

Post by Klaus11 » Mon, 6. Feb 17, 17:59

Hallo ubuntufreakdragon,

Danke für deine Tipps. Ich hatte auch endlich Feierabend und konnte noch mal die Skripte testen. Wahrscheinlich mache ich noch immer einen kleinen Fehler. Jedenfalls konnte ich das gewünschte Ergebnis leider nicht erreichen.

Mfg
Klaus
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

Post Reply

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