Game Updater 2.0.0.2

  • GM 7
  • Game Updater 2.0.0.2

    morn,
    ich habe mich mal nach einem Game Updater im Internet gesucht und bin dadurch auf folgenden Updater gestoßen
    hier.Falls sich jemand mit dem Updater auskennen sollte kann er mir vielleicht verraten warum ich immer einen "Communication Error" habe ?,bzw wie kann so ein Error entstehen?
    GM oldie ich bin :troll:

    Spiel-Referenzen : 8 Spiele Hier 2 Screens der Rest ist verschollen :c
  • GML-Quellcode

    1. var avdp, vdp;
    2. //vdp = Version des Programmes
    3. //avdp = Die aktuelle Verson des Programmes die es gibt
    4. //bei ubookpro.00server.com oder ubookpro.kilu.de kommt deine URL ein z.b. musterurl.de
    5. //statt "/CE"+avdp+".exe" kommt rein = "/name_des_spiels"+avdp+".exe" ; Es geht natürlich auf ".zip" am ende, die Datei muss aber auf dem Server exestieren !
    6. // Im Web nachschauen was die neuste Version ist (z.B. "035" (sprich 0.35)) :
    7. variable_local_set("avdp",http_request("ubookpro.00server.com","/version.txt"));
    8. // Hier muss man statt "035" die version eingeben die das Programm gerade hat (z.B. "030" (sprich 0.30)):
    9. variable_local_set("vdp","035");
    10. if variable_local_get("vdp") < variable_local_get("avdp") then {
    11. //wenn die Version des Programmes älter ist als die des neuen im web :
    12. if (!http_request_file_start("nokol.funpic.de",("/3DNokol"+variable_local_get("avdp")+".exe"),"3DNokol"+variable_local_get("avdp")+".exe")){
    13. show_message("Update fehlgeschlagen !");
    14. game_end();
    15. }
    16. }
    17. //Wenn man bereits die aktuelle Version hat :
    18. if variable_local_get("vdp") = variable_local_get("avdp") then {
    19. show_message("Sie haben bereits die neuste Version !");
    20. game_end();
    21. }
    22. //einfach mal die beigelegte Helpdatei lesen da steht mehr zu http_file...
    Alles anzeigen
    GM oldie ich bin :troll:

    Spiel-Referenzen : 8 Spiele Hier 2 Screens der Rest ist verschollen :c
  • Ich denke der Fehler liegt daran:

    GML-Quellcode

    1. if variable_local_get("vdp") < variable_local_get("avdp") then {

    Du vergleichst, ob ein String größer als ein anderer String ist. Das kann danke ich net gehen. Wandel die Strings vorher in Reals um, dann sollte es funktionieren:

    GML-Quellcode

    1. if real(variable_local_get("vdp")) < (variable_local_get("avdp")) then {
    MfG,
    -fabse64
  • hat nicht hingehauen...

    EDIT:
    Ok es lag anscheinend an dem FTP Upload bn auf kilu umgestiegen...
    komischerweise Downloadet er immer nur die EXE bis zu 260 Bytes 8| ( 260/260)
    GM oldie ich bin :troll:

    Spiel-Referenzen : 8 Spiele Hier 2 Screens der Rest ist verschollen :c

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von nokol ()

  • fabse64 schrieb:

    GML-Quellcode

    1. if real(variable_local_get("vdp")) < (variable_local_get("avdp")) then {
    Da ist ein kleiner Fehler drin, der vielleicht von Bedeutung sein könnte:

    GML-Quellcode

    1. if real(variable_local_get("vdp")) < real(variable_local_get("avdp")) then {
  • Der Code oben von mir zugeschnitten und verbessert:

    GML-Quellcode

    1. var avdp, vdp;
    2. avdp = http_request("ubookpro.00server.com","/version.txt");
    3. vdp = "035";
    4. if (real(string_digits(vdp)) < real(string_digits(avdp))) then {
    5. if (!http_request_file_start("nokol.funpic.de","/3DNokol"+avdp+".exe","3DNokol"+avdp+".exe")){
    6. show_message("Update fehlgeschlagen !");
    7. game_end();
    8. }
    9. } else {
    10. show_message("Sie haben bereits die neuste Version !");
    11. game_end();
    12. }
    Alles anzeigen

    Mit string_digits() sorgst du dafür, das alles außer Zahlen auf der Versionsnummer "herausgefiltert" wird, so kannst du dort angeben, was du willst (z.B. 0-50 beta oder 1-00_release). Wenn du variable_-Funktionen nicht unbedingt brauchst, dann weise deinen Variablen lieber mit der normalen Methode die Werte zu, die Funktionen brauchen nämlich eindeutig mehr Rechenleistung.
  • Wie ich gesehen habe benutzt die update engine meine http DLL, und zwar noch eine etwas ältere Version die einen Fehler hatte, der das von dir beschriebene Problem verursachen kann. Probier einfach mal die neueste Version meiner DLL. Du findest sie hier: blackspark.prism-network.de/?page=7&game=19