Jeu lourd, très lourd...

Bonsoir, c’est encore moi, toujours à co-développer le même jeu (Super Thomas Galaxy). Alors que nous avons fait la moitié des niveaux et la quasi-totalité du côté technique, nous sommes face à un problème de taille, et c’est le cas de le dire : le jeu est très lourd.

La dernière révision de la bêta, 49ème depuis le début du développement, pèse pas moins de 52,1 mo. Pour un jeu amateur, c’est colossal ! Sans surprise, avec ses jolis 39,2 mo, c’est le fichier gam.egd qui est le plus lourd. Or, si on voit, sur notre site internet, “Espace disque nécessaire : 52 mo”, ça ne donne pas envie de télécharger quand on sait que c’est un jeu amateur.

C’est pourquoi j’envoie ce message : j’aimerais bien résoudre, ou, au pire, contourner le problème, car c’est fâcheux. Résoudre le problème consisterait à compresser les fichiers, mais comment faire… ou le contourner, ce serait de rendre le jeu partiellement en ligne. Cela nécessiterait une connexion internet, mais au moins le joueur ne serait pas pénalisé…

Bref, si vous avez une solution, ou ne serait-ce qu’une piste de solution, je suis preneur… :frowning:
Merci d’avance

Salut !

Perso moi ça ne va pas m’arrêter tu sais et même au contraire, plus c’est gros et plus je me dit que se doit être bien :wink:

Tu sais, la taille d’un jeu n’est pas synonyme qu’il va être bien ou pas, c’est juste mon raisonnement à moi ! :wink:
Perso quand je fais un jeu, je m’occupe pas de ça taille (Au faite, la dernière fois que j’ai fais un jeu, s’étaie quand ?.. jamais !), du moins quand j’essaye :stuck_out_tongue:

Tu sais aussi que des que tu introduit de belles images avec de beaux effets, tous de suite cela prends plus de place !
Il faut aussi penser aux sons qui sont très groument en taille, privilégier les OGG est une bonne façon de réduire la taille de sont jeu !
Il y a aussi le nombre d’extensions que tu va inclure qui joue énormément sur la taille de ton jeu ! :wink:

Enfin, pour fini, mettre ton jeu sur internet est bien mais sache également que tous le monde n’as pas internet cher sois :wink:
Il est vraie que plus le jeu est grand et plus il serra long à télécharger… pas facile de concilier bon jeu et petite taille !

Je te souhaite bonne chance :slight_smile:

Salut :slight_smile:

Alors déjà personnellement 52Mo a l’heure actuelle ou très peut de foyer ont une connexion en dessous du Mo/s je vois pas trop en quoi 50Mo est un problème à télécharger, même si il faisait 300Mo, du moment que l’endroit ou tu l’héberge est capable d’envoyer ton jeux a au moins 1Mo/s attendre 5Min pour avoir le jeu n’est tout de même pas le bout du monde jeu pense, enfin c’est mon avis perso :wink:

Ont ne voie que 2 petits screens sur le site du jeu mais les backgrounds sont très beau et la beauté graphique sa pèse tu pourras rien y faire, d’un coté sa veut aussi dire que vous bossez bien :slight_smile:

Je bosse sur un shoot horizontal en 1080p et j’en suis aussi à 49.5Mo, les 2 seuls petits conseils que je peux te donner si jamais c’est pas déjà fait.

1 : Il me semble que j’avais vu sur un post que le format d’image PNG est le format le mieux géré au niveau affichage sur GD, sur des sprites qui ont besoin d’une couche alpha si tu ai en PNG, essaye de les passer en animgif ou en gif, suivant la taille et la qualité des images la différence est presque imperceptible et sa peut payer coté mémoire, a toi de voir aprés si la différence graphique est acceptable ou pas, pour les backgrounds si tu n’a pas besoin de transparence dessus passe tout en jpg, même avec la qualité au maximum sa pèse toujours moins que du bmp ou du png 32bits.

PS : attention au jpeg, ne pas utiliser l’option “progressif optimisé” sinon l’image ne s’afficheras pas.

2 : Au niveau des sons, j’utilise certain sons comme musique au niveau du code, je m’explique, le wav est format hyper gourmand, et comme dans GD tu peut aussi lancer un sons en OGG le sons est lancer en tant que musique, j’utilise des wav pour les sons hyper répétitif, genre dans mon cas, tir du vaisseau, impact des tirs sur les cibles, explosion des astéroïdes, en gros tout ce qui ai directement lier a la grosse action.
Pour les sons un peut plus long mais qui sont beaucoup moins utilisé je les passe en OGG, sa pèse 10x moins en place disque et la fluidité du jeu n’en ai pas impacter, je viens encore de tester pour pas dire de connerie :smiley:

Voila si tout sa vous l’avez déjà fait tu pourras pas gratter encore beaucoup de place coté taille sans que sa impacte directement sur la qualité de ton jeux, mais bon je au risque de me répéter 50Mo a l’heure actuelle sa me semble quand même assez dérisoire :wink:

ThomasCVB, il est ou ton site, ya rien dans ta signature
Des images pour voir à quoi ça ressemble ?

blady.fr/jeux/stg/

Comme vous, je trouve qu’un jeu de 50 Mo est léger et facile à télécharger (le serveur blady.fr est capable d’atteindre 1 Mo/s comme la majorité des serveurs hébergés). Seulement, depuis que Game Develop a eu quelques mises à jour, il y a des petits temps de chargements entre les changements de scènes, alors qu’auparavant il n’y en avait pas (ou beaucoup moins). C’est un détail qui me dérange pas spécialement, mais peut-être cela joue aussi sur le poids du jeu.

Un jeu comme “Frogatto & Friends” (un très bon jeu amateur que je vous conseille, et c’est pas moi qui l’ai fait donc pas de pub clandestine :stuck_out_tongue: ) pèse 230 Mo par exemple, donc bon y a pas de quoi rougir. De plus que Super Thomas Galaxy n’est pas très gourmand en mémoire.

En fait, pour la lourdeur du jeu, ce n’est pas la vitesse qui m’inquiète. C’est juste que je me demande si quelqu’un se donnerait la peine d’installer un jeu amateur aussi lourd…

Sinon à part ça…

Les sons qui se lancent, par exemple, une fois par partie, tu penses que je peux les mettre en OGG sans problème ? Si oui, dans les évènements, je les laisse en tant que “son”, ou je mets en tant que “musique” ?

Les gros sons doivent être mis en OGG (musiques, fond sonore etc). Dans ce cas, tu utilises les actions pour lire les musiques. L’avantage est double, les OGG pèse beaucoup moins lourd que les WAV (environ comme les MP3, voire moins), et la RAM utilisée par ton jeu est moins importantes car les musiques sont chargées petits bouts par petits bouts en mémoire.

Donc, pour lire un son lourd, j’utilise l’action “lire une musique”, c’est cela ?

Oui, une musique est OGG évidemment.

La rev 49 faisait, comme vous le savez, 52,1 Mo, et plus précisément 54 668 578 octets. Après le passage à la rev 50 qui peut se résumer à l’ajout du mode entrainement, le jeu est passé à 59,4 Mo, soit 62 336 730 octets.

C’est alors qu’en guise de test, j’ai appliqué la méthode préconisée par Dayvid, Lythion et Victor sur le simple écran de Game-Over qui est accompagné d’un son assez… caractéristique. J’ai converti le Wave en OGG, en qualité 3/10. La différence est pour le moins imperceptible vu que le son d’origine n’est pas de très bonne qualité.

Finalement, après modification du Game-Over, et seulement du Game-Over, le jeu est passé de 59,4 Mo à 58,5 Mo. C’est presque un mégaoctet de moins ! Autant dire que l’expérience est hautement concluante. :slight_smile:

Merci à vous trois. Je vous préviendrai de la taille du jeu une fois que toutes les compressions seront faites. On verra bien quel sera la taille gagnée.

Si le jeu a du contenu (vraiment) et qu’il est plutôt bien fait les gens seront pas trop réticents à télécharger 50 Mo.

Y a un autre truc à prendre en compte, c’est si les images sont chargées séparément ou simplement copiées par le systeme à partir d’un tileset, car la différence de performance sera énorme, même au niveau de la taille des fichiers.
Je connais pas assez GD pour dire ça.

Utiliser des wav c’est sûr que c’était pas la solution, un wav tout comme un bmp c’est très lourd.

Et une chose à retenir, c’est qu’il est utile et sain pour un programmeur même amateur, de concevoir son programme avec l’idée d’une taille minimale aussi bien pour les images que pour le programme en lui-même.
Dans les années 80 à 90 les programmeurs faisaient des jeux magnifiques pour l"époque avec juste quelques kilo-octets :wink: Car ils savaient s’y prendre pour optimiser leur programme.
De nos jours, avec la haute taille de nos disques durs et de nos mémoires RAM, on a pris la mauvaise habitude de se foutre royalement de ce problème et je trouve que c’est dommage.

Bonne chance pour ton projet qui m’a l’air très intéressant.

Justement, on est en train de convertir les .wav en .ogg, pour alléger le jeu (c’est ThomasCVB qui est dans cet optique, rendons à César :laughing:).

Les sprites ont une taille définie, assez petite d’ailleurs, donc pas de sushis de ce côté-là. :stuck_out_tongue:

Merci beaucoup, mais on aura surtout besoin … bah d’idées pour les niveaux restants, mais je pense pas que ce sera un obstacle, vu l’absurdité du jeu ! :laughing:

Finalement, alors qu’on approche de la 60ème révision du développement du jeu, on réussit à rester en dessous des 60 Mo… pour l’instant. Bien sûr, par la suite, on va sans nul doute aller bien au delà de 60 Mo, mais si on n’était pas passés par la case “compression”, cette limite aurait été dépassée depuis un bon moment ^^

Merci pour vos conseils avisés en tout cas. :slight_smile:

60ème révision du développement du jeu = rester en dessous des 60 Mo

Conclusion : 1 Mo par révision :wink:

Si tu veux des idées demande quel style et j’essaierais de t’en trouver, j’ai des idées absurdes parfois :wink: