Humble Savegame Backup GTK

Veröffentlicht am

Nachdem ich hier zuletzt mein Shell-Skript zur einfachen Sicherung und Wiederherstellung von Spielständen vorgestellt habe, hatte ich den Wunsch, ein „richtiges“ Programm daraus zu machen. Zum einen, weil es benutzerfreundlicher sein sollte und zum anderen auch, um dabei etwas zu lernen. Letztendlich habe ich mich dazu entschieden, ein Programm mit GTK-Oberfläche zu bauen, mit Python und PyGTK. Glade sollte mir beim GUI-Design helfen.

Ich möchte euch hier nun in erster Linie das (bisherige) Ergebnis kurz vorstellen. Gleichzeitig soll das aber auch ein Aufruf zur Mithilfe, zum Testen, zu Bugreports u.ä. werden. Dazu aber später mehr.

Zunächst einmal zum Programm und wie es installiert und bedient werden kann…

Installation

Es existiert derzeit zwar ein Debian-Paket zur Installation, aber noch keine Paketquelle. Ladet euch also das aktuelle Paket herunter (humblesb_0.2_all.deb; wird später in den Download-Bereich verschoben) und installiert es mit folgendem Kommando (die Versionsnummer im Dateinamen später natürlich ggfs. anpassen):

dpkg -i humblesb_0.2_all.deb

Da ich mit dem Schnüren von Debian-Paketen noch nicht wirklich vertraut bin, kann ich nicht sicher sagen, in welchen Umgebungen es ggfs. unter welchen Voraussetzungen zu Problemen kommen könnte. Sowohl auf meinem 64-bit Oneiric als auch auf einem frischen 32-bit Maverick lies sich das Paket jeweils ohne Probleme installieren (und das Programm benutzen).

Bedienung

Die GTK-Oberfläche des Programms

Das Programm findet sich nach der Installation unter seinem Namen Humble Savegame Bundle im Menü bzw. im Unity-Dash wieder – unter der Spiele-Rubrik.

Bei Programmstart wird geprüft, welche Spiele installiert sind bzw. zu welchen Spielen Spielstände existieren. Nur installierte Spiele werden in der Auswahlliste dann angezeigt. Bei der Liste der bekannten Spiele hat sich seit dem Shell-Skript Vorgänger nichts verändert. Schaut also im vorigen Artikel nach der Spiele-Liste.

Es werden nun also die Spiele zur Auswahl angezeigt. Dahinter jeweils eine Checkbox zum Auswählen der Spiele, die verarbeitet werden sollen. Im Anschluss wird dann in der Werkzeugleiste der Button zum Sichern bzw. zum Wiederherstellen der Spielstände geklickt.

Mehr Erklärung bedarf die normale Bedienung, denke ich, vorerst nicht. Höchstens noch der Hinweis, dass die Sicherung der Spielstände per Default nach ~/.humblesb/backups erfolgt.

Das Zielverzeichnis kann natürlich angepasst werden. Genauso wie das Programm auch dafür vorbereitet ist, dass es einfach um weitere Spiele erweitert werden kann. Was die „fortgeschrittenen“ Themen angeht, will ich aber lieber später noch einmal einen weiteren Artikel schreiben.

„Disclaimer“

Ich möchte an dieser Stelle noch einmal erwähnen, dass ich zwar Entwickler bin, aber eigentlich nicht in der Python-Welt zu Hause. So gut wie alles in diesem Projekt war deshalb neu für mich und ich musste so ziemlich alles mühsam erforschen.

Das soll einerseits heißen, dass das Programm sicher noch die ein oder andere Macke hat – zumal die aktuelle Version praktisch als Beta-Version angesehen werden kann. Andererseits will ich damit aber auch sagen, dass der Code vielleicht nicht unter allen Gesichtspunkten dem kritischen Blick eines Python-Profis standhalten wird.

Ausblick

In Zukunft möchte ich noch dafür sorgen, dass das Programm zumindest auch in englischer Sprache läuft. Vielleicht kann ich sogar auch selbst für eine spanische Übersetzung sorgen. Außerdem soll es einfach in andere Sprachen übersetzt werden können.

Natürlich sollen auch noch viele weitere Spiele in die Default-Liste aufgenommen werden.

Bei Launchpad habe ich Humble Savegame Backup als Projekt angelegt. Würde mich freuen, die ein oder andere Unterstützung dort zu bekommen:

  • Falls euch Fehler auffallen, meldet diese bitte (beachtet aber bitte, dass ich euch selbstverständlich keine zeitnahe Bearbeitung zusichern kann).
  • Fragen zum Projekt können hier ebenfalls gestellt werden.
  • Natürlich würde ich mich auch über das ein oder andere Code-Review freuen. Hierzu sei gesagt, dass der Aufbau des Code-Verzeichnisses derzeit noch sehr unbedarft aussieht. Das liegt daran, dass ich noch den richtigen Weg für die Paket-Erstellung suche. Das wird sich also sicher noch einmal grundlegend ändern.
  • Falls ihr weitere Spiele habt, die eingebunden werden könnten/sollten, dann gebt mir doch bitte auch Bescheid. Tragt dafür vielleicht auch einfach eine Frage bei Launchpad ein.
  • Für alles andere nutzt doch einfach das Kontaktformular oder hinterlasst hier ein Kommentar.
  • Achso und: wer einen Beitrag zur optischen Verbesserung (z.B. Icons für die Buttons) beisteuern kann, melde sich doch bitte auch… :) Es kommen natürlich nur Quellen in Betracht, die für ein GPL-OpenSource-Projekt frei benutzt werden können.

Wie gesagt, besteht auch noch großer Klärungsbedarf in Sachen Debian-Paket-Erstellung und Projekt-Struktur. Vielleicht findet sich jemand, der Lust, Zeit und Geduld hat, mir dabei unter die Arme zu greifen?!

Ich beabsichtige übrigens ein paar Artikel hier im Blog zu Dingen zu veröffentlichen, die ich mir im Projekt-Zusammenhang erarbeiten musste und die ich für besonders lehrreich halte – oder die mich besonders viel Nerven gekostet haben. Also Artikel aus den Bereichen Python, PyGTK, Glade, Debian-Pakete usw. Seid also gespannt… :)

 

Update, 30.01.2012: Ich habe mittlerweile auf den Hinweis von „Selig“ (siehe Kommentare) hin ein Formular erstellt, über das ihr Informationen zu weiteren Spiele melden könnt.

 


Dieser Artikel wurde in der/den Kategorie(n) _Anwendungen, Planet-U, Programmierung und Skripting veröffentlicht und mit den Tags , , , versehen.

4 Kommentare zu Humble Savegame Backup GTK

  1. Kommentar von Selig
    30. Januar 2012, 13:28 Uhr.

    Könntest du nicht ein Kontaktformular einrichten, bei dem man dir alle Relevanten Daten und den Spielen schicken kann?
    etwa so:
    – Titel
    – Publischer
    – Beispiel Screenshot oder spiele Icon
    – wo werden die spiele Daten gespeichert?
    etc.
    Ein Programm um spiele zu sichern tönt eigentlich noch gut. Aber die Leute sind Faul. würdest du das noch mit einem Downloader/Installer oder einem Online Statistik Vergleichsdienst kombinieren, dann wäre die Hürde nicht so gross.

    • Kommentar von Gerald
      30. Januar 2012, 13:43 Uhr.

      Das mit dem Formular wäre natürlich eine gute Sache. Vielleicht kann ich das ja quick’n’dirty über ein GoogleDoc machen… Mal sehen. Zumindest sollte ich genauer definieren, welche Informationen ich benötige. Werde ich in Kürze nachholen, aber das, was du da aufgezählt hast ist nach momentanem Stand schon mehr als genug.
      Zum letzten Satz: was meinst du mit „Online Statistik Vergleichsdienst“?
      Danke und Gruß, Gerald

  2. Kommentar von FERNmann
    30. Januar 2012, 16:17 Uhr.

    PyGTK wird nicht mehr weiterentwickelt, Nachfolger ist PyGObject, mit dem man nicht nur GTK ansprechen kann, sondern auch alle anderen GObject-Bibliotheken wie z.B Clutter, GIO usw.
    http://live.gnome.org/PyGObject

    • Kommentar von Gerald
      30. Januar 2012, 16:44 Uhr.

      Hey, Danke für die Info. Werde ich mir mal ansehen, in der Hoffnung das relativ leicht umbauen zu können. Naja, ich wollte ja auch was dabei lernen… :)
      Derzeit möchte ich allerdings den Fokus erst mal noch auf die Projekt-Struktur und das Packaging legen.
      Gruß, Gerald

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>