OpenLoco

    • Hallo WiSim Community,

      wie viele Locomotion-Fans unter euch, warten viele auf einen Locomotion Nachfolger oder aber einer Neuentwicklung. Einige haben hier unter "Community-Projekte" bereits Ihre Neuentwicklungen vorgestellt und es wurde z.T. auch heiß darüber diskutiert und sehnsüchtig darauf gewartet. Leider hört man heute nichts mehr von diesen Projekten, so das man diese wohl als eingeschlafen darstellen kann. Aber es gibt nun ein Licht am Horizont und dieses heißt "OpenLoco" welches ich an dieser Stelle mal allen vorstellen möchte.
      Dazu sei gesagt, dass ich selber weder der Entwickler bin und auch nicht an diesen Projekt mitarbeite!


      OpenLoco
      Homepage: OpenLoco (GitHub)

      OpenLoco ist ein Open source Remake von Chris Sawyer's Locomotion welches von dem Englischen Entwickler Tim Moran in Java entwickelt wird und vieles beinhaltet was ein jener Locomotion-Fan im original vermisste bzw. sich darin wünschte. Dies wäre unter anderem die Aufhebung der Fahrzeugauswahl von 224 auf sage und schreibe 4486 Fahrzeugen (siehe auch das Kurzvideo auf YouTube)! Gut, eine Aufhebung ist dies in diesem Sinne nicht, aber mit 4486 auswählbaren Fahrzeugen, welches etwa das 20fache des im originalen entspricht, sollte es dennoch vollkommen ausreichen. Um jedoch OpenLoco spielen zu können, wird der originale ObjData Ordner aus dem originalen Spiel benötigt, welchen natürlich auch diverse Community entwickelten Mods hinzugefügt werden kann. Also in der Tat ein lang ersehnter Locomotion Nachfolger, der zum einen genau so aussieht wie das Original und zum anderen aber solch Funktionen mit sich bringt die ein jener Locomotion-Fan zuvor vermisste und sich in einen Nachfolger wünschte. Nun ist es da und dies als OpenSource, so das damit auch etwaige Java-Programmierer selbst Hand anlegen können um das Spiel u.a. mit noch mehr Funktionen zu bereichern. Da OpenLoco auf Java basiert ist dies auch Plattform übergreifend, so das dies also gleichermaßen ob unter Windows, Mac, Linux, BeOS und wohl möglich auch auf einen Smartphone zu spielen ist. Ich persönlich freue mich riesig, dass das lange warten nun ein Ende hat und mit OpenLoco ein helles Licht am Horizont erscheint welches sicher auch dem ein oder anderen hier im Forum und darüber hinaus eine Freude bereiten wird. Zwar ist OpenLoco noch nicht zu 100% fertig entwickelt und enthält, wie auch auf GitHub zu sehen, noch 3 Bugs, aber es ist dennoch schon Spielbar und denke das auch diese Bugs mit der Zeit vom Entwickler behoben werden. Trotz alle dem wurde mit OpenLoco der große Grundstein gelegt und dies wird sicherlich allen Locomotion-Fans wie auch meine Wenigkeit eine wahre Freude sein! :thumbup:


      Leider habe ich es bis heute noch nicht geschafft es zu installieren, aber insofern mir dieses gelingt, werde ich hier an dieser Stelle auch mal den ein oder anderen Screenshot von OpenLoco präsentieren. Sollte ein jener früher geschafft haben OpenLoco zu installieren, so wäre es natürlich ebenso eine Freude von dem/diejenige Screenshots zu sehen und/oder aber auch eine deutsche Installationsanleitung bzw. Vorgehensweise für OpenLoco zu berichten. Gegebenenfalls gibt es vielleicht auch hier im Forum, insofern dies vom Administrator erlaubt wird, OpenLoco einen Platz in der Filebase bzw. gar eine eigene Sektion für Diskussionen von und über OpenLoco zu geben :rolleyes:

      ... und nun bin ich mal auf eure Reaktionen zu OpenLoco gespannt ;)
      Belarus
      ... das Land, mit dem wohl u.a. längsten Zügen :love:
    • Walter1940 schrieb:

      Von dem was auf der Homepage steht versteh ich zwar nur Bahnhof.
      Ehrlich gesagt, ich auch :D
      Aber nach vielen hin und her googeln bin ich der Sache, wie u.a. nun ein wenig näher gekommen ;)


      Walter1940 schrieb:

      Doch es ist schön zu sehen das dieses Spiel nicht tot zu bekommen ist.



      Dem stimme ich Dir voll und ganz überein! Wie sagt man doch so schön: "Legenden sterben nie" und damit auch nicht das gute alte Loco nicht. Mich persönlich reizen auch keine der vielen anderen neueren Wirtschaftssimulationen aka A-Train, CiM, etc. nicht wirklich und bleibe so stets dem guten alten Locomotion treu. Das einzigste was mich an Locomotion stört ist genau das, was auch schon in diversen Themen und Beiträgen verfasst wurde und das ist die maximale Fahrzeugauswahl, Bahnhofslänge, Kartengröße, Zuglängen, etc. Um so besser, dass es nun mit "OpenLoco" wenigstens ein helles Licht am Horizont gibt, mit welchen man u.a. auch selbst Hand am Quellcode anlegen kann, um ggfls. solche Limits, insofern dies bei "OpenLoco" nicht schon getan wurde, aufheben kann. Dies konnte ich jedoch aufgrund des Scheitern an der Installation noch nicht ausfindig machen.


      Walter1940 schrieb:

      Auch ich würde mich über eine Installationsanleitung freuen.
      Eine genaue Anleitung dazu kann ich zwar noch nicht geben, aber ich bin der Sache schon ein wenig weiter gekommen. Allerdings noch nicht so weit, dass ich es zum laufen gebracht habe. Doch versuche ich mal die Vorgehensweise mal ein Verständlicher auszudrücken, als so kurzweilig wie auf der Homepage. "OpenLoco" selbst muss erst noch als Quellcode kompiliert werden. Dazu wird, gleichermaßen ob nun unter Windows, Linux o.a. Betriebssysteme die Kommandozeile genutzt. Und wie man nun genau vorgeht, folgt nun Schritt für Schritt ...
      TastenkombinationSuchenVerzeichnis
      Windows[STRG]+[R]Suche nach "cmd"Start > Alle Programme > Eingabeauforderung
      Linux[STRG]+[ALT]+[T]Suche nach "terminal"Anwendungen > Systemwerkzeuge > Terminal(je nach Fenstermanager abweichend)
      MacOS---Suche nach "terminal"Gehe zu > Dienstprogramme > Terminal


      • Zum Verzeichnis wechseln in welchen sich der Ordner "openloco" befindet
      • Befehl "mvn package" ausführen


      Hinweis: Um den Befehl "mvn" (steht für das Programm "Maven") nutzen zu können muss "Maven" auf dem System installiert sein. Zudem, so wie auch auf der Projekt-Homepage beschrieben ist, ist das JDK 8 zwingend erforderlich. Ohne eines dieser beiden Programme kann "OpenLoco" nicht kompiliert und somit auch nicht genutzt und/oder gespielt werden!

      Sollte es beim kompilieren, wie auch bei mir, zu Fehlern kommen, so müssen diese erst aus dem Weg geschaffen werden, um eine funktionstüchtige .jar Datei zu erhalten, mit welcher letztlich das Spiel gestartet werden kann. Die bei mir angezeigten Fehler waren im Bezug auf die UTF-8 Kodierung, einer fehlenden Versions- sowie Pluginangabe in der pom.xml des heruntergeladenen .zip-Pakets (openloco). Dies ist, insofern man es weiß, auch schnell in der pom.xml eingetragen. Da der ein oder andere sich aber mit diesen nicht aus kennt, möchte ich hier an dieser Stelle einmal den Quellcode welcher auch die fehlenden Angaben erhält, als .zip-Datei im Anhang zur Verfügung stellen. Diese pom.xml ist mit der originalen aus dem heruntergeladenen und entpackten openloco.zip zu ersetzen. Anschließend kann mittels der o.g. Kommandozeilen- bzw. Terminalbefehl "mvn package" die .jar-Datei kompiliert werden. Um sich dieses hin und her zu sparen, habe ich versucht die entstandene .jar Datei als .zip zu komprimieren und hier im Anhang bereit zu stellen. Allerdings bekam ich dabei immer wieder die Fehlermeldung: "Beim Hochladen der Datei ist ein unbekannter Fehler aufgetreten", so das ich diese nun einfach mal bei Fileupload hochgeladen habe (Link siehe am Ende des Beitrags). Um diese nun auszuführen muss diese ggfls. (je nach Betriebsystem abweichend) "ausführbar gemacht werden. Dies geht unter Linux in dem man mit der rechten Maustaste auf die .jar Datei klickt und unter Eigenschaften > Zugriffsrechte einen Haken bei "Datei ausführbar machen" setzt. Bei Windows sollte dies schon Standardgemäß so sein und bei MacOS muss ich leider passen (sollte aber ggfls. genau so sein wie bei Linux). Damit nun "OpenLoco" startbar ist, muss nun noch ein letzter Schritt überwunden werden und dieser ist, dass man "OpenLoco" mit teilt wo im welchen Verzeichnis der originale ObjData Ordner sitzt und dies geht mal wieder über die Kommandozeile bzw. dem Terminal mit einen Befehl der wie folgt lautet ...

      Quellcode

      1. java -Dopenloco.dataDir=PFAD/ZU/locomotion/ObjData -jar openloco-0.0.1-SNAPSHOT.jar LoadSpriteDemo
      Hinweis: Der Verzeichnispfad, wie im Quellcode zu sehen, muss dabei entsprechend den eigenen angepasst werden!

      Mit diesen o.g. Befehl wird dem "OpenLoco" der Pfad zu den originalen ObjData Ordner mitgeteilt und beim start von "OpenLoco" genutzt. Wer jedoch mit Demodateien arbeiten möchte, der kann auch wie auf der Projekt-Homepage von "OpenLoco" die Demodateien nutzen. Hierfür muss jedoch abweichend von den o.g. Befehl der nun nachfolgende genutzt werden ...

      Quellcode

      1. -Djava.library.path=PFAD/ZU/lwjgl/native/$platform
      Hinweis: Der Verzeichnispfad, wie im Quellcode zu sehen, muss dabei entsprechend den eigenen angepasst werden!

      Mit diesen Befehl wird dem "OpenLoco" der Pfad zur "Lightweight Java Game Library" mitgeteilt welche für das nutzen der Demodateien benötigt wird. Dies habe ich persönlich bis jetzt noch nicht ausprobiert, da ich selbst das Spiel mit meinen originalen ObjData Dateien (und natürlich den vielen Mods von hier) nutzen möchte. Aber und das große aber an dieser letzten Sache ist, dass mir diese zuordnung der originalen ObjData Dateien noch nicht gelungen ist und somit auch "OpenLoco" noch nicht spielen und/oder aber starten konnte. Sollte sich daran etwas ändern, so werde ich natürlich dies hier gerne weiter im Thema aufführen, so das auch alle anderen das "OpenLoco" einmal ausprobieren können ;)


      OpenLoco: OpenLoco.zip (von FileUpload.net)


      Diese Zip-Datei beinhaltet die .jar Datei mit welcher "OpenLoco" gestartet werden kann. Das einzigste was noch getan werden muss ist, dass "OpenLoco" noch wie o.g. den Pfad zu den originalen ObjData Ordner zugewiesen werden muss. Da mir dies, zumindest bisher, noch nicht gelungen ist, kann ich dazu noch nichts weiter sagen. Aber ich halte euch auf dem laufenden!
      Dateien
      • pom.xml.zip

        (873 Byte, 2 mal heruntergeladen, zuletzt: )
      Belarus
      ... das Land, mit dem wohl u.a. längsten Zügen :love:
    • Hallo,
      entschuldigt bitte den so zu sagenden Doppelpost, aber es gibt mal wieder einen, wenn auch kleinen, Fortschritt und sogar die ersten Screenshots :)
      Die im vorherigen Beitrag genannten Fehlermeldungen wurden, so wie dort schon genannt, aus dem Weg geschaffen und letztlich lag es nun nur noch an der Zuweisung des ObjData Ordners der ausführbaren .jar Datei. Dabei ist mir selbst ein kleiner Fehler bezgl. der richtigen Pfadangabe unterlaufen. Da sich alle Dateien und auch der ObjData Ordner in ein und dem selben Ordner "openloco" befinden, sollte natürlich erst per Terminal in diesen Ordner gewechselt werden um die .jar Datei zu starten. Da ich mich damit aber schon in diesen Ordner befinde, macht es keinen Sinn, dass ich im auszuführenden Script dann nochmal den "openloco" Pfad angebe - also ein Fehler der Pfadangabe. Gesagt getan und nun wurden auch der ObjData Ordner erfolgreich dem ausführbaren .jar Datei zugeordnet. Anschließend lässt sich das Spiel dann mit folgenden Befehl starten ...

      JavaScript-Quellcode

      1. java -Dopenloco.dataDir=PFAD/ZU/locomotion/ObjData -jar openloco-0.0.1-SNAPSHOT.jar *****


      Die am Ende stehenden ***** stehen dabei für weitere Funktionen, wie ebenso auf der Projekt-Homepage geschildert und diese wären ...
      • LoadSpriteDemo - Ladet eine Sprite Demo des HST-Zugs und zeigt diesen an
      • TerrainDemo - Zeigt eine Terrain Demo des Spielfelds an
      • TrackDemo - Zeigt eine Eisenbahngleis Demo auf den Spielfeld an
      All diese konnte ich bisher starten und auch einsehen (siehe auch die Screenshots im Anhang). Nur ist dieses nicht das Spiel an sich, welches auch an den Befehlen in welchen das "Demo" zu heraus zu nehmen ist. Doch es gibt noch ein weiteren Befehl ...
      • NashornScriptDemo
      Dieser soll eine spezielles Javascript mit einer init Methode der BasisDemo laden und erlaub das dynamische testen von neuen Features. Jedes kann durch anhängen des classen Namen in der Kommandozeile (also Terminal) gestartet werden. Um dieses "NashornScriptDemo" nun zu starten muss folgender Befehl ausgeführt werden ...

      JavaScript-Quellcode

      1. java -Dopenloco.dataDir=PFAD/ZU/locomotion/ObjData -jar openloco-0.0.1-SNAPSHOT.jar NashornScriptDemo
      Wenn ich dieses nun ins Terminal eingebe und ausführe, erhalte ich jedoch eine Fehlermeldung ...

      JavaScript-Quellcode

      1. Please specify path to init script to run as -Dopenloco.initScript=PFAD/ZU/initScript.js
      Daraus könnte ich nun entnehmen, dass ich ihm den Pfad zum initScript.js mitteilen soll, welchen ich aber nirgends finden kann. So das ich letztlich daraus einfach mal entnehme, dass hiermit das anhängen von o.g. class Namen gemeint ist und genau diese an den ausführbaren Script angehangen werden muss. Jedoch bin ich derweil noch dabei heraus zu finden, wo in welchen Ordner von "openloco" sich diese Scripts befinden, wie diese an den o.g. vorhandenen ausführenden Script angehangen werden. Zudem entnehme ich den "NashornScriptDemo" das auch dieses "nur" eine Demo ist, aber laut Projekt-Homepage dieses auch spielbar ist/sein sollte und ich mich daher noch mehr frage, wie sich das Spiel nun selbst starten lässt - also nicht die jeweiligen Demos! Nichts desto trotz, wurde es zumindest bis hier hin erst einmal bewältigt und kann dementsprechend auch schon einmal ein paar Screenshots zeigen ;)

      Bildschirmfoto zu 2017-04-14_08-42-30.png Bildschirmfoto zu 2017-04-14_08-55-04.png Bildschirmfoto zu 2017-04-14_08-56-22.png

      Von links nach rechts gesehen, wäre nun ganz links eine sich auf den Punkt kreisende HST-Lok (aus dem originalen ObjDaten). Bisher habe ich es noch nicht versucht den HST Namen im ausführbaren Script mit einen anderen Zug, Bus, Tram oder wie auch immer auszutauschen, aber dies wird eine meiner nächsten Tests sein die ich hier dann u.a. auch präsentieren werde. AUf den mittleren Bild sieht man die Gleisen samt Brückenelemente und auf dem rechten Bild die Anhebung der Landschaft. Es sei aber angemerkt, dass dies "nur" eine Demonstration der Sprites sind und, zumindest bisher, noch keine gespieltes Spiel. Doch genau daran werde ich dran bleiben und auch hier berichten, sobald es entweder Neuigkeiten bzw. Erfolge bei der Ausführung zu "OpenLoco" gibt oder aber das Spiel so ausführbar ist, dass es letztlich auch vollkommen gespielt werden kann. Jetzt, wo man das Video gesehen hat, dass dort das 20-fache an Fahrzeugen ausgewählt werden kann und zudem auch noch (wenn auch derweil nur bis hier hin) das Spiel so weit installieren konnte, werde ich nicht locker lassen und so lange dran bleiben bis dieses voll und ganz Spielbar ist ;)

      Insofern dies dann als vollständiges Spiel gestartet und gespielt werden kann und zudem der Quellcode (Javascript) auch sehr übersichtlich in einzelnen Classen in diversen Ordnern getrennt wurde, wird das entsprechende anpassen z.B. der maximalen Kartengröße, max. Bahnhofslänge, max. Signale, Reperaturzeiten der Fahrzeuge, Starjahre, etc. vereinfachen. Doch dazu möchte ich "OpenLoco" erst einmal vollständig zum laufen bringen und mich dann, insofern dies geschehen ist, dann an den zuvor genannten Modifikationen begeben (insofern diese nicht ebenfalls schon in "OpenLoco" enthalten sind bzw. eingefügt wurden). Vorzustellen wäre auch eine Anpassung bzw. eines hinzufügen einer weiteren Classe, welches ein weiteren Menüpunkt im Spiel für z.B. zusätzliche Elemente wie u.a. die von RobinH's Autobahn-Leitplanken, Schilder, usw. - oder gar die Möglichkeit, so wie es bei OpenTTD auch ist, dass man gar Kanäle verlegen kann. Doch damit will und werde ich mich nun nicht zu weit aus dem Fenster lehnen, sondern bleibe wie gesagt erst einmal daran, dass das Spiel vollständig läuft - bleibt weiter gespannt und freut euch zumindest schon einmal, dass es endlich das gibt, worauf viele lange Zeit gewartet haben: Ein Rekonstrukt des guten alten Locomotion = OpenLoco :thumbup:
      Belarus
      ... das Land, mit dem wohl u.a. längsten Zügen :love:
    • Nicht böse sein. Doch mit dieser Scripterei komm ich im Augenblick nicht ganz klar. :S ?(
      Aber die Screenshots sehen verflucht gut aus.
      Daher warte ich jetzt erst mal ab wie sich das ganze entwickelt. Denn es kann nicht Sinn der Sache sein das 2/3 das überhaupt nicht versteht. Oder ich bin zu alt für den Scheiß ;)

      Jedenfalls danke ich dir erst mal für all deine Bemühungen uns das zu erklären und Nahe zu bringen.
    • Walter1940 schrieb:

      Nicht böse sein. Doch mit dieser Scripterei komm ich im Augenblick nicht ganz klar.
      Da mach Dir mal keine Sorgen, denn ich werde ein solches niemanden übel nehmen, wenn der ein oder andere ein solches nicht versteht, verstehen kann oder aber will. Es gibt immer etwas was der ein oder andere nicht versteht, genau so wie meine Wenigkeit, welcher auch nicht alles versteht. Somit Kopf hoch und alles wird gut ;)

      Walter1940 schrieb:

      Aber die Screenshots sehen verflucht gut aus.
      Das sehe ich definitiv genau so ;)


      Walter1940 schrieb:

      Daher warte ich jetzt erst mal ab wie sich das ganze entwickelt.
      OpenLoco wird von den bereits o.g. Entwickler weiter entwickelt. Das einzigste was ich dabei hoffen werde, dass dieser Entwickler die .jar Datei auch als Installationsroutine für diverse Betriebssysteme (Windows, Linux, MacOS, etc.) anbieten wird. Da es zumindest für Linux möglich ist eine .jar Datei in ein z.B. .deb oder .rpm Paket, sprich zur Installation, bereit zu stellen, so denke ich, dass dies auch für Windows, MacOS, etc. möglich sein wird. Anderfalls sollte und kann man sich auch mit der .jar zufrieden geben. Denn wie lange haben wir auf ein solches gewartet, dass es ein so zu sagenen Locomotion Nachfolger geben wird :)


      Walter1940 schrieb:

      Denn es kann nicht Sinn der Sache sein das 2/3 das überhaupt nicht versteht. Oder ich bin zu alt für den Scheiß

      Also derweil ist das ganze auf GitHub ja noch ein Projekt welches noch weiter entwickelt wird und noch die o.g. 3 Bugs beinhaltet. Somit muss man von dem Quellcode, insofern man selbst kein Entwickler ist, auch nicht zwanghaft etwas verstehen. Diese Scripterei wird aber zum guten Ende sicher nicht so bleiben, sondern dann wird es sicherlich entweder eine Installationsroutine für Windows, Linux, MacOS, etc. geben oder aber mindestens die gesagte einfache .jar Datei mit welcher sich das Spiel dann ebenso starten lässt. Sollte dies aber der Fall sein, so könnte man sich, insofern man das Wissen dazu hat, dann die .jar Datei in eine Installationsroutine umwandeln lassen. Ich selbst kann dies, mal abgesehen von Linux, leider nicht. Sollte aber ein jener gleichermaßen wie ich auf Linux setzen, so könnte ich demjenigen dann das .deb oder .rpm Paket zur Verfügung stellen.



      Walter1940 schrieb:

      Jedenfalls danke ich dir erst mal für all deine Bemühungen uns das zu erklären und Nahe zu bringen.
      Dafür nichts zu danken und immer wieder gern. Da ich dieses Projekt erst selbst vor kurzen entdeckt habe, möchte ich dies allen anderen eben auch vorstellen und nicht vorenthalten. Da dieses aber zumindest erst einmal noch mit Scriptereien verbunden ist, versuche ich dies hiermit auch allen anderen ein wenig näher zu bringen. Sicherlich ist dies derweil noch den ein oder anderen zu viel des guten, aber ich denke, dass wenn ich das Spiel nun endlich mal 100%ig zum laufen bekommen habe, dass dies dann für alle eine Freude sein wird. Bis dahin bleibe ich erst einmal am Ball und versuche alles erdenkliche das Spiel zum laufen zu bekommen. Sobald dies dann der Fall ist, werde ich dazu auch eine genaue Installationsanleitung allen bereits stellen - wenn - insofern es im Machbaren ist, nicht sogar die fertige .jar Datei und/oder eine Installationsroutine. An diesen Wochende haben wir hier im Land (Belarus) Ostern und damit auch viel Zeit der Sache näher auf den Grund zu gehen. Somit meinerseits an dieser Stelle allen ein schönes Osterfest und bleibt gespannt auf "OpenLoco" ;)
      Belarus
      ... das Land, mit dem wohl u.a. längsten Zügen :love:
    • Ich freue mich auch, wenn seit "In-Sucht-Nahme" von "Transport Fever" auch etwas verhaltener.

      Was mich an Loco am meisten gestört hatte, waren die begrenzten Kartengrößen und viel wichtiger, die fehlende, automatische Fahrzeugersetzung. Letzteres hat mir nach mehreren Stunden Städtewachstums durch Straßenbahnen schlicht den letzten Nerv geraubt.

      Auch hatte ich im Mapeditor des Originalspiels ein Problem bei der An- und Abwahl von Fahrzeugen (Mods). Nach einer gewissen Zeit ist mit der Editor samt Loco.exe einfach abgeschmiert. Damit hatte ich immer recht wenige der wirklich gut gemachten Mods laufen. Man müsste da die Möglichkeit haben, eigene Presets der Fahrzeugzusammenstellung zu speichern.

      Wenn man dann noch hier und da mit höherwertigen Texturen arbeiten könnte (Mod?), wäre das natürlich fabulös. Spieltechnisch ist der Titel durchaus noch auf einem relativ aktuellen Niveau. Oder anders... Ich hab schon Schlimmeres gesehen. :D
      LegoMann