Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Script KI - Streckenbau
#21
Simutrans und seine unendlichen Möglichkeiten  Cool

[Bild: attachment.php?aid=17760]


Angehängte Dateien Thumbnail(s)
   
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#22
Smile

Was war zuerst? Gleis oder Wasser?
Zitieren
#23
(22-01-2022, Saturday-14:09:12 )Dwachs2 schrieb: Smile

Was war zuerst? Gleis oder Wasser?


Na ja, nach einem Hangrutsch durch Schlagregen liegt das Gleis jetzt eben im Wasser.

Es ist halt so, liegt ein Wegende auf einem Hang, kann dieser mit dem Slopetool Feld absenken abgesenkt werden. An sich kein Problem, ausser eben in dieser Situation, wenn Land zu Wasser wird.

Der Hintergrund ist der, das bei der Script-KI ein Feld nicht abgerissen werden konnte, weil ein Fahrzeug drauf stand. Hatte dann einfach mal mit dem Slopetool drauf geklickt und der Hang wurde eingeebnet. Hab das dann so in die Automatik übernommen mit dem Ergebnis oben.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#24
kurze Frage zum Brückenbau

Kann über Script die Brückenhöhe festgelegt werden?

Also ob flache (Höhe 1) oder steile (Höhe 2) Rampen gebaut werden.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#25
Code:
...
          err = command_x.build_way(our_player, tile_4, tile_3, way_obj, true)
          if (err != null ) {
            gui.add_message_at(our_player, " build tunnel " + coord3d_to_string(tile_4) + " - " + coord3d_to_string(tile_3) + ": " + err, world.get_time())
          } else {
....

command_x.build_way baut keinen Weg, wenn ein Endfeld eine Kreuzung ist. Es wird auch keine Fehlermeldung ausgegeben.

[Bild: attachment.php?aid=17785]


Angehängte Dateien Thumbnail(s)
   
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#26
(29-03-2022, Tuesday-18:22:29 )Andarix schrieb: ...
command_x.build_way baut keinen Weg, wenn ein Endfeld eine Kreuzung ist. Es wird auch keine Fehlermeldung ausgegeben.
...

Das gleiche Problem besteht beim Streckenabriss, wenn ein Endfeld einem anderen Spieler gehört. Das ist aber auch im normalen Spiel so, also kein Script-KI spezifisches Problem.



Hier ein Beispiel wo die KI bei der Streckenfindung benachteiligt ist.

Ein Mensch würde die rote Strecke bauen und an den 2 Stellen mit blauem Kreuz absenken.

Die KI müsste schon 4 Kacheln beim Gelände bearbeiten (3x Feld absenken und 1x in Hang umändern). Die gebaute Strecke ist zwar nicht viel länger, aber durch mehr Kurven ist sie effektiv langsamer. In wie weit der zusätzliche Höhenwechsel nachteilig ist weis ich nicht.

Die KI kann halt nur Feld für Feld testen und nicht das gesamte Gelände überblicken. Ihr fehlen halt die Augen.

[Bild: Script-KI-Streckenbau.jpg]
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#27
Das ist aber ein generelles Problem für Computeralgorithmen, und weswegen KIs eigentlich immer nich außerhalb ihrer Sezifikations tohdumm sind.

Im Prinzip könnte man dem Wegsucher auch ein Geländeeinebenenbudget vorgeben, dass dann auch absenken usw. einschließen würde. Leider macht das auch die Sucher sehr Aufwending, denn es muss dann natürlich auch für jeden Schritt das neuen Gleände berechnet und gespeicher t werden.
Zitieren
#28
Ich wollte nur an einem einfachen Beispiel zeigen, warum die KI oft etwas wirr baut.

Und vor allem bei bergigeren und unebeneren Karten eher schlecht abschneidet.

Es ist halt auch so, das zuerst in eine Richtung probiert wird und die andere, mitunter bessere Wahl, dann nicht mehr zum Zuge kommt, wenn ein Weg gefunden wurde.

Das ist bei der Bahnsteigsuche aktuell auch noch so. So bald ein Platz gefunden wurde wird abgebrochen und die restlichen Richtungen nicht mehr getestet.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#29
(05-04-2022, Tuesday-20:41:09 )Andarix schrieb: ...
Es ist halt auch so, das zuerst in eine Richtung probiert wird und die andere, mitunter bessere Wahl, dann nicht mehr zum Zuge kommt, wenn ein Weg gefunden wurde.
...

Inzwischen werden beide Richtungen getestet und die Strecke genommen die billiger bzw. kürzer ist.



Solche Ergebnisse lassen mich immer etwas ratlos zurück.

Das eine ist, das die Schiffsverbindung zur Bohrinsel fehlt. Auf Grund dessen, das das Dock/der Hafen gesucht wird, werden die Nebengebäude gebaut.

[Bild: attachment.php?aid=17807]

Und jetzt ist das Problem, das die Strecke nicht mehr abgerissen werden kann, da sie unterbrochen ist. Die bisher vorhandene Funktion für die Streckenermittlung für den Abriss meldet nämlich nur einen Fehler, wenn die Strecke unterbrochen ist.



Auch hatte ich wieder das Problem, das die Script-KI nicht mehr reagiert hat. Möglich das durch das deaktivieren und aktivieren von den KI's der Baufehler dieser Verbindung entstanden ist.

Bin mir nicht sicher, ob es möglich ist die Script-KI automatisch zu deaktivieren und wieder zu aktivieren. Bzw die Script-Verarbeitung neu anzustoßen.


Angehängte Dateien Thumbnail(s)
   
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#30
Mir ist eingefallen, warum die Schiffslinie nicht gebaut wurde.

Auf Grund des Problems bei der Warenverteilung von öffentlichen Halten der Wasserindustrien wird nur eine Schiffsverbindung zugelassen zum selben Abnehmer.

Das Problem ist also, das die kombinierte Verbindung nicht komplett abgebrochen wird.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren


Gehe zu:


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