Editorial
Bienvenue sur Le CBNA!
Nous accueillons avec plaisir vos yeux sur nos pages, sur la section GameMaker du CBNA!
Si vous êtes ici, c'est en théorie car vous avez envie de créer un jeu video, ou bien vous cherchez de l'aide, ou encore vous désirez philosopher avec les membres dans la Section Spirituelle, ou vous êtes un artiste et désirez partager vos oeuvres dans la Section CBN'Art.
Bon, il est tout aussi possible nous vous l'accordons que vous soyez tombé ici par hasard, mais ce n'est pas grave nous vous accueillons!
Notre But aujourd'hui est de promouvoir la programmation en France, avec GameMaker entre autre, ou plutôt de partager nos connaissances en programmation, nos techniques, et aussi de nous enrichir, de vous enrichir et d'enrichir le contenu du site avec vos créations et vos conseils.
Nous proposons des Tutoriels, des gm6 et gmd (Codes sources), des scripts, des DLL, des Librairies... Tous créés par des utilisateurs de GameMaker prêts à vous aider.
Aussi ces utilisateurs publient leurs jeux sur le site pour se faire connaître et pour faire avancer la communauté.
Vous êtes certainement comme eux, puisque "eux" c'est vous! Oui, vous qui lisez ces mots, vous pouvez dès maintenant envoyer vos jeux, vos Scripts, vos Tutoriels, vos gm6 et gmd, vos DLL, vos Librairies ou même dans la Section Spirituelle ou dans la Section CBN'Art nous faire part de vos textes, images, états d'esprits, vos opinions sur les Evènements actuels...
Aussi Le CBNA ce n'est pas que du travail, c'est aussi un espace de détente, de rire, de plaisir... nous vous invitons donc à venir parler sur le forum, participer à sa vie, à ses activités...

Merci à vous d'avoir pris le temps de lire ces quelques lignes...

News
Mark Overmars Glog: Astuces sur Game Maker - Une aide plus jolie
Comme je l'ai indiqué dans un précedent article, il est trés important de fournir de l'aide durant le jeu, pour indiquer comment y jouer. Ceci est désormais maintenant encore plus important vu que les jeux peuvent être joués via InstantPlay(Note: InstantPlay est un service de YoyoGames qui vous permet de jouer aux jeux hébergés sur leur site sans teléchargement, le jeu étant alors converti en Flash et affiché directement sur le site.).
Ajouter un fichier "Lisez-moi" dans le zip du jeu qui décrira comment jouer ne fonctionnera donc plus vu que les joueurs ne le verront plus.

Vous pouvez bien sur utiliser le système de "Game Information" inclus dans Game Maker mais ce système est assez limité et n'est pas trés joli. Il est pourtant trés facile de créer votre propre aide in-game.
Dans cet article je vais donc expliquer comment le faire. Vous pouvez télecharger le script requis et l'exemple ici.

Nous allons créer l'aide en créeant des images (fichiers jpg ou bitmaps) qui contiennent les différentes pages de l'aide. Vous pouvez utiliser un programme de dessin pour les rendre aussi jolies que vous le désirez.
Mais, elles doivent toutes avoir la même taille et avoir une taille plus petite que celle de votre room(Ce qui rendra l'aide encore plus sympathique.) Elles seront placées dans le même dossier que l'executable, donc nous ne les incluerons pas dedans. Ceci allègera votre jeu et accélerera le temps de chargement.

Vous allez devoir ajouter un script qui s'occupera de l'affichage des images. Il prendra en tant qu'arguments le nombre d'images d'aide, et les noms des images(qui seront indiquées comme des strings: n'oubliez donc pas les guillemets ). Le script contient trois parties. Dans la première partie, nous opacifions l'image à l'ecran. Voici le code GML pour ceci:

(Code):
var oldcol,oldalpha;
oldcol = draw_get_color();
oldalpha = draw_get_alpha();
draw_set_color(c_white);
draw_set_alpha(0.5);
draw_rectangle(0,0,room_width,room_height,false);
draw_set_color(oldcol);
draw_set_alpha(oldalpha);


Ce code enregistre les valeurs de la couleur et de l'alpha utilisées, dessine un rectangle partiellement transparent qur l'ensemble de la room, et restaure les vieilles valeurs. Vous pouvez changer la couleur et l'alpha du rectangle opacifiant si vous le désirez.

Ensuite nous allons afficher les images d'aide. Pour ceci nous allons créer un background. Nous utilisons les noms de fichiers donnés précedemment en tant qu'arguments, vérifions si le fichier existe, l'introduisons dans le background, le dessinons au centre de la room, rafraîchissons l'ecran pour le rendre visible, et attendons que l'utilisateur appuie sur une touche. Le code GML ressemblera alors à ceci:

(Code):
var helpimg,i,xxx,yyy;
helpimg = background_create_color(640,480,c_black,true);
for (i=1; i<=argument[0]; i+=1)
{
if (!file_exists(argument[i])) continue;
background_replace(helpimg,argument[i],false,false,true);
xxx = (room_width-background_get_width(helpimg))/2;
yyy = (room_height-background_get_height(helpimg))/2;
draw_background(helpimg,xxx,yyy);
screen_refresh();
keyboard_wait();
}


Et finalement nous devons effacer tout ce que nous avons affiché et en particulier redessiner la room afin de la rendre visible normalement de nouveau.

(Code):
background_delete(helpimg);
io_clear();
screen_redraw();


Et voilà. (Notez que vous n'avez pas besoin de comprendre tout ceci pour utiliser le script!).
Télechargez le script et utilisez-le dans vos jeux. Adaptez-le à vos propres besoins. J'espère voir plus de jeux avec de sympathiques aides dans ce genre désormais.

Voici une capture d'écran du résultat:
Screenshot


Traduit par Death_Egg pour Le CBNA.
Article original écrit par Mark Overmars.
18/11/2007 par Difègue
13 Commentaires

par [TheDarkTiger] @ 19/11/2007 12:13 am
mouef utile ce truc

on pesse pas assez souvet à l'impact d'un fichier d'aide sur le jeu ...

par ombre @ 19/11/2007 02:16 pm
tous a fais d'accord je trouve toujourd que le fichier aide est moche (du moin les miens beh )

par shm31 @ 19/11/2007 02:31 pm
lol pourquoi se casser le cul en créer un fichier d'aide avec du gml

moi j'utilise du html compilé + la fonction execute_shell et hop le tour est joué gniah

par edi9999 @ 22/11/2007 09:19 pm
J aime bien c est bien sympa comme article

par glitch @ 14/12/2007 10:15 pm
arf merci de l'astuce shm,j'y avait pas penssé super

par Topaze22 @ 24/12/2007 12:43 pm
Mince, la technique de shm31 est pas mal non plus coeur

En tout cas, l'article est impeccables clin

par DFFD @ 28/08/2008 10:03 am
fo la version pro

par arthuro @ 13/08/2009 09:22 am
(Note: InstantPlay est un service de YoyoGames qui vous permet de jouer aux jeux hébergés sur leur site sans teléchargement, le jeu étant alors converti en Flash et affiché directement sur le site.).
Les jeux sont convertis en flash? Ca m parait faux, En plus on peux retrouver les jeux télécharger dans un répertoire de notre ordi. Avec des nom codé du genre 37648390033.exe.
Je vois pas comment on pourrais convertir un .exe de game-maker en flash.
Cette info est fausse ou mal traduite je pense

par yoo @ 04/12/2009 05:41 pm
suffit de metre un sprite transparent et un autre sprite par dessus fier

par yoo @ 04/12/2009 05:42 pm
heheh

par jacque @ 12/10/2010 11:48 pm
Oui, arthuro a raison, les jeux ne sont pas du tout transformés en flash, flash est un lecteur de fichiers swf et de code actionscript.

Sinon, on peut faire ça avec la version lite ? Et une page en html, on peut ?

par bla @ 09/04/2011 03:16 pm
rien rire rire2 rouge super super snif non3 non honte heheh

par yoo @ 30/10/2011 04:28 pm
Pour un HTML on peut utiliser la .dll TinyWeb, mais on peut encore moins faire cette méthode en Lite.

Nom:
Mail: (optionel)
Êtes vous Humain? (Entrez oui si c'est le cas)

smile's:

fleche_dfleche_gbehgniihappy1questionrirerire2rougesupertristeangeclincoeurcoleredodofierghagniahhaphehehhontenonnon3ouhouisnif

| M'oublier
[Archives News 2005] [Archives News début 2006]
Base de données des Jeux: Opérationnelle
Base de données des logiciels: Opérationnelle
Base de données des GMD: Opérationnelle
Base de données des GM6: Opérationnelle
Base de données des Librairies: Opérationnelle
Base de données des DLL: Opérationnelle
Base de données des Moteurs: Opérationnelle
Contenu Général du CBNA: Opérationnelle
Base de données Forum: Opérationnelle