Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Bug?: Fabrikverbindungen trennen bei crossconnect_factories on
#1
Möchte man die Verbindung zwischen Fabriken beenden, geht das über den Karteneditor, indem man mit dem Verbindungstool bei gedrückter Steuerungstaste (Strg) auf die zu trennenden Fabriken klickt.

Das funktioniert auf den ersten Blick sowohl bei crossconnect_factories=1, also an, als auch bei crossconnect_factories=0, also aus.

Allerdings täuscht der Erfolg in Bezug auf das eingeschaltete crossconnect_factories. Solange man die Karte nicht schließt, bleibt die Trennung bestehen. Man kann endlos weiter spielen und dabei die Gütertransporte auf die geänderten Fabrikverbindungen ausrichten. Lädt man aber die Karte neu, sind die gekappten Verbindungen wieder da und man schlägt sich erneut mit den Schwierigkeiten herum, wegen deren man die Trennung vorgenommen hatte.

Das Ärgerliche ist das scheinbare bzw. vorübergehende Funktionieren. Das Trennen der Verbindungen sollte entweder bestehen bleiben, was ich unbedingt bevorzugen würde, oder es sollte bei eingeschaltetem crossconnect_factories gar nicht möglich sein.
Zitieren
#2
So wie ich das sehe:
Bei crossconnect_factories=1 wird nach nicht verbundene Fabriken gesucht und diese verbunden.
Wann das jeweils läuft weiß ich nicht genau, vermute aber immer wenn eine neue Fabrik entsteht und nach den Laden von Saves.

Wenn man jetzt eine Verbindung trennt, dann wird das nicht explizit als Trennung gespeichert.
Es wird nur getrennt, aber nicht gespeichert dass der Spieler hier was getrennt hat.

Was dir vorschwebt ist eine "Verbiete Verbindung Tool"
Zitieren
#3
(03-12-2019, Tuesday-13:45:57 )makie schrieb: Wenn man jetzt eine Verbindung trennt, dann wird das nicht explizit als Trennung gespeichert.
Es wird nur getrennt, aber nicht gespeichert dass der Spieler hier was getrennt hat.

Trenne ich eine Verbindung bei abgeschaltetem ccf (crossconnect_factory), wird das sehr wohl gespeichert. Lade ich einen Spielstand mit ccf=0, dann bleibt es bei der Trennung. Deshalb ist es ja vielleicht ohne großen Programmieraufwand möglich, diese "Scheidungen" auch mit eingeschaltetem ccf in die savegames zu schreiben.
Zitieren
#4
(03-12-2019, Tuesday-19:36:33 )michelstadt schrieb: Trenne ich eine Verbindung bei abgeschaltetem ccf (crossconnect_factory), wird das sehr wohl gespeichert.

Aha, so wie ich vermutet hab.
Die Verbindung wird nicht gespeichert und später auch nicht (mehr) aufgebaut.

--------------------------
crossconnect_factories=1 sucht nach fehlenden Verbindungen und erstellt diese.
Woher soll es wissen, dass die Verbindung schon mal bestand und gelöscht wurde.
Zitieren
#5
Könnte das heißen, dass vielleicht kein neues Tool erforderlich wäre, sondern nur intern eine Tabelle oder Liste angelegt werden müsste, die die Trennungen auflistet und sie beim Kartenstart wiederherstellt?

Was passiert denn bei ccf=0. Da muss doch auch eine Liste angelegt werden, nämlich eine, die die (ausgewählten) Fabrikverbindungen enthält. Dort müsste sich die Trennungen niederschlagen. Statt einer Liste ist vielleicht bei den Fabriken hinterlegt, mit wem sie verbunden sind. Wie auch immer: Der gleiche Mechanismus müsste dann doch auch bei ccf=1 angewendet werden können, so dass die Verbindungen wie bei ccf=0 verarbeitet werden.
Zitieren
#6
Also crossconnect_factories=1 definiert das alle Fabriken verbunden sind/werden.

Jedes andere Verhalten würde dem widersprechen und nur zur Verwirrung führen.

Um eine hohe Vernetzung zu erreichen und trotzdem Verbindungen zu unterbrechen ist nicht crossconnect_factories der passende Parameter sondern crossconnect_factories_percentage.

Folgende Einstellungen dürften in die gewünschte Richtung gehen. Ggf auch 99 statt 90. Auf keinen Fall darf es 100 sein.

crossconect_factories=0
crossconect_factories_percentage=90
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#7
(03-12-2019, Tuesday-22:23:18 )michelstadt schrieb: Könnte das heißen, dass vielleicht kein neues Tool erforderlich wäre, sondern nur intern eine Tabelle oder Liste angelegt werden müsste, die die Trennungen auflistet und sie beim Kartenstart wiederherstellt?

Ich hab mir das im Programm noch nicht angeschaut, aber ja, es wäre eine neu Tabelle mit den absichtlich durch den Spieler getrennten Verbindungen notwendig. Diese muss gespeichert und wieder geladen werden.

Und crossconnect müsste beim Erstellen in diese Verbotsliste schauen und solche nicht wieder erstellen.
-------------------------------------------------------------------------------

Meine Lösung des Problems ist übrigens:
Ich stelle die Notwendigen Transportkapazitäten bereit und da das normal ein Transport in beide Richtungen ist, ist das hoch profitabel.

In Wirklichkeit wird so Unsinn übrigens auch oft gemacht.
----------------------------------------------------------------------------------
Was in Simutrans eigentlich fehlt:
Die Fabriken sollten eigentlich versuchen bei möglichst nahegelegenen Lieferanten zu kaufen.
Also quasi die Transportkosten in den Kaufpreis mit ein berechnen und dann beim billigsten Lieferanten kaufen.
Dann würden solche Quertransporte nur dann laufen wenn der Nahegelegene Lieferant nicht genug liefern kann.
Zitieren
#8
(04-12-2019, Wednesday-11:10:41 )makie schrieb: ....
Was in Simutrans eigentlich fehlt:
Die Fabriken sollten eigentlich versuchen bei möglichst nahegelegenen Lieferanten zu kaufen.
Also quasi die Transportkosten in den Kaufpreis mit ein berechnen und dann beim billigsten Lieferanten kaufen.
Dann würden solche Quertransporte nur dann laufen wenn der Nahegelegene Lieferant nicht genug liefern kann.

Auch für die Entfernungen gibt es bereits Parameter.

min_factory_spacing und max_factory_spacing

Allerdings kann es sein, das zu Gunsten vollständiger Industrieketten ( Bauort, Klimazonen ) das ignoriert wird.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#9
(04-12-2019, Wednesday-12:05:28 )Andarix schrieb:
(04-12-2019, Wednesday-11:10:41 )makie schrieb: ....
Was in Simutrans eigentlich fehlt:
Die Fabriken sollten eigentlich versuchen bei möglichst nahegelegenen Lieferanten zu kaufen.
Also quasi die Transportkosten in den Kaufpreis mit ein berechnen und dann beim billigsten Lieferanten kaufen.
Dann würden solche Quertransporte nur dann laufen wenn der Nahegelegene Lieferant nicht genug liefern kann.

Auch für die Entfernungen gibt es bereits Parameter.

min_factory_spacing und max_factory_spacing

Allerdings kann es sein, das zu Gunsten vollständiger Industrieketten ( Bauort, Klimazonen ) das ignoriert wird.

Nein das meine ich nicht.

Sondern: Die Fabrik hat Bedarf und bestellt Waren.
1. Nur bei den Fabriken die Verbunden sind. (bei crossconnect sind das alle)
2. Die eine aktive Transportverbindung haben
3. Die die Waren auch auf Lager haben
Und dann, wenn es jetzt noch verschiedene mögliche Lieferanten gibt?
Ich hab nicht ins Programm geschaut, aber nach meiner Spielerfahrung werden die Bestellungen gleichmäßig verteilt.

Meine Idee ist dann den Näheren zuerst leer zu kaufen.
Zitieren
#10
Meine Beobachtungen beruhen darauf, das bei der Generierung einer Kette trotz Begrenzung recht weite Wege entstehen können. Das dürfte aber an der Reihenfolge der Generierung der einzelnen Ketten liegen. Denn gibt es bereits einen geeigneten Lieferanten mit rechnerisch ausreichender Kapazität wird zu diesem verbunden trotz zu weiter Entfernung.

Werden später geeignete Lieferanten in der Nähe erzeugt, dann kommt zum tragen, das sich neue Industrien zwar mit bestehenden verbinden können aber umgekehrt dieses nicht erfolgt. Also bestehende Industrien verbinden sich nicht mit neuen ( Lieferanten ).

Hier scheint es auch so zu sein, das die Verbindung Empfänger ( neu ) Richtung Lieferant ( bestehend ) erfolgt. Wird ein Lieferant neu erzeugt verbindet der sich nicht mit vorhandenen Empfängern.

Einzig bei crossconnect_factories=1 könnte das anders sein. Wobei da auch nicht immer alle Lieferanten mit allen Empfängern verbunden sind, die während der Laufzeit entstehen.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 15 Gast/Gäste