[MOD] Albion Tradestation Version:2.10beta (update 18.07.15)
Moderators: Moderators for English X Forum, Scripting / Modding Moderators
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
-
- Posts: 16763
- Joined: Mon, 21. Aug 06, 13:17
Hab ich schon wieder entfernt und die Speicherstände vom Vortag genommenFindolCaleb wrote:@arragon0815
Also bisher ist bei mir kein Fehler aufgetreten, weshalb es wirklich merkwürdig ist mit diesem BUG. Ich bin im Moment aber eher auf dem Triscter, dass es besser ist die MOD zu deaktivieren und abuwarten bis ich das Problem mit der Produktion gelöst habe. Ich hoffe das ich sie wieder entfernen kann, sollte es mit dem aiscripten klappen.
...seit dem ist der Baubug nicht mehr aufgetreten...
EDIT :
Aber eure Idee endlich eine funktionierende Handelsstation ins Spiel zu bringen ist super, lasst euch Zeit und macht das ordentlich
AMD Ryzen 9™ 7900X3D // PNY GeForce RTX™ 4070 12GB Verto // Kingston FURY DIMM 32 GB DDR5-5200 Kit // GIGABYTE B650E AORUS MASTER // Enermax ETS-T50 AXE Silent Edition // SAMSUNG 980 PRO 1 TB SSD + Seagate ST2000DM008 2 TB // Thermaltake Toughpower GF3 1000W // Microsoft Windows 11 OEM // 65" Sony 4K Gaming TV, 120 Hz.
X4 rennt wie Sau in 4K
X4 rennt wie Sau in 4K
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
@FindolCaleb
im Savegame könnte man die Preise auch analog zu den regulären Stationen per
vor <reference> von hand definieren, andernfalls wird in voller Preisspanne eingekauft und abverkauft
da das trade.station.tradingstation nur für NPC Stationen gedacht ist müsste man vielleicht nur das Menü für die Preisanpassung auf die Parameter erweitern, nur finde ich bis jetzt das entsprechende md/*.xml? nicht!
Vielleicht hat Unitrader hier einen Rat für uns wo man diese Funktion finden kann?
Womöglich lässt sich so sogar eine Option schaffen Waren hinzuzufügen und zu entfernen
im Savegame könnte man die Preise auch analog zu den regulären Stationen per
Code: Select all
<override>
<ware ware="narcotics" buy="79" sell="90"/>
</override>
da das trade.station.tradingstation nur für NPC Stationen gedacht ist müsste man vielleicht nur das Menü für die Preisanpassung auf die Parameter erweitern, nur finde ich bis jetzt das entsprechende md/*.xml? nicht!
Vielleicht hat Unitrader hier einen Rat für uns wo man diese Funktion finden kann?
Womöglich lässt sich so sogar eine Option schaffen Waren hinzuzufügen und zu entfernen
-
- Posts: 49
- Joined: Sun, 20. Apr 08, 09:47
Servus,
wird an der Mad noch gearbeitet oder nicht?
Da scheint es (zumindestens einer erbittet da Hilfe) Probleme mit dem Drohnentransfer zu geben.
Ich will mir die Mod nämlich auch holen. Zu Anfang zwar wohl nur als Lagerstääte für gefundene Waren (manche Frachter verlieren ja ziiemlich oft und viel ihrer Ladung ).
Später soll aber die Station dann schon eigenständig agieren. Wäre dann aber blöd wenn nur wegen ein paar Drohnen nicht klappt.
wird an der Mad noch gearbeitet oder nicht?
Da scheint es (zumindestens einer erbittet da Hilfe) Probleme mit dem Drohnentransfer zu geben.
Ich will mir die Mod nämlich auch holen. Zu Anfang zwar wohl nur als Lagerstääte für gefundene Waren (manche Frachter verlieren ja ziiemlich oft und viel ihrer Ladung ).
Später soll aber die Station dann schon eigenständig agieren. Wäre dann aber blöd wenn nur wegen ein paar Drohnen nicht klappt.
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34
Hey Hey.
nach sehr langer Abstinenz melde ich mich auch mal wieder zu Wort.
@Simson
Leider hatte ich das letzte halbe Jahr null Motivation und Zeit (2 Jobs + Uni) um den Mod weiter zu entwickeln.
Aber wenn ich vll in 1-2 Monaten wieder mehr Lust und Zeit habe, dann geht es sicher weiter.
Derzeit funktioniert der ganze Mod meines wissens nur eingeschränkt wie im diesem Thread schon öfters beschrieben. Das Problem mit den Drohnen kann ich mir erstmal nicht erklären, da ich nichts dergleichen verändert habe.
@Marvin
Ja ich habe auch schon nach einem md gesucht in dem die Kontrolle über die Preise und die "welche Waren sollen gehandelt werden" hat. Leider habe ich nichts gefunden. Irgentwie muss das ganze mit der Produktion zusammenhängen, aber wie und wie man das erweitern kann hab ich nohc nicht rausgefunden.
Ausweichlösung ist derzeit ja noch eine Produktion der Ware "unknown" zu machen, die allle Resourcen benötigt inkl. unknown und eben anders herum eine Produktion die "unknown" verbraucht aber alles produziert. soe hat man da volle Kontrolle.
Ob das klappt kann ich leider noch nicht sagen. Wie gesagt Gedanken mache ich mir schon, aber Zeit habe ich keine.
nach sehr langer Abstinenz melde ich mich auch mal wieder zu Wort.
@Simson
Leider hatte ich das letzte halbe Jahr null Motivation und Zeit (2 Jobs + Uni) um den Mod weiter zu entwickeln.
Aber wenn ich vll in 1-2 Monaten wieder mehr Lust und Zeit habe, dann geht es sicher weiter.
Derzeit funktioniert der ganze Mod meines wissens nur eingeschränkt wie im diesem Thread schon öfters beschrieben. Das Problem mit den Drohnen kann ich mir erstmal nicht erklären, da ich nichts dergleichen verändert habe.
@Marvin
Ja ich habe auch schon nach einem md gesucht in dem die Kontrolle über die Preise und die "welche Waren sollen gehandelt werden" hat. Leider habe ich nichts gefunden. Irgentwie muss das ganze mit der Produktion zusammenhängen, aber wie und wie man das erweitern kann hab ich nohc nicht rausgefunden.
Ausweichlösung ist derzeit ja noch eine Produktion der Ware "unknown" zu machen, die allle Resourcen benötigt inkl. unknown und eben anders herum eine Produktion die "unknown" verbraucht aber alles produziert. soe hat man da volle Kontrolle.
Ob das klappt kann ich leider noch nicht sagen. Wie gesagt Gedanken mache ich mir schon, aber Zeit habe ich keine.
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34
Aktuelle Version 2.1 ist nun oben.
- Hinzugekommen sind, ein verbessertes Handelsscript für die Station
- im Handelsbeschräkungsmenü sind nun auch die Handelswaren enthalten
- im reiskalkulationsmenü sind nun auch die Handelswaren enthalten.
Das war ein großer Schritt vorwärts, ich hoffe es gefällt.
- Hinzugekommen sind, ein verbessertes Handelsscript für die Station
- im Handelsbeschräkungsmenü sind nun auch die Handelswaren enthalten
- im reiskalkulationsmenü sind nun auch die Handelswaren enthalten.
Das war ein großer Schritt vorwärts, ich hoffe es gefällt.
-
- Posts: 87
- Joined: Tue, 24. Jan 06, 17:36
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34
Eigentlich sollte der Mod auf dem Workshop sein, aber ich werde ihn gerne nochmal hochladen.
Der Mod ist leider noch nicht zu 100% ausgearbeitet. Also der Bau funktioniert und man kann auch waren einlagern. Zusätzlich ist es möglich, dass die Beschränkungen zum Handel einzustellen, sowie Preise festzulegen. Der Manager kauft auch und verkauft Waren. Leider funktioniert das mining nicht und beim Handel weiß ich nicht wie gut das ganze läuft. Derzeit teste ich den Mod noch.
Derzeit plane ich auch eine bessere und umfangreiche umfangreichre Version der Station
Der Mod ist leider noch nicht zu 100% ausgearbeitet. Also der Bau funktioniert und man kann auch waren einlagern. Zusätzlich ist es möglich, dass die Beschränkungen zum Handel einzustellen, sowie Preise festzulegen. Der Manager kauft auch und verkauft Waren. Leider funktioniert das mining nicht und beim Handel weiß ich nicht wie gut das ganze läuft. Derzeit teste ich den Mod noch.
Derzeit plane ich auch eine bessere und umfangreiche umfangreichre Version der Station
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
das Script von Unitrader hat sich als recht gute Managersoftware für das Tradewarehandling erwiesen
http://forum.egosoft.com/viewtopic.php?t=381720
http://forum.egosoft.com/viewtopic.php?t=381720
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34
-
- Moderator (Script&Mod)
- Posts: 14571
- Joined: Sun, 20. Nov 05, 22:45
grundlegend hätte ich nichts dagegen, das ganze ist aber selber ein grösseres Projekt, die Stationsversorgung wird im endeffekt nur ein (kleiner) teil davon sein (momentan der einzige, aber ich plane in absehbarer zeit den Fokus auf Kampfschiffe für ne Station zu erweitern) - in anbetracht dessen ist ne integration nicht wirklich sinnvoll, insbesondere da es zu inkompatibilitäten führen kann wenn mehrere Versionen desselben Scriptes durch verschiedene Mods angeboten werden..
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
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
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
so lange du das mit dem Workshop nicht irgendwann mal behabst kommt eh keiner dran
Fehler
Entschuldigung!
Bei der Verarbeitung Ihrer Anfrage ist ein Fehler aufgetreten:
Das Objekt ist entweder als versteckt markiert oder Sie haben keine Berechtigung zum Ansehen dieses Objekts.
Hier ist ein Link zur Startseite der Steam Community.
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
alternativ zu dem Trademanager von UT hab ich nun den Vanillamanager auf die Tradeware-Schulung geschickt
aiscripts/trade.findtraderun
aiscripts/mining.ship.station
md/AssignToCommander
außerdem bastel ich gerade daran die Handelsschiffe der Tradestation wenn sich kein regulärer Trade findet, auf andere Handelsstationen der Fraktion (unabhängig der Range) zu stürzen
das sollte dann die galaxieweite Verfügbarkeit von Waren ermöglichen ohne gleich wieder mit den Galaxytradern hantieren zu müssen
an und für sich funktioniert das auch, aktuell wird nur keine Rücksicht auf die Entfernung genommen, was mich wenig stört da meine Schiffe eh direkt in die Zielzone springen, aber mit wachsender Zahl Sektoren und ohne diese "Befreiung" von der Reisegängelung ist das wohl eher fatal wenn der wegen ein paar Erzen quer durch die Galaxie tingelt
aiscripts/trade.findtraderun
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<diff>
<add sel="//do_all[@exact='$ammowares.count']" pos="after">
<do_if value="not $resources.count and not $products.count and $homebase.tradewares.list">
<set_value name="$tradewares" exact="$homebase.tradewares.list" />
<do_all exact="$tradewares.count" counter="$i">
<set_value name="$ware" exact="$tradewares.{$i}" />
<do_if value="this.ship.cargo.{$ware}.max gt 0">
<do_if value="$warelist.indexof.{$ware}" exact="0">
<append_to_list name="$warelist" exact="$ware" />
</do_if>
</do_if>
</do_all>
<remove_value name="$tradewares"/>
</do_if>
</add>
</diff>
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<diff>
<add sel="//set_value[@name='$resources']" pos="after">
<do_if value="$resources.count" exact="0">
<set_value name="$resources" exact="this.ship.commander.tradewares.list"/>
</do_if>
</add>
</diff>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<diff>
<add sel="//do_all[@exact='$ammowares.count']" pos="after">
<do_if value="not $resources.count and not $products.count and $Object.tradewares.list">
<set_value name="$tradewares" exact="$Object.tradewares.list" />
<do_all exact="$tradewares.count" counter="$i">
<set_value name="$ware" exact="$tradewares.{$i}" />
<do_if value="$subordinate.cargo.{$ware}.max gt 0">
<do_if value="$warelist.indexof.{$ware}" exact="0">
<append_to_list name="$warelist" exact="$ware" />
</do_if>
</do_if>
</do_all>
<remove_value name="$tradewares"/>
</do_if>
</add>
</diff>
das sollte dann die galaxieweite Verfügbarkeit von Waren ermöglichen ohne gleich wieder mit den Galaxytradern hantieren zu müssen
an und für sich funktioniert das auch, aktuell wird nur keine Rücksicht auf die Entfernung genommen, was mich wenig stört da meine Schiffe eh direkt in die Zielzone springen, aber mit wachsender Zahl Sektoren und ohne diese "Befreiung" von der Reisegängelung ist das wohl eher fatal wenn der wegen ein paar Erzen quer durch die Galaxie tingelt
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
nope, ich hatte ja irgendwann eine eigene Station ohne Produktion gebastelt die im Gegensatz zu deiner nur Universallagerraum hat
nach diversen Schritten incl. Sekundärware und 1:1 Produktion bin ich aber letztlich auch wieder zu den Handelswaren umgeschwenkt
habe hier aber keinerlei Änderungen mehr an trade.station(.tradestations) vorgenommen
die Handelsware(n) füge ich individuell über ein MD hinzu
inzwischen kann man auch die Sprungtordistanz konfigurieren (für die Versorger, welche die Handelsstationen so Clusterübergreifend verbinden)
ich bin noch am überlegen ob ich das einfach so Posten soll oder eine eigenständige Mod daraus machen (hängt etwas von Egosoft ab, ob die das Warehouse nun auch für User baubar machen)
---
ach ja Miner minen, Handelsschiffe handeln und Pirates gonna hate hate hate
---
wobei die AssignToCommander vielleicht garnicht nötig ist, da die Warenlisten IMO eh immer on the fly neu erstellt werden
nach diversen Schritten incl. Sekundärware und 1:1 Produktion bin ich aber letztlich auch wieder zu den Handelswaren umgeschwenkt
habe hier aber keinerlei Änderungen mehr an trade.station(.tradestations) vorgenommen
die Handelsware(n) füge ich individuell über ein MD hinzu
inzwischen kann man auch die Sprungtordistanz konfigurieren (für die Versorger, welche die Handelsstationen so Clusterübergreifend verbinden)
ich bin noch am überlegen ob ich das einfach so Posten soll oder eine eigenständige Mod daraus machen (hängt etwas von Egosoft ab, ob die das Warehouse nun auch für User baubar machen)
---
ach ja Miner minen, Handelsschiffe handeln und Pirates gonna hate hate hate
---
wobei die AssignToCommander vielleicht garnicht nötig ist, da die Warenlisten IMO eh immer on the fly neu erstellt werden
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34
-
- Posts: 3548
- Joined: Sun, 8. Apr 12, 09:40
sicherlich kannst du, sonst hätte ichs ja nicht gepostet
hier noch ergänzend eine md/Tradenetwork.xml in der ersten cue musst du die macros deiner Station noch eintragen, ist so mit einer global. aber einfacher durch Mods weitere Handelsstationen hinzuzufügen als die Dinger fest im Code zu verdrahten und dann in den AI-Scripts irgendwelche append_to_list auf verdacht hinein zu patchen
alternativ zu dieser Conversation kannst du auch eine Option fürs UI schreiben wenn du magst , ist eh nur noch die Funktion die Reichweite des Netzwerks zu begrenzen
die aiscripts/findtraderun.xml sähe dann so aus
ich hab mich da durch Unitraders Ranges inspirieren lassen, nur ohne die Notwendigkeit etwas konfigurieren zu müssen
####
die fixen Warenlager haben eben den Nachteil, dass die Station auf ein festes Szenario gedrillt ist - eine Ware die durch einen Mod eingefügt wird. ist außerdem ungleich schwerer zu implementieren
ich hab die Möglichkeit das als reines Lager, nur Verkauf (Pirates "Arrr"), oder Handelsplatz für individuelle Warenkonstellationen zu nutzen
und im aktuellen Versionsstand nutze ich das eben dazu reine Mining-, Grundversorgung- oder Hightechstationen aufzustellen, oder einfach eine Station die alles dreht - je nachdem was am Standort erforderlich ist
hier noch ergänzend eine md/Tradenetwork.xml in der ersten cue musst du die macros deiner Station noch eintragen, ist so mit einer global. aber einfacher durch Mods weitere Handelsstationen hinzuzufügen als die Dinger fest im Code zu verdrahten und dann in den AI-Scripts irgendwelche append_to_list auf verdacht hinein zu patchen
alternativ zu dieser Conversation kannst du auch eine Option fürs UI schreiben wenn du magst , ist eh nur noch die Funktion die Reichweite des Netzwerks zu begrenzen
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<mdscript name="OlTrade" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="md.xsd">
<cues>
<cue name="OlTrade_init">
<actions>
<do_if value="global.$tradestationnetwork?" negate="true">
<set_value name="global.$tradestationnetwork" exact="[
macro.struct_bt_alb_warehouse_macro
]"/>
</do_if>
</actions>
</cue>
<!-- conversation hook -->
<cue name="OlTrade_base" instantiate="true" >
<conditions>
<check_any>
<event_conversation_started conversation="default" />
<event_conversation_returned_to_section section="default" />
</check_any>
<check_value value="event.object.type" exact="entitytype.manager" />
<check_value value="event.object.owner" exact="faction.player" />
<check_value value="event.object.container.ismacro.{global.$tradestationnetwork}" />
<check_value value="event.object.iscontrolentity" />
</conditions>
<actions>
<add_player_choice_sub text="'Reichweite'" section="mmolt_range" />
</actions>
</cue>
<!-- options submenu -->
<cue name="OlTrade_work_menu" instantiate="true" >
<conditions>
<event_conversation_next_section section="mmolt_range"/>
</conditions>
<actions>
<set_value name="$Station" exact="event.object.container" />
<set_value name="$Station.tradenpc.$trade_zones_next" exact="player.age" chance="if $Station.tradenpc.$trade_zones_next? then 0 else 100" />
<do_if value="event.param2?">
<do_if value="event.param2" exact="'add'">
<set_value name="$Station.tradenpc.$trade_zones_range" exact="0" chance="if $Station.tradenpc.$trade_zones_range? then 0 else 100" />
<set_value name="$Station.tradenpc.$trade_zones_range" operation="add" />
</do_if>
<do_elseif value="event.param2" exact="'sub'">
<set_value name="$Station.tradenpc.$trade_zones_range" exact="0" chance="if $Station.tradenpc.$trade_zones_range? then 0 else 100" />
<set_value name="$Station.tradenpc.$trade_zones_range" operation="subtract" />
<remove_value name="$Station.tradenpc.$trade_zones_range" chance="if $Station.tradenpc.$trade_zones_range lt 0 then 100 else 0"/>
</do_elseif>
<do_elseif value="event.param2" exact="'forceupdate'">
<set_value name="$Station.tradenpc.$trade_zones_next" exact="player.age" />
</do_elseif>
</do_if>
<set_value name="$range" exact="$Station.tradenpc.$trade_zones_range" chance="if $Station.tradenpc.$trade_zones_range? then 100 else 0" />
<set_value name="$range" exact="'unbegrenzt'" chance="if not $Station.tradenpc.$trade_zones_range? then 100 else 0" />
<add_player_choice text="'mehr'" section="mmolt_range" choiceparam="'add'" />
<add_player_choice text="'Handel über [%1] Sprungtore'.[$range]" section="mmolt_range" choiceparam="'forceupdate'" immediate="player.age lt $Station.tradenpc.$trade_zones_next and event.param2?"/>
<add_player_choice text="'weniger'" section="mmolt_range" choiceparam="'sub'" />
<add_player_choice_return text="{1002,20}" position="bottom_right" comment="Back"/>
<remove_value name="$range"/>
<remove_value name="$Station"/>
</actions>
</cue>
</cues>
</mdscript>
Code: Select all
<?xml version="1.0" encoding="utf-8"?>
<diff>
<add sel="//do_all[@exact='$ammowares.count']" pos="after">
<do_if value="not $resources.count and not $products.count and $homebase.tradewares.list">
<set_value name="$tradewares" exact="$homebase.tradewares.list" />
<do_all exact="$tradewares.count" counter="$i">
<set_value name="$ware" exact="$tradewares.{$i}" />
<do_if value="this.ship.cargo.{$ware}.max gt 0">
<do_if value="$warelist.indexof.{$ware}" exact="0">
<append_to_list name="$warelist" exact="$ware" />
</do_if>
</do_if>
</do_all>
<remove_value name="$tradewares"/>
</do_if>
</add>
<add sel="//do_if[@value='$buyoffers.count gt 0']" pos="prepend">
<do_if value="true">
<create_list name="$trade_zones"/>
<!-- share all wares from the own Tradestation-Network -->
<do_if value="this.ship.isclass.[class.ship_l, class.ship_xl] and this.ship.commander? and this.ship.commander.macro.ismacro.{global.$tradestationnetwork}">
<do_if value="this.ship.commander.tradenpc.$trade_zones? and player.age lt this.ship.commander.tradenpc.$trade_zones_next">
<!-- use cache -->
<set_value name="$trade_zones" exact="this.ship.commander.tradenpc.$trade_zones" />
</do_if>
<do_else>
<create_group groupname="$Trade_stations" />
<create_list name="$trade_zones_unsorted"/>
<!-- find stations and get zones -->
<do_all exact="global.$tradestationnetwork.count" counter="$m" reverse="true">
<find_station name="$tempstation" macro="global.$tradestationnetwork.{$m}" space="player.galaxy" owner="this.ship.commander.owner" multiple="true" />
<do_if value="$tempstation">
<add_to_group groupname="$Trade_stations" list="$tempstation" />
</do_if>
<remove_value name="$tempstation"/>
</do_all>
<do_all exact="$Trade_stations.count" counter="$z">
<do_if value="$trade_zones_unsorted.indexof.{$Trade_stations.{$z}.zone}" negate="true">
<append_to_list name="$trade_zones_unsorted" exact="$Trade_stations.{$z}.zone" chance="if $Trade_stations.{$z}.zone == this.ship.commander.zone then 0 else 100"/>
</do_if>
</do_all>
<remove_value name="$Trade_stations"/>
<!-- consider gatedistance -->
<do_if value="this.ship.commander.tradenpc.$trade_zones_range? and this.ship.commander.tradenpc.$trade_zones_range != null">
<do_all exact="$trade_zones_unsorted.count" counter="$z" reverse="true">
<do_if value="this.ship.commander.gatedistance.{$trade_zones_unsorted.{$z}} gt this.ship.commander.tradenpc.$trade_zones_range">
<remove_value name="$trade_zones_unsorted.{$z}"/>
</do_if>
</do_all>
</do_if>
<!-- sort gatedistance -->
<set_value name="$run" exact="0" />
<set_value name="$distance_max" exact="0" />
<do_while value="$trade_zones_unsorted.count gt 0">
<do_all exact="$trade_zones_unsorted.count" counter="$z" reverse="true">
<do_if value="$trade_zones_unsorted.{$z}.isclass.zone and $trade_zones_unsorted.{$z}.exists" negate="true">
<remove_value name="$trade_zones_unsorted.{$z}"/>
<continue />
</do_if>
<set_value name="$distance" exact="this.ship.commander.gatedistance.{$trade_zones_unsorted.{$z}}" />
<set_value name="$distance_max" exact="$distance" chance="if $distance_max lt $distance then 100 else 0" />
<do_if value="$distance == $run">
<append_to_list name="$trade_zones" exact="$trade_zones_unsorted.{$z}"/>
<remove_value name="$trade_zones_unsorted.{$z}"/>
</do_if>
</do_all>
<remove_value name="$distance"/>
<set_value name="$run" operation="add"/>
<break chance="if $run gt $distance_max then 100 else 0"/>
</do_while>
<remove_value name="$run"/>
<remove_value name="$distance_max"/>
<remove_value name="$trade_zones_unsorted"/>
<!-- cache zones -->
<do_if value="this.ship.commander.tradenpc?">
<set_value name="this.ship.commander.tradenpc.$trade_zones" exact="$trade_zones" />
<set_value name="this.ship.commander.tradenpc.$trade_zones_next" exact="player.age + 2h" />
</do_if>
</do_else>
</do_if>
</do_if>
</add>
<add sel="//do_all/do_if[@value='$selloffer.exists']" pos="after">
<do_all exact="$trade_zones.count" counter="$ti">
<find_sell_offer tradepartner="this.ship" wares="$buyoffers.{$i}.ware" space="$trade_zones.{$ti}" result="$selloffer">
<relativeprice max="0.999999f" comment="this effectively means the price must be below the average price to be considered" />
<match_seller owner="this.ship.commander.owner" />
</find_sell_offer>
<do_if value="$selloffer.exists">
<set_value name="$buyoffer" exact="$buyoffers.{$i}" />
<resume label="finish" />
</do_if>
<wait min="1s" max="3s"/>
</do_all>
</add>
</diff>
####
die fixen Warenlager haben eben den Nachteil, dass die Station auf ein festes Szenario gedrillt ist - eine Ware die durch einen Mod eingefügt wird. ist außerdem ungleich schwerer zu implementieren
ich hab die Möglichkeit das als reines Lager, nur Verkauf (Pirates "Arrr"), oder Handelsplatz für individuelle Warenkonstellationen zu nutzen
und im aktuellen Versionsstand nutze ich das eben dazu reine Mining-, Grundversorgung- oder Hightechstationen aufzustellen, oder einfach eine Station die alles dreht - je nachdem was am Standort erforderlich ist
-
- Posts: 205
- Joined: Sun, 14. Sep 08, 15:34