cgboard - knowledge is the key
Registrierung Kalender Mitgliederliste Admins und ihre Knechte Suche Häufig gestellte Fragen Zur Startseite

cgboard - knowledge is the key » Board Allgemein » Board-Projekte » [GameFixer] GameFixer Diskussionsthread » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Seiten (4): « erste ... « vorherige 2 3 [4] Neues Thema erstellen Antwort erstellen
Zum Ende der Seite springen GameFixer Diskussionsthread
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Thorium Thorium ist männlich
Ober-Guru


images/avatars/avatar-1611.gif

Dabei seit: 25.09.2005
Beiträge: 2.692

Im Wartungs Modus:
Level: 51 [?]
Erfahrungspunkte: 12.120.633
Nächster Level: 13.849.320

1.728.687 Erfahrungspunkt(e) für den nächsten Levelanstieg

Themenstarter Thema begonnen von Thorium
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Scheint so das der Injector keinen Schreibzugriff auf den Prozess bekommt. Schon merkwürdig, er sollte nämlich volle Zugriffsrechte auf den Prozess haben, da er ihn per CreateProcess gestartet hat. Möglicherweise ist das unter Win98 anders aber ich kann keine Infos dazu finden.
Ich werd da morgen mal was testen zu.

__________________
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
30.06.2012 19:03 Thorium ist offline E-Mail an Thorium senden Beiträge von Thorium suchen Nehmen Sie Thorium in Ihre Freundesliste auf
Thorium Thorium ist männlich
Ober-Guru


images/avatars/avatar-1611.gif

Dabei seit: 25.09.2005
Beiträge: 2.692

Im Wartungs Modus:
Level: 51 [?]
Erfahrungspunkte: 12.120.633
Nächster Level: 13.849.320

1.728.687 Erfahrungspunkt(e) für den nächsten Levelanstieg

Themenstarter Thema begonnen von Thorium
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Bräuchte ein wenig Hilfe bei Dune 2000, hier lesen wer helfen möchte: Dune 2000: Bildschirm verschoben (XP)

__________________
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
01.07.2012 00:53 Thorium ist offline E-Mail an Thorium senden Beiträge von Thorium suchen Nehmen Sie Thorium in Ihre Freundesliste auf
Thorium Thorium ist männlich
Ober-Guru


images/avatars/avatar-1611.gif

Dabei seit: 25.09.2005
Beiträge: 2.692

Im Wartungs Modus:
Level: 51 [?]
Erfahrungspunkte: 12.120.633
Nächster Level: 13.849.320

1.728.687 Erfahrungspunkt(e) für den nächsten Levelanstieg

Themenstarter Thema begonnen von Thorium
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich habe mich jetzt für eine Lizenz entschieden unter der ich den GameFixer ab v0.04 lizensieren werde. Und zwar unter der MIT Lizenz. Diese Lizenz erlaubt praktisch alles, schützt mich als Rechteinhaber aber vor Vorderungen, die aus Schaden durch meine Software entstehen könnten.

Zusätzlich werden alle offiziellen Plugins mit der MIT Lizenz lizensiert. Offizielle Plugins sind die Plugins, welche im Installationspacket und/oder dem Onlineupdate enthalten sind. Möchte jemand sein selbstgesticktes Plugin also im Onlineupdate sehen muss er es ebenfalls unter MIT lizensieren.
Es steht Pluginauthoren allerdings frei ihr Plugin wie es ihnen beliebt zu lizensieren. Allerdings bleibt es dann inoffiziell.

Ausserdem werde ich bald ne kleine Website für den GameFixer einrichten um einen zentralen internationalen Anlaufpunkt zu haben.

__________________
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software
03.07.2012 01:26 Thorium ist offline E-Mail an Thorium senden Beiträge von Thorium suchen Nehmen Sie Thorium in Ihre Freundesliste auf
Thorium Thorium ist männlich
Ober-Guru


images/avatars/avatar-1611.gif

Dabei seit: 25.09.2005
Beiträge: 2.692

Im Wartungs Modus:
Level: 51 [?]
Erfahrungspunkte: 12.120.633
Nächster Level: 13.849.320

1.728.687 Erfahrungspunkt(e) für den nächsten Levelanstieg

Themenstarter Thema begonnen von Thorium
Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich möchte heute mal ein wenig aus dem Nähkästchen über den Onlineupdater plaudern.
Warum er da ist, warum man ihn nutzen sollte und wie man sich nen eigenen Updateserver aufsetzen kann.

deswegen sollte man den Onlineupdater nutzen
Da es einige Leute gibt, die Onlineupdates nicht mögen, möchte ich als erstes mal auf die Vorzüge hinweisen und die Zweifel zerstreuen.
Warum man ein Onlineupdate vorziehen sollte ist eigentlich offensichtlich: Es ist einfacher und schneller als das Packet neu runterzuladen und selbst zu entpacken. Man started die Updater.exe und bestätigt das man ein Update durchführen möchte, innerhalb weniger Sekunden ist das ganze dann passiert.

Der Updater schickt keine Informationen an irgend ne Datenbank, man braucht sich nicht registrieren und gibt nicht mehr von sich Preis als wenn man das Packet selbst runterläd.

Neben der einfachen Nutztung ist es auch noch schneller, nicht nur weil man sich klicks spart sondern der Download ist tatsächlich schneller. Das rührt zum einen daher das der Updater nur Dateien runterläd, welche sich geändert haben. Zum anderen sind die Updates wesentlich besser komprimiert als das Komplettpacket. Updates sind mit der LZMA Library komprimiert, welche die Hauptkompression von 7zip ist. Das Komplettpacket ist mit dem Inflate Algorythmus komprimiert, welcher die Kompression von zip ist. Das ist deswegen so weil zip's auf jedem System von jedem entpackt werden können. Für LZMA muss aber ein Programm wie 7zip oder eben der Updater vorhanden sein.

Der neue Updater, an dem ich gerade Arbeite, wird zudem Downloads und Dekompression paralell ausführen und somit ultraschnell sein. Ausserdem wird er euch erlauben auszuwählen welche Updates und Plugins ihr runterladen und installieren möchtet.

So funktioniert das Onlineupdate
Für Onlineupdates gibt es viele verschiedene Systeme. Ich habe mich für ein sehr simples dafür aber sicheres und transparentes System entschieden. Das Onlineupdate basiert ganz einfach auf Dateitransfer per HTTP. Mit anderen worten tut es nix anderes als Dateien von einer Website runterzuladen.

Auf dem Updateserver läuft keine spezielle Software. Es liegt lediglich eine bestimmte Dateistruktur vor. In dem Sinne kann man die Updates auch manuell runterladen und sich sogar problemlos seinen eigenen Updateserver aufsetzen.

So läufts ab:

Der Updater wählt per Zufall einen Server aus der Datei UpdateServer.lst aus. Dabei handelt es sich einfach um HTTP URL's.

Dann läd er die Datei UpdateInfo.txt runter und prüft ihren Inhalt.
"Ok" bedeutet der Updateserver ist Betriebsbereit.
"NoUpdates" bedeutet der Server bietet keine Updates mehr an und kann aus der UpdateServer.lst entfernt werden.
"Maintenance" bedeutet der Server befindet sich in Wartung. Dies ist z.B. der Fall wenn neue Updates hochgeladen werden.

Ist die Updateinfo Ok, wird eine neue UpdateServer.lst runtergeladen. Dies ermöglicht das hinzufügen und entfernen von Updateservern.

Nun wird die Datei VersionInfo.txt runtergeladen. Diese Datei enthält welche Updates auf dem Server verfügbar sind, welche Version sie haben und wie die Updatedateien heissen im Format "Name SPACE Dateiname SPACE Versionsnummer CRLF"
Hier ein Beispiel:
code:
1:
2:
3:
4:
5:
6:
7:
GameFixer GameFixer.gfu 003
MaxFPS MaxFPS.gfu 001
MemoryFix MemoryFix.gfu 001
NetBlock NetBlock.gfu 002
DriveFix DriveFix.gfu 001

Daran kann der Updater erkennen ob Updates für eure Installation vorhanden sind.

Daraufhin werden die entsprechenden .gfu (GameFixer Update) Dateien runtergeladen ggf. Verzeichnise erstellt und Dateien dekomprimiert.

Eine .gfu ist kein Standartarchivformat. Es ist ein Archivformat, welches von mir entwickelt wurde. Eigentlich speziell für Spiele, kann aber auch für andere Zwecke verwendet werden. Der Name des Archivformats ist ThoReCo (Thorium Ressource Container). Normalerweise heissen ThoReCo Dateien .trc.
Wer mehr Informationen über dieses Archivformat haben möchte einfach fragen. Ich kann gerne die Spezifikationen posten.

Update fertig.

Aufsetzen eines eigenen Updateservers
Wer bis hierhin gelesen hat, sollte eigentlich wissen wie man ihn aufsetzt.
Einfach die Dateien "UpdateServer.lst" "UpdateInfo.txt" "VersionInfo.txt" und alle in VersionInfo.txt aufgeführte .gfu Dateien in ein Verzeichnis auf einen Webserver kopieren.

Nun muss nurnoch die URL zu diesem Verzeichnis in die UpdateServer.lst rein und fertig. Bzw. kann man dem Updater per Kommandozeilenparameter auch dazu zwingen sich zu einem bestimmten Server zu verbinden, auch wenn dieser nicht in der UpdateServer.lst steht. Siehe dazu den Veröffentlichungsthread erster Post.

Nun das Problem daran ist nur den Updateserver aktuell zu halten.
Der Masterserver ist http://www.GameTreasure.de/Update und wird bald durch http://www.GameFixer.org/Update ersetzt werden.
In der Tat ist der Server bereits online aber noch nicht offiziell eingeführt. Haut einfach mal "http://www.GameFixer.org/Update/VersionInfo.txt" in den Browser. Augenzwinkern

Alle Updateserver müssen neue Updates vom Masterserver beziehen. Dazu müssen sie sich zu ihm verbinden und die Dateien "UpdateInfo.txt" "VersionInfo.txt" auswerten und entsprechend neue und geänderte .gfu's rüberladen. Die UpdateServer.lst muss auch vom Masterserver rübergeladen werden.

Dies sollte mindestenz ein mal am Tag passieren. Aktuell steht dafür kein fertiges Script zur Verfügung. Da aktuell aber keine weiteren Server nötig sind, ist das auch erstmal kein Problem.

Nun warum sollte man einen Updateserver aufsetzen?
Es gibt mehrere Gründe:

-Verteilung des Gesammttraffic auf mehrere Server. Sollte der GameFixer mal wirklich erfolgreich werden wird dadurch Serverüberlastung vermieden.

-Erhöhung der Verfügbarkeit des Onlineupdates. Sollte der Masterserver ausfallen funktioniert das Onlineupdate trotzdem noch. Wie vor wenigen Tagen wo GameTreasure.de für mehrere Tage offline war.
Schlägt die Verbindung zu einem Updateserver fehl, so probiert der Updater den nächsten von der Liste.

-Verteilung von Plugins in Testversionen. Ihr entwickelt ein Plugin und möchtet einen einfachen Weg es an eure Tester zu verteilen und zu aktuallisieren.
Dazu ist dann natürlich noch das Tool nötig zum erstellen von .gfu Dateien. Das wird aber irgendwann im SDK enthalten sein.

So das war mal ein etwas detailierterer Einblick in die Onlineupdatefunktion des GameFixers. smile

__________________
Wir entwickeln Spiele, schaut mal vorbei: CatBit Software

Dieser Beitrag wurde 4 mal editiert, zum letzten Mal von Thorium: 20.09.2013 22:22.

20.09.2013 22:12 Thorium ist offline E-Mail an Thorium senden Beiträge von Thorium suchen Nehmen Sie Thorium in Ihre Freundesliste auf
tomwatayan
Unsterblicher


images/avatars/avatar-741.png

Dabei seit: 18.02.2006
Beiträge: 5.185

Im Wartungs Modus:
Level: 55 [?]
Erfahrungspunkte: 22.586.575
Nächster Level: 26.073.450

3.486.875 Erfahrungspunkt(e) für den nächsten Levelanstieg

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Ich find's gut, dass du das hier mal so transparent aufgeschrieben hast, wie das Updaten funktioniert. Das nimmt zumindest mir die Unsicherheit und das Misstrauen, das noch stellenweise vorhanden war. Und wenn ich es doch noch genauer wissen möchte, könnte ich ja auch problemlos mal einen Updateserver faken um zu horchen, welche Requests der GameFixer Updater nun ganz genau stellt. Aber ich vertraue dir da genug, dass ich den Schritt nicht gehen brauche.
21.09.2013 08:19 tomwatayan ist offline Beiträge von tomwatayan suchen Nehmen Sie tomwatayan in Ihre Freundesliste auf
Seiten (4): « erste ... « vorherige 2 3 [4] Baumstruktur | Brettstruktur
Gehe zu:
Neues Thema erstellen Antwort erstellen
cgboard - knowledge is the key » Board Allgemein » Board-Projekte » [GameFixer] GameFixer Diskussionsthread

Forensoftware: Burning Board 2.3.6, entwickelt von WoltLab GmbH
Hosting und Support by: Rayman