Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Simutrans-Setup TEST VERSION !
#1
Hallo zusammen!

Ich hatte vor längerer Zeit ja mal angekündigt, eine Simutrans-Setupdatei zu erstellen.
Hier sind nun die ersten zarten Versuche online gestellt, damit Ihr darüber herfallen könnt! Big Grin
Wie der Titel schon sagt ist dies erstmal eine Test Version, alles ist noch änderbar.

Die Setupdatei ist mit NSIS, dem freien Installer Script, geschrieben worden.

Eure Meinung ist mir sehr wichtig und ich würde mich freuen wenn Ihr das Setup Programm einfach mal runterladed und ausprobiert.
Die Datei ist nur 1,9MB groß und enthält das 64er Pak incl. Food und Waste Chain.
Andere Paks können via Internet runtergeladen und installiert werden. (optinal)

Bevor Ihr das Paket installiert, bitte beachtet, das der Installer Momentan noch ohne nachzufragen in den Ordner "Programme\Simutrans" die Dateien kopiert. Solltet Ihr dort euer altes Spiel liegen haben, wird es überschrieben. Bitte sichert es vorher!

Angedacht ist, das es zur jeder neuen Version (also 0.86.xx) eine neue Setupdatei geben soll.
Alle Bugfix Releases (also 0.86.xx.x) eine Updatedatei.

Versions Informationen :
Das Paket enthält :
  • Die GDI Version der Simutrans EXE
  • Das 64er Pak
  • Das Food Pak des 64er Paks
  • Das Waste Pak des 64er Paks

Was ist noch geplannt :
  • SDL Version mit einbinden (Auswahl SDL/GDI)
  • Download von "online" Paks abrechbar.
  • Nachschauen ob der Simutrans-Ordner in "Programme" schon existiert und ggf. nachfragen.
  • weitere Wünsche und Anregungen ...
Nun last die Spiele beginnen ! Wink >>> DOWNLOAD <<<

Kanten
Zitieren
#2
@Kanten, wo holt das Programm die neuen Versionen her? Wie erkennt es, welche Installations-Pakete neu sind? Wenn es einfach überschreibt, weiß es nicht, was ich auf dem Rechner hab. Es muss ja nicht alles gesaugt und installiert werden, nur weil es da ist.

Kann es selbst heruntergeladene Dateien handhaben?

Erfolgt ein Eintrag in der Registry? Klappen Aktualisierung und bei Bedarf die Deinstallation (Entfernen der Registry-Einträge)?

Das Verzeichnis sollte wählbar sein. Nach der ersten Installation wird es erkannt, nachgefragt und genutzt.

Config-Dateien sollen getrennt behandelbar sein. Es sollte auf Wunsch jeweils ein Unterverzeichnis /conf (oder in der Art) gebildet werden. Nur dort kommen die Dateien rein. Das aufwändigste bei Paketinstallationen ist die Rettung aller eigenen Configs. Ich muss etwa die /text/de.tab komplett durchgehen, schauen, ob neues dazu kam. Das geht nur manuell, da kein Programm mein Übernahmeschema erkennen könte. Dazu bräuchte es eine Sectionentrennung nach Bildbutton-Hints und Schriftbutton-Hints bzw. Festlegungen aus bereits bekanntem. Sowas programmiert niemand.


*Daumendrück*, du hast nichts leichtes in Angriff genommen. 8)
Zitieren
#3
@ Uranor, ich werde jetzt mal versuchen Punkt für Punkt zu klären.
Also mal los:

Punkt 1 (download) :
Momentan zieht das Setup-Programm die Dateien von einem Webspace der mir gehört. (Sofern die Frage sich darauf bezog.)
Updates werden am Anfang als "kleine" Setupdateien angeboten.
Sie wissen nur das es den Ordner Simutrans gibt. Nicht welche Version sich darin befindet. Sie überschreiben einfach was sie vorfinden.
Das soll sich im weiteren Verlauf des Projektes ändern.

Es soll entweder im Simutrans-Ordner eine Text Datei geben die die aktuellen Versionsnummern der einzelnen Pakete enthält, oder Einträge in der Registry.
Wobei mit ersteres besser gefällt.
Zum Vergleich wird eine Text Datei aus dem Internet mit der auf der Festplatte verglichen und neuere Files runtergeladen. So mein Wille! Wink
Es werden nur komplette PAKs zu download Angeboten, nicht die einzelnen Files.
Das würde an Aufwand nicht zu bändigen sein. Auschliessen will ich es aber nicht, das ich auf diese Idee einmal zurückkomme.

Punkt 2 (heruntergeladene Dateien handhaben) :
Ist mir immoment nich ganz klar worum sich deine Frage dreht...? ?(
Wenn du meinst, ob es die runtergeladenen Zip Dateien entpacken kann. Das kann es.

Punkt 3 (Registry) :
Momentan werden noch Registryeinträge gesetzt. Möchte ich aber nicht unbedingt beibehalten. Wie in Punkt 1 beschrieben möchte ich lieber eine Datei anlegen die alle speicherwürdigen Daten sammelt.
In dieser Version werden die Registryeinträge beim Deinstallieren aber wieder gelöscht.

Punkt 4 (Verzeichnis) :
Das sollte schon jetzt funktionieren. Das Setup-Programm schreibt das in die Registry und liest es bei einem erneutem Start wieder aus.

Punkt 5 (Config-Dateien) :
Da es nur Updates in PAK-Form geben soll werden mit einem neuen PAK, z.B. 128er Pak, auch die neuen de.tab Dateien erneuert.
Die Simuconf.tab und andere werden bei einem Update nicht verändert.
Man könnte auch alle vorhandenen Config-Dateinen vorher zu Sicherheit erst einmal in einen anderen Ordner dublizieren.

Das ich mich damit ziemlich weit aus dem Fenster lehne ist mir klar, darum möchte ich alle die Lust verspüren mir dabei zu helfen, herzlich Einladen!
Die Scriptsprache ist wirklich super einfach zu erlernen.
Wenn sogar ich das kann ... Wink

Kanten
Zitieren
#4
@Kanten, zum Testen ist "Programme\Simutrans" natürlich klasse, da es am eigentlichen Simutrans nichts ändert. Die Pakete werden ja nach [Laufwerk]\Simutrans entpackt. Ich hab z.B. eine Partition für Spiele. Das kreuzt sich also nicht.

Punkt 1: Das Programm hat im PaketName die Versionsnummer. Das sollte gut handhabbar sein. Wenn auch die Pakete in der Ankündigung aktuelle Versionsnummern bekämen, das wär top, auch für die manuelle Saugung.

Punkt 2: Klar, es muss ja entpacken können. Ich meinte, ob es auch (später) Pakete handhaben kann, die man selbst runtergeladen hat. Sie liegen ja dann in einem setup Verzeichnis.

Punkt 5: So dachte ich. Optional könnte man setzen, dass vorhandene Config-Dateien in einen Unterordner kopiert werden. Natürlich würde eine schon vorhandene überschrieben.

Allerdings gibt es immer wieder Basispak-Updates. Da wären dann mehrere Configs zu sichern. Wenn aber eine geht, dann gehen grundsätzlich auch mehrere. Am Paketstring "basispak" wäre die Maßnahme unterscheidbar.



*Hihi*, was heißt, wenn sogar du das kannst? =) Es kommt immer auf den Umfang an. Solange es noch überschaubar bleibt, kann man es noch lernen. Mit viel Übung kann man die Grenzen immer weiter schieben. Schau @prissi an. Er entfern Wanzen, wo andere wie der olle ich nicht mal eine Übersicht gewinnen können. Der Ursprung war immer das "Hallo World". Und die Sprache ist wirklich schön. Ich hab mal kurz in den Beispielscript gelinzt. Nach der Aufmachung stell ich mir die Doku vorbildlich vor.
Zitieren
#5
Was ich so mitbekommen habe sind xml-Dateien super, wenn man die Registry meiden will.
Mysterium Simutransum
Zitieren
#6
@ Uranor
Ich habe jetzt mal Simutrans auf eine externe Platte installiert.
Sagen wir mal auf Z:\Simutrans\. Alle Verknüpfungen im Startemnü wurden richtig gesetzt. Beim erneuten Start hat das Setup auch den Ordner wiedergefunden. Also Z:\Simutrans\! Auch das deinstallieren hat wunderbar geklappt.
Wenn man sich also einmal für einen Speicherort für Simutrans entschieden hat, wird der auch beibehalten.

Ich merke schon das die Update Geschicht noch ein wenig kniffelig wird.
Ich hatte mir das so gedacht:
Mit dem Spiel wird auch eine art Textdatei installiert, die die aktuellen Versionsnummern der installierten PAKs enthält.
Ein Update Programm (Auch in NSIS geschrieben) das man aus dem Startmenü startet, vergleicht einfach die beiden Textdateien miteinander. Es installiert gegebenenfalls die neuen Pakete nach, und aktuallisiert die Textdatei auf der Platte.
Das wäre die einfachste art.

zu Punkt 1
Die namen der PAKs, also z.B. "waste64-86-03.zip" wären da egal. Das Update Programm würde die Dateien einfach aus einem Ordnersystem wie z.B. /.../current/64pak/waste/waste64-86-03.zip per /.../current/64pak/waste/*.* downloaden. natürlich nur dann wenn der "Textdatei" abgleich das erfordert.

zu Punkt 2
Das war eigentlich nicht vorgesehen. Wenn Updates zur verfügung stehen, dann werden sie mittels Updater installiert.

zu Punkt 5
Die Überlegung hierbei war diese: Config-Dateien werden bei einem Update generell gesichert. Das 64 BasisPak und das 128 BasisPak enhalten keinen Config-Ordner. Das bedeutet, bei der erstinstallation wird ein Config-Ordner erzeugt, dieser wird aber nur noch dann verändert, wenn es wirklich einmal eine neu, z.B. Simuconf.tab, Version geben sollte.

zu NSIS
Die Dokumentation ist hier super. Sowas habe ich noch bei keinem anderen Projekt erlebt...

@ mip
Da bin ich erhlich gesagt auch nicht so im Thema. Habe mal kurz im NSIS Forum nachgeschaut was da so läuft. Werde mich da mal schlau machen. Danke!

Kanten
Zitieren
#7
@Kanten Die Pak-Dateien haben doch ein Compilierungsdatum, vielleicht kannst Du es damit abgleichen? Dann ersparst Du Dir die Textdatei und kopierst nur noch Dateien des jüngsten Datums.
Gruss
Randy
"Erst wenn der letzte Baum gerodet, der letzte Fluss vergiftet, der letzte Fisch gefangen, werdet Ihr feststellen, daß man Geld nicht essen kann!"
Weissagung der Cree
Zitieren
#8
@ Randy
Wie kann ich den das Compilierungsdatum auslesen?
Und wenn ich das hinbekomme, wie bring ich das bloß dem Script bei? Big Grin

@All
Ich habe mir die letzten Tage schon tausende Szenarien durch den Kopf gehen lassen, aber es gibt immer irgendwo einen Harken...

Eine Lösung wäre, wenn der Setup-Programm überhaupt keine Spieldateien beinhaltet.
Man lädt dann immer die gerade aktuellen Dateien aus dem Netz. (Ist leider für unsere Modem-Nutzer nicht so schön.)
Wenn einmal das Spiel und die gewünschten PAKs installiert sind, würde das Setup-Programm beim erneuten start zu einem Update-Programm mutieren.
Da man in NSIS leider keine Onlineabfrage der Art: "Welche Version hat das Pak auf dem Server, und wenn es neuer ist, installiers" machen kann, sondern nur "Runterladen, Versions vergleich, Neue Version installieren" wäre das eine ganz schöne verschwendung an Traffic. (Mal abgesehen davon das die Modem-Nutzer mich killen würden!).
Also würde nur die Lösung mit dem Text- XMLdatei Vergleich funktionieren.
Eine 5kb Datei runterzuladen tut keinem weh.

Was haltet Ihr von dieser Idee?

Kanten
Zitieren
#9
@Kanten,

zu Punkt 0
"das man aus dem Startmenü startet" spielt für u.a. mich keine Rolle. Ich nutz kein Startmenü sondern Tastakombi und Desktopicon. Ich zieh mir aber auch die Verknüpfungen aus den Verzeichnissen, was Einsteiger-Usern durchaus Schwierigkeiten bereitet. Kurz:
a) Biete den Startmenü-String zum Variieren an. "Programme" ist unter WIN wahllos ungeordnet überfrachtet, schon immer. Wenn, dann schreib ich Spiele\Simutrans (das mal als allgemeiner Tip).
b) Desktopicon werden sicher realisierbar sein. Interessant wäre sicher auch ein Icon zu jeder Stat-.bat. Problemloser kann man die verschiedenen pak gar nicht starten.

zu Punkt 1
Also wenn geht, @Randy007's Idee. Damit würdest erst mal du nur dann Pakete saugen können, wenn sie wirklich neuer sind. Und du bräuchtest keine Textdatei anlegen.

Die Programmdateien müssen ja sowieso bei jeder Ankündigung gesaugt und aktualisiert werden. Dazu fällt mir grad ein, Testspieler werden immer die neueste Programm-Version installieren. Spieler bräuchten eine Auswahl, ob sie neu oder stable installieren wollen. Die aktuellen pak sind ja in beiden Fällen kompatibel (es kann ggf. seltene Ausnahmen geben).

zu Punkt 5
Für viele Spieler wäre "wird aber nur noch dann verändert, wenn es wirklich einmal eine neu, z.B. Simuconf.tab, Version geben sollte." richtig, da sie an den Configs nichts verändern. Viele stellen sie aber vor allem die simuconf.tab individuell ein. Also müssen die Configs bei jedem Update gesichert werden, auch wenn sie nicht neu sind. - Denn auch mit altem würde man sich das eigene überschreiben.
Zitieren
#10
@Kanten,

zu @All:
XML oder Textdatei, was eben geht. Lokal prüft dann das Setup und schlägt bei Bedarf ein Update vor, sagt ansonsten, dass sich keine neueren Dateien auf dem Server befinden. So müsste es ansich gehen.
Zitieren


Gehe zu:


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