| Avancement Daemon | |
|
|
|
Auteur | Message |
---|
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Avancement Daemon Sam 9 Mar - 13:11 | |
| Voici ce qui est déjà fait : * Voici ce qui reste a faire : ********************* c'est une estimation.
je vous met ici ce qui est déjà codé.
play et load renvoient sur la map (temporaire je vous rassure ^^) exit permet de quitter Je rajouterai bientôt plus d'option sur le menu et notamment les crédits où vos noms figurerons ( si vous le voulez bien sur ).
une fois sur la map, il n'y a encore rien a faire: appuyez sur echap
- Fichiers joints
- Debug.zip
- Vous n'avez pas la permission de télécharger les fichiers joints.
- (5.5 Mo) Téléchargé 8 fois
| |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Sam 9 Mar - 13:27 | |
| Whaou, le menu et la musique sont grave stylés !!! La mapmonde est .. Edit : Cette musique... tellement epique. Vraiment bien. Je la kiff. | |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Sam 9 Mar - 13:43 | |
| Merci ! je l'ai faite moi même avec musescore. ça m'a pris du temps mais le résultat valait le coup. Le but était de tout de suite fixer l'ambiance ^^ Pour le menu, rien de plus simple: juste un peu de SDL_ttf ! L'image de fond n'est pas définitive. Le plus long, dans la conception de daemon ne va pas être le codage mais la réalisation de tout les packages (image, musique, scripts). j'essaye actuellement de faire un belle mapmonde. | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Sam 9 Mar - 13:54 | |
| C'est clair, que l'ambiance est fixée la, on immagine deja la mort du tuteur et meme la fin du jeu avec l'agonie du maitre de la secte. Bref, je pense poster (mais c'est pas sur) le generateur alpha demain aprem. Avec un beau tileset que je devoile deja : | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Sam 9 Mar - 15:02 | |
| Yes, ca y est, j'ai réussi a charger un donjon, et charger toute les salles. Le programmes (que je posterai cette nuit je pense) permettra de charger un donjon, ensuite, on pourra appuyer sur 1,2,3,4,5 ou 6 pour afficher la salle correspondante. | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Sam 9 Mar - 19:01 | |
| Mince, j'y étais vraiment presque mais je suis coincé, je t'explique :
J'ai ma structure Donjon contient un tableau qui récupere des chiffres sur un fichier texte. La taille du tableau dépend d'un autre chiffre du fichier texte. Ces chiffres correspondent chaqun a un type de salle (vide, ennemis, boss, etc...). Le stockage des infos en memoire est nikel, mon tableau prend la taille voulue et est correctement remplit (j'ai vérifié).
Voila le soucis, j'ai un générateur de salles qui prend en parametre un fichier texte, puis, plus tard, un tileset, bref, ce que je n'arrive pas a faire, c'est faire le lien entre les valeurs contenues dans mon tableau et le générateur de map.
J'espere que tu vois ce que je veux dire, je peux te passer le code si tu veux, mais il n'est pas encore commenté.
Enfin voila, je suis bloqué, donc si tu as une idée pour faire ca, je veux bien.
main.c : http://fr.sourcepod.com/kmvqdt93-16506 map.c : http://fr.sourcepod.com/hhuapo13-16504 map.h : http://fr.sourcepod.com/xauvbt84-16505
| |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Sam 9 Mar - 20:23 | |
| Le tileset, tu l'a fais toi même ?
Donc si je comprend bien tu n'arrive pas a lier les deux tableaux: celui qui indique la forme du donjon et celui qui indique ce que contient chaque salle ? Si c'est le cas, essaye de faire une matrice en 3 dimensions : x*y*2 avec a l’intérieur les deux tableaux d'informations. Comme ça, dans ta même variable matrice tu as les deux informations.
Est ce que ça répond a ta question ?
| |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Sam 9 Mar - 21:38 | |
| Ok, merci pour ta réponse, enfait, c'est pas ca le probleme, je galère un peu a créer la fonction qui me permettra de lire les infos de la matrice (0,1,2,etc...) et les liées a la génération du niveau, car ma matrice est de type Map*, différent des chiffres. Mais j'ai trouver une solution (je pense), je test et demain je vous dis tout ca | |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Sam 9 Mar - 22:06 | |
| Ok bonne chance ! j'ai hâte de voir le résultat ! | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Sam 9 Mar - 22:10 | |
| Merci, je risque d'en avoir besoin ! Le resultat devrait te plaire, 5 salles possibles et une infinité (limitée par la RAM tout de meme) de salles possibles par donjon ! De quoi faire de gros donjons et en faire baver un joueur expert | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Dim 10 Mar - 14:38 | |
| Bon, voila l'avantage du generateur : le générateur est complexe, ce qui fait sa puissance, il pourra normalement générer des donjons geants (limités a 32bits en mémoire) Maintenant, l'inconvénient : le donjon n'aura pas de forme, les salles seront en effet différentes selon l'evenement, mais pas de forme particulière, mais on pourra tout de meme les modifier de facon a créer l'illusion que le donjon a une forme (porte sur le coté ou devant) Pour finir, le probleme auquel je suis confronté : Je n'arrive toujours pas a créer la fonction qui sera chargée de : - prendre la matrice du donjon - la lire - associer a chaque chiffre une salle - créer un pointeur de type Map* pour chaque chiffre - envoyer ces pointeurs a la fonction qui charge les salles Si tu veux bien y jeter un oeil, ca serait cool ! Je te passe le code des que j'ai fini de le commenter | |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Dim 10 Mar - 14:48 | |
| Pas de soucis ! essaye de commenter cette fois. Ce que tu as fais est déjà très bien ! Voici un premier artwork: - Spoiler:
| |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Dim 10 Mar - 14:56 | |
| Voila, comme promis un code tout chaud. Il est commenté au possible ! Si jamais tu ne comprend pas un truc, n'hesite pas a demander main.c : http://fr.sourcepod.com/emsyol35-16600 maps.c : http://fr.sourcepod.com/kqyemg62-16603 maps.h : http://fr.sourcepod.com/lpnogn56-16601 un exemple de fichier texte donjon : http://fr.sourcepod.com/ujecjz54-16604 et d'un fichier salle : http://fr.sourcepod.com/tycmph16-16605 J'adore l'artwork ! C'est l'épée du heros ? | |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Dim 10 Mar - 15:08 | |
| Yep ! je dois finir un devoir pour demain donc je regarderai ton travail quand j'aurais le temps. dsl merci pour les commentaires | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Dim 10 Mar - 15:11 | |
| Tkt, de toute facon, ya tout le temps.
| |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Dim 10 Mar - 21:04 | |
| Une façon de régler le problème serait de faire une méga variable englobant tout le donjon. désolé, je code l'exemple en ada, je trouve ça plus lisible mais tu devrais comprendre aussi bien. type T_tile is record //type du carreau __ prop: boolean; //peut on marcher sur ce carreau __ texture: string(1..k); //nom de la texture du carreau end record; type T_salle is record __ array(1..n,1..n) of T_tile; //tableau regroupant tout les carreaux de la salle __ evenement: integer; //id de l'evenement de la salle end record type T_donjon is record __ array(1..m,1..m) of T_salle; //tableau regroupant toutes les salles end record; ta fonction fonctionnerai comme ça j'appelle charger_donjon __charger_donjon appelle m² fois charger_salle ____charger_salle appelle n² fois charger_tiles au final on a une variable qui contient tout le donjon et toutes les salles. pas joli joli coté optimisation, mais ça devrait fonctionner pour lier tout ce joyeux bordel ! | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Dim 10 Mar - 21:45 | |
| Ok, je crois comprendre ce que tu veux faire, en fait tu voudrais faire une BONNE GROSSE imbrication de structures.
En gros, chargerDonjon prend en parametre des variable de type Map et chargerMap prend en parametre des variables de type Tile. Ensuite on affiche donjon.
est ce que j'ai compris ?
| |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Dim 10 Mar - 22:15 | |
| Ohh, je viens d'avoir une idée, on charge le donjon en une seule et meme map ! Ensuite, je crée une fenetre de scrolling qui fait pile la taille d'une salle et le scrolling suit le personnage.
Par contre, il faut que tu me dise si tu peux activer un evenement lors du passage du perso sur un tile particulier, par exemple, sur un tile situé entre 2 salles. Par exemple, au moment où le perso entre en collision avec ce tile avant une salle boss, le script du boss se lance.
Est ce que tu pourrais faire ca ? | |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Dim 10 Mar - 22:36 | |
| ça résoudrait les problèmes en effet. bien joué !
Je verrais bien un coup de modulo pour régler ton affaire. Si la dimension des salles est constante en nombre de carreau par exemple 20*20 carreaux
Si mon perso se trouve en coordonnée x=24,y=56 dans le donjon en disant que le coin en haut a gauche est en coordonnées (1,1)
On fait 24 mod 20, ça donne 1. 1+1 = 2 (car on ajoute la salle la plus à gauche qui est oubliée dans ce calcul) on fait 56 mod 20, ça donne 2. 2+1 = 3 on sait donc que le perso est en salle coordonnée (2,3) dans le donjon. On fait juste un test sur ce couple de variable pour savoir si il reste constant après un déplacement et le tour est jouer.
Si c'est constant: pas de défilement sinon: on fait défiler selon le changement de salle.
pour un événement du scénario, ce serait plus compliquer. A moins de savoir la salle du boss, dans ce cas on compare la salle dans laquelle se trouve le perso et la salle du boss si c'est la même, on active l'évènement !
| |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Dim 10 Mar - 22:46 | |
| Yes, bien jouer pour le calcul de la salle ! T'es sur qu'il sera applicable sur n'importe quel donjon par contre ?
Sinon, pour les events du scenar, tu calcule la salle, et tu envoi les scripts en circonstance | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Dim 10 Mar - 23:31 | |
| Voila, la premiere version du generateur de donjon pour daemon est dispo ! Appuyer sur les flèches pour vous deplacer dedans. Echap pour quitter. Actuellement, un seul donjon fournit il est modifiable et vous pouvez en créer d'autre si ca vous plait (si vous avez du temps et du courage). Le scrolling est temporaire, bientot, le perso se deplacera et il y aura scrolling d'une piece a l'autre directement quand le perso sera en collision avec le palier. Sur ces bons mots bonne nuit a vous. fichier rar: release.rar | |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Lun 11 Mar - 18:23 | |
| Vraiment bien ! Franchement nickel ! c'est noël avant l'heure ! ça rend aussi bien que ce que j'avais imaginé ! Reste plus qu'a améliorer un peu le tileset et ce sera parfait ! Pour le calcul de la salle avec le modulo, il sera applicable sur n'importe quel donjon du moment que celui ci a des salles de dimension identiques je pense. | |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Lun 11 Mar - 19:04 | |
| Merci ! Pour le tileset, c'est sur qu'il faut l'améliorer (torches, trous dans le sol, grilles, etc..), mais c'était pour l'exemple.
Pour le modulo, ouai, si on fait des salles identique, sa devrait marcher, mais il faudra le calculer dans la boucle principale, en gros, 60 fois par seconde, j'espere que ca saturera pas le memoire parce qu'il y aura surement d'autres calculs a faire (a la limite, faudra limiter le framerate a 24fps)
Sinon, je pensais que tu pourrait lier un script a chaque donjon, comme ca, des qu'on rentre dans le donjon, on sait dans quelles salles il ya telle event et du coup, plus besoin de faire le modulo dans la boucle. | |
|
| |
Azrael Admin
Messages : 242 Date d'inscription : 03/03/2013
| Sujet: Re: Avancement Daemon Lun 11 Mar - 19:25 | |
| Non tu calculs la coordonné de la salle après chaque évènement clavier, tu utilise bien un Poll_event ? dans ce cas place le la ton test, ça devrait marcher sans poser trop de problème au pc. Mais limiter les fps est une bonne idée ! Ensuite, pour déclencher un évènement, comment je fais si je ne connais pas la salle dans laquelle est le perso ? donc il y a besoin de connaitre cette donnée, sauf si tu trouve un moyen plus efficace, dans ce cas je te suis. Voici du nouveau coté graphisme. - Spoiler:
| |
|
| |
azertyuiopqsdf
Messages : 280 Date d'inscription : 06/03/2013 Age : 28 Localisation : France
| Sujet: Re: Avancement Daemon Lun 11 Mar - 21:04 | |
| Ah ouai, t'as raison, faudra donc calculer la position du perso a chaque boucle, mais t'as aussi raison, comme j'utilise un PollEvent, ca revient au meme.
Par contre, je serai curieux de savoir comment tu actionne un script, comme je n'ai jamais fait de RPG, je sais pas comment ca marche.
Sinon, bien le 2eme artwork, les daemons ressembleront a ca alors ? | |
|
| |
Contenu sponsorisé
| Sujet: Re: Avancement Daemon | |
| |
|
| |
| Avancement Daemon | |
|