IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Projets Discussion :

projet de MASTERMIND


Sujet :

Projets

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 13
    Points : 13
    Points
    13
    Par défaut projet de MASTERMIND
    Bonsoir à vous tous,
    alors voilà, donc j'ai comme projet la programmation du jeu mastermind en C(avec bibliothèque sdl 1.2)
    j'essais depuis des jours de le commencer mais je ne parviens pas.
    je ne sais pas exactement comment se fait sa conception.
    est ce en créant des surfaces puis faire la gestion des évènement?
    (je connais bien les règles du jeu, mais c'est la programmation qui m'échappe, je ne sais pas comment démarrer)
    J'espère que vous pourriez m'aider.
    bonne fin de soirée.

  2. #2
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 064
    Points
    219 064
    Billets dans le blog
    120
    Par défaut
    Bonjour,

    Je conseille de démarrer par une version entièrement console (sans la SDL). Cela simplifie les choses et permet d'avoir une première version jouable (donc avec toutes les règles implémentées).
    Ensuite, cela sera "simple" de passer le tout à la SDL.

    Pour commencer, vous devez déterminer comment fonctionne le jeu. Dans le sens, vous devez écrire (en français, ou arabe, ou autre) ce que doit faire l'ordinateur et comment doit fonctionner le jeu. Par exemple :
    • choisir une combinaison secrête au hasard
    • joueur 1 joue
    • ...


    Ensuite, il faudra implémenter (par le code) chacune de ces étapes.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  3. #3
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Merci, Je vais commencer maintenant, et je vous dirais ce que je ferai

  4. #4
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 064
    Points
    219 064
    Billets dans le blog
    120
    Par défaut
    Super
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut
    Modes texte/graphique et organisation

    Sage décision de commencer par le mode texte pour se concentrer sur les règles. Par contre c'est possible de tester la SDL en parallèle surtout si l'apprendre fait partie de l'objectif. En plus c'est quand même plus sympa d'afficher des images que des caractères. Un compromis pour pas déboucher sur une coquille vide et trop complexifier c'est de faire les choses progressivement. Par exemple une fois que la génération de la combinaison fonctionne et s'affiche textuellement tu peux t'amuser à la passer en mode graphique. Après faut s'organiser un minimum. Vous avez étudié les définitions/implémentations (.h/.c) ? Les fonctions sont tes amies ? Au final c'est même possible d'avoir 2 versions, une textuelle et l'autre 100% SDL.

    Formation

    Pour la partie programmation ça dépend aussi de tes connaissances. Qu'est-ce que tu as appris ? Est-ce que tu bloques sur certains concepts ? Normalement les projets et exercices proposés visent à les mettre en application. En plus avec le côté ludique surmonter les difficultés est bien plus accessible et cool.

    Sinon en plus de notre aide si tu piétines ça peut valoir le coup de consulter les didacticiels. Il y en a plusieurs dédiés à la création de jeux vidéo avec SDL.

    Bon courage et vive les casse-têtes !!

  6. #6
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Merci enormément pour votre réponse.
    Au fait, l'apprentissage de la SDL est libre, on ne l'a jamais fait en cours/TD/TP; (etudier les définitions du langage C?)
    Pour la partie programmation, ça va je me débrouille, durant le semestre on ne faisait que Listes chainées, pile&file, les arbres, récursivité et les tables(Hors SDL )

    J'ai peur de la programmation avec la SDL, et je ne savais pas comment la commencer, ,
    je suis sur le point de faire la comparaison entre le code choisi aléatoirement et celui proposé .
    Je reviendrai sur cet article demain, si dieu le veut, histoire pour poser mes questions.
    Bonne fin de soirée

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut ♥ SDL ♥
    Peur de la SDL ? Si c'est le noir en plein écran tu peux laisser en fenêtré. Plus sérieusement la découvrir c'est que du bonheur car même si certains aspects peuvent paraitre compliqués les ressources pour s'aider ne manquent pas. Rendez-vous sur le forum dédié si besoin !

  8. #8
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Oui c'est trop compliqué :'(
    je vous dirai plus tard mon problème vu qu'actuellement, je suis très limité, et mon projet n'est pas sous ma dispostion
    [Be Back]

  9. #9
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2015
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2015
    Messages : 13
    Points : 13
    Points
    13
    Par défaut
    Citation Envoyé par LittleWhite Voir le message
    Super
    Bonsoir.
    J'ai bien et bel fini la programmation du jeu en mode console. J'ai beau essayé de démarrer avec la sdl mais je bloque. Je n arrive pas à réfléchir. Par quoi commencer.... Si vous pouviez m orienter. Merci

  10. #10
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 563
    Points
    4 563
    Par défaut
    Avant de taper du code, un papier et un crayon:
    Tu dois définir ton ou tes écran(s), ainsi que les interaction possibles avec l'utilisateur.

    Le changement graphique implique 2 choses:

    -Le changement de technologie pour la vue.
    -Le changement de paradigme pour les entrées utilisateurs.

    Un écran en mode graphique devant être rafraîchi à intervalles régulières (toutes les 16 millisecondes pour un rafraîchissement de 60 images par seconde), il faut donc faire un rendu dans une boucle.

    Les entrées étant indépendantes du rendu, elles ne doivent plus être gérées séquentiellement comme c'est le cas en console, mais sur un modèle événementiel, afin de les capturer leur faire déclencher le comportement que l'ont attend d'elles.


    C'est donc normal de galérer un peu vu que c'est une toute autre manière de faire, mais heureusement pas vraiment plus compliquée, juste différente.
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut Ressources du site, faire simple et projet basique
    Je réitère mon invitation à faire un tour du côté du forum dédié à SDL. Consulter la FAQ (En priorité les premières QRs et après c'est au choix), jeter un coup d'œil aux articles spécialisés du site (Introduction à la biblio, exemples de jeux…)… Pour te rassurer de nombreuses personnes sont déjà passées par là et encore mieux elles sont parvenues à réaliser leurs projets !

    Pour démarrer mon conseil serait de choisir des tâches simples pour basculer du mode texte au graphique. Afficher le code secret ? Alors il te faut déjà savoir afficher une image ! Remplacer la saisie d'un code ? Faut jouer avec les évènements clavier/souris… Dans la doc officielle je me souviens encore de guides vraiment utiles et basiques. De quoi découvrir en douceur !

    Après la première étape serait de compiler un projet avec la SDL et faire quelque chose de très basique comme l'ouverture d'une fenêtre, la gestion des évènements (Fermeture de la fenêtre, appuie sur une touche du clavier), l'affichage de quelque chose… De mon côté c'est un jeu d'enfant avec Code:roject et GCC car l'IDE permet de créer un projet basique à partir d'un modèle. En 2 clics c'est fait ! Pour résumer dans un premier temps faut oublier ton jeu et t'amuser avec la SDL. Tout ce que tu vas apprendre te servira ensuite !

  12. #12
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 860
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 860
    Points : 219 064
    Points
    219 064
    Billets dans le blog
    120
    Par défaut
    Et pour d'autant mieux commencer, lire cet article et pour avoir un programme qui compile facilement : les templates de projet.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  13. #13
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut Conception et changements doux
    En effet avant de coder faut cogiter. Une alternative au papier/crayon c'est l'infographie quand on s'y connait un peu. De toutes façons si les ressources graphiques ne sont pas fournies il faudra bien les créer : Pions colorés, bordures, boutons… En plus ça permet de se rapprocher au mieux de l'interface en jeu, de placer très précisément les éléments…

    Pour les changements proposés on peut simplifier ou procéder un peu plus doucement.

    Tout d'abord sans animation le rafraichissement n'est pas forcément nécessaire et encore moins les calculs quantiques. On peut se contenter de ne réafficher l'écran de jeu qu'en cas de changement (Affichage, fenêtre cachée…). D'ailleurs quelque soit le mode une boucle du jeu existe forcément !

    Pour la gestion des évènements c'est possible de conserver temporairement le fonctionnement en mode texte. D'un côté la console et de l'autre la fenêtre SDL. On commence par afficher des trucs (De print à Blit), ensuite on gère le clavier pourquoi pas ou encore le clic d'un bouton quelconque avec la souris (Au revoir scan !)…

  14. #14
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 563
    Points
    4 563
    Par défaut
    Heu oui, enfin le papier crayon ce n'est pas pour faire le sketching des écrans, mais bien décrire les use-cases, créer les diagrammes d'activités afin de représenter les flux et les diagrammes d'états, pour représenter les ... états.

    Ce sont des étapes fortement utiles pour ce genre de projets.
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  15. #15
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut Développement occulte
    Mais tu veux nous traumatiser déjà qu'on a peur de la SDL enragée alors UML & diagrammes ésotériques non merci ! Pourquoi faire compliqué quand on peut faire simple ? C'est un tout petit projet pour débuter. On gribouille, on code et hop !!

  16. #16
    Expert confirmé
    Inscrit en
    Mars 2005
    Messages
    1 431
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1 431
    Points : 4 182
    Points
    4 182
    Par défaut
    Pas de SDL 1.2 pour les nouveaux projets s'il vous plaît, nous sommes en 2017. Utilisez une version activement maintenue de l'API.

  17. #17
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 563
    Points
    4 563
    Par défaut
    Citation Envoyé par ohnomorejmmings Voir le message
    Mais tu veux nous traumatiser déjà qu'on a peur de la SDL enragée alors UML & diagrammes ésotériques non merci ! Pourquoi faire compliqué quand on peut faire simple ? C'est un tout petit projet pour débuter. On gribouille, on code et hop !!
    Tout simplement parce que le but n'est pas d'apprendre la SDL mais bien de réaliser un projet, et que le but d'un étudiant, c'est de se préparer à l'avenir professionnel.
    Cet apprentissage nécessite de passer par l'utilisation de bonnes pratiques afin de s'y habituer et d'être capable par après de travailler sur des projets plus complexes.

    Si c'était pour un week-end jeux vidéo, ou un projet pour le fun, je dis pas, mais proposer de faire les projets à la rache à un étudiant, c'est parfait pour qu'il parte sur de mauvaises bases.
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  18. #18
    Expert éminent sénior
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 803
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 803
    Points : 32 058
    Points
    32 058
    Par défaut
    J'ai plussoyé, mais en même temps, je suis partagé. D'un coté, faire du travail propre est rarement une perte de temps. D'un autre, j'ai appris à programmer de manière, euh, instinctive, pour rester poli. Même quand je prends le temps de bien préparer mon coup(j'essaye de faire en sorte que ça soit courant), le fait de savoir que je peux improviser pas mal de truc en cas de besoin est avantage majeur : je peux changer de plan rapidement si le plan se retrouve confronté à un écueil.

    J'ai plussoyé parce-que quand même, plus on est nombreux, et plus se fier à l'instinct est dangereux. Bien plus qu'un outil de conception ou de modélisation, UML est avant tout un outil de communication qui permet à chacun d'avoir une vision globale de ce qui se passe. Et c'est pour ça que c'est important. Moins pour ce que ça apporte au niveau modélisation.
    Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
    1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
    2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
    3)le temps de comprendre toutes les exigences, le projet est terminé
    4)le temps de terminer le projet, les exigences ont changé
    Et le serment de non-allégiance :
    Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.

  19. #19
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut Choix SDL
    Dans une autre discussion on nous avait demandé notre avis sur le choix entre les SDLs.

  20. #20
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2011
    Messages
    252
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 252
    Points : 649
    Points
    649
    Par défaut Un petit débat ?
    Intéressante aussi cette question d'apprendre en mode bac à sable ou d'être plus méthodique. Je te laisse créer une nouvelle discussion si vous voulez poursuivre !

Discussions similaires

  1. Projet ISN Mastermind
    Par savas33320 dans le forum Programmation multimédia/Jeux
    Réponses: 3
    Dernier message: 03/05/2014, 18h00
  2. projet aide au développement mastermind
    Par drayne40 dans le forum C++
    Réponses: 1
    Dernier message: 07/11/2012, 16h28
  3. Projet application Mastermind
    Par Yolteotl dans le forum Android
    Réponses: 47
    Dernier message: 20/07/2011, 14h04
  4. aide projet Mastermind
    Par 0coco0 dans le forum Langage
    Réponses: 14
    Dernier message: 14/01/2008, 09h48
  5. projets mastermind demande de l'aide
    Par m_elkhaldi01 dans le forum Langage
    Réponses: 9
    Dernier message: 11/01/2008, 09h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo