iSnake

elfelf Membre
21:08 modifié dans Vos applications #1
Salut à  tous...

On m'a demender de programmer un jeu (au chois) et j'ai opté pour une version mac de snake le célèbre jeu de nokia.

Déjà  mes question sont:

- Vous avez une idée d'un jeu plus original?
- Existe - il déjà  des snake pour mac?
- COmment m'y prendre, je n'ai jamais programmé de jeu...

Merci

Réponses

  • ChachaChacha Membre
    21:08 modifié #2
    le courroux du Chacha est déclenché :-)

    dans 1123695028:

    demender : demander
    au chois: au choix
    mes question : mes questions

    Tsss...

    Je n'ai pas d'idée très originale, ça c'est à  toi de voir (par exemple  en variant les règles d'un jeu connu), mais je dirais que le puissance 4 est toujours intéressant pour débuter :
    -On peut se passer de graphismes si on n'y arrive vraiment pas
    -Pas besoin de gérer les événements clavier
    -On peut sans cesse l'améliorer, graphiquement, mais aussi algorithmiquement en donnant une stratégie de jeu à  l'ordinateur (et là , chouette, on se tourne vers la recherche opérationnelle et tout ça)

    Sinon, pour le snake, à  priori pas de gros soucis, dans une NSView tu peux détecter le clavier avec les keyDown, et tu dessines avec Core Graphics, c'est très facile.

    +
    Un Chacha qui veille aux fautes
  • elfelf Membre
    21:08 modifié #3
    Oui pourquoi pas... je vais y réfléchire...

    Sinon core image est il dispo pour Jaguar?

    SI je fais snake dans quel direction m'orienter niveau code?
    Une classe pour chaque element du jeu?
  • ChachaChacha Membre
    21:08 modifié #4

    Sinon core image est il dispo pour Jaguar?

    Non, pas core image, core graphics. Rien à  voir. Core Image, c'est un framework pour faire du traitement, Core Graphics, ce sont les fonctions qui commencent par CG pour tracer des lignes, des rectangles et tout ça.


    Si je fais snake dans quel direction m'orienter niveau code?
    Une classe pour chaque element du jeu?

    Il y a une partie modélisation à  faire, mais c'est à  toi de la trouver.
    1)Il ya plein de solutions diifférentes
    2)C'est très formateur, parce que ça te fera essayer des trucs, revenir en arrière, voir les difficultés, les limites de chaque solution... Pourquoi celle-là  est pratique et pas telle autre...
    3)Ce sera ton code, donc tu le feras forcément à  la sauce qui te conviendra le mieux. Tu ne peux qu'être en désaccord avec une solution faite par un tiers.

    Bon courage
    +
    Chacha
  • odjauodjau Membre
    21:08 modifié #5
    Tu peux peut-être regarder l'exemple fourni avec les developer tools dans /Developer/Examples/AppKit/Worm/
    C'est pas à  proprement parler un jeu, mais il y a surement de quoi s'inspirer  ::)
  • WIMPWIMP Membre
    août 2005 modifié #6
    dans 1123696873:

    le courroux du Chacha est déclenché :-)

    dans 1123695028:

    demender : demander
    au chois: au choix
    mes question : mes questions

    Tsss...



    Pour ma part il y a longtemps que j'ai renoncé à  pointer les fautes d'orthographe.
    Simplement elles me font fuir et je renonce à  lire la suite :)
  • fouffouf Membre
    21:08 modifié #7
    De toutes, facons, on est plus à  ca près ;)
  • WIMPWIMP Membre
    21:08 modifié #8
    dans 1123749522:

    De toutes, facons, on est plus à  ca près ;)


    Certes, mais too much is too much. >:)
  • muqaddarmuqaddar Administrateur
    21:08 modifié #9
    Beaucoup ne répondent pas aux messages comportant trop de fautes. Et ils ont raison. Ce n'est pas parce qu'il ne s'agit pas d'une rédaction notée, qu'on ne doit pas faire d'efforts...
  • VeillardVeillard Membre
    21:08 modifié #10
    Le pire est le SMS. Heureusement on n'en est pas là ...
    nosms.gif
  • Eddy58Eddy58 Membre
    21:08 modifié #11
    Tu peux dans un premier temps faire ton graphisme en 2D pour mettre au point tes algos, et ensuite, si tu t'en sens le courage, tu calques tout ça dans un moteur OpenGL, ce qui serait le must. :)
  • elfelf Membre
    21:08 modifié #12
    LOL je ne vise pas si haut, je pense faire un petit cadriage de NSImageWiew ou je change les images en fonstion du jeu?

    Il y a une meilleure solution? Car ton 2D ça a l'air pas mal mais dur , et OpenGL j'ai encore jamais touché... il me faudrais plus d'info pour faire tes truc :X
  • WIMPWIMP Membre
    21:08 modifié #13
    dans 1124294678:

    LOL je ne vise pas si haut, je pense faire un petit cadriage de NSImageWiew ou je change les images en fonstion du jeu?

    Il y a une meilleure solution? Car ton 2D ça a l'air pas mal mais dur , et OpenGL j'ai encore jamais touché... il me faudrais plus d'info pour faire tes truc :X

    Je prépare en ce moment un tutorial axé sur NSView, qui montrera comment comment déplacer à  la souris des pièces sur un échiquier.
    Tu auras le code source commenté en détail.
    Ca sortira début septembre. Ca devrait te permettre de consolider ton projet.  :)
  • AliGatorAliGator Membre, Modérateur
    21:08 modifié #14
    dans 1124437913:
    Je prépare en ce moment un tutorial axé sur NSView, qui montrera comment comment déplacer à  la souris des pièces sur un échiquier.
    Tu auras le code source commenté en détail.
    Ca sortira début septembre. Ca devrait te permettre de consolider ton projet.  :)
    Dis, ton échiquier, il serait pas implémenté sous forme d'une NSMatrix (chaque NSCell de la NSMatrix étant une case de l'échiquier) ?
    Si oui, ça m'intéresse, je suis en train de faire un jeu utilisant un plateau du même style (plateau de NxM cases, genre grille), donc je suis prenneur de toute infos...

    J'avais commencé à  implémenter mon plateau sous forme d'une simple NSView (je dessinait toute ma grille) et puis j'ai commencé à  vouloir détecter sur quelle case j'avais cliqué, sélectionner une case, etc, etc... quand j'ai vu NSMatrix j'ai tout de suite changé mon implémentation du "tout-dessiner-à -la-main" en une simple NSMatrix ;)
  • WIMPWIMP Membre
    21:08 modifié #15

    dans 1124439699:

    Dis, ton échiquier, il serait pas implémenté sous forme d'une NSMatrix (chaque NSCell de la NSMatrix étant une case de l'échiquier) ?
    Si oui, ça m'intéresse, je suis en train de faire un jeu utilisant un plateau du même style (plateau de NxM cases, genre grille), donc je suis prenneur de toute infos...

    J'avais commencé à  implémenter mon plateau sous forme d'une simple NSView (je dessinait toute ma grille) et puis j'ai commencé à  vouloir détecter sur quelle case j'avais cliqué, sélectionner une case, etc, etc... quand j'ai vu NSMatrix j'ai tout de suite changé mon implémentation du "tout-dessiner-à -la-main" en une simple NSMatrix ;)

    Non je n'utilise pas NSMatrix, mais en se basant sur la taille des cases, il est très facile de calculer dans quelle case se trouve la souris, de sélectionner une pièce pour la déplacer etc...
  • AliGatorAliGator Membre, Modérateur
    août 2005 modifié #16
    dans 1124440759:
    Non je n'utilise pas NSMatrix, mais en se basant sur la taille des cases, il est très facile de calculer dans quelle case se trouve la souris, de sélectionner une pièce pour la déplacer etc...
    Mouais... j'ai hésité aussi... mais vu qu'il me faut aussi gérer la sélection des cases, etc, au fur et à  mesure je me suis rendu compte que j'étais en train de réécrire un truc déjà  écrit... la surcharge de mouseDown: qui appelait ma méthode "mouseDownInCellAtRow:column:"... et pareil pour mouseUp:, mouseDragged:, mouseEntered:, mouseExited: (pour pouvoir gérer le "highlight" de mes cases)... enfin c'était ma première idée, et ma fois ça marchait bien, mais en parallèle j'ai essayé NSMatrix et ça m'a convaincu :P
    Surtout qu'en fait mon plateau doit avoir des cases carrées, et être centré sur la vue, donc ça compliquait les calculs... j'avais bien fait un getRow:column:atPoint: mais bon...

    Maintenant quand j'en arriverai au drag&drop (pour faire glisser des pions de la "main" de mon joueur vers le plateau par exemple, je vais p'tet vite déchanter...? Quoique NSMatrix n'est qu'une sous-classe de NSView, donc ça devrait le faire ;)
  • elfelf Membre
    21:08 modifié #17
    je vais me rensegnier sur NSMatrix et j'attant ton tuto avec impatiance
  • AntilogAntilog Membre
    21:08 modifié #18
    dans 1124439699:

    Dis, ton échiquier, il serait pas implémenté sous forme d'une NSMatrix (chaque NSCell de la NSMatrix étant une case de l'échiquier) ?
    Si oui, ça m'intéresse, je suis en train de faire un jeu utilisant un plateau du même style (plateau de NxM cases, genre grille), donc je suis prenneur de toute infos...

    J'avais commencé à  implémenter mon plateau sous forme d'une simple NSView (je dessinait toute ma grille) et puis j'ai commencé à  vouloir détecter sur quelle case j'avais cliqué, sélectionner une case, etc, etc... quand j'ai vu NSMatrix j'ai tout de suite changé mon implémentation du "tout-dessiner-à -la-main" en une simple NSMatrix ;)


    Ali, tu connais FlipSquare?
    http://www.createmacgames.org/index.php?option=com_content&task=category&sectionid=3&id=17&Itemid=27

    Ca peut te donner des bases (pas de NSMatrix, malheureusement)...
  • AliGatorAliGator Membre, Modérateur
    21:08 modifié #19
    dans 1124461578:
    Ali, tu connais FlipSquare?
    http://www.createmacgames.org/index.php?option=com_content&task=category&sectionid=3&id=17&Itemid=27

    Ca peut te donner des bases (pas de NSMatrix, malheureusement)...
    Ah, pas bête, ça...

    ChezSeb (un membre de macfr) m'avait trouvé un site avec un jeu de plateau (grille) écrit pour OSX et opensource... j'ai voulu regarder pour m'en inspirer, mais en fait c'était pas du tout un projet Cocoa, y'avait pas de nib dedans, etc... donc ça m'a pas aidé finalement :(
    Mais avec celui là  qui en plus est sous forme de tuto, "y'a bon !" comme on dit :)
Connectez-vous ou Inscrivez-vous pour répondre.