GithubHelp home page GithubHelp logo

traincompany-data's Introduction

Open in Remote - Containers Contribute with Gitpod

Lint Validation Check JSON content

TrainCompany Daten

In diesem Repository finden sich die Daten, die von TrainCompany genutzt werden. Die Daten sind in JSON-Dateien gespeichert, die ein data-Objekt beinhalten. Um ähnliche Objekte zusammenzufassen gibt es einfache Vererbung: "objects": [] führt dazu, dass alle Objekte, die zwischen den [] eingefügt werden automatische die Eigenschaften des Mutter-Objekts erhalten, wenn diese nicht überschrieben wurden.

Eine Anleitung zum Erstellen neuer Erweiterungen usw. findet sich in Contributing.md

Train.json

Fahrzeuge, die in TC zur Verfügung stehen

  • id (int) Eindeutige ID jedes Fz
  • group (int) Art des Fahrzeuges
    • 0 Lokomotive
    • 1 Wagen
    • 2 Triebzug
    • 3 fixer Wagenverband
  • service (int) Zuordnung zu einer passenden Service-Klasse (siehe TaskModel.json)
  • name (string) Name des Fahrzeuges
  • shortcut (string) Baureihen/-art-Bezeichnung des Fahrzeuges (optional)
  • speed (int) Höchstgeschwindigkeit in km/h
  • weight (int) Gewicht in t
  • force (int) Anfahrzugkraft in kN
  • length (int) Länge in Metern
  • drive (int) Traktionsart
    • 0 Keine Traktion
    • 1 E-Traktion
    • 2 Diesel-Traktion
    • 3 Batterie
    • 4 Hybrid
    • 5 Wasserstoff
    • 6 Last Mile
    • 7 Dampf
  • reliability (float) Zuverlässigkeit in Prozent (0.8-1.0)
  • cost (int) Kosten in Plops
  • maxConnectedUnits (int) Maximale Anzahl der kuppelbaren Einheiten (bei Triebzügen, Nicht gesetzt = Unbegrenzt)
  • operationCosts (int) Betriebskosten pro km in Plops (Nur bei Fz mit Antrieb benutzen!)
  • equipments (array) Fahrzeugausstattung (siehe TrainEquipments.json)
  • exchangeTime (int) Aufenthaltsdauer bei Planhalten in Sekunden (Optional, Standard = 40)
  • compatibleWith (array) Für Triebzüge und Wagenverbände: Lässt sich zusätzlich mit den angegeben Fz kuppeln
  • equivalentTo (int) Nur für fixe Wagenverbände: Entspricht wie vielen Wagen?
  • range (int) Reichweite im Batteriebetrieb in km
  • capacity (array) Art der Beladung und Menge (optional, siehe Capacity.json)

Capacity.json

Art der Beladungen eines Fahrzeuges

  • idString (int) Eindeutige ID einer Capacity
  • name (string) Name der Capacity
  • needsPlatform (bool) Benötigt einen Bahnsteig?
  • unit (string) Einheit der Capacity
  • unitMass (float) Eine Einheit entspricht wie viel t Gewicht?
  • emoji (string) Emoji der Einheit
  • exchangeFactor (float) Faktor für automatischen Zustieg: 1 ist normale Fahrgäste (optional)

DelayModel.json

Modelle für Verspätungen

  • type (int) Art der Verspätung
    • 0 Fahrzeugstörung
    • 1 Personal
    • 2 Ladung
    • 3 Streckenstörung (noch nicht implementiert)
    • 4 Fahrplan
  • name (string) Verspätungstext
  • delay (int) Erzeugte Verspätung in Sekunden (+/-5 %)
  • capacity (string) In Kombination mit type/2 wird eine ladungssbezifische Störung angegeben

Path.json

Verbindungen zwischen zwei Bahnhöfen

  • name (string) Streckenname (optional)
  • group (int) Art der Strecke (optional, Standard = 0)
    • 0 Hauptbahn
    • 1 Nebenbahn
    • 2 SFS
    • 3 Fähre
  • start (string) Ril100 des Startbahnhofs
  • end (string) Ril100 des Endbahnhofs
  • twistingFactor (float) Angebe der Kurvigkeit von 0.0 bis 1.0 wobei 1.0 am kurvigsten ist
  • lenght (int) Länge der Strecke in km
  • maxSpeed (int) Höchstgeschwingkeit des Streckenabschnitts
  • electrified (bool) Elektrifiziert (optional, Standard = true)
  • neededEquipments (array) Benötigte Fahrzeugaustattung (siehe TrainEquipments.json, optional)

Station.json

Bahnhöfe

  • name (string) Bahnhofsname
  • ril100 (string) Ril100 des Bf
  • group (int) Art des Bahnhofs
    • 0 Knotenbahnhof
    • 1 Hauptbahnhof
    • 2 kleiner Bahnhof
    • 3 Betriebsbahnhof
    • 4 Abzweigstelle
    • 5 Haltepunkt (Wird nicht auf der Karte gerendert)
    • 6 Wegpunkt (Wird nicht auf der Karte gerendert)
  • x (int) x-Position auf Karte
  • y (int) y-Position auf Karte
  • platformLength (int) maximale Bahnsteiglänge (optional, Standard = 0)
  • platforms (int) Bahnsteiganzahl (optional, Standard = 0)
  • network (string) (optional, Standard = default Network)
  • forRandomTasks (bool) (optional, Standard = true)

TaskModel.json

Modelle für Aufträge, aus denen automatisch neue Aufträge erstellt werden

  • group (int) Art des Auftrags
    • 0 Direktvergabe
    • 1 Ausschreibung
  • name (string) Name des Auftrags
  • service (int) Servicelevel zur automatischen Berechnung des Gewinns
    • 0 HGV
    • 1 IC
    • 2 Regionalverkehr
    • 3 kurzer Regionalverkehr
    • 4 Sonderzug
    • 5 Nachtzug
    • 10 wichtiger Güterzug
    • 11 Güterzug
  • descriptions (array) Array mit mehreren Strings für die Ausschreibung
  • stations (array) Ril100 aller Bahnhöfe, die angefahren sollen in der richtigen Reihenfolge, wenn keine angegeben wurden, dann werden zwei zufällige gewählt (optional)
  • pathSuggestions (array) Ril100 aller Bahnhöfe, die standardmäßig mit oder ohne Halt angefahren werden sollen in der richtigen Reihenfolge.
  • stopsEverywhere (bool) Wenn true dann wird auch automatisch ein Halt an allen Bahnhöfen, die zwischen den oben angegeben Bahnhöfen eingeplant (optional)
  • neededCapacity array Art der Beladung und Menge, wenn die Menge weggelassen wird führt es zu automatischer Beladung, wenn von Capacity unterstützt (siehe Capacity.json)

traincompany-data's People

Contributors

99thgamer9 avatar bensomeusernameshitthatisavailable avatar bjoernma avatar c1710 avatar chilllp avatar dielimoistschuld avatar drive-n-code avatar embix avatar emuricdo avatar f2k1de avatar karlbeecken avatar landromitmate avatar maplemonarchs avatar margau avatar marhei avatar mermaidsystem avatar moritz-schmidt avatar mvgfan8xx avatar paulroman12 avatar theminefighter avatar tramhendi avatar weiland avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

traincompany-data's Issues

Osterweiterung

Strecke von UE P nach UG über UWM-UGW-UHK
Strecke von UG nach LL über UBKZ-LZ-LPG
SFS von UE P nach LL über LFLU

AMUE without Path

Müssen ist zwar bei den Stationen (und deshalb auch in der Task des RE von Hamburg nach Rostock), aber an keine Strecke angebunden.

Ausschluss für Diesel-Fahrzeuge ermöglichen

Mittelfristig wird denke ich auch der Gotthard-Basistunnel kommen und ich denke nicht (weiß es aber auch nicht sicher), dass da Diesel-Züge durch dürfen.
Natürlich ließe sich das auch mit einem equipment lösen (was vielleicht ohnehin nötig wird?), aber das müsste dann jedem E-Zug hinzugefügt werden.

CargoSprinter (BR 690)

Ich hatte die Idee, den CargoSprinter als "billige" Einstiegsoption in den Güterverkehr im Spiel einzubauen.
Meine ersten Ideen wären, dass jede Einheit 15 Container transportieren kann, 600'000 Plops kostet und maximal in Doppeltraktion fahren darf.
Cargo Sprinter
(Der GZ-Graph geht von einer 218 als Zugmaschine aus.)

Nightjet

Is it possible to have direktvergaben that only are avalible at specific times of day? (@marhei)

Cargo: Beds
Needs specific WLABmz/ Nightjet wagons
Pullable by every loco

Strecke: Mirow-Neustrelitz

Ich würde mich mal an der Strecke versuchen wollen.

Verlauf: Mirow-Zirtow-Weißer See (HP)-Wesenberg-Groß Quassow (HP)-Neustrelitz Hbf
angedachte Aufträge:

  • Auschreibung: RB16 Neutstrelitz-Mirow (Kleinseebahn)
  • Direktauftrag: Öl/Kesselzug von Rostock zum Tanklager Wesenberg (bzw. Zirtow als Übergabestelle, das Tanklager würde ich jetzt nicht noch als extra Bahnhof dazusemmeln)
  • Sonderzug zum Fusion Festival

Energieversorgung

I propose to change from "Diesel" to something like non-continuous / no-wire or whatever else to give the possibility for modern battery , fuel cell or heritage steam trains :)

PS: AKN was not allowed in Hamburg Hbf with Diesel I think, so it would suit this too \hj

Logik für neededEquipments

Insbesondere bei den Zügen mit neededEquipment gibt es inzwischen leichte Probleme.
So können die Eurostars hier nur in Frankreich fahren, wodurch ich Belgien und die HS1 auch als "Frankreich" einstufen musste, dass die da fahren können.

Eine Option, sowas ordentlich abbilden zu können, wäre, wenn neededEquipments per UND/ODER/NICHT konstruiert werden könnten.

Es ließe sich im JSON umsetzen als konjunktive Normalform (Also ein großes UND über die Equipments, wobei statt eines Equipments auch ein ODER über mehrere Equipments stehen kann; jedes Equipment kann auch negiert werden) - Bezeichnung übernommen von der JSON-Schema-Spezifikation:

"neededEquipments": [
    "equipment",
    {
         "anyOf": [
             "equipment",
             "equipment",
            { "not": "equipment" },
            ...
        ]
    },
    "equipment",
    ...
]

Class 92

Könnte für Güterzüge durch den Eurotunnel eingesetzt werden.

Der Code dafür könnte so aussehen:

                        "group": 0,
			"name": "Class 92",
			"speed": 140,
			"weight": 126,
			"force": 360,
			"length": 21,
			"drive": 1,
			"reliability": 0,85,
			"cost": 380000,
			"operationCosts": 110,
			"equipments": ["FR", "GB", "TVM", "Eurotunnel" ]

Wasserstoff als Antriebstyp

Vergleichbar mit Batterie/Hybrid, nur, dass die Reichweite auch unter OL eine Rolle spielt.
Symbol könnte z.B. 💧 oder 💦 sein. 🫧 wäre auch möglich, ist aber leider noch nicht überall unterstützt (z.B. unter Windows 10, was bei der Emoji-Schriftart vermutlich gar keine Updates mehr bekommen wird)

Automatic import of stations

It's possible to automatically generate a json with x / y / name / ril100 / group (categorization can be done due railway=halt (group=2), railway=service_station (group=3), railway=yard (group=3), railway=junction (group=4) and railway=station (group=0 or 1) from OSM data. (have tested it successfully for Niedersachsen in python, can provide the code...)

What do you think about it? There is some work yet to be done regarding the inclusion of the DB open data stuff for getting information about the platform length and number of them per station. But this information is available (ril100 links to "Übersicht Bahnhöfe" which links via Bahnhofsnummer to Bahnsteigdaten where each platform has a number and length.

Some possible problems: not all osm data is complete (e.g. regarding name / ril100); some of the stations don't belong to railway but more of narrow gauge lines (Feldbahnen...). non-DB stations doesn't have platform information in the DB open data portal.

DE/AT-Zulassung für Twindexx Express?

In diesem Bericht steht (S. 14), dass der Twindexx Express langfristig auch in Deutschland und Österreich zugelassen werden soll.
Soll ich das dann auch hier übernehmen oder eher rauslassen, weil die Zulassung noch nicht erfolgt ist und bei dem Teil irgendwie nicht sonderlich wahrscheinlich erscheint? 😂
https://company.sbb.ch/content/dam/internet/corporate/de/medien/dossier-medienschaffende/faktenblatt-fv-dosto/statusbericht-fv-dosto.pdf.sbbdownload.pdf

Netznotfallzug

With that, New Type of Direktvergaben will be added and New Type of Cargo "Medicine"

Toul - Paris Est

Damit der Nightjet Wien-Paris endlich bis zum Ende fahren kann

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.