Noch mehr Platz sparen!

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

  • Mark hat bei GM6-Exe Dateien eine Blockade eingebaut damit genau das nicht geht, war jedenfalls beim 6.0 so. Ich versuchte es damals, es gab aber nur eine Fehlermeldung auf der stand, dass es keine Orginal-GM6 Anwendung sei.
    Entweder du findest ein Programm, welches funktioniert oder du versuchst deine BG extern kompimiert zu speichern...

    Dragoon
    int (*x(*x(int))[5])(int*);
    Confused? Yes, it's C!
  • Diese Exe Kompression geht beim GM nicht da der beim Laden von Ressourcen auf die Exe auf der Platte zurückgreift. Da die aber komprimiert ist läd der keine Ressourcen sondern irgendeinen Datenmüll sodass man froh sein kann wenn einem bei so einer Aktion der PC nicht abstürzt.
    Auch braucht man das nicht, Game Maker Ressourcen sind ab 6.0 in der Exe zlib komprimiert, da lässt sich kaum bis gar nichts mehr rausholen. Die größte Datenmenge werden deine Hintergründe verheizen, die werden intern nicht mehr als JPEG sondern als zlib komprimierte BMP, also quasi gezippte BMP gespeichert. Das braucht bei 27 Hintergründen eben gut Platz.
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum
  • hier noch ein kleiner tipp:
    1. spiel muss fertig sein, da man danach nichts mehr im roomeditor machen kan (zumindest nichts mehr mit übersicht).
    2. ein bild (bmp machen welches nur aus 1*1 pixel besteht.
    3. alle backgrounds speichern, in einem extra ordner der sich im selben ferteichniss wie die exe befindet.
    4. alle backgrounds durch den 1*1 pixel background ersetzen.
    5. eine extra object machen, welches im create event alle recurcen nachlädt.
    6. die backgrounds können als jpeg bzw. jpg gespeichert werden, sind klein, und werden erst beim nachladen größer.

    so habe ich mal ein spiel von mir von anfänglich 4 mb auf <1 mb reduziert (leider ist die datei dem format c: befehl zum opfer gefallen, darum kan ich kein beispiel geben).
    :) Nobody is perfect (-:

    "Dummköpfe sind Denkerköpfen weit überlegen. Zahlenmäßig." Ernst Ferstl
  • Original von Nobody-86
    hier noch ein kleiner tipp:
    1. spiel muss fertig sein, da man danach nichts mehr im roomeditor machen kan (zumindest nichts mehr mit übersicht).
    2. ein bild (bmp machen welches nur aus 1*1 pixel besteht.
    3. alle backgrounds speichern, in einem extra ordner der sich im selben ferteichniss wie die exe befindet.
    4. alle backgrounds durch den 1*1 pixel background ersetzen.
    5. eine extra object machen, welches im create event alle recurcen nachlädt.
    6. die backgrounds können als jpeg bzw. jpg gespeichert werden, sind klein, und werden erst beim nachladen größer.

    so habe ich mal ein spiel von mir von anfänglich 4 mb auf <1 mb reduziert (leider ist die datei dem format c: befehl zum opfer gefallen, darum kan ich kein beispiel geben).


    Achja.
    Bei 1*1 Backgroundgröße.
    Versuch dann mal ein Room zu öffnen der 2000x2000 Groß ist.^^
    Für mich ist es selbstmord XD
    Der Wiederholt das Background 2000/1 sprich 2000*2000mal.
    Außer man hat die Stretch-Option aktiviert.

    Nur so als warnung oO
    Nicht das sich dann jemand wundert warum sich der roomeditor aufgehangen hat bzw lange lädt oO
  • Achja.
    Bei 1*1 Backgroundgröße.
    Versuch dann mal ein Room zu öffnen der 2000x2000 Groß ist.^^
    Für mich ist es selbstmord XD
    Der Wiederholt das Background 2000/1 sprich 2000*2000mal.
    Außer man hat die Stretch-Option aktiviert.

    Nur so als warnung oO
    Nicht das sich dann jemand wundert warum sich der roomeditor aufgehangen hat bzw lange lädt oO
    ebendarum ist punkt 1vorhanden.
    1. spiel muss fertig sein, da man danach nichts mehr im roomeditor machen kan (zumindest nichts mehr mit übersicht).
    dan pasier das nicht, da man den roomeditot nicht mehr braucht.
    :) Nobody is perfect (-:

    "Dummköpfe sind Denkerköpfen weit überlegen. Zahlenmäßig." Ernst Ferstl
  • Die Sache mit UPX habe ich auch mal aus Spaß versucht. Hat bei mir ca. 800kb gebracht, aber wie oben bereits steht, funktioniert die EXE dann halt nicht, also ist es recht Sinnfrei.

    Grundsätzlich sollte man aber testen, welche Kombination besser ist. EXE-Packer + ZIP/RAR/7z... oder nur ZIP/RAR/7z. Ich habe da noch nicht viele Tests gemacht, aber nach meinen Tests ist eine ungepackte EXE nach RAR oder 7z kleiner wie mit UPX (und anderen EXE Packern) und dann noch mal komprimiert.

    Leider kenne ich mich mit den Struckturen von GM nicht so aus, weiß also nicht, was der GM intern mit den Dateien anfängt, aber grundsätzlich ist es wichtig, dass die Dateien schon optimiert zum GM kommen. Die GMK-Dateien sind meiner Meinung nach erstaunlich gut komprimiert. Selbst mit höchster 7z-Einstellung hole ich, wenn überhaupt, nur noch ein paar kb raus.

    Wenn es unbedingt auf die Größe der EXE an kommt, kann man die Backgrounds, vor allem wenn das Level größer ist als der View-Bereich, noch kachelbar machen. Auf die Idee sollte man aber schon vorher kommen, weil nicht jedes Bild im nachhinein so super dafür geeignet ist.

    Ansonsten wurde alles gesagt. Auf die Qualität kommt es an. Je nach Bild muss man einfach einen guten Kompromiss zwischen Qualität, Farbtiefe und Dateigröße finden. Bei meinem aktuellen Projekt ist mir die Dateigröße zwar nicht egal, aber eine gute Qualität ist mir einfach viel wichtiger. Deshalb wird alles als 24Bit PNG oder 100% JPG erstellt.

    Für die PNG-Fetischisten ist OptiPNG noch eine Option. Mit

    optipng.exe -o7 -nb -nc -np *.png

    lassen sich alle PNG-Dateien in einem Ordner so optimieren, dass die Qualität, Farbtiefe und Transparenz erhalten bleiben. Hat man viele Unterordner, hilft eine kleine Batch-Datei mit folgendem Inhalt:

    Quellcode

    1. @echo off
    2. if "%1" == "" OptiPNGR.bat .
    3. if "%1" == "" goto ende
    4. optipng -o7 -nb -nc -np %1*.png
    5. for /d %%d in (%1*.*) do call OptiPNGR.bat %%d
    6. :ende

    Vor allem wenn es viele große Bilder sind, sollte man es über Nacht laufen lassen. Der Spaß hat mich schon mal 6h Wartezeit gekostet, waren aber auch ein paar Tausend Bilder.

    Allerdings habe ich noch nicht getestet, ob GM die Bilder von sich aus noch besser komprimiert, wenn sie in einem anderen, eventuell unkomprimierten Format vorliegen oder wenn man TGA statt PNG benutzt. ?(

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

  • Das du bei GMK Dateien kaum noch was rausholen kannst liegt schlicht und einfach daran, dass die verschlüsselt gespeichert sind. Verschlüsselung ist aber für nachfolgende Kompression tödlich, da die Datei dann nur noch aus Zufallsdaten besteht die sich nicht mehr komprimieren lassen.

    Intern speichert der Game Maker Grafiken als mit Zlib komprimierte 24bit Bitmaps. Unabhängig vom Ausgangsformat. Das führt dazu, das eine Spieledatei mit JPG Sprites/Backgrounds meist größer ist als Spieledatei+JPG Dateien.
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum
  • Das du bei GMK Dateien kaum noch was rausholen kannst liegt schlicht und einfach daran, dass die verschlüsselt gespeichert sind. Verschlüsselung ist aber für nachfolgende Kompression tödlich, da die Datei dann nur noch aus Zufallsdaten besteht die sich nicht mehr komprimieren lassen.


    Klar, je höher die Entropie umso geringer die Kompression, leuchtet ein.

    Wegen der ZLib-Geschichte: es ist dann aber doch besser, JPG statt BMP zu nehmen (so als Beispiel) oder ist es egal, weil GM doch was ganz anderes daraus macht?
  • Pauschal kann man da nichts sagen, da jeder andere Grafikstile hat, der eine nutzt mehr Farben, der andere weniger. Am sinnvollsten wäre eben, das du das mit einigen Grafiken selber testest.
    "Die Erde ist ein Irrenhaus. Dabei könnte das bis heute erreichte Wissen der Menschheit aus ihr ein Paradies machen. Dafür müsste die weltweite Gesellschaft allerdings zur Vernunft kommen."
    - Joseph Weizenbaum
  • Wenn du die Ressourcen extern lagerst ist es nicht egal. Wenn Intern, dann scheinbar schon.


    Klar. Auf die Gefahr hin, dass ich auf Google und die Suchfunktion im Forum verwiesen werde. Gibt es eine GM-kompatible Möglichkeit, die externen Dateien als Data (verschlüsselt und komprimiert) ein zu lesen um sie dann im Spiel zu laden?
  • Ich arbeite gerade an soetwas, naja die Kompressions-Möglichkeiten währen dann zwar auch zip/rar usw. Aber das Bild wird verschlüsselt gespeichert und es ist nicht möglich* den "Klartext" später zu sehen(außer mit screen capture tool oder speicher manipulationen). ich veröffentliche mein "Projekt" sobald es geht, aber leider funktioniert das Xor script nicht so wie ich will(atm. hab ich es geschafft das manche passwörter gehen und manche nicht, ungefähr wie nach zufallsprinzip oO) ich halte euch auf dem laufenden(soweit mir das ohne Inet möglich ist).

    *edit: Es wird irgendwie möglich sein, aber dazu müsste man das Passwort haben mit dem das bild verschlüsselt wurde, oder auf andere Methoden zuzückgreifen(passwort erraten, brute force passwort knacker etc.).

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

  • Benutzer online 1

    1 Besucher