Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Script-KI - Werte Speichern
#27
(21-06-2021, Monday-02:54:27 )prissi schrieb: Ohne jetzt genau den Code zu kennen: Kann man das nicht mit einem zweiten Zaehler auch bein Linien machen? Wenn dann der x. Monatesreste fuer diesen Link ist, dann wird der Zaehler bei allen Linien um eins reduziert. Nur Linien mit Zaehler Null wuerden dann updateberechtigt sein.

Die Linien sind die Linienobjekte von Simutrans selber. Da kann ich schwerlich das Objekt einfach so erweitern.

Der Script-Code stammt von Dwachs. So richtig hab ich den auch noch nicht verstanden.

Es scheint aber so zu sein, das es ein Link-Objekt im Script gibt, das als Schlüssel die beiden Industrien beinhaltet die verbunden werden. Und in diesem Link-Objekt gibt es einen Eintrag Lines, der wiederum alle Linien als Array beinhaltet, die irgendwie diese beiden Industrien verbinden. Das können Direktverbindungen sein aber auch kombinierte Strecken.

Auf jeden Fall sind die Linien die Linen-Objekte von Simutrans selber. In wie weit man da was für die Script-KI ändern kann/will liegt nicht bei mir.

Das Management wäre jedenfalls etwas leichter, wenn die Anzahl der Ausweichstellen und ein Zeitstempel direkt bei den Linien abgespeichert werden könnten.

Aktuell sieht die Klassendefinition für link bei mir so aus.
Code:
/**
* A link is a connection between two factories.
* Save its state here.
*/
class industry_link_t
{
    f_src   = null // factory_x
    f_dest  = null // factory_x
    freight = null // good_desc_x

    state = 0
    lines = null   // array<line_x>

    double_ways_count        = 0 // count of double way build
    double_ways_build        = 0 // double way build: 0 = no ; 1 = yes
    optimize_way_line        = 0 // is way line optimize: 0 = no ; 1 = yes
    destroy_line_month    = null // test month save
    line_way_speed            = 0 // save way speed for line
    build_line                    = 0 // create line
    next_vehicle_check  = 0 // save ticks for next vehicle check

    // next check needed if ticks > next_check
    // state == st_missing: check availability again
    // state == st_build: check for possible upgrades
    next_check = 0 // only set for st_missing, next time availability has to be checked

    static st_free    = 0 /// not registered
    static st_planned = 1 /// link is planned
    static st_failed  = 2 /// construction failed, do not try again
    static st_built   = 3 /// connection successfully built
    static st_missing = 4 /// missing infrastructure, try again later

    constructor(s,d,f)
    {
        f_src = s
        f_dest = d
        freight = good_desc_x(f)
        lines = []
    }

    function append_line(l)
    {
        lines.append(l)
    }
    function remove_line(l)
    {
        lines.remove(l)
    }
    function _save()
    {
        return ::saveinstance("industry_link_t", this)
    }
}

Im Prinzip muss ich parallel zu lines[] ein Array speichern mit meinen eigenen Werten als Objekt für die Linie. Dadurch bin ich unabhängig vom Programmcode selber.

line_x

Was auf jeden Fall helfen würde wäre, wenn man beim Spieler-Objekt einen Eintrag abfragen kann der den Spielertyp (Mensch, C-KI, Script-KI) zurückgibt.

Das würde es erleichtern Strecken umzubauen.

Für den Streckenumbau/-abriss wäre es auch nützlich die Fahrzeugzahl abzufragen, die ein Streckenstück benutzt haben.

Dafür sind aber Code-Änderungen an Simutrans selber nötig.
Script-KI für Simutrans r10894+ / Simutrans Nightly Builds
Zitieren


Nachrichten in diesem Thema
Script-KI - Werte Speichern - von Andarix - 28-08-2020, Friday-19:43:04
RE: Script-KI - Werte Speichern - von Dwachs2 - 29-08-2020, Saturday-16:25:48
RE: Script-KI - Werte Speichern - von Andarix - 30-08-2020, Sunday-01:47:42
RE: Script-KI - Werte Speichern - von Dwachs2 - 30-08-2020, Sunday-12:44:07
RE: Script-KI - Werte Speichern - von Andarix - 20-06-2021, Sunday-21:38:35
RE: Script-KI - Werte Speichern - von Andarix - 30-08-2020, Sunday-14:31:32
RE: Script-KI - Werte Speichern - von Andarix - 05-09-2020, Saturday-13:29:42
RE: Script-KI - Werte Speichern - von Andarix - 06-09-2020, Sunday-01:46:22
RE: Script-KI - Werte Speichern - von prissi - 06-09-2020, Sunday-14:58:52
RE: Script-KI - Werte Speichern - von Dwachs2 - 06-09-2020, Sunday-18:38:49
RE: Script-KI - Werte Speichern - von Andarix - 06-09-2020, Sunday-19:20:59
RE: Script-KI - Werte Speichern - von Dwachs2 - 13-09-2020, Sunday-19:19:04
RE: Script-KI - Werte Speichern - von Andarix - 13-09-2020, Sunday-19:52:07
RE: Script-KI - Werte Speichern - von Dwachs2 - 16-09-2020, Wednesday-19:24:04
RE: Script-KI - Werte Speichern - von Andarix - 17-09-2020, Thursday-21:29:05
RE: Script-KI - Werte Speichern - von Andarix - 18-09-2020, Friday-21:51:41
RE: Script-KI - Werte Speichern - von Dwachs2 - 18-09-2020, Friday-22:12:18
RE: Script-KI - Werte Speichern - von Andarix - 18-09-2020, Friday-22:31:55
RE: Script-KI - Werte Speichern - von Dwachs2 - 18-09-2020, Friday-22:38:46
RE: Script-KI - Werte Speichern - von Andarix - 18-09-2020, Friday-22:53:05
RE: Script-KI - Werte Speichern - von Andarix - 19-09-2020, Saturday-12:04:22
RE: Script-KI - Werte Speichern - von Dwachs2 - 19-09-2020, Saturday-16:19:08
RE: Script-KI - Werte Speichern - von Andarix - 19-09-2020, Saturday-16:22:52
RE: Script-KI - Werte Speichern - von Dwachs2 - 19-09-2020, Saturday-19:11:28
RE: Script-KI - Werte Speichern - von Andarix - 19-09-2020, Saturday-19:16:42
RE: Script-KI - Werte Speichern - von prissi - 21-06-2021, Monday-02:54:27
RE: Script-KI - Werte Speichern - von Andarix - 21-06-2021, Monday-16:03:39
RE: Script-KI - Werte Speichern - von prissi - 22-06-2021, Tuesday-06:37:41
RE: Script-KI - Werte Speichern - von Andarix - 22-06-2021, Tuesday-15:57:00
RE: Script-KI - Werte Speichern - von Dwachs2 - 22-06-2021, Tuesday-13:08:30
RE: Script-KI - Werte Speichern - von Dwachs2 - 22-06-2021, Tuesday-23:57:58
RE: Script-KI - Werte Speichern - von Dwachs2 - 26-06-2021, Saturday-15:11:19
RE: Script-KI - Werte Speichern - von Andarix - 09-07-2021, Friday-16:55:49
RE: Script-KI - Werte Speichern - von Andarix - 26-06-2021, Saturday-15:56:40
RE: Script-KI - Werte Speichern - von Dwachs2 - 26-06-2021, Saturday-21:16:31
RE: Script-KI - Werte Speichern - von Andarix - 26-06-2021, Saturday-21:43:43
RE: Script-KI - Werte Speichern - von Andarix - 27-06-2021, Sunday-11:57:21
RE: Script-KI - Werte Speichern - von prissi - 09-07-2021, Friday-17:11:09
RE: Script-KI - Werte Speichern - von Andarix - 09-07-2021, Friday-17:43:42
RE: Script-KI - Werte Speichern - von prissi - 10-07-2021, Saturday-16:45:48

Gehe zu:


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