[Game Maker7 ] The Engine Of Zelda By Nutella. La Démo 3 est Disponible!!!

Démarré par Nutella, 05 Novembre 2007 à 17:16

0 Membres et 1 Invité sur ce sujet


Questions pratiques
Titre: The Engine Of Zelda By Nutella.
Auteur: Nutella
Genre/Type : Moteur de jeux


Quels outils ou langages utilisez-vous ? Pourquoi ?
Réponse :

J'utilise Comme logiciel: Game Maker 7. Le seul des game maker qui tourne sous vista sans avoir a faire quoi que ce soit. =)
J'utilise Comme Language: Le G.M.L (Game Maker Language), Du C++ simplifié.

Pourquoi?
Par ce que j'adore ce logiciel, il laisse baucoup de liberté au niveau de la programmation, et je l'utilise depuis plus de 2ans.

Quels sont les membres de votre projet et leur(s) rôle(s) ?
Réponse :
Je suis pour le moment seul, même si un graphiste ca ne serait pas de refus. =)
Mon rôle? Programmer!
C'est ce que je fait le mieux, et ce qui me plait le plus.


L'univers du jeu

Quels personnages prennent part au Moteur ?
Réponse :

Link et tous les monstre du jeux minish cap, ansi que tout personnages qui seraient néssesaires à l'avancement de mon Moteur.

Comment s'articule le monde de votre jeu ?
Réponse :
Pour l'instant, je me contante de reprendre des map de minish cap, de programmer toute les actions, tout les monstres
et objet qui si trouve, pour ansi au final avoir une grande variéter d'objet et de monstres pour la création d'un zelda.

Gameplay

Résumez de façon concise le principe du Moteur et sa progression.
Réponse :

Le principe de ce moteur, c'est de crée le "squelette" d'un zelda classique, pour que ceux qui n'on aucune connaisance en programmation puisse crée un zelda.

Ca progréssions ce ferat au fils du temps, pour voir ou en est le moteur, je vous invite a regarder l'historique des démo.


Parmi les personnages mentionnés ci-dessus, quels sont les personnages jouables ?
Réponse :

Link et le seul personnage jouable.


Questions diverses

Pourquoi vouloir faire ce jeu ?
Réponse :

Par ce que cela vas faire 4ans que j'en rêve, mais, je n'avais pas les capacitées néssésaire pour faire quelque chose de "potable", donc au fils du temps et aprés avoir utiliser RPG Maker XP puis 2003 pour arriver enfin sous Game Maker et aprés je ne sait plus combien d'exemple crée et modifié , je croit avoir les capacité n'éssésaire pour pouvoir me lancer.


Qu'est-ce que vous voulez retranscrire dans ce projet ?
Réponse :

Je veux juste pouvoir faire ce que je sais faire et en faire profiter les autres.
Je veux que quand les gens jouent ou plus tard utilisent mon moteur ils face comme dans la pub pour windows vista. xD
Comme moi je l'avais fait il y a quelque années pour un moteur RPG Maker XP dont je ne me rappel plus le nom. ^^"

Quels sont les principaux aspects qui rendent - selon vous - ce projet original ?
Réponse :
Le faite de vouloir faire le moteur de jeux le plus parfait possible. Et de vouloir le finir à tout prix.
Cela peut parètre peut original mais vouloir faire le meileur pour ce qui est de la 2D, ça ça l'est!
Du moins pour moi. ^^

A vous de prendre la parole !

Voici ce que je redoute (là ou je sait que je vais avoir du mal).
- Le system de dialogue (même si j'ai ma petite idée la deçu je suis sûr de rien).
- Le system de téléportation.
- Ne pas faire de fautes d'orthographes °°.

Média/Screenshot/Démos:


Commençons par quelque screenshot:

[spoiler][/spoiler]

[spoiler][/spoiler]

Les demos:
Voici la Demo1
Description: La premiere Demo de ce topic pour montrer un peut a quoi resemblait mon moteur

Les Commandes:
- W= Attaquer.
- X= Se Deffendre.

contenait comme bug:
- Bug de collision entre le hero et le bouclier
- Décalage de l'épée
- Ai des monstre assait basic

Voici la Demo2:
Description: Une amélioration de la demo1 visant a effacé touts les bug ressencé

Les Commandes:
- W= Attaquer.
- X= Se Deffendre.

Contient comme bug:
- Collision entre l'épée et le monstre

Amélioration/Nouveauté:
- Changement du type de deplacement de l'ai des monstres tout en gardant le deplacement en 8 directions.
- Les monstres ce deplace quand ils ne voyent pas link.

Voici la Demo3:
Description: Une amélioration de la demo2, Integrant déjat pas mal de nouveauté au moteur.

Les Commandes:
- W= Attaquer.
- X= Se Deffendre.
- C= Porter/Jeter.

Contient comme bug:
- En attente de commentaires.

Amélioration/Nouveauté:
- Modifications de l'ai du ChuChu, Maintenant il agit comme dans minish cap.
- Amélioration du recule de link.
- Créations du monstre "Octorock".
- Ajout de la commande Porter/Jeter.
- Ajout d'éléments Sonores.
- Changement de map.
- Changement de l'ombre quand link marche sur l'eau ou sur les haute herbes.
- Coréctions des bugs de la versions précédante.

Mon Projet:

Oui bon en gros tu as fais un moteur de jeu Zelda quoi...

Euh, vous êtes sur que c'est a sa place ici?
Bon bah, si tu mettais des screens du moteur pourqu'on regarde ça?  :)

Juste pour dire, essayes d'avoir une orthographe correcte, c'est horrible à lire ... -_- ( je suis conscient que j'en fait aussi mais ... :rolleyes: )
Essayes de nous montrer des screens aussi ... ou une petite démo technique :rolleyes: :P
Il n'y a rien d'autre à dire, vu que tu as rien à nous dire ( pour le scénario quoi )... ;)

Pas de scénario, pas de screens, un projet mort d'avance.
Franchement, je vois pas l'utilité de ce topic...
En plus tu as fait une proposition d'emploi et tu repostes un sujet (qui est au mauvais endroit).

05 Novembre 2007 à 17:37 #4 Dernière édition: 05 Novembre 2007 à 17:40 par Kommeno
Il viens de te dire que c'est un moteur loulou x.
Comment veux-tu que ce soit mort d'avance. ;)

Pas un jeu. Ok? Pas un jeu.

Voila maintenant on attend Nutella. :lol:

EDIT: Merci
(Ortho^^)

Allez Linkdu83, le chambre pas trop non plus, c'est pas très cool, Indulgeance Powaa  :)

Vous voulez une petite demo? ^^
oki:
link- moteur de jeu.exe - 2.39MB
w=attaquer
x=ce deffendre
Mon Projet:

05 Novembre 2007 à 17:39 #6 Dernière édition: 05 Novembre 2007 à 17:43 par Linkdu83
C'est pas pour dire loulou x, mais laisse lui sa chance, tu n'es pas en bonne position pour parler de ça, c'est pas toi qui a fait un projet sur pokémon badbinton, et celui-ci n'est pas fermé ... :rolleyes:

EDIT : Bon je teste ta démo ... :)

05 Novembre 2007 à 17:50 #7 Dernière édition: 07 Novembre 2007 à 23:23 par Nutella
Pour loulou x:
Bha je voix pas pourquoi je posterais pas d'aide...
On peut aidez les gens est faire sont projet c'est pas interdis par la loi...
Je fait un moteur de jeu zelda c'est un projet comme un autre a la difference qu'il ne comporte pas de scénario...
Il est bien a ca place ici je trouve ^^

Ensuite:
"Pas de scénario, pas de screens, un projet mort d'avance."

Pas de scénario, je me suis dejat expliqué, pas de screen regarde la demo, un projet mort d'avance?
Tu ne me connais pas encor assais pour pouvoir jugé ça je pense. ;)
Voila ^^

Sinon bon vous m'avez demandez une demo je voulais attendre un peut car elle comporte des bug que je n'est pas encor corrigé.
Je vient de corrigé l'arme qui était parfois décalé, mais le plus gros probleme persiste,
a savoir l'intéraction avec le bouclier et le monstre je vous tiens au courant! ^^
si vous avez des remarques, questions.
Je suis là. ;)
Mon Projet:

Je demandais de l'aide pour PUB, j'ai pas été reçu de la même façon...

Ouai bah, pour ce qu'il y a de programmé, c'est bien dans l'ensemble, il n'y a que quelques bugs, mais ... ;)
Essayes de faire un scénario quand même ! ^_^

05 Novembre 2007 à 17:58 #10 Dernière édition: 07 Novembre 2007 à 23:24 par Nutella
J'en ai bien un de scénario, mais j'attend d'avoir fini ce projet. ^^
En attendant je note toutes mes idées sur mon carnet. ;)
Et qand j'en aurais fini avec tous ces bugs et le moteur je pourais
présenter mon projet soyez patient. ^^
Dabort le moteur ensuite le jeu ^^
Mon Projet:

Pas mal la prog pour la démo, je retire ce que j'ai dit...
Sans rancune?

Et la boulet-Academie, les MP ça existe...

Bon, le moteur est bien, assez bien, sauf qu'il n'est pas très complet encore...
Pas vu trop de bug, mais bon, si mon comparse l'affirme  :)

Bonne chance, et tu vera, si tu as un scenario, ce sera plus simple de programmer.

En même temps, ya pas marqué "Bac à sable" pour rien ;)

Sympa la démo, continue sur cette lancé ;)

Ouep, quelques petits bugs...mais bon ^_^
L'avenir n'a qu'un seul paramètre : la volonté.

05 Novembre 2007 à 18:16 #14 Dernière édition: 07 Novembre 2007 à 23:28 par Nutella
Oui pas encor assait complet mais une fois que j'aurait resolut le probleme de collision avec le bouclier et le monstre
(ca fait bouger le monstre une fois sur 5 et ca peut l'envoyé dans le décord) ca ira plus vite.
Là j'ésail de comprendre le system de grille (je radote xD).
Car si les ennemis ce deplacaient que en horizontal et vertical ca arrangerer baucoup de choses...
Donc je fait des petit gm7 la pour voir un peut comment ca marche.
Je compte aussi faire ce deplacer les ennemis de facon aléatoire quand ils sont tros loin de link.
Voila quand j'aurais réussi à faire tout ça je vous met une petite demo vous me direz ce que vous en pensez. ;)
Mon Projet:

Au contraire, c'est plus réaliste quand les monstres se déplacent en diagonales et tout ...
Si tu as besoin d'aide, je peux te passer mon ancien moteur de mon ancien jeu ... Il y a beaucoup de programmation, mais certaines fonctions n'existent plus, car j'ai fait ce moteur avec Game maker 5.3, c'était il y a 2 ans aussi :P

Bienvenue à toi, Nutella. :)

Tout d'abord, petite remarque : essaie de fournir des efforts pour l'orthographe, ce n'est pas toujours agréable à lire. De même que je t'invite à commence tes phrases par une majuscule et les finir par un point. :)

Citation de: Kommeno le 05 Novembre 2007 à 17:31
Euh, vous êtes sur que c'est a sa place ici?

Ce projet a tout à fait sa place ici, ce n'est pas un jeu que je sache, mais un moteur.

Moteur que j'ai d'ailleurs testé et apprécié. D'accord l'animation de l'épée à tendance à être décalée, et la détection de l'épée pour frapper les monstres n'est pas toujours idéale, mais c'est une bonne base je trouve. ^_^

Citation de: loulou x le 05 Novembre 2007 à 17:35
Pas de scénario, pas de screens, un projet mort d'avance.
Franchement, je vois pas l'utilité de ce topic...
En plus tu as fait une proposition d'emploi et tu repostes un sujet (qui est au mauvais endroit).

Et on ne s'emporte pas, loulou x, si tu as des différends à régler, c'est pas ici. Mais je vois que tu t'es calmé, donc ça va.^^

Voilà. Eh bien bon courage à toi, Nutella, tente d'améliorer ton moteur, ce serait une solide base pour un moteur plus évolué (menu, autres armes, ...). ^_^

Pour un début de moteur, ça semble quand même bien parti. Je ne sais pas si ça vient de toi à 100%, mais il y a du bon dans ce moteur.

La marche en diagonal, je préfère mieux dans ce style, car dans plusieurs autres moteurs, le déplacement en diagonal est beaucoup trop rapide.

Le A-RPG est bien, mais c'est juste dommage que les coups d'épée ne se font que sur place, sinon je le trouve assez précis.

Toutefois, ce qu'il manque pour le moment, c'est peut-être un univers. De plus, jespère que le futur Gameplay et le level design seront aussi bons que la programmation.

05 Novembre 2007 à 19:08 #18 Dernière édition: 07 Novembre 2007 à 23:32 par Nutella
Oui c'est moi qui est tout fait pas sans effort ni mal de tête...
Je m'aide parfois d'exemple quand je patauge un peut pour comprendre comment ca marche.

Mais je crée tout mes code moi même sinon je mis retrouve pas. xD
J'essaile de pas entrecroisé les script je fait des commentaires partout avec mes joli fautes etc... xD

Bref, pour exemple je vous mais le gm7 que j'ai fait la pour comprendre comement marche les path et les grille.
Je ne connais pas encor toutes les possibilitées de la commande mais l'ai des deplacement est baucoup plus precise!!!

A la base j'ai vus ca dans un exemple de jeu de strategie pc, (a la age of empire),
je bosse depuis hiere soir pour comprendre comment il a fait est j'ai compris. ^^

Je vous laisse juger par vous même, l'ai utilise deplacement en vertical/horizontal et trouve toujours le chemin (si c'est possible).
Contrairement a "mp_potential_step(x,y,pixel,true/false)" qui a tendance a faire tourner le monstre en rond quand
il ne trouvait pas le chemin...

path et grille.exe - 2.20MB
Mon Projet:

J'aime bien ton moteur Nutella  ;) . Mais par contre, je sais pas si l'attaque à l'épée était exclue dedans ou non, car ça m'avait l'air à pas vouloir marcher.  :huh:

~[5 ans avec Zelda Solarus, ça passe déjà vite :) !]~

Si mais voila comme la gelée a un mask de collision bha il faut la tapé a un endroit précis je modifirais ca ^^
de plus maintenant l'épée n'est plus "décalé" mais j'attend d'avoir fini le nouvelle ai de deplacement avec de reposté
une démo ^^ (la nouvelle ai devrais resoudre le problem qu'il y a avec le bouclier)
Mon Projet:

C'est une bonne idée de proposer un moteur de jeu, souvent une longue tâche :).
Je parle pour moi parsque je suis mappeur et non programmeur.

A quand un moteur avec RM en "open-source", si on peut le dire.
Et pendant qu'on y est, pourquoi pas des cartes vides :P.

J'ai pas testé la démo, mais j'y vais de ce pas.

Et sinon, tu va programmé quoi en gros ?
Et quels monstres va-tu faire ?

En tout cas, bonne idée et bonne chance ;).

    







06 Novembre 2007 à 21:37 #22 Dernière édition: 06 Novembre 2007 à 21:40 par Nutella
Je compte programmé l'ai de base des monstre les plus connu dans zelda est ce qui pourais représenter un "defi" pour moi
du style des boss etc...
et aussi tout le game play avec l'arc le bouclier porter des objet etc...

Je veu bien la metre en open une fois fini mais honnetement il n'y a pas baucoup de personne qui seront s'en servir...
enfin je laisse pas mal de commentaire et mes script sont "propre"
un petit exemple:

/*--------------suit le hero------------------*/
if (stop=false)
{
/*-----si rentre=0----*/
if (rentre=0)
{
if (distance_to_object(obj_deplacement_link)<125)
{
if (path_exists(path))
{
path=path_add();
mp_grid_path(global.grid,path,x,y,obj_link.x,obj_link.y,true);
path_start(path,0.5,0,false);
mp_grid_add_instances(global.grid,obj_arbre1,1);
if (!mp_grid_path(global.grid,path,x,y,obj_link.x,obj_link.y,true))
{
path_delete(path);
}
}
if (!path_exists(path))
{
global.grid=mp_grid_create(0,0,room_width/16,room_height/16,16,16)
path=path_add();
}
depth=10-(y/1000);
}
}
/*-----si rentre=1----*/

if (rentre=1)
{
if (distance_to_object(obj_deplacement_link)<125&&distance_to_object(obj_deplacement_link)>10)
{
if (path_exists(path))
{
path=path_add();
mp_grid_path(global.grid,path,x,y,obj_link.x,obj_link.y,true);
path_start(path,0.5,0,false);
mp_grid_add_instances(global.grid,obj_arbre1,1);
if (!mp_grid_path(global.grid,path,x,y,obj_link.x,obj_link.y,true))
{
path_delete(path);
}
}
if (!path_exists(path))
{
global.grid=mp_grid_create(0,0,room_width/16,room_height/16,16,16)
path=path_add();
}
depth=15;
}
}
}
/*---------alpha--------*/
if (alpha<=0)
{
alphavar=1;
}
else
{
alphavar=0;
}
/*-2eme partie-*/
if (alphavar=0)
{
alpha+=0.1;
}
else
{
alpha-=0.1;
}
if (rentre=0)
{
/*------link touché-----*/
if (toucher_link=1)
{
green=255*alpha;
blue=255*alpha;
obj_link.image_blend=make_color_rgb(255,green,blue);
}
/*----monstre touché----*/
if (toucher_monstre=1)
{
green=255*alpha;
blue=255*alpha;
image_blend=make_color_rgb(255,green,blue);
}
if (life<=0)
{
instance_destroy()
}
/*---explosion de bombe-----*/
if (instance_exists(obj_explosion))
{
if (distance_to_object(obj_explosion)<50)
{
instance_destroy()
}
}
}
/*------bug de collision---------*/
if (!place_free(x,y))
{
if (place_free(x+8,y))
{
x+=8;
}
if (place_free(x-8,y))
{
x-=4;
}
if (place_free(x,y+8))
{
y+=4;
}
if (place_free(x,y-8))
{
y-=8;
}
}
/*----solid ou pas------*/
if (rentre=1)
{
solid=0;
}
else
{
solid=1;
}
/*----obj_colli_ennemi-----*/
mask_index=i.sprite_index;


Voila ce qu'il y a dans step de mes monstre... qulqu'un qui voudrais y retoucher il lui faudrais dejat comprendre
toute les fonction qui compose ce script, connaitre toute les variable interne ou pas global et local
etc...
(bon le script est comme qui dirait en experimentation puisque j'ai rajouter la le deplacement par grille que je n'est pas fini de prog)

Pour vous tenir au courant j'ai implanter le deplacemnt par grille mais ne vous inquiétez pas le monstre ce déplace
dans 8 directions ^^
Voila un petit screen les trés noir que vous voyer sont comme pour l'exmple que j'avait posté plus haut le chemin qu'empreinte chaque monstre ^^


maintenant je vais me servire de ca pour faire revenir le monstre en arriere quand il est toucher par le bouclier du coup plus de probleme de collision!! =) je vous tiens au courant ^^
Mon Projet:

06 Novembre 2007 à 22:46 #23 Dernière édition: 14 Décembre 2008 à 20:46 par -X2km-
-

CitationArticle 9 :
Les multi-comptes sont interdits. Vous ne devez pas créer plus d'un compte sur le forum. Nous repérons facilement les multi-comptes. Si vous créez un ou plusieurs comptes supplémentaires, ces derniers se feront immédiatement bannir. En cas de flood, votre premier compte pourra lui aussi être banni.
A ta place, je m'arrêterais là tant qu'il y en est encore temps. Ceci dit, retour au sujet maintenant.

06 Novembre 2007 à 23:12 #25 Dernière édition: 07 Novembre 2007 à 23:05 par Nutella
Alors pour ce qui est du blocage des touche je l'avait dejat fait dans les jeux zelda normal ca le fait aussi mais
je trouve ca plus normal que quand un perso avance est que la touche du sens opposé est activé on prennent la 1ere
en compte et qu'on ne calcul pas la 2eme,
Enfin si certain sont habitué a ce system de gamplay je peut modifié ca facilement ^^
Voila ^^
Demain je continurais ca puis ensuite je m'occuperais des collission entre l'épée et le monstre
pour rendre ca plus réaliste ^^ (le mask de collission c'était une mauvaise idée j'en ai une autre en tête baucoup mieux)

Edit: 2eme Demo Sortie regarder le 1er post ;)
Mon Projet:

Le A-RPG est bon, il est bien précis et la colision est bien gérée

Il manque toutefois des sons lorsque Link donne des coups d'épée, quand il se fait toucher ou quand on tue un ennemi..

Oui, c'est vrais que je ne me suis pas encor occupé de la partie sonor du jeu.
Je l'implanterais dans la prochaine version, demain je compte finir l'action porter/jeter,
qui a pas mal anvancé, link porte est ce deplace avec l'objet il ne reste plus qu'a programmer
le jeté, débuger le tout est c'est bon.
Je part de lundi à vendredi soir en internat.
Donc, cette semaine le projet n'avancera pas.
Les actions basic de link qu'il me restera à faire sont:
- Les sauts.
- Pousser/Tirer.
- Les roulades.
Mon Projet:

10 Novembre 2007 à 15:05 #28 Dernière édition: 14 Décembre 2008 à 20:43 par -X2km-
-

Pour le deplacement des ennemis, pourquoi ne pas les faire se déplacer suivant une seule ligne? Ca serait quand meme plus rapide a coder et moin bizarre niveau jeu non?

Pour -X2km-:
Pour le moment je n'est pas trouvé d'effets sonores en format midi sur le net, s'il faut que je les face je pense pouvoir me débrouiller,
donc, les midi étant vraiment petit (entre 5 et 100ko), je compte directement les implanté dans le dossier sound de GM.

Pour vlag67:
Que veux tu dire par 1 seul ligne? Les déplacement quand le monstre voix link ou pas?
Mon Projet:

10 Novembre 2007 à 20:18 #31 Dernière édition: 14 Décembre 2008 à 20:43 par -X2km-
-

Mais coté musique je ne manque de rien, c'est plutôt du coté effets sonores que je suis assais limité.
Sur ton site je n'est vus aucun effets sonores, enfin la on fait du HS... =/
Donc si tu veu me parler de ca vient en PM. ^^
Sinon, J'ai fini l'action Porter/Jeter mais elle est encor toutes bugé.
Je vous tiens au courant. ;)
Mon Projet:

Bon ben pas grand chose à dire si ce n'est que c'est un assez bon moteur de jeu que nous avons là.
J'aimerais signaler un bug:
Quand on touche un monstre, normalement il explose à l'endroit où on l'a tué, mais des fois le monstre n'explose pas l'endroit de sa mort.


Sinon le recul quand link est touché, je te conseille de le faire un peu plus lent.
Et je te conseille aussi de faire un petit recul pour les monstres avant qu'ils n'explose, ou alors rajouter un coup d'épée pour les tuer.
Après ce ne sont que des conseils tu en fais ce que tu veux ;)

Au fait Bienvenu

11 Novembre 2007 à 12:33 #34 Dernière édition: 11 Novembre 2007 à 12:43 par Nutella
Merci pour tes conseil, ^^
Je vais reprogrammer les déplacement de link quand il ce fait toucher, par ce que si ca aller si vite c'est que link
était directement repoussé d'une case (les case de mon jeu sont en 16 x 16).
/*-------------------hero recule----------------------------*/
if (obj_deplacement_link.direction=90)
{
if (place_free(obj_deplacement_link.x,obj_deplacement_link.y+16))
{
obj_deplacement_link.y+=16;
}
}
/*--------------------------------------------------------*/
if (obj_deplacement_link.direction=270)
{
if (place_free(obj_deplacement_link.x,obj_deplacement_link.y-16))
{
obj_deplacement_link.y-=16;
}
}
/*----------------------------------------------------*/
if (obj_deplacement_link.direction=180)
{
if (place_free(obj_deplacement_link.x+16,obj_deplacement_link.y))
{
obj_deplacement_link.x+=16;
}
}
/*---------------------------------------*/
if (obj_deplacement_link.direction=360)
{
if (place_free(obj_deplacement_link.x-16,obj_deplacement_link.y))
{
obj_deplacement_link.x-=16;
}
}
/*---------------------------------------*/
if (obj_deplacement_link.direction=0)
{
if (place_free(obj_deplacement_link.x-16,obj_deplacement_link.y))
{
obj_deplacement_link.x-=16;
}
}

Je modifirais ça.

Ensuite oui il faut que les ennemi recul tu à raison, car sinon si leur vie est par exemple de 2,
et s'il ne bouge pas l'épée peut les toucher jusqu'a 10000 fois en un coup.

Je m'explique: c'est un bug, normalement il devrait reculer comme avec le bouclier mais:
il y a un bug avec game maker on peut mètre l'instance solid ou pas,
s'il y a un evenement de collision entre 2 instances alors les 2 sont considérées comme solid (l'une pour l'autre uniquement).
Et donc comme l'épée contrairement au bouclier passe carrément sur le monstre,
Cela bloc le déplacement du monstre 19 fois sur 20.
Pire encor défois le monstre est deplacé sans qu'on le voix,
ce qui crée ce que tu a vus:
"Quand on touche un monstre, normalement il explose à l'endroit où on l'a tué, mais des fois le monstre n'explose pas l'endroit de sa mort.".
Un bug que j'ésail de corrigé a l'instant même. ^^
Merci de me l'avoir fait remarquer. C'est vrais qu'avec 1 PV, ce n'est pas génant mais avec 2 ça le devient...

Mon Projet:

Que veux tu dire par 1 seul ligne? Les déplacement quand le monstre voix link ou pas? =>
Oui, quand ton perso se déplace il change de direction, c'est ce que je veux dire par il ne se déplace pas sur une ligne, enfin sur l'axe link/ennemis quoi  :) .
Au cas ou tu voudrais changer sa, c'est très vite fait, donc tu fais un simple pythagore avec les distance x et y de chaques monstres et de link pour connaitre la distance link/ennemis et lancer ou non la poursuite en fonction du resultat (je pense que tu l'a deja fait mais on sait jamais  ^_^ )

Ensuite pour ne faire suivre qu'une seule ligne aux ennemis sa donnerais un truc du genre :
deplacement_x = (xperso-xennemis)/40 //la division par 40 est au choix,c'est la "part de distance" que l'ennemis fera par frame
deplacement_y = (yperso-yennemis)/40

Bon c'est qu'un exemple, et je pense que tu aurais deja eu une solution en tete, mais si tu prend un truc de ce genre, l'ennemis se déplacera plus vite au début qu'a la fin puisque xperso-xennemis a tendance a diminuer(j'aime bien cet effet mais c'est peut-etre pas le cas de tout le monde). Enfin je pense que tu arrivera a pondre un code qui te va.

11 Novembre 2007 à 13:09 #36 Dernière édition: 11 Novembre 2007 à 13:11 par Nutella
CitationOui, quand ton perso se déplace il change de direction, c'est ce que je veux dire par il ne se déplace pas sur une ligne, enfin sur l'axe link/ennemis quoi   .
Au cas ou tu voudrais changer sa, c'est très vite fait, donc tu fais un simple pythagore avec les distance x et y de chaques monstres et de link pour connaitre la distance link/ennemis et lancer ou non la poursuite en fonction du resultat (je pense que tu l'a deja fait mais on sait jamais   )
En faite dans game maker 7, il y a déjat une fonction qui clacul la distance entre link est le monstre appelé:
distance_to_object(obj);.

CitationEnsuite pour ne faire suivre qu'une seule ligne aux ennemis sa donnerais un truc du genre :
deplacement_x = (xperso-xennemis)/40 //la division par 40 est au choix,c'est la "part de distance" que l'ennemis fera par frame
deplacement_y = (yperso-yennemis)/40
Il y a aussi un fonction pour faire ca appelé:
mp_linear_step(x,y,pixel,true/false);
Une autre fonction encor plus precise appelé:
mp_potential_step(x,y,pixel,true/false); (c'elle si evite les instance est trouve le chemin)

Mais pour pallier a certain bug j'ai du crée un system de Grid et de Path.
Et pour le moment je trouve les mouvement des monstre assait fluide et naturel.
J'avait dejat fait un game maker qui diminué la vitesse des monstre en fonction de leur distance avec le hero.
Mais la il faudrais voir avec les autres personnes ce qu'il en pense.
Avant de l'implanter.
Mon Projet:

Ah ok, je bosse en C et python donc je ne connaissais pas du tout ces fonctions pratiques, d'ailleurs je ne connais pas du tout game maker  :)

Donc si je comprend bien, le bug t'a forcé a ne pas faire de deplacement selon un seul axe? C'était quoi le probleme? Parce que a priori il est beaucoup plus simple de se déplacer selon un seul axe que faire un espece de pathfinding a travers une grille...

Citation de: Nutella le 11 Novembre 2007 à 13:09En faite dans game maker 7, il y a déjat une fonction qui clacul la distance entre link est le monstre appelé:
distance_to_object(obj);
Selon moi, je pense que la fonction point_distance(x1,y1,x2,y2); est nettement mieux, car on a plus de liberté dans cette fonction.

Re!!!!!

Pour Ryuuzaki:
Oui c'est vrais que cette fonction est un peut plus "passe partout" mais dans certain cas distance_to_object()
sufie ^^ (surtout si l'objet qui execute le code est pris en compte dans le calcul).

Sinon!
J'ai implanté pas mal d'effets sonores, modifié la map pour les tests, presque fini la commande porter/jeter (manque puis que la collision avec les monstres), rajouté pas mal de truc sympa comme link quand il marche dans les haute herbe, les eau basse etc...
Je fini de debuger un peut tout ca, est aprés je pourais poster la demo
(mais defois resoudre des bugs veux dire tout reprogrammer alors je ne peut pas dire de date précise).

Voila, je ne montre pas de screen je vous prépart une jolie démo ca fera la surprise. xD
Mon Projet:

25 Novembre 2007 à 10:45 #40 Dernière édition: 04 Décembre 2007 à 21:14 par Nutella
Voila, la démo 3 et sortie.
Je ne vais pas faire un 3eme post pour cela donc j'édite l'ancien. =)
Elle integre pas mal de nouveauté et représente 1mois de programmation.
J'ésperd qu'elle vous plaira.   :)
Mon Projet:


Citation de: mat1er le 30 Mai 2008 à 18:30
j'adore cette engine Nutella,j'ai eu du plaisir a jouez!

Bonjour et bienvenue sur le forum :),

Tout d'abord, essaie de te relire un peu. Sachant que nous sommes sur un forum et qu'il est toujours plus agréable de lire un post soigné (ou au minimum revérifié), tu as tout ton temps pour te relire et corriger les erreurs ^^. Je ne dis pas ici que ton post était très mal orthographié, mais une majuscule en début de phrase serait déjà une bonne amélioration ;).

Ah et au passage, un p'tit coup de pouce côté argumentation serait apprécié. Le dernier post du topic date du 25 Novembre 2007, le remonter pour dire que tu as aimé est certe, bien, mais un commentaire constructif (points positifs, points négatifs, ce que tu as aimé précisément, moins aimé, etc.) est toujours mieux reçu :)

J'ai fait une bonne remarque: Il n'y a pas de coeur et la démo a un début mais pas de fin.

En fait je ne sais déja pas quoi faire, tout ce que j'ai fait c'est tuer tout les méchants, arracher toutes les herbes et chercher partout, alors quelqu'un pourrait-il m'aidé?

Bon alors j'ai testé.

Donc déjà, à peine cinq secondes de jeu,  je me retrouve bloqué. Link est figé, ne bouge bouge. Redémarrage du jeu nécessaire. Ça semble être causé par la perte d'énergie, mais le problème, c'est que je n'ai touché à aucun ennemi :blink:

Je redémarre le jeu donc. 30 secondes, je me retrouve encore bloqué. Cette fois causé par la collision avec un octorok.


Après, je redémarre de nouveau le jeu, et quelques secondes après, je me retrouve dans la même situation que la première fois. Faudrait vraiment revoir le système de perte d'énergie.  ;)



Sinon, quelques petites choses que j'ai remarqué en ce quelque temps de jeu, outre les trois plantages:

Un premier "Bug" qui m'a sauté au yeux, c'est lorsqu'on laisse la touche de l'épée enfoncée, Link donne des coups d'épée sans arrêt, alors qu'il ne devrait en donner qu'un seul.

Personnellement, je procède de cette façon pour bien détecter l'appui des touches:

Je crée une variable, par exemple, appui_touche(faudrait quand même un minimum de clarté si on doit géréer plusieurs touche, genre appui_espace), qui a la valeur 0 par défaut(ans Create). Puis dans le Step, je fait les vérifications suivantes:

  • Si la touche n'est pas appuyée => Met la appui_touche à 0
  • Sinon, si la touche est appuyée, et que appui_touche égale zéro => appui_touche = 1
  • Sinon, si la touche est appuyée, et que appui_touche = 1 alors => appui_touche = 2

En GML, ça ressemble à ça(dans ce cas, avec la touche espace):

if ( !keyboard_check(vk_space) )
{
    appui_touche = 0;
}
else if ( keyboard_check(vk_space) && appui_touche == 0 )
{
    appui_touche = 1;
}
else if ( keyboard_check(vk_space) && appui_touche == 1 )
{
    appui_touche = 2;
}


Avec ça, il est facile de gérer l'état d'appui d'une touche, grâce à la variable appui_touche:

if ( appui_touche == 0 )
{
    // Sera exécuté si la touche n'est pas appuyée
}

if ( appui_touche == 1 )
{
    // Si la touche vient tout juste d'être appuyée (pour déclencher, par exemple, le coup d'épée et éviter de répéter l'action)
}

if ( appui_touche >= 1  )
{
    // Si la touche est simplement enfoncée. Par exemple, pour le chargement de l'épée avant l'attaque cyclone (avec, évidemment, la vérification de létat de l'épée, hein ;))

    /*
    * Évidemment, on pourrait utiliser un simple keyboard_check mais dans certains cas ça peut être utile:
    * Lorsqu'un action est effectuée, on met la valeur de 0 ou 2 (selon le besoin, sachant que la variable va revenir
    * à 1 au prochain step si on la remet à 0) et on désactive donc la touche pour d'éventuelles actions
    * supplémentaires qui peuvent se produire dans le même contexte, ce qui évite d'effectuer plusieurs actions
    * incompatible en même temps. Vous l'aurez compris, cela peut éviter bien des bugs ;)
    */
}


Voilà, ça devrait aider ^_^


Aussi, l'épée est un peut trop "sensible". Lorsqu'on coupe des buissons, on coupe deux buissons à la fois (Celui devant Link et l'autre derrière). Faudrait améliorer de ce côté, pour faire en sorte que le buisson ne se coupe pas qu'en frôlant la pointe de l'épée. ;)



Une autre remarque, lorsqu'on, avance vers un buisson(logiquement, pour le soulever), Link se déplace latéralement(comme pour le contourner), alors qu'il devrait s'arrêter. J'ai personnellement l'habitude d'avancer vers l'objet à soulever pour le prendre, au lieu de m'immobiliser devant celui-ci et le déplacement est un peu désagréable ^_^ Faudrait donc améliorer les collisions glissantes, pour faire en sorte que ça glisse si Link est plus près de côtés..


Également, concernant les buissons, particulièrement le lancé du buisson: la trajectoire du buisson de côté n'est pas très réaliste. On dirait plus qu'il pousse le buisson au lieu de le lancer. Il faudrait une trajectoire plus "naturelle", une courbe vers les bas. Avec Game maker, ça se fait assez facilement grâce aux Paths  :)


Lorsque Link prend du dommage, il recule directement. Il faudrait qu'il recule plus graduellement (mais ça, ça été dit et ça va être modifié, donc ^_^)


Il m'est également arrivé quelques fois de toucher un octorok sans prendre de dommage, même en me collant directement dessus et en y restant.


Les Chuchu ne font du dommage que lorsqu'ils bondissent. Remarque, c'est peut-être le comportement normal, je n'ai presque pas joué à Minish cap, n'ayant pas de GBA.





Enfin bon, c'était mes quelques remarques, certains ne sont que des détails, mais je suis un grand adepte de la perfection :rolleyes: Certaines remarques ont peut-être déjà été dites, je n'ai que survolé rapidement le topic, par manque de temps.

Mais malgré les quelques bugs majeurs(Link qui reste figé) et mineurs, ça reste toutefois un très bon début et j'encourage la suite du développement ;)


Je viens de terminer la Démo 3 de ton système pour GM 7.

J'ai trouvé du bon et du moins bon, mais bon (wow le jeux de mots). Je ne suis pas la pour dire tout les défauts de la démo puisque c'est une démo et que la plupart des bugs dans le jeux ont été dit. Par contre, côté jouabilité:

  • J'ai été désagréablement surpris des touches utilisées pour les attaques, prendre un objet, etc... Le w étant trop éloigné des deux autres lettres, il est difficile de jouer correctement à la démo (avis personnel)
  • Je trouve les déplacements de Link un peu lent. D'après mes souvenirs de minish cap, Link courrait plus vite que ça.
  • Je n'ai pas lu le topic en entier mais est-ce qu'on t'a fait la remarque que Link devrait pouvoir tomber dans les précipices et tomber dans l'eau (dans le type Link perd une vie et se retrouve à la dernière case qu'il était)?
  • Finalement, lorsque je retourne une pierre que l'octorok m'a lancé, elle retourne et disparait très rapidement alors qu'elle est supposé se retourner et pouvoir affaiblir l'octorok si celui-ci est touché!

Bon :rolleyes: Je crois que j'ai finis pour les défauts.

A part ces quelques petits bugs, je trouves l'idée très bonne. Le fait de créer un système Zelda pour GM 7 aidera sûrement à l'émergence de plusieurs autres Zelda amateurs ;) Pour les graphismes, je n'ai rien à redire.

Voilà, c'était mon avis. Si ça peut t'aider ;)






Au fait, tant qu'à faire je précise : ca fait 8 mois que Nutella a arrêté son moteur et 7 qu'il ne vient plus le forum.

Je vous dis ça pas pour ne plus poster de commentaires très intéressants comme vous le faites, mais plutôt de ne pas en attendre une démo 4 qui ne sortiera très probablement pas. ;)
L'avenir n'a qu'un seul paramètre : la volonté.