Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Squirrel Script - Text-Ausgaben
#11
(01-04-2021, Thursday-13:13:08 )Andarix schrieb: 1) klick auf die Karte fragt alle Stationen der Karte ab
wenn nicht auf Pause kommt Fehlermeldung, bei Pause passiert erst einmal gar nichts.
(01-04-2021, Thursday-13:13:08 )Andarix schrieb: 2) klick auf eine Station fragt nur die verbundenen Stationen ab
passiert gar nichts, was sollte denn passieren?
(01-04-2021, Thursday-13:13:08 )Andarix schrieb: Ansonsten bräuchte ich die sve-Datei.

Da geht die Abfrage der Tileliste einer Station schief. Da ist auf jeden Fall die sve-Datei nötig.
da ich mit einem modifizierten pakset spiele Link per PM
(01-04-2021, Thursday-13:13:08 )Andarix schrieb: Und was mich irritiert ist, das der Speicherordner ../tool/mytool/tool.nut heist.
Statt mytool sollte da check_passenger_stops oder check_post_stops stehen.
Hatte am Anfang keine Ahnung wie ich das Skript installiere, hatte dann irgendwo gelesen das alles in den Ordner ../tool/mytool/ muss. Umbenennen in check_passenger_stops brachte aber auch nichts.
Aktuell installierte Simutransversion: nightly 9700

Simutrans = best thing since sliced bread

GEOTRANS ADDON
Zitieren
#12
(01-04-2021, Thursday-13:58:44 )Geotrans schrieb: ...
Hatte am Anfang keine Ahnung wie ich das Skript installiere, hatte dann irgendwo gelesen das alles in den Ordner ../tool/mytool/ muss. Umbenennen in check_passenger_stops brachte aber auch nichts.

mytool steht für den Toolnamen, der dann im Toolmenü angezeigt wird auf dem Button.

Das ist der von Dwachs beschriebene Fehler, der aber noch nicht behoben ist.

Da Deine Karte 3070 Stationen hat, hat das Script eine lange Laufzeit. Klickst Du während der Laufzeit noch einmal, dann tritt dieser Fehler auf.

klick irgendwo auf die Karte
[Bild: attachment.php?aid=17623]

klick auf die Station 'Wieshofen Passagier Flughafen'
[Bild: attachment.php?aid=17624]

Eigenartiger Weise hat der Simutrans-Spieler die gleiche Farbe wie die öffentliche Hand.

Die Ausgabe zeigt bisher nicht alle überfüllten Stationen an, da die Textlänge der Ausgabe im Meldungsfenster begrenzt ist.


Angehängte Dateien Thumbnail(s)
       
Script-KI für Simutrans r9641+ / Simutrans Nightly Builds
Zitieren
#13
Danke für Deine Hilfe!

Wo kann ich den einstellen, das ich die Meldung in einem eigenen Fenster bekomme und nicht unten als Laufschrift? Die hatte ich wohl übersehen, deshalb dachte ich es passiert gar nichts.
Aktuell installierte Simutransversion: nightly 9700

Simutrans = best thing since sliced bread

GEOTRANS ADDON
Zitieren
#14
Meldungsfenster Optionen

(30-12-2020, Wednesday-16:35:19 )Dwachs2 schrieb: Fuer Szenarios unter 'Szenario', alles andere (KIs, Tools) unter KI/Konkurrenz.
...

Leider gibt es keine Aktivitätsanzeige.

Und auch der Tool-Cursor bleibt. Das provoziert halt den mehrfachen Klick während der Ausführung des ersten Klicks.
Müsste da wieder das Auswahltool aufrufen am Ende vom Script. Das hat aber wieder den Nachteil (bei Abfrage von Stationen), das man immer wieder das Tool-Auswahlfenster aufrufen muss, weil das bei Tool-Auswahl geschlossen wird.

Das schließen des Tool-Auswahlfensters finde ich hier nachteilig. Gerade dann wenn man mehrere Scripttools nacheinander aufrufen möchte.

Bliebe nur eine Scripttool-Menüleiste. Dort kann man aber nicht einfach alle Scripttools auflisten, sondern muss jedes einzeln benennen.

Idealer Weise wäre ein eigenes Ausgabefenster schön, wo die Stationen dann auch angeklickt werden können um hin zu springen. Aber das ist aktuell nicht drin.
Script-KI für Simutrans r9641+ / Simutrans Nightly Builds
Zitieren
#15
   
Mir fehlte hier in der rechten Spalte der Haken bei "KI baut". Kannte ich noch nicht. Kann man das auch dauerhaft einstellen?
(01-04-2021, Thursday-23:57:37 )Andarix schrieb: Die Ausgabe zeigt bisher nicht alle überfüllten Stationen an, da die Textlänge der Ausgabe im Meldungsfenster begrenzt ist.
könnte man jeweils nach 5 Stationen eine neue Meldung ausgeben, bis alle Stationen die überfüllt sind abgearbeitet sind?
Aktuell installierte Simutransversion: nightly 9700

Simutrans = best thing since sliced bread

GEOTRANS ADDON
Zitieren
#16
(02-04-2021, Friday-14:53:10 )Geotrans schrieb: ...
könnte man jeweils nach 5 Stationen eine neue Meldung ausgeben, bis alle Stationen die überfüllt sind abgearbeitet sind?

Bei Sets die die Überfüllung zulassen ist das eher irrelevant.

Der Grund das ich das geschrieben hab ist pak64.german. Dort bricht der Verkehr zusammen, wenn Stationen überfüllt sind. Gerade bei Mehrspielerspielen ist es aufwendig, dann überfüllte Stationen zu finden. Auch öffentliche Stationen sind eher umständlich zu ermitteln.

Sollte der Spielerwechsel untersagt sein, kann man fast gar nicht mehr überfüllte Stationen anderer Spieler finden. Weil man nicht zu diesen wechseln kann um dann die Halteliste auf zu rufen.

Das Script ist also dafür da, schnell zu prüfen ob es überfüllte Stationen gibt um schnell darauf zu reagieren. Für Spiele und Spieler wo Überfüllungen unwichtig sind ist das Script eher nutzlos. Da durch die Überfüllung keine Nachteile entstehen.

Bei Einzelspielen bekommt man eh die Meldung für überfüllte Stationen. Bei Mehrspielerspielen ist das nicht so, da man nur die Meldungen des aktiven Spielers bekommt.

Wer also von Anfang an überfüllte Stationen vermeiden will, der hat mit dem Script eine nützliche Schnellinfo. Nachteil ist im Moment halt, das man die Stationen immer noch auf der Karte suchen muss. Bei den Scenarios kann man Sprunglinks in die Texte einbauen. Das geht aber bei den normalen Meldungen nicht für mehrere. Es gibt nur einen möglichen Sprungpunkt (Pfeil vor der Meldung). Nur auf welchen Eintrag soll man da dann springen.

Und die Anzahl ist nicht der entscheidende Punkt, sondern die Textlänge. Sind die Haltenamen kurz, dann ist die Liste auch länger. Sind die Namen lang, den sind es eben weniger.

(02-04-2021, Friday-14:53:10 )Geotrans schrieb: Mir fehlte hier in der rechten Spalte der Haken bei "KI baut". Kannte ich noch nicht. Kann man das auch dauerhaft einstellen?
...

Die Einstellung sollte sich Simutrans merken.

Bei Nightlys wird aber mitunter nicht alles gespeichert. Das hängt mit der Savegame-Versionsnummer zusammen, die hoch gesetzt werden müsste. Das passiert aber nur beim Release einer neuen Version.
Script-KI für Simutrans r9641+ / Simutrans Nightly Builds
Zitieren
#17
(02-04-2021, Friday-16:30:06 )Andarix schrieb: Bei Sets die die Überfüllung zulassen ist das eher irrelevant.
Mir ging es in erster Linie darum mal ein Script anzuschauen und zu verstehen wie es funktioniert. Da Script selber sieht ja noch recht übersichtlich aus, so ungefähr kann ich es nachvollziehen, habe aber bisher leider keine Ahnung von Squirrel. Wobei ich glaube das die Sprache das kleinere Problem ist, viel schwieriger ist wohl zu verstehen welche Funktion in Simutrans wofür zuständig ist. Mal sehen ob ich mich da bei Gelegenheit mal ran traue.
Was ich noch nicht so ganz verstehe ist warum das Script nur arbeitet wenn ich nicht im Pausenmodus bin. Auch bin ich erschrocken wie lange es für die Berechnung der Meldung benötigt, da fehlt mir wohl noch eine ganze Menge an Hintergrundwissen.

Habe ganz herzlichen Dank für Deine ausführlichen Antworten!
Aktuell installierte Simutransversion: nightly 9700

Simutrans = best thing since sliced bread

GEOTRANS ADDON
Zitieren
#18
(02-04-2021, Friday-18:48:34 )Geotrans schrieb: ...
Was ich noch nicht so ganz verstehe ist warum das Script nur arbeitet wenn ich nicht im Pausenmodus bin. Auch bin ich erschrocken wie lange es für die Berechnung der Meldung benötigt, da fehlt mir wohl noch eine ganze Menge an Hintergrundwissen.
...

Pausemodus pausiert die Programmausführung. Also wird auch das Script angehalten, da es ja ein Programm ist. Bzw. die Squirrel-Umgebung gehört zur Programmausführung und wird bei Pause angehalten. Wäre das nicht so, würde die Script-KI auch in der Pause weiter laufen.

Die lange Laufzeit ergibt sich daraus, das hier 3070 Stationen abgefragt werden. Das ist eine Schleife die eben 3070 mal läuft.

Bei jeder Schleife werden die verbundenen Passagier-Stationen mit den Warenmengen abgefragt. Hat jede Station 5 Verbindungen sind das dann nochmal 5 Schleifen. Macht dann über 15.000 Schleifendurchläufe.

Hinzu kommt, das Scriptsprachen in der Ausführung meist langsamer sind als binäre Programme.

Doku
http://www.squirrel-lang.org/squirreldoc...index.html
http://dwachs.github.io/simutrans-sqapi-doc/index.html
Script-KI für Simutrans r9641+ / Simutrans Nightly Builds
Zitieren
#19
(01-04-2021, Thursday-12:54:13 )Geotrans schrieb: ...
Eigentlich bin ich auf der Suche nach einer Möglichkeit zu protokollieren wie viel Fracht ein Konvoi an einem Halt lädt, bzw wie die Kapazität nach dem Beladen ist und wie viele nicht mitgenommen werden konnten. Da ich bei der Statistik der Fahrzeuge bei "Freie Kapazität" nicht sehen kann in welchem Bereich der Strecke die freie Kapazität vorhanden ist. Bei komplexen Passagierlinien würde ich gerne Verstärkerlinien einrichten die nur Bereichen mit Kapazitätsproblemen abdecken.
...

Das wird scheitern. Und zwar aus 2 Gründen

a) es gibt keine Möglichkeit Script-Tools per Event auszuführen
b) die Werte werden nicht einzeln gespeichert

Wo es klemmt erkennt man am ehesten bei der Haltliste.

Wenn da geringe Wartende Ware angezeigt wird bei Halten, dann kann man davon ausgehen das genügend freie Kapazität vorhanden ist.
Steigende Wartemengen zeigen an, das die Kapazität nicht mehr ausreicht.

Was man mit einem Script-Tool machen kann ist, die Statistik der wartenden Waren abzufragen von den Halten.

Fragt man die letzten letzten und den drittletzten Monat der Statistik ab, kann man prüfen wie sich die Werte verändert haben. Liegt der Wert des letzten Monats 50% über dem drittletztem, dann gibt es zu wenig Transportkapazität. Umgekehrt liegt der Wert 50% drunter, dann gibt es Überkapazitäten.

Die 50% sind jetzt als Beispielwert. Wie man das Verhältnis und den Monatsabstand ansetzt muss man wohl testen.

Problem dürfte aber wieder die Ausgabe sein. Mit dem jetzigen Meldungsfenster ist eine gut nutzbare Ausgabe für sämtliche Informationsbeschaffungen nicht möglich.

Man kann keine Linie direkt ansprechen per Tool soviel mir bekannt ist. Man müsste also eine Station (alternativ Fahrzeug auf Karte) anklicken und sich da die Linienliste holen. Und dann die Linien durchgehen und die Halte der Linie prüfen.
Script-KI für Simutrans r9641+ / Simutrans Nightly Builds
Zitieren
#20
(03-04-2021, Saturday-11:24:34 )Andarix schrieb: Das wird scheitern. Und zwar aus 2 Gründen

a) es gibt keine Möglichkeit Script-Tools per Event auszuführen
b) die Werte werden nicht einzeln gespeichert
Ich hatte zwar eher an einen dritten Grund gedacht, mein Unwissen...


(03-04-2021, Saturday-11:24:34 )Andarix schrieb: Wo es klemmt erkennt man am ehesten bei der Haltliste.

Wenn da geringe Wartende Ware angezeigt wird bei Halten, dann dann kann man davon ausgehen das genügend freie Kapazität vorhanden ist.
Steigende Wartemengen zeigen an, das die Kapazität nicht mehr ausreicht.
Bei Stationen mit nur einer Linie funktioniert das gut, bei Stationen mit vielen Linien die teilweise parallel verlaufen verliere ich den Überblick. Da wäre es schöner zu sehen in welchen Abschnitten die Züge mit 100% Auslastung fahren.
Aktuell installierte Simutransversion: nightly 9700

Simutrans = best thing since sliced bread

GEOTRANS ADDON
Zitieren


Gehe zu:


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