eigene Extension, Suche Hilfe, Lösung des Kartell und Uguras Problem

Hier ist der ideale Ort um über Scripts und Mods für X Rebirth zu diskutieren.

Moderators: Moderators for English X Forum, Scripting / Modding Moderators

Post Reply
Wolfsseele86
Posts: 3
Joined: Sun, 20. Mar 16, 17:54

eigene Extension, Suche Hilfe, Lösung des Kartell und Uguras Problem

Post by Wolfsseele86 » Mon, 21. Mar 16, 20:32

Hallo zusammen,
ich bitte an dieser Stelle dringend um Hilfestellung bei der Erstellung einer Extension bzw. eines Scriptes. Habe nirgends eine einfache Lösung im Netz gefunden. Habe versucht das Problem selbst zu lösen und hab die Extension mit Hilfestellung einiger Forenbeiträge selbst erstellt. Hat leider nicht funktioniert.

Hoffe ihr könnt mir helfen und sagen was ich falsch mache oder wo ich Lösungen finde!?

Zur Problematik im Spiel:(zur Sicherheit im Spoiler)
Spoiler
Show
Meine Frachter werden in den Teladisektoren des DLC von den Piratenschiffen des Kartells und der Uguras auch mit positivem Ruf massiv abgeschossen. Das macht einen Handel in diesen Sektoren unmöglich. Weiternoch, selbst wenn ich dort keinen Handel betreibe versuchen die meisten Frachter durch die Teladi Sektoren durch zu Fliegen um andere Systeme zu erreichen. Das endet meist ebenfalls tödlich. Eine Funktion um Sektoren für Schiffe zu sperren gibt es meines Wissens nach nicht.
Google und das Forum gaben etwas Aufschluss:

Verantwortlich ist wohl ein AI move Script namens "move.plunder.xml" und/oder "move.plunder.object.xml" welche die Beziehung zur Fraktion ignorieren.
Das hat zur Folge, dass auch mit einem verbündeten standing wie in meinem Fall von +10, die beiden Fraktionen weiterhin Frachter angreifen.

Abhilfe soll eine Extension mit einer diff Datei sein, die die entsprechende Datei so verändert, dass bei positivem Ruf zu den Fraktionen die Angriffe stoppen.

Das selbe Problem und Hinweise auf die Lösung fand ich hier:
http://forum.egosoft.com/viewtopic.php?p=4478834
http://forum.egosoft.com/viewtopic.php? ... 47#4477347
http://forum.egosoft.com/viewtopic.php?p=4500518

Und weitere Hilfe hier:
http://forum.egosoft.com/viewtopic.php? ... 33#4422033


Felgeschlagene Lösung:

Softwaredaten: Spielversion 4.00, deutsch, DLC Teladi Outpost sowie DLC Home of Light
Aktive Extensions: egosoft_orange_cursor, ise comfortable edition, litauen_stationannouncements
weiter sind keine Spieldatein verändert.


Eine Extension mit dem Ordner namens "RespectRelation" mit folgendem Inhalt:
(\Steam\Steamapps\common\X Rebirth\extensions\RespectRelation)
Ich habe nach den Beschreibungen 2 verschiedene Lösungsansätze probiert:

Variante A:
"content.xml" mit dem Inhalt:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<content id="RespectRelation" name="RespectRelation" description="RespectRelation" author="YOU" date="" version="100" save="false" enabled="true">
  <text language="49" name="RespectRelation" description="RespectRelation" author="DU" />
</content>
Quelle: http://forum.egosoft.com/viewtopic.php? ... 33#4422033

Ordner "aiscripts"
dieser enthält: "move.plunder.xml" mit dem Inhalt:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?> 
<diff> 
  <replace sel="/aiscript/params/param[@name='checkrelation']/@default">true</replace> 
</diff> 
Quelle: http://forum.egosoft.com/viewtopic.php? ... 47#4477347 und http://forum.egosoft.com/viewtopic.php?p=4478834


Variante B:
"content.xml" mit dem Inhalt:

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<content id="RespectRelation" name="RespectRelation" description="RespectRelation" author="YOU" date="" version="100" save="false" enabled="true">
  <text language="49" name="RespectRelation" description="RespectRelation" author="DU" />
</content>
Quelle:http://forum.egosoft.com/viewtopic.php? ... 33#4422033

Ordner "aiscripts"
dieser enthält: "move.plunder.xml" mit dem Inhalt:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<diff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <replace sel="/aiscript/params/param[@name='checkrelation']/@default">true</replace>
</diff>
Quelle: http://forum.egosoft.com/viewtopic.php?p=4500518

Sowie eine "move.plunder.object.xml" mit dem Inhalt:

Code: Select all

<?xml version="1.0" encoding="UTF-8"?>
<diff xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <replace sel="/aiscript/params/param[@name='checkrelation']/@default">true</replace>
</diff>
Quelle: http://forum.egosoft.com/viewtopic.php?p=4500518

Fazit und Fragen:
Beide Varianten verändern die Situation in meinem Spielstand nicht. Was mache ich falsch?
Wie kann ich das problem lösen?
Muss ich einen neuen Spielstand beginnen damit das script wirkt?
Aus dem Sektor raus und wieder rein fliegen verändert nichts.
Bleibt nur den Teladi DLC abzuschlaten?

Ich hoffe ihr könnt helfen!
Grüße

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

Post by UniTrader » Mon, 21. Mar 16, 20:48

ich hab jetzt nicht den inhalt der originalscripte geprüft, aber wenn diese bereits laufen kann es sein dass dieser Wert bereits gesetzt ist und nicht mehr geändert wird. du müsstest abwarten, bis diese Schiffe zerstört werden und respawnen (dann wird das Script mit den neuen Werten gestartet)
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 ;)

Wolfsseele86
Posts: 3
Joined: Sun, 20. Mar 16, 17:54

Post by Wolfsseele86 » Mon, 21. Mar 16, 21:07

hui, schnelle Antwort und guter Hinweis, vielen Dank!

Würde Abschalten des Teladi DLC, speichern und Anschalten des Teladi DLC als Überprüfung funktionieren? (vorausgesetzt alle Schiffe und Spieler sind ausserhalb des Systems)

Nehmen wir an die Codes sind korrekt. Ist denn die Logik der Ordner und Dateipfade korrekt? Habe die xml Datein mit dem standard editor erstellt. die Dateiendungen sind korrekt.

Verstehe ich die "content.xml" die ich vom Inhalt verändert hab so richtig, dass sie nur für die Extension info Anzeige in Game zuständig ist? oder muss diese evtl noch auf die weiteren Diff xml Datein verweisen?

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

Post by UniTrader » Mon, 21. Mar 16, 21:13

der DLC lässt sich nicht aus einem Savegame entfernen. ich denke der versuch führt zu nem Crash..

Dateipfade und inhalte sind richtig (gerade mit den Spieldaten abgeglichen) - sollte also demnächst wirkung zeigen..

und ja, die content.xml ist nur für die Anzeige im Menü zuständig (und für andere allgemeine sachen, wie abhängigkeit von anderen mods, oder ob die Mod nach verwendung ür immer im save benötigt wird oder entfernt werden kann)
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
Marvin Martian
Posts: 3547
Joined: Sun, 8. Apr 12, 09:40
x4

Post by Marvin Martian » Tue, 22. Mar 16, 07:52

man könnte in move.plunder auch einfach

Code: Select all

<replace sel="//run_script[@name="'move.plunder.object'"]/param[@name='checkrelation']/@value">true</replace>
verwenden, womit das auch zur Laufzeit immer gesetzt wird und man wohl eh kein Fan von false ist sollte das kein Problem sein

Phipsz
Posts: 335
Joined: Mon, 23. Apr 12, 23:56
x4

Post by Phipsz » Tue, 22. Mar 16, 20:06

ich habe für mich derzeit folgende diff in aiscripts/move.plunder:

Code: Select all

<diff>
  <add sel="//count_gravidar_contacts[@result='$capitalfreighters']">
    <match_relation relation="member" comparison="lt" object="this.ship" />
  </add>
  <add sel="//count_gravidar_contacts[@result='$smallfreighters']">
    <match_relation relation="member" comparison="lt" object="this.ship" />
  </add>
</diff>
das sorgt dafür, dass zwar immernoch neutrale Schiffe angegriffen werden, Verbündete (20 aufwärts) jedoch nicht mehr.

wollte dies demnächst als Teil eines neuen mods auf nexus veröffentlichen, hätte aber mit Nutzung in anderen mods keine Probleme ;)

Wolfsseele86
Posts: 3
Joined: Sun, 20. Mar 16, 17:54

Post by Wolfsseele86 » Wed, 23. Mar 16, 21:40

Marvin Martian wrote:man könnte in move.plunder auch einfach

Code: Select all

<replace sel="//run_script[@name="'move.plunder.object'"]/param[@name='checkrelation']/@value">true</replace>
verwenden, womit das auch zur Laufzeit immer gesetzt wird und man wohl eh kein Fan von false ist sollte das kein Problem sein
Bedeutet das, dass die schon im bestehenden Schiffe im Spiel auch schon den ruf zur Fraktion beachten?
- Habs grad ohne weitere xml getestet. Bei mir funktioniert es so nicht. In wiefern verändert dieser code das Spiel anders als die diff Datein s.o.?

Muss die diff für die "move.plunder.object.xml" s.o. trotzdem noch dazu?

@Phipsz
das sorgt dafür, dass zwar immernoch neutrale Schiffe angegriffen werden, Verbündete (20 aufwärts) jedoch nicht mehr.
gilt dass immer erst ab +20? bei mir steht immer schon bei +10 "verbündet"

P.S.: Danke für eure Antworten!
Grüße

Phipsz
Posts: 335
Joined: Mon, 23. Apr 12, 23:56
x4

Post by Phipsz » Thu, 24. Mar 16, 19:39

das sollte erst ab 20 gelten, die <match relation />-Tags fragen den status "member" ab, der intern als >= 20 markiert ist (siehe libraries/factions.xml). wenn schon ab Ansehen +10 keine Angriffe mehr erfolgen sollen müsste "member" entsprechend durch "friend" ersetzt werden, halte ich aber persönlich für zu niedrig.

User avatar
eMYNOCK
Moderator (DevNet)
Moderator (DevNet)
Posts: 2060
Joined: Thu, 21. Aug 03, 10:37
x4

Post by eMYNOCK » Wed, 18. May 16, 10:44

Ich Persönlich habe die Urugas und Kartell Marauder einfach in den Jobs Reduziert... bzw. die von Urugas gänzlich ausgeschaltet...

Mit denen kann man ja immerhin an ihrer Raumkraut / Raumsprit Station Handeln.

Reduced_TO_Marauders.zip

Wird einfach in den Teladi Outpost Ordner Entpackt und es Spawnen keine Marauder mehr nach bis das Limit unterschritten ist.

STB2199
Posts: 184
Joined: Fri, 15. Aug 14, 08:38
x4

Post by STB2199 » Wed, 6. Jul 16, 08:20

ich weis nicht, wieviel Cr. du zur Verfügung hast, es könnte dir aber helfen zu wissen das die Lyramekron von Jonferson gebaut. das Schiff ist was du brauchst, um die Piraten dir von hals zu halten.

STB2199
Posts: 184
Joined: Fri, 15. Aug 14, 08:38
x4

Ich denke es ist so gewollt

Post by STB2199 » Thu, 11. Aug 16, 15:22

Es sind halt Piraten im Schafspelz, die auf Ahnungslose Schiffe warten. Es werden ja auch nur Frachter angegriffen, nur die Schiffe wo es was zu hohlen gibt. Eine Erbeutete Titurel ist auch gut Bewaffnet. Bei Zeiten guck ich mir das an. Vielleicht Schreibe ich eine Kleine Mod dazu.

Post Reply

Return to “X Rebirth - Scripts und Modding”