[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
JSDD
Posts: 1378
Joined: Fri, 21. Mar 14, 20:51
x3tc

Post by JSDD » Sat, 18. Feb 17, 16:03

reden können die piloten natürlich auch, d.h. wie z.B. die polizisten:
wenn spieler illegale waren bei sich hat, kommt:

Code: Select all

[THIS] -> send audio message 948 to player
dann sagt dir der pilot:
page 114 text 948 wrote:Ich hab nichts für Sie, Pilot. Nichts, nada, nasshingu! Nun hau ab!
falls du z.B. nen extra task auf dem rücken des schiffs startest (task 12345 z.B.), auf dem kannste dann solche "spielchen" ausrichten ...
in nem endlos-loop checken, ob player im selben sektor ist & sich nähert, ggf. ansprechen ...

questions gehen auch, dazu brauchste halt noch ein "callback" script, welches (samt antwort als "argument1") aufgefufen wird, wenn du antwortest
http://xpluginmanager.co.uk/scripts/hel ... index.html
die question musste halt in ne textdatei verpacken ...

damit lassen sich interessante "interaktionsmoglichkeiten" schaffen, die X3 sonst vermissen lässt (imho), ansonsten ist ja immer:
player requested irgendwas <-- X3 antwortet (einseitige g'schicht')

beispiel: piratengilde3 (falls du das kennst)
per hotkey umgeht man den "üblichen" kommunikationsweg (C taste) & schafft durch ne art menü, mit der man auch die antworten der gegenseite scripten kann etc pp, sprich: vollste kontrolle hat
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 » Sun, 19. Feb 17, 09:20

Hi JSDD,

dank deiner Beispiele funktioniert es nun tatsächlich. Ich habe nur etwas länger gebraucht, weil ich mir deine Einträge in der Job.txt nicht genau angesehen habe. Beim Skriptaufruf darf man „Job.“ nicht mit angeben, dass musste ich bei mir korrigieren.
Ich habe das erste Skript noch mit einem Job.Script gekoppelt und nun ist alles super. :lol:
JSDD wrote:reden können die piloten natürlich auch, d.h. wie z.B. die polizisten:
wenn spieler illegale waren bei sich hat, kommt:

Code: Select all

[THIS] -> send audio message 948 to player
dann sagt dir der pilot:
page 114 text 948 wrote:Ich hab nichts für Sie, Pilot. Nichts, nada, nasshingu! Nun hau ab!
falls du z.B. nen extra task auf dem rücken des schiffs startest (task 12345 z.B.), auf dem kannste dann solche "spielchen" ausrichten ...
in nem endlos-loop checken, ob player im selben sektor ist & sich nähert, ggf. ansprechen ...
Wäre ne tolle Sache, bin ich aber schon wieder raus. Ich habe keine Ahnung, wie das aussehen soll. :cry:
JSDD wrote:questions gehen auch, dazu brauchste halt noch ein "callback" script, welches (samt antwort als "argument1") aufgefufen wird, wenn du antwortest
http://xpluginmanager.co.uk/scripts/hel ... index.html
die question musste halt in ne textdatei verpacken ...

damit lassen sich interessante "interaktionsmoglichkeiten" schaffen, die X3 sonst vermissen lässt (imho), ansonsten ist ja immer:
player requested irgendwas <-- X3 antwortet (einseitige g'schicht')

beispiel: piratengilde3 (falls du das kennst)
per hotkey umgeht man den "üblichen" kommunikationsweg (C taste) & schafft durch ne art menü, mit der man auch die antworten der gegenseite scripten kann etc pp, sprich: vollste kontrolle hat
Wie das mit dem "callback" script funktioniert muss ich mir unbedingt auch mal ansehen. Ja, in piratengilde3 habe ich es erlebt. Die Interaktion wirkt dadurch lebendiger.

Vielen Dank noch mal. Nun habe ich ein Problem weniger.
[ 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 » Sun, 19. Feb 17, 10:33

Klaus11 wrote:
JSDD wrote:reden können die piloten natürlich auch, d.h. wie z.B. die polizisten:
wenn spieler illegale waren bei sich hat, kommt:

Code: Select all

[THIS] -> send audio message 948 to player
dann sagt dir der pilot:
page 114 text 948 wrote:Ich hab nichts für Sie, Pilot. Nichts, nada, nasshingu! Nun hau ab!
falls du z.B. nen extra task auf dem rücken des schiffs startest (task 12345 z.B.), auf dem kannste dann solche "spielchen" ausrichten ...
in nem endlos-loop checken, ob player im selben sektor ist & sich nähert, ggf. ansprechen ...
Wäre ne tolle Sache, bin ich aber schon wieder raus. Ich habe keine Ahnung, wie das aussehen soll. :cry:
in job.myjobscript fügste 1 zeile hinzu:

Code: Select all

[THIS] -> start task 12345 with script 'job.myjobscript.logic' prio 0, null null null nul null
das startet das script 'job.myjobscript.logic' (welches du zuvor erstellen musst) auf dem "rücken" des schiffs, es läuft nebenbei sozusagen

'job.myjobscript.logic' sähe ungefähr so aus:

Code: Select all

$distanz.anfunken = 10000 // in meter
$distanz.zuletzt = 999999 // in meter

while [THIS] -> exists

@ wait 15000 to 25000 ms

// nur im spielersektor
if not [THIS] -> is in active sector
... $distanz.zuletzt = 999999
... continue
end

// hat sich player genähert ?
$distanz = get distance between [THIS] and [PLAYERSHIP]
skip if ($distanz < $distanz.anfunken)
... continue

// spieler is in der nähe, aber entfernt er sich ?
skip if ($distanz < $distanz.zuletzt)
... continue

// merke distanz ...
$distanz.zuletzt = $distanz

// hier weist du bescheid dass der spieler sich auf daein jobschiff zubewegt
// frag ihn, ob er die koordinaten / sektor des vom jobschiff kürzlich entdecktes herrenloses schiff kaufen will
// oder ob er statdesssen ä bissle dope beschaffen könnte oder sonstwas
// wie das geht kannste im oben verlinkten tutorial lesen

// ambesten mach man hier nen zufallstrigger: sowas wie:
$zufallswert = random value from 0 to 10 -1
if ($zufallswert == 0)
... frag wegen herrenloses schiffskoordinaten
else if ($zufallswert == 1)
... frag ob er dope will / hat
else if ($zufallswert == 2)
... fordere des spieler auf, sofort sein fracht auszuwerfen sonst kommen die ganzen piratenkollegen & machen trouble !!! (nur wenn sektor == Brennans triumph oder so ähnlich)
else if ( etc pp )
...
end


end

dieses script läuft solange das jobschiff existiert & läuft dann auf jedem jobschiff separat. wenn z.B. mehrere jobschiffe in einem sektor sind, check ob bereits ne frage gestellt wurde (setz / check einfach ne globale variable)
check auch, ob die zuletzt gestellte frage mindestens 5minuten her ist (ebenfalls globale variable)

das wäre dann praktisch dein "life plugin" setup, alles weitere scriptest du dan da rein


oder noch so ne verrückte idee: anheuerbare gks
das jobschiff ist von typ minotaurus & hat n paar raketen über, weis nich was man damit machen soll & scheint gerade etwas "triggerhappy" zu sein ;) für knappe 50k Credits (+ raketenkosten) kommt der gute mit dir mit auf aggro tour durch xenonsektor & co, aber halt nur kurzweilig
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 » Sun, 19. Feb 17, 11:41

Hi JSDD,

Gott segne dich, du hast mich zum Lachen gebracht. :D :D
JSDD wrote:oder noch so ne verrückte idee: anheuerbare gks
das jobschiff ist von typ minotaurus & hat n paar raketen über, weis nich was man damit machen soll & scheint gerade etwas "triggerhappy" zu sein ;) für knappe 50k Credits (+ raketenkosten) kommt der gute mit dir mit auf aggro tour durch xenonsektor & co, aber halt nur kurzweilig
Deine Ideen sind verrückt und originell zugleich. Ich werde deine Vorschläge unbedingt ausprobieren. Wenn ich die Zusammenhänge geschnallt habe, sind der Fantasie keine Grenzen mehr gesetzt. Einige meiner Ideen habe ich bisher über das Cheatpaket realisiert. Deine Herangehensweise lässt sich aber viel besser in ein Spiel einfügen. :thumb_up:

Nachgefragt

Code: Select all

// nur im spielersektor
if not [THIS] -> is in active sector
... $distanz.zuletzt = 999999
... continue
end 
Diese Punkte Z.B. vor continue sind Füllzeichen?
[ 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 » Sun, 19. Feb 17, 12:12

die pünktchen existieren so nicht, das hab ich nur der besseren sichbarkeit etwegen eingefügt (damit nicht alles linksbündig ist)
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 » Sun, 19. Feb 17, 12:50

JSDD wrote:die pünktchen existieren so nicht, das hab ich nur der besseren sichbarkeit etwegen eingefügt (damit nicht alles linksbündig ist)
Aha, alles klar. :) Danke.
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

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

Post by Klaus11 » Thu, 4. May 17, 22:21

Hallo Leute,

ich habe im IG Scripteditor wieder mal was scripten wollen und bin dabei bisher auf zwei ReadText Fehler 2003-1654 und 2003-1655 gestoßen. In dem T File 0001-L049.xml konnte ich unter der 2003 auch keine entsprechende Eintragung finden. Vielleicht habe ich auch in der falschen Datei nachgesehen.

Kann mir jemand verraten, was sich dahinter verbergen könnte und wo ich den richtigen T File finde? Möglicher Weise bringt meine Mod da was durcheinander.

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

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

Post by X2-Illuminatus » Thu, 4. May 17, 22:41

Das sind zwei der vier neuen Scriptbefehle, die mit dem neuen Update hinzugekommen sind. Kann es sein, dass du im t-Ordner im Spielverzeichnis eine alte Textdatei 0001-L049.xml liegen hast, in der die besagten Befehle fehlen?
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 » Fri, 5. May 17, 07:33

X2-Illuminatus wrote:Das sind zwei der vier neuen Scriptbefehle, die mit dem neuen Update hinzugekommen sind. Kann es sein, dass du im t-Ordner im Spielverzeichnis eine alte Textdatei 0001-L049.xml liegen hast, in der die besagten Befehle fehlen?
Ich danke dir für deine schnelle Antwort. Die neuen Befehle könnten meine Mod noch mal verbessern. :D
Großen Dank für diese nützlichen Erweiterungen.

Ich werde mal meine Steam Version nach dem neuen T-File durchforsten.
[ 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

Raumfliegen

Post by Aldebaran_Prime » Mon, 8. May 17, 07:52

Gibt es eigentlich eine Möglichkeit, die Wahrscheinlichkeit des Erscheinens von Raumfliegen zu erhöhen, oder ist das hardcoded?

Wie könnte ich ansonsten Raumfliegen mit MD oder MSCI so erzeugen, dass sie nicht auf den Gravidar erscheinen?

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

Post by Aldebaran_Prime » Wed, 10. May 17, 17:42

Also wie man Raumfliegen mit MD Script erzeugt habe ich jetzt selbst herausgefunden:

Code: Select all

            <do_all min="20" max="100" counter="Mcounter">
              <create_ship typename="SS_SH_SPACEFLY"  race="unknown" racelogic="1" capturable="0" boardable="0">
                <equipment loadout="default" />

              </create_ship>

            </do_all>
Dann sind sie automatisch auch nicht auf dem Gravidar sichtbar und können mit dem Ionendisruptor fein betäubt und eingesammelt werden.

Leider stehen sie nur unbeweglich im Raum - auch das zuweisen eines Commands mit dem Command-Tag: <command command="default"/> oder auch follow bringt nix.

hat jemand eine Idee?

Bleibt auch offen, wie das im Spiel standardmäßig geregelt ist?

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

Post by Klaus11 » Wed, 10. May 17, 19:24

Du erzeugst also zurzeit nur tote Fliegen?
Hast du schon mal den Befehl "beschütze Position" ausprobiert? Frage mich jetzt aber nicht, wie man die Position im Sektor im MD festlegt. :oops:

Edit:
ach ja,:
<find_sector x="21" y="3" name="Insel des Klaus"/>
<position x="0km" y="250km" z="150km"/>

Ich habe mir eben mal ein paar Raumfliegen per Skript in den Laderaum gepackt. Dann habe ich diese ausgeworfen und sie wurden lebendig. Sie flogen los und machten ihre seltsamen Geräusche. Damit werde ich mal weiter testen.
[ 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 » Wed, 10. May 17, 23:36

nee, geht leider auch nicht... :evil:

Ich habe in dem Nest (=this.HB{counter@HBcounter}) Raumfliegen als Fracht hinzugefügt und diese dann mit diesem Befehl ausgeworfen:

Code: Select all

            <eject_cargo object="this.HB{counter@HBcounter}">
           	    <ware typename="SS_WARE_TECH239" min="20" max="100"/>  
           	</eject_cargo>  
dann fliegt leider ein Container mit 20 Raumfliegen im Weltall - aber eben keine lebenden 20 Raumfliegen - schade!

ich habe jetzt noch einmal genau in der MD-Dokumentation geschaut - es gibt ja einen extra <create_spacefly> Tag für Raumfliegen:

Code: Select all

            <do_all min="40" max="100" counter="Mcounter">            
              <create_spacefly> 
              	<sector sector="{param@Sector_id}" />    
              	<position x="0" y="0" z="0" />           
              </create_spacefly>              
            </do_all>
obiger Code produziert trotzdem nur "tote" Raumfliegen...

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

Post by Aldebaran_Prime » Thu, 11. May 17, 00:20

so, weiter experimentiert. wenn man swarm="1" als parameter hinzufügt erwecken sie zu leben:

Code: Select all

            <do_all min="10" max="40" >            
              <create_spacefly swarm="1"> 
              	<sector sector="{param@Sector_id}" />    
              	<position object="this.HB{counter@HBcounter}" min="5km" max="10km"  />          
              </create_spacefly>              
            </do_all>
zudem habe ich nun ein paar Beispiele in der MD-Datei "3.08 Sector Management.xml" gefunden

Problem gelöst

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

Post by Klaus11 » Thu, 11. May 17, 07:12

Glückwunsch, deine Hartnäckigkeit hat sich mal wieder gelohnt. :D Damit kann man doch was anfangen. :lol:

Was hältst du von der Idee, die Wahrscheinlichkeit des Erscheinens der Raumfliegen in einigen Sektoren zu erhöhen, wenn im Spielerschiff eine Raumfliegenfangeinrichtung vorhanden ist?
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

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

Post by Klaus11 » Fri, 12. May 17, 22:04

Ich habe mal eine Frage zur Datei Animations.pck. :gruebel:

Die Effekte bestehen aus mehreren Zeilen. Am Ende der Eintragung steht eine laufende Nummer. Am Anfang der Datei steht die Anzahl der Eintragungen.
Mit welcher Datei steht die laufende Nummer in Verbindung?

Wenn ich aus X3 TC eine Eintragung nach X3 AP kopiere, entsteht der gewünschte Effekt nur, wenn ich die laufende Nummer beibehalte. So wird aber ein anderer Effekt überschrieben. :headbang:
Wie kann man die Eintragungen mit einer neuen Nummer hinten anhängen und den gewünschten Effekt erzielen?

Ich hoffe, ich habe mich verständlich ausgedrückt. Wenn jemand von euch Erfahrungen mit diesem Thema hat und meine Frage nicht versteht, dem kann ich das Problem auch mit einem Video verdeutlichen.

Edit:
Anders gefragt: Wie weise ich einem Jet einen Animationseffekt aus der Datei Animations.pck zu?

Bitte, Bitte, ich brauche Hilfe, denn ich habe zu diesem Problem noch keinen blassen Schimmer. Wenn mir einer ein passendes Tutorial empfehlen kann?

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

DerW88
Posts: 1019
Joined: Fri, 28. Mar 14, 20:37
x4

Post by DerW88 » Fri, 26. May 17, 15:59

Hi ich habe da mal eine Frage zum Schiffe einfügen, genauer gesagt gehts um Probleme mit den Turrents.

Ich habe mich mal etwas in das konvertieren von Schiffen aus Mods und das einfügen dieser beschäftigt.

Mittlerweile habe ich es soweit hinbekommen, das das Schiff im Spiel vorhanden ist (über Cheat meü bzw. Cheatscript).
Das Schiff ist vollkommen funktionstüchtig. Das Model wird angezeigt ect. Selbst mein CODEA Leutnant hatte Spaß damit :D

Mein Problem ist, das die Türme nicht schießen (auch nicht, wenn ich selbst im Turret sitze)

Als Modanleitungen habe ich https://forum.egosoft.com/viewtopic.php?t=237869 und http://www.xdatabase.de/downloads/de/x3 ... torial.pdf
benutzt.

Als Programme habe ich den X3Editor2 und XModels3DViewer benutzt.

Meine Vorgehensweise war mit dem 3DViewer das entsprechende Schiff zu untersuchen, was alles benötigt wird.
Die entsprechenden Datein mit Dateipfad in einen neuen Ordner (MOD) entpacken.

Als nächstes die Cat 05-08 von meinem addon Ordner in einen neuen Ordner (CAT) entpacken. (Dabei alles überschreiben)

Dann die Dateien vom neuen "MOD" Ordner in den neuen "CAT" ordner kopieren (Alles überschreiben).

Den "CAT" Ordner mit X3Editor2 zu einer .cat packen und als Mod ins TC/addon/mods Verzeichnis verschieben.

Noch kurz den TShips Eintrag des Schiffes kopiert und in die TShips des neuen Mods eingefügt (paste to end).

Jetzt weis ich mit den Türmen nicht weiter. Woher weis ich, welchen Tcomponents und Tdummies Eintrag die Türme des Schiffes verwenden?
Wenn ich die beiden Dateien mit in den Mod packe startet das Spiel nicht mehr. (Weil dann ja die Tcomp. und Tdummies der eigentlichen Mod fehlen)
Oder kann ich auch einfach andere Türme (z.B. von ner Nova) im Editor zuweisen?


Ich hoffe ihr versteht, was ich meine und könnt mir helfen :D

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

Post by Klaus11 » Sat, 17. Jun 17, 11:08

Ich wollte ein Schiff mit animierten „Bigturret‘s“ ausrüsten. Die Turret‘s oberhalb des Schiffes funktionieren auch alle korrekt. Wenn ich ein Turret unterhalb des Schiffes anbringe und es nach hinten ausrichte, ist dies, so wie es sein soll, auf dem „Kopf“. Aber richte ich es seitlich aus (rechtwinklig in Fahrtrichtung), dann hängt das Turret seltsam verquer unter dem Zerstörer.:gruebel: Alle Turret schießen.

Was könnte ich da falsch gemacht haben? Ist diese Anordnung unterhalb des Schiffes in seitliche Richtung überhaupt vorgesehen?
[ external image ] Dif-tor heh smusma (Lebet lang und in Frieden – vulkanischer Gruß), Cockpitsammlung, Spieler HQ aktivieren, XENON-DAE

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

Post by Klaus11 » Wed, 21. Jun 17, 22:02

Schade, dass hier wohl keine Modder mehr reinschauen. :cry:
Es hat ein paar Tage gedauert, aber ich habe alle Probleme lösen können. :lol:
[ 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 » Mon, 26. Jun 17, 11:48

Ich habe schon umfangreich gegoogelt, aber leider nichts eindeutiges gefunden:

Wie lange dauert es, bis Änderungen in der jobs.txt in einem laufenden savegame aktiv werden?

Werden Änderungen an der jobs.txt überhaupt bei Savegames berücksichtgt, oder muss man zwingend ein neues Spiel starten?

Post Reply

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