[DISKUSSION] Allgemeine S&M-Fragen

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

Khaakjäger93
Posts: 109
Joined: Thu, 1. May 08, 08:26
x3tc

Post by Khaakjäger93 »

ok danke mal gucken ob ich es gebacken kriege :D
Fantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.

-Albert Einstein-
Oxyd2001
Posts: 34
Joined: Mon, 15. Aug 05, 16:15
x3tc

Post by Oxyd2001 »

Hallo,

um noch mal auf meinen nicht funktionierenden Hangar zurück zu kommen.
Ich habe inzwischen eine Vermutung woran es liegen könnte. Bei einem anderen Schiff der Serie war eine cutdata.txt mit enthalten. Diese scheint - wie ich auch im Forum gesehen habe - für das Docking wichtig zu sein.

Nun wollte ich die zusätzlichen Einträge eintragen, Anzahl der Einträge erhöhen und schauen was passiert. Leider schmiert mir immer das Spiel beim Laden des Spielstandes ab (sitze in einem Schiff was die cutdata.txt nutzen müsste).
Was muss ich tun, um die cutdata.txt funktionsfähig updaten zu können?

Die orignale hab ich aus der 03.cat des Hauptverzeichnisses.

Danke schon mal.


Grüße
Oxyd2001
User avatar
laux
Posts: 2609
Joined: Sun, 7. Mar 04, 11:39
x3tc

Post by laux »

Ich denke mal, du solltest am besten nicht in dem Schiff sitzen, oder besser noch, das Schiff sollte gar nicht erst im Sektor sein.
Mir ist ähnliches passiert, als ich einigen Stationen interne Hangars verpasst habe. Wenn du dann im selben Sektor beim ersten mal laden der Mod bist, schmiert das Spiel ab.
Oxyd2001
Posts: 34
Joined: Mon, 15. Aug 05, 16:15
x3tc

Post by Oxyd2001 »

laux wrote:Ich denke mal, du solltest am besten nicht in dem Schiff sitzen, oder besser noch, das Schiff sollte gar nicht erst im Sektor sein.
Mir ist ähnliches passiert, als ich einigen Stationen interne Hangars verpasst habe. Wenn du dann im selben Sektor beim ersten mal laden der Mod bist, schmiert das Spiel ab.
Hi,

danke. Daran hats gelegen.

Ein Problem habe ich noch festgestellt. Ich habe die Geschützanzahl (Guns je invisibleweapon) von 1 auf 2 erhöht. So gesehen schießen sie, zumindest wenn nur ein Geschütz insalliert ist (nutze MARS), auch aus der richtigen Richtung. Bei vollem Geschützeinsatz kommt Geschützfeuer z. T. nicht vom Schiff sondern von oben rechts aus dem leeren Raum - der Rest kommt von dort wo es auch sein soll.

Ist zufällig auch eine Lösung und der Hintergrund solch eines Problems bekannt?

Vielen Dank.


Grüße
Oxyd2001

Edit: Habe das Problem gelöst. Lag an der Erhöhung der Gun-Einträge. Mit dem Klonen der Vorhandenen Einträge hat es funktioniert.
Last edited by Oxyd2001 on Fri, 5. Jun 09, 23:20, edited 1 time in total.
User avatar
mindaway
Posts: 173
Joined: Thu, 3. Nov 05, 09:30
x3tc

Sound Files

Post by mindaway »

gibt es eine Möglichkeit alles sound Files aus dem Spiel raus zu hohlen?
zB alles was man über das com hört, so zeug wie
"Du verschwendest meine zeit unwürdiger!"

gibt es da möglichkeiten? tools oder sowas um sie als audio files zu speichern?


Edit: verschoben in Allgemeine S/M-Fragen ~laux
UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader »

ist alles in der MOV/00049.dat drin
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 ;)
alles
Posts: 912
Joined: Sat, 1. Oct 05, 14:42
x4

Post by alles »

Ich habe da ein kleine Problem:

Wenn ich z.B. 20 TS zu meiner HS schicke mit "Docke an", können ja nicht alle andocken. Wenn alle Andockklammern belegt sind, beginnt mein Problem, denn dan spielen die Frachter "Reise nach Jerusalem" , so das jeder immer mal angedockt ist. Wie kann ich das verhindern, wie kann man realisieren, wenn Alle Andockklammern belegt sind, das die gedockten Schiffe angedockt bleiben, bis ich was anderes sage, und die restlichen Schiffe, welche noch nicht docken können, solange in einer Warteschleife fliegen :gruebel:

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

Post by UniTrader »

SIGNAL_REQUESTUNDOCK auf ein return null-Script umleiten KÖNNTE helfen ;)
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
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz »

alles wrote:Wie kann ich das verhindern, wie kann man realisieren, wenn Alle Andockklammern belegt sind, das die gedockten Schiffe angedockt bleiben, bis ich was anderes sage
Ändere ihr navigationsscript.

while not docking allowed and docking possible
wait 100000 ms. (geh.dir'n.kaffee.holen)
end
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
Lucike
Posts: 12969
Joined: Sun, 9. May 04, 21:26
x4

Post by Lucike »

Gazz wrote:
alles wrote:Wie kann ich das verhindern, wie kann man realisieren, wenn Alle Andockklammern belegt sind, das die gedockten Schiffe angedockt bleiben, bis ich was anderes sage
Ändere ihr navigationsscript.

while not docking allowed and docking possible
wait 100000 ms. (geh.dir'n.kaffee.holen)
end
Dann müsste man das original Navigationskript ändern. Sonst lässt irgend so ein Ferientransporter deine Frachter abdocken.

Der Weg von Unitrader ist schon der richtige. Alle meine Händler docken erst dann ab, wenn wirklich kein Dockport mehr frei. Das geht am besten mit dem Signal "REQUESTUNDOCK".

Hier das Originalskript (!ship.signal.requestundock.xml) von Egosoft:

Code: Select all

001   $obj = [DOCKEDAT]
002   if [DOCKEDAT]
003 @ |= [THIS] -> call script '!move.undock' : 
004   |$time =  = random value from 60000 to 180000 - 1
005 @ |= [THIS] -> move around $time ms
006   |if $obj -> exists
007 @ ||= [THIS] -> call script '!move.movetostation' :  station=$obj
008   |end
009   end
010   return null
Hier meine Variante:

Code: Select all

001   * --------------------------------------------------------------------------------
002   $Station = [DOCKEDAT]
003   skip if $Station -> exists
004   |return null
005   skip if not $Station -> has a free ship dock port: ship subtype = [THIS]
006   |return null
007   * --------------------------------------------------------------------------------
008 @ = [THIS] -> call script '!move.undock' : 
009   $MoveAround =  = random value from 60000 to 180000 - 1
010 @ = [THIS] -> move around $MoveAround ms
011   skip if not $Station -> exists
012 @ |= [THIS] -> call script '!move.movetostation' :  station=$Station
013   * --------------------------------------------------------------------------------
014   return null
Image
alles
Posts: 912
Joined: Sat, 1. Oct 05, 14:42
x4

Post by alles »

:roll: danke erst mal, das funzt soweit, habe jetzt aber ein anderes Problem,

wie erstelle/fülle ich ein zweidimensionales Array?

:gruebel: Auslesen geht ohne Probleme, habe aber leider immer nur null null als ausgabe, also wie bekomme ich meine zwei Werte in dieses Array?

cu
alles
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Mehr dimensionale Arrays kann man sich ja wie Tabellen vorstellen.
Dabei hast du einen Hauptarray, in den du weitere Arrays einfügst.
Für einen zweidimensionalen Array könntest du z.B. so vorgehen:

Code: Select all

$array = array alloc: size=0
$counter = 3
while $counter
  dec $counter = 
  $subarray = array alloc: size=2
  append $subarray to array $array
  = wait 1 ms
end
Du hättest jetzt eine Tabelle mit 2 Spalten und 3 Zeilen.
Wie du diese auslesen/füllen kannst, weißt du ja bereits.

MfG,
ScRaT
alles
Posts: 912
Joined: Sat, 1. Oct 05, 14:42
x4

Post by alles »

@ScRaT_GER

danke, das funktioniert bestens.
Lucike wrote:
Der Weg von Unitrader ist schon der richtige. Alle meine Händler docken erst dann ab, wenn wirklich kein Dockport mehr frei. Das geht am besten mit dem Signal "REQUESTUNDOCK".
:roll: da haben wir uns doch falsch verstanden, ich möchte, das niemand abdockt, auch wenn alles voll ist, bis ich was anderes sage. Ist das möglich?

cu
alles
User avatar
Gazz
Posts: 13244
Joined: Fri, 13. Jan 06, 16:39
x4

Post by Gazz »

Du könntest für deine Schiffe ein secondary signal_docked basteln.

Das machst du dann "falsch", so daß sich das script nicht beendet.
Da so ein Signal script noch aktiv ist, ist das Schiff immun gegen andere signals.

Oder du guckst, ob du das signal_requestundock für deine Schiffe aus der Signal map löschen kannst.
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.
UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader »

alles wrote:@ScRaT_GER

danke, das funktioniert bestens.
Lucike wrote:
Der Weg von Unitrader ist schon der richtige. Alle meine Händler docken erst dann ab, wenn wirklich kein Dockport mehr frei. Das geht am besten mit dem Signal "REQUESTUNDOCK".
:roll: da haben wir uns doch falsch verstanden, ich möchte, das niemand abdockt, auch wenn alles voll ist, bis ich was anderes sage. Ist das möglich?

cu
alles
ähm ja, das SIGNAL_REQUESTUNDOCK wird immer gesendet, wenn alles voll ist und Platz gemacht werden soll und darin ist enthalten dass das Schiff, an das das Signal gesendet wird einfach in den aktuellen Sektor Fliegt (also abdockt) - und wenn du dieses Signal auf ein anderes Script umleitest, was [THIS] (wenn überhaupt) nur bedingt abdocken lässt hast du genau deinen gewünschten Effekt erzielt :roll:
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 ;)
alles
Posts: 912
Joined: Sat, 1. Oct 05, 14:42
x4

Post by alles »

:gruebel: Würde es auch damit funzen?

Code: Select all

$ship-> ignore ship command/signal SIGNAL_REQUESTUNDOCK
cu
alles
UniTrader
Moderator (Script&Mod)
Moderator (Script&Mod)
Posts: 14571
Joined: Sun, 20. Nov 05, 22:45
x4

Post by UniTrader »

theorhetisch ja, probier es doch einfach aus ;)
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
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Eine kleine Frage meinerseits:

Wie kann man dem Spiel neue Samples hinzufügen?

Ich habe ein neues Sample erstellt (als .wav gespeichert) und dieses in einen Ordner "s" im X3:TC Hauptverzeichnis kopiert.
Im Spiel wird, wie sollte es anders sein, natürlich nichts abgespielt, wenn ich die entsprechende Nummer wähle.

Weiß jemand ob/wie das geht?

MfG,
ScRaT
alles
Posts: 912
Joined: Sat, 1. Oct 05, 14:42
x4

Post by alles »

Hi,

Hier wurde schon mal was ähnliches erörtert, vielleicht hilft dir das weiter:

Klick

cu
alles
User avatar
ScRaT_GER
Posts: 1962
Joined: Tue, 8. Jan 08, 18:19
x3tc

Post by ScRaT_GER »

Ah, ok. Man muss wohl die Sounds.txt bearbeiten.
Werde es mal ausprobieren.

Danke und mfG,
ScRaT

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