Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Skripts fuer KI Spieler
#81
Es wird erst versucht die einfachen Verbindungen zu bauen. Wenn das schief geht, dann kommen die kombinierten dran.

Die Entscheidung, welche Verbindung zuerst versucht wird, steht unten in basic.net: die Verbindung mit besserem Verhaeltnis gain_per_m zu cost_fix (geschaetzte Baukosten) wird genommen.
Zitieren
#82
(24-04-2020, Friday-18:09:32 )Dwachs2 schrieb: ...
die Verbindung mit besserem Verhaeltnis gain_per_m zu cost_fix (geschaetzte Baukosten) wird genommen.

So was in der Richtung hab ich vermutet.

Da möchte ich noch das Transportvolumen und die Entfernung mit einbringen als Gewichtung. Ggf auch eine Abhängigkeit zwischen Fahrzeugzahl und Entfernung besonders bei Straße.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#83
Gerne. Man koennte ja auch verschiedene Gewichtungen einbauen, die ja nach Spieler-Nr der KI fuer ein leicht anderes Verhalten sorgen...
Zitieren
#84
(24-04-2020, Friday-18:09:32 )Dwachs2 schrieb: ...
Die Entscheidung, welche Verbindung zuerst versucht wird, steht unten in basic.net: die Verbindung mit besserem Verhaeltnis gain_per_m zu cost_fix (geschaetzte Baukosten) wird genommen.

mmh, da verstehe ich jetzt was nicht

Zitat: if ( best == null
|| (best.gain_per_m * test.cost_fix < test.gain_per_m * best.cost_fix)
|| (test.cost_fix == 0 && best.cost_fix == 0 && best.gain_per_m < test.gain_per_m) )
{

Warum wird der Monatsgewinn von best mit den Baukosten von test multipliziert und umgekehrt.

Das hiese zum Beispiel, das der Gewinn von Rail mit den Baukosten von Straße multipliziert wird.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#85
Wenn a*b < c*d dann ist auch a/c < d/b und umgekehrt. Fuer Integer ist das mit * besser (wenn es zu keinem overflow kommt). Man koennte dort auch mit Komma-Zahlen arbeiten, dann waere es wurscht, was da steht.
Zitieren
#86
(24-04-2020, Friday-23:13:15 )Dwachs2 schrieb: Wenn a*b < c*d dann ist auch a/c < d/b und umgekehrt. ...

jetzt bin ich noch verwirrter



Zitat:function calc_production()
{
local src_prod = fsrc.output[freight].get_base_production();
local dest_con = fdest.input[freight].get_base_consumption();

// TODO implement production factors


Wenn mit production factors die Wareneingangs- und Warenausgangsfaktoren ( die % hinter der Warenanzeige ) gemeint sind, dann ist das TODO unnötig.

get_base_production() und get_base_consumption() liefern bereits die errechneten Werte ( Produktionsrate * % ).
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#87
Der Bonus durch bereitgestellte Passagiere, Post, Strom ist da nicht drin.
Zitieren
#88
(25-04-2020, Saturday-10:17:48 )Dwachs2 schrieb: Der Bonus durch bereitgestellte Passagiere, Post, Strom ist da nicht drin.

Der ist zu diesem Zeitpunkt nicht relevant.

Und da es ein Bonus ist der nicht garantiert wird ist der für die Bewertung ungeeignet. Würde nur dafür sorgen das Konvoys genommen werden die ohne den Bonus dann minus machen.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#89
Was ist der Unterschied zwischen command_x.build_way() und command_x.build_road()?
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren
#90
Löscht man bei der Script-KI eine Linie wirft sie einen Script-Error das die Line id nicht vorhanden ist.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren


Gehe zu:


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