Station scripten
Moderators: Moderatoren für Deutsches X-Forum, Scripting / Modding Moderators
-
- Posts: 15
- Joined: Tue, 1. Apr 14, 10:59
Station scripten
Hallo zusammen
Ich wolte mal fragen wie man eine station scripten kan.
Wie man eine script weiss ich aber dir protoziren nichts.
Als erklährung ich spiele den MG mod und da gibt es eine rakete namens antiker drohne die kan man leider nirgens wo kaufen nur scripten deshalb wolte ich mir eine station scripten wo die herstellt.
Also so sollte es etwa ausschauen.
End produkt = antiker drohne
Zykluszeit = 10min
Anzahl produkt = 2
Primäre ressourcen:
Energiezellen = 100
Cahoona fleischblöcke =25
Erz = 25
So sollte es am schluss aussehen wen möglich.
Die zahlen hinter der ressourcen ist die menge die es benötigt.
Kan mir also jeman aufschreiben wie ich das eingeben mus?
Danke im voraus
Ich wolte mal fragen wie man eine station scripten kan.
Wie man eine script weiss ich aber dir protoziren nichts.
Als erklährung ich spiele den MG mod und da gibt es eine rakete namens antiker drohne die kan man leider nirgens wo kaufen nur scripten deshalb wolte ich mir eine station scripten wo die herstellt.
Also so sollte es etwa ausschauen.
End produkt = antiker drohne
Zykluszeit = 10min
Anzahl produkt = 2
Primäre ressourcen:
Energiezellen = 100
Cahoona fleischblöcke =25
Erz = 25
So sollte es am schluss aussehen wen möglich.
Die zahlen hinter der ressourcen ist die menge die es benötigt.
Kan mir also jeman aufschreiben wie ich das eingeben mus?
Danke im voraus
-
- Posts: 5223
- Joined: Thu, 23. Jun 11, 14:57
du kannst nicht festlegen welche Menge oder wie viel Produziert wird, nur was woraus, denn Rest entscheidet das Spiel nach Warenwert.
du musst 1. per create station eine Station platzieren, dann per add product/resources die passenden Waren hinzufügen.
dann noch Schilde installieren
und das set Productiontask: true um die Produktion zu starten.
Hier noch nee Liste der möglichen Befehle:
http://forum.egosoft.com/viewtopic.php?t=286349
du musst 1. per create station eine Station platzieren, dann per add product/resources die passenden Waren hinzufügen.
dann noch Schilde installieren
und das set Productiontask: true um die Produktion zu starten.
Hier noch nee Liste der möglichen Befehle:
http://forum.egosoft.com/viewtopic.php?t=286349
My X3 Mods
XRebirth, things left to patch:
In General; On Firing NPC's; In De Vries; Out Of Zone; And the Antiwishlist
XRebirth, things left to patch:
In General; On Firing NPC's; In De Vries; Out Of Zone; And the Antiwishlist
-
- Posts: 1387
- Joined: Sat, 20. Feb 10, 17:47
zum Beispiel so, auch wenn es in unten stehendem Beispiel um eine Handelsstation handelt.
Code: Select all
$curxst = create station: type={Xenon Station (DOCK_X_TRADE)} owner=[Xenon] addto=$curxisec x=0 y=10000 z=0
= $curxst-> install 15 units of {2 GJ Schild}
$curxst-> set current shield strength to 30000000
$curxst-> add product to factory or dock: {Ruder-Optimierung}
$curxst-> add product to factory or dock: {Laderaumerweiterung}
$curxst-> add product to factory or dock: {Triebwerkstuning}
$curxst-> add product to factory or dock: {Singularitäts-Zeitverzerrungsantrieb}
$curxst-> add product to factory or dock: {Transporter}
$curxst-> station trade and production tasks: on=[TRUE]
-
- Posts: 859
- Joined: Mon, 13. Feb 12, 17:23
Station scripten
Ein ausführliches Beispiel mit Positionsauswahl auf der Sektorkarte, einem Produkt und drei Ressourcen.
Code: Select all
* alles was hinter dem Sternchen steht, gilt als Kommentar
* ein Argument festlegen, für die Position im Sektor
Argument 1 : setLoc, Var/Sector Position, ’Position wählen’
*Position der Station
$x = $setLoc[0]
$y = $setLoc[1]
$z = $setLoc[2]
$sec = $setLoc[3]
$neueStation = create station: type={Terraner M/AM-Gefechtskopffertigung M} owner=[Player] addto=$sec x=$x y=$y z=$z
= $neueStation-> install 10 units of {2 GJ Schild}
$sstr = $neueStation-> get maximum shield strength
$neueStation-> set current shield strength to $sstr
*Produkt der Station
$neueStation-> add product to factory or dock: {M/AM-Gefechtskopf}
*Resourcen der Station
$neueStation-> add primary resource to factory: {Energiezellen}
$neueStation-> add primary resource to factory: {Siliziumscheiben}
$neueStation-> add primary resource to factory: {BoFu}
*Der Station einen Namen geben
$neueStation-> set name to 'MAM Gefechtskopf'
*Der nächste Eintrag sorgt dafür, dass die Station auch produziert.
$neueStation-> station trade and production tasks: on=[TRUE]
*Skript beenden
return null
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE
-
- Posts: 859
- Joined: Mon, 13. Feb 12, 17:23
Wie kann ich einen Komplex übergeben?
Hallo Piloten,
nun habe ich auch mal eine Frage zum Thema Skripten. Das ich mich schon länger mit diesem Thema beschäftigt habe, zeigt mein Skriptbeispiel oben.
Was möchte ich erreichen?
Es geht darum, dass ich einen Stationskomplex an ein Volk übergeben möchte.
Beispiel: 1 x Bofu + 1 x Bogas = Bofukomplex und diesen übergeben. Der Komplex soll nicht geskriptet werden, da er im Spiel gebaut wird.
Der folgende Code diente mir zum experimentieren. Vielleicht kann mir jemand helfen, dieses Knäuel zu entwirren. Ich wäre sehr froh und dankbar, wenn es endlich gelänge.
nun habe ich auch mal eine Frage zum Thema Skripten. Das ich mich schon länger mit diesem Thema beschäftigt habe, zeigt mein Skriptbeispiel oben.
Was möchte ich erreichen?
Es geht darum, dass ich einen Stationskomplex an ein Volk übergeben möchte.
Beispiel: 1 x Bofu + 1 x Bogas = Bofukomplex und diesen übergeben. Der Komplex soll nicht geskriptet werden, da er im Spiel gebaut wird.
Der folgende Code diente mir zum experimentieren. Vielleicht kann mir jemand helfen, dieses Knäuel zu entwirren. Ich wäre sehr froh und dankbar, wenn es endlich gelänge.
Code: Select all
$anvisiert1 = get player tracking aim
$KlasseZ = $anvisiert1-> get object class
* $AuswahlZ = [TRUE]
$Compl = array alloc: size=0
* if $KlasseZ-> is of class [Komplexzentrum]
* $Complexes==$anvisiert1
* else
* return null
* end
$Complexes.count = size of array $Complexes
* dec $Complexes.count
* $ComHab-> set serial name of station to $Complexes.count
$Complexes.count = size of array $nStation
* dec $Complexes.count
* $ComHab-> set serial name of station to $Complexes.count
* $Sts.i = size of array $Compl
$Komplexstationen = $nStation-> get station array from sector
* $nStation-> set owner race to $RasseN
* $n = size of array $Komplexstationen
for each $St in array $nStation using counter $Sts.i
$St-> set owner race to $RasseN
end
$ComHab-> set owner race to $NewRace
for each $St in array $Compl using counter $Sts.i
$St-> set owner race to $NewRace
end
$Komplexstationen-> set owner race to $RasseN
* $nStation-> set owner race to $RasseN
= wait 1000 ms
return null
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE
-
- Posts: 1379
- Joined: Fri, 21. Mar 14, 20:51
... ich denke, mit dem "get environment" kann man entscheiden, ob ne station zu einem komplex gehört oder nicht (ist nur geraten)
... andererseits würd sich n blick in andere scripts (z.B. lucikes komplexrechner o.ä.) lohnen
... wenn ja (also zum komplex gehörend), dann via set owner race ... den besitzer wechseln (also "übergeben")
... ob das ganze funktionieren kann, weiß ich ehrlich gesagt nicht, wüsst aber nix was 'gegen sprechen würd ... viel spaß beim testen ^^
(konkretere fragen können konkreter beantwortet werden
)
... andererseits würd sich n blick in andere scripts (z.B. lucikes komplexrechner o.ä.) lohnen
... wenn ja (also zum komplex gehörend), dann via set owner race ... den besitzer wechseln (also "übergeben")
... ob das ganze funktionieren kann, weiß ich ehrlich gesagt nicht, wüsst aber nix was 'gegen sprechen würd ... viel spaß beim testen ^^
(konkretere fragen können konkreter beantwortet werden

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
Irren ist menschlich. Aber wenn man richtig Fehler machen will, braucht man einen Computer.
Mission Director Beispiele
-
- Posts: 859
- Joined: Mon, 13. Feb 12, 17:23
Hallo JSDD,
ich danke Dir, für die schnelle Antwort. Leider ist sie nicht sehr hilfreich.
Die Aufgabe lautet: Es geht darum, dass ich einen Stationskomplex an ein Volk übergeben möchte.
Inwiefern ist diese Anfrage unkonkret? Was kann daran missverstanden werden?
ich danke Dir, für die schnelle Antwort. Leider ist sie nicht sehr hilfreich.
Dieser Befehl taugt für mein Vorhaben überhaupt nicht und ein Ratespiel habe ich nicht veranstaltet.JSDD wrote:... ich denke, mit dem "get environment" kann man entscheiden, ob ne station zu einem komplex gehört oder nicht (ist nur geraten)
Habe ich bereits ausgiebig getan und in meiner Anfrage schon angedeutet.JSDD wrote:... andererseits würd sich n blick in andere scripts (z.B. lucikes komplexrechner o.ä.) lohnen
Dieser Befehl ist korrekt und in meinem Beispielskript schon vorhanden.JSDD wrote:... wenn ja (also zum komplex gehörend), dann via set owner race ... den besitzer wechseln (also "übergeben")
Ich hoffe auf eine Antwort die mir tatsächlich weiterhilft, von jemandem der sich auch auskennt.JSDD wrote:... ob das ganze funktionieren kann, weiß ich ehrlich gesagt nicht, wüsst aber nix was 'gegen sprechen würd ... viel spaß beim testen ^^
Da gebe ich Dir völlig Recht!JSDD wrote:(konkretere fragen können konkreter beantwortet werden )}
Die Aufgabe lautet: Es geht darum, dass ich einen Stationskomplex an ein Volk übergeben möchte.
Inwiefern ist diese Anfrage unkonkret? Was kann daran missverstanden werden?
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE
-
- Moderator (Deutsch)
- Posts: 25130
- Joined: Sun, 2. Apr 06, 16:38
Die prinzipielle Vorgehensweise hast du ja schon in deinem Beispielscript. Jetzt musst du nur noch darauf achten, dass du die richtigen Befehle nutzt, um die Stationen zu erhalten, und alle Variablen anlegst, bevor du sie nutzt.Klaus11 wrote:Es geht darum, dass ich einen Stationskomplex an ein Volk übergeben möchte.
Ich mach das mal an einem eigenen kleinen Beispiel deutlich.
Code: Select all
Arguments
• 1: race , Var/Race , 'race'
Source Text
001 $aim = get player tracking aim
002 skip if $aim -> is of class Komplexzentrum
003 |return null
004
005 $aim ->set owner race to $race
006 $factory.arr = $aim -> get factory array from sector
007 $size.factory.arr = size of array $factory.arr
008 while $size.factory.arr
009 |dec $size.factory.arr =
010 |$factory = $factory.arr[$size.factory.arr]
011 |$factory ->set owner race to $race
012 end
013 return null
Prinzipiell würde es auch schon ausreichen, wenn du nur den Besitzer des Komplexkontrollzentrums änderst. Der Komplex produziert dann auch schon, genügend Ressourcen vorausgesetzt, hat unendlich viel Geld (immer 2 Mrd. Credits) und die automatische Preisanpassung funktioniert ebenfalls. Wenn das Kontrollzentrum zerstört werden würde, würden die Stationen aber dir gehören, und eben nicht dem Besitzer des Kontrollzentrums.
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!
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!
-
- Posts: 859
- Joined: Mon, 13. Feb 12, 17:23
Hallo X2-Illuminatus,
Herzlichen Dank für Deine qualifizierte Antwort. Dies ist die Lösung, nach der ich so lange gesucht habe.
Die einfache Variante, Übergabe des Komplexes, hat mich nicht zufrieden gestellt. Weil die Stationen immer noch vom Spieler beeinflusst werden konnten. Es war möglich, die Produktion einzelner Fabriken an und aus zu schalten.
Es beruhigt mich zu wissen, dass hier noch Fachleute zu erreichen sind.
Noch mal vielen Dank dafür.
Herzlichen Dank für Deine qualifizierte Antwort. Dies ist die Lösung, nach der ich so lange gesucht habe.


Die einfache Variante, Übergabe des Komplexes, hat mich nicht zufrieden gestellt. Weil die Stationen immer noch vom Spieler beeinflusst werden konnten. Es war möglich, die Produktion einzelner Fabriken an und aus zu schalten.
Es beruhigt mich zu wissen, dass hier noch Fachleute zu erreichen sind.
Noch mal vielen Dank dafür.
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE