How to get the ingame positions for all cities in Euro Truck Simulator 2
Für ein kleines Tool, das ich in einem anderen Artikel beschreibe, benötigte ich die Ingame-Koordinaten aller Städte in ETS 2. Hier wie ich es letzendlich geschafft habe.
Die benötigten Informationen liegen leider in Dateien mit einem proprietären Binärformat. Mit einem kleinen Trick kann man die Dateien in einem menschenlesbaren Format erstellen lassen.
Kartendaten exportieren
Zuerst muss in der config.cfg des Spiel folgende Werte angepasst werden (1 statt 0), um Zugriff auf die Entwicklerkonsole zu bekommen.
uset g_developer "1"
uset g_console "1"
Nun erstelle einen Ordner user_map im mod-Ordner des Spiels. Dieser findet sich unter Dokumente\Euro Truck Simulator 2. Hier werden die exportierten Daten landen.
Nun den Map-Editor starten. Dies geht in dem das Spiel mit ein paar Kommandozeilen-Parametern gestartet wird:
-edit -noworkshop
Im Editor angekommen laden zuerst einmal die Karte europe.mbd
Nun öffnen die Konsole mit der ^-Taste, und gib folgenden Befehl ein:
edit_save_text europe
Der Vorgang wird eine Weile dauern.
Wenn der Befehl ausgeführt wurde, kopiere alle .base Dateien aus dem Ordner user_map\map\europe in den map-Ordner von meinem Tool.
Dies erstellt die cities.json die alle Städte mit ihren Koordinaten enthält.
$ python find_cities.py