Dynamisches Online Highscore Interface (schnell,einfach,schön)

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    • Dynamisches Online Highscore Interface (schnell,einfach,schön)

      Ihr kennt ja bestimmt alle das Online Highscore System von Bl@ckSp@rck
      (Dll Online Highscore System)

      Mit dabei ist ein Bespiel wie man die Highscore anzeigen lassen kann. Allerdings ist das Aussehen dieser Tabelle
      nicht wirklich das schönste und um es anzupassen muss man rum experimentieren.

      Und damit ihr das nicht machen müsst hab ich das mal gemacht:
      + Highscore passt sich der room breite an
      + Scripts werden jetzt ganz einfach aufgerufen (creat(),load() und show()) = mehr übersicht
      + Style der Highscore ganz leicht verenderbar
      So gehts:
      (Beispiel ganz unten auch als download)

      In create Event:

      GML-Quellcode

      1. create("musterurl.kilu.de","/ohs","stars","197843526");
      2. //1.Die Url : z.B. mustername.kilu.de
      3. //2.Der Ordner in dem sich das Highscore system befindent: z.B. /ordner/ohs
      4. //3.Der Name der Highscore(Tabelle): z.B. supergame
      5. //4.Das Passwort: z.B. superpasswort
      6. load();
      7. //Lädt die Daten in der Tabelle


      dann noch schön Stylen:

      GML-Quellcode

      1. head_color = c_dkgray//Farbe des Tabellen-Kopfes (Hintergrundfarbe)
      2. rows_color = c_gray //Farbe der Rows (Zeilen) (Hintergrundfarbe)
      3. head_font_color = c_white //Schriftfarbe im Tabellen-Kopf
      4. head_line_color = c_white //Farbe von der Umrandung des Tabellen-Kopfes
      5. rows_font_color = c_white //Schriftfarbe
      6. rows_line_color = c_white //Farbe von der Umrandung der Zeilen
      7. line_color = c_white //Farbe der Linien die die Spalten von einander trennen


      Ins Draw Event:

      GML-Quellcode

      1. show();
      2. //Zeigt die Highscore an


      Und das wars schon...

      Sieht dann z.B. so aus:




      Download:
      (beinhaltet die .gmk, die ohs und die dhi scripts sowie eine beispiel .exe)
      Download>

      Viel spaß bei dieser kleinen Spielerei.
    • Das ist doch alles schon in dem OHS beiliegenden Example von BlackSpark enthalten. Die paar Änderungen kann eigentlich jeder für sich vornehmen.
      █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
      █████ ███████ ███ your █████ ████ government.
    • mauge schrieb:

      Das ist doch alles schon in dem OHS beiliegenden Example von BlackSpark enthalten. Die paar Änderungen kann eigentlich jeder für sich vornehmen.

      tobiasre schrieb:

      um es anzupassen muss man rum experimentieren.
      klar das hätte auch jeder selber machen können. Er hätte nur etwas rum probieren müssen wo welche Farbe fest gelegt wird.
      Und das muss er hierdurch nicht mehr machen. Hab ja nirgendwo gesagt das man das net selber machen kann...
    • Ich wollte damit nur sagen, dass es in meinen Augen lerntechnisch mehr Sinn gemacht hätte, BlackSpark's Example zu erklären, bzw. darauf einzugehen. Nichstdestotrotz sind deine Scripts sicher hilfreich für den einen oder anderen.
      █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
      █████ ███████ ███ your █████ ████ government.
    • Hey, das find ich cool :D
      Damit brauch ich net mehr ewig rumexperimentieren, ich werds wahrscheinlich in Mini Tanks verwenden.

      @ mauge: Eig hast du ja recht... (Schuldgefühle, weil ich's net selber mach) :S

      MfG Waterman7
    • Dein Tutorial ist sicher für den ein oder anderen hilfreich, allerdings bin ich der gleichen Ansicht wie mauge. Um es mal deutlich zu machen, meine Idee war eigentlich, dem Benutzer lediglich eine Schnittstelle, also die Funktionen zu dem System bereitzustellen. Das zusätzlich beiliegende example sollte die Verwendung der verfügbaren Funktionen nur deutlich machen, sollte aber eigentlich keine Aufforderung sein, die Codes einfach in sein Spiel zu kopieren. Wenn das jemand macht, hab ich natürlich nichts dagegen, aber ich denke wenn man die Darstellung und das Design der Tabelle selber an sein Spiel anpasst, wirkt das ganze mehr aus einem "Guss", so wie es ja eigentlich sein soll. Als Beispiele für eine gute Umsetzung möchte ich an dieser Stelle mal "Snowball" und "Circles" von mauge erwähnen. ;)

      Aber wie schon erwähnt, ist dein Tutorial bestimmt für einige hilfreich, gerade für GML-Anfänger denke ich.

      Zwei kleine Sachen könntest du noch verbessern: Zum einen solltest du im Script "load" die "620" durch "(room_width-20)" ersetzen, damit sich die Tabelle auch wirklich an die Raumbreite anpasst. Zum anderen solltest du das rudimentäre "event_perform(ev_other,ev_user0);" im Script "create" entfernen, denn das User-Event gibts ja bei dir nicht mehr.
    • Bl@ckSp@rk schrieb:


      Aber wie schon erwähnt, ist dein Tutorial bestimmt für einige hilfreich, gerade für GML-Anfänger denke ich.
      Richtig. Ich könnte mir das zwar auch selber nochmal mit richtig schön machen aber ich finde so wies jetzt ist ausreichend.
      (Mit den richtigen Farben bekommt man aber auch hier etwas schönes raus. Aber natürlich nicht so schön wie selbst gemacht ...)
      Richtet sich also an Anfänger und an faule Leute ;)

      Bl@ckSp@rk schrieb:

      Zwei kleine Sachen könntest du noch verbessern: Zum einen solltest du im Script "load" die "620" durch "(room_width-20)" ersetzen, damit sich die Tabelle auch wirklich an die Raumbreite anpasst. Zum anderen solltest du das rudimentäre "event_perform(ev_other,ev_user0);" im Script "create" entfernen, denn das User-Event gibts ja bei dir nicht mehr.
      Wollt ich eigentlich noch ändern/raus machen habs aber mal wieder vergessen.
      Werde das aber noch beheben.

      Werde irgendwann noch die Möglichkeit einbauen das man die Liste scrollen kann. Dann ist es auch noch ein bisschen interessanter.

      mfg tobiasre
    • Sorry für den Post in ein älteres thema, aber bei mir kommt ein Error wenn ich die GMK Datei laufen lasse:

      ___________________________________________
      ERROR in
      action number 1
      of Create Event
      for object obj_ohs_show:

      Error defining an external function.


      Die Exe läuft aber wunderbar. habe ich da was falsch gemacht?
    • ___________________________________________
      ERROR in
      action number 1
      of Create Event
      for object obj_ohs_show:

      Error defining an external function.


      Scheint ein Problem mit der DLL zu sein. Ich hab das Example von tobiasre nie probiert, deshalb weiß ich nicht, ob die DLL beiliegt. Auf BlackSpark's Seite kannst du sie momentan auch nicht downloaden, da sie noch down ist, soweit ich weiß. Ich häng sie mal an...

      Schau aber auch mal nach, ob das Verzeichnis der DLL (falls vorhanden) in den Scripts richtig angegeben ist.
      Dateien
      • ohs.rar

        (50,26 kB, 156 mal heruntergeladen, zuletzt: )
      █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
      █████ ███████ ███ your █████ ████ government.
    • Das Problem besteht weiterhin. Die DLL war bei Tobiarses Tutorial nicht drinnen, aber das einfügen der DLL hilft auch nichts. In den Scripts werden bloß die codes der DLL benutzt. sie wird aber nicht initialisiert.

      (Ich kann sie auch nicht zu den Extenktion Packages hinzufügen.)
    • Dann brauchst du das komplette System. Ich habs dir mal hochgeladen, in der Hoffnung, dass BlackSpark nix dagegen hat: OHS System
      █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
      █████ ███████ ███ your █████ ████ government.
    • Soweit ich weiß ist das ein generelles Problem bei Bl@cksp@rks Dll, genauer gesagt liegt es an seinem Compiler. Manchmal funktionieren sie einfach nicht (meines Wissens nach meistens auf Vista nicht). Er hat mir mal gesagt er würde all seine Dlls neu kompilieren.

      Wenn es aber in der gmk funktioniert und in der exe nicht, dann würde ich nochmal genauer überprüfen ob sich die Dll wirklich im Verzeichnis befindet.
    • tobiasre schrieb:

      Ich würde mal vermuten das es an der dll liegt. Im Code ist der Fehler nicht schließlich funktioniert bei mir alles ohne Probleme.
      Hast du Vista?

      Hast du die Unterhaltung vorher verpasst oder so? 8|
      █████ ██ █ ████ everything ███ █████ is █████ ████ ████ fine ████ ███ █ ██████ love.
      █████ ███████ ███ your █████ ████ government.
    • Aha, wenn du bis ins Spiel kommst, liegt's schon mal nicht mehr an der DLL. Der Fehler, der da ausgegeben wird, deutet darauf hin, dass die Online Tabelle nicht gefunden wurde. Ich nehme mal an du hast in dem Download noch nicht die URL eingegeben. Das musst du natürlich tun, sonst weiß das Programm nicht, woher es die Daten beziehen soll. Lies dir am besten mal die Hilfedatei in dem Download von mauge durch.