A downloadable game for Windows

Download NowName your own price

Chicken's Revenge

Chicken's Revenge est un jeu de réflexion (Puzzle game) où vous (la poule) devrez enfermer le(s) renard(s) en poussant les caisses.

Objectifs / Comment jouer

Si le renard arrive jusqu'à vous, il vous mange, vous perdez.
Si vous arriver à enfermer le renard, vous gagner.
Utilisez les touches de clavier (fleches) pour diriger la poule

Développement

Le jeu est développé pour la Gamecodeur Gamejam #7 en C# / Monogame (pour coller aux formations proposées sur GameCodeur).

Il est actuellement en développement n'ayant pas eu le temps de le finir pour la GameJam. Beaucoup de changements sont donc à prévoir.

GameCodeur

  •  Elève Premium de Gamecodeur
    • Non
  • Langage et Framework utilisés
    • C# / Monogame
  • Code / Graphismes par
  • Utilisation de librairies et codes externes :
    • Rien à part Monogame.
  • Temps passé
    • Recherche, conception, design (non utilisés finalement) : environ 10 heures
    • Apprentissage C#, apprentissage Monogame, Développement : environ 4 heure
    • (Je pensais pouvoir y consacrer beaucoup plus de temps et ai perdu trop de temps en design pour rien :'( )
  • Comment as-tu (ou pas) abordé la contrainte du thème
    • J'ai commencer par chercher "Qu'est-ce qu'un Puzzle Game".
    • Ayant compris qu'il s'agissait d'un jeu de réflexion avec une grille, j'ai chercher les jeux populaires de ce type et en suis arriver aux iddées/possibilités suivantes :
      • Un 2048 : Je l'ai déjà fait, mais en Java/LibGDX : Ca ne cole pas aux formations Gamecodeur et n'aurais pas d'intérêt à être re-développer en C#
      • Un Démineur : idem
      • Un Tetris : Atelier Gamecodeur, j'avais commencer avant la Jam, mais je me suis dit (par erreur) qu'étant un atelier fait, tout le monde aller en faire un et ça ne serais pas original
      • Un remake de Rodent's Revenge, un petit jeu de 1991 que j'adorais sous Windows 3.1 => Bingo
  • Petit postmortem (avis sur le langage/framework utilisés, difficultés, succès, choix, bilan personnel rapide, etc...)
    • Développeur Web (PHP/JAVA) professionnel depuis 12 ans et développeur de jeux amateur et autodidacte (JAVA/LibGDX) depuis 1 ans, j'ai décidé, suite aux conseils de David de se diversifier, de me (re)mettre au C# (que j'avais à peine aborder il y a 13 ans) avec Monogame pour cette JAM.
    • IDE => Retour à Visual Studio : Très déçu. J'avais le souvenir d'un éditeur complet et moderne (il y a 13 ans), Visual Studio 2017 (et pire encore MonoDevelop) me semble aujourd'hui très lourd, lent et très en retard, notament par rapport aux IDE de JetBrain que j'utilise tous les jours pour PHP et JAVA
    • Langage => C# : Similaire dans la syntaxe à PHP et JAVA, je n'ai eu aucun soucis à me mettre à ce langage (je n'ai d'ailleurs suivit aucun tuto ou cours, juste des docs sur des points précis) tellement les langages sont similaires (C/C++/C#/PHP/JAVA, etc.). Quelques spécificité de C# me laisse très dubitatif et le déploiement m'a laisser sur le carreau : Je n'ai pas réussi à faire un déploiement digne de ce nom avec le peut de temps que j'ai eu.
    • Framework => Monogame : Très déçu. Très bas niveau par rapport à LibGDX que j'ai l'habitude d'utiliser. Si certaine fonctionnalité (gestion des assets) sont très pratiques, beaucoup, beaucoup d'autre sont juste complètement absente (ou je ne les ai pas trouver) et il faut donc les re-coder entièrement : Gestion d'UI (Boutons, blocs de textes, mise en page, tableaux, etc.), gestion d'algorithme d'IA (Pathfinding, etc.), gestion des animations (WTF, il n'y à rien pour gérer les animations de sprites et autres fondus ? Obliger de les coder à la mains ?), gestion des écrans tactiles, des préférences de fenêtres, etc.
      Aucune doc officielle, beaucoup de docs brouillons et souvent non-fonctionnel (surtout sur XNA dont Monogame est issue).
      Bref... Un framework beaucoup trop bas niveau. à mon sens pas utilisable pour de réel projets (sauf à vouloir tout re-coder à la mains).
      Il reste cependant sans doute une bonne transition entre un langage type Lua et un éditeur type Unity3D pour comprendre les mécanisme de base (cycle de jeux).
    • Développant sous Linux et à destination multi-plateforme (Windows, Android, Linux), je ne pense réellement pas faire d'autres jeux avec Monogame.
    • Cette expérience m'a apporter toutefois plusieurs réponses :
      • Le 1er choix était sans doute le bon (pour moi et mes besoins/envis) : JAVA/LibGDX
      • David à raison sur ce fait : Si tu as les base d'un langage, passer à un autre langage du même type est totalement trivial.
      • De même pour les framework de jeux  : Le fonctionnement et les mécaniques de jeu restent globalement les mêmes
      • C#/Monogame est-il un bon choix aujourd'hui ? Pas pour moi.
      • Peut-on passer facilement d'un langage/framework à un autre ? Oui ! 4 heure pour faire un jeu avec un langage et un framework que je connaissait pas... Passage de Java/LibGDX à C#/Monogame sans aucun soucis ni interrogation (si se n'ai "quelle est la syntaxe pour faire ça ?")
    • Pour le prochain jeux, je testerais HaxeFlixel. J'ai développé dans le passer en AS3 dont je garde des bon souvenirs et le framework à l'air de proposer un "VRAI" multi-plateforme et des outils sympas (algo, UI, effets, etc.). Seul bémol, à voir, l'IDE.


Download

Download NowName your own price

Click download now to get access to the following files:

chickens-revenge_windows_0.1-dev.zip 4 MB
Source code | C#/Monogame (Cross plateform project / Linux)

Development log

Comments

Log in with your itch.io account to leave a comment.

Hello,

Tout d'abord bravo pour ce petit jeu sympa, l'idée est bonne :)

Concernant ton avis sur Visual Studio 2017, je ne te rejoins pas, personnellement je le trouve top. C'est sur que les IDE de JetBrains sont cool mais surtout payants.. comparé à VS. Je suis développeur PHP/JS depuis 4 ans et j'aimerai bien utiliser PHPStorm mais le fait de devoir payer par mois/année m'a toujours rebuté (même si c'est pas grand chose) :/

Concernant MonoGame, tu le trouves trop bas niveau, mais c'est justement là tout son intérêt. Déjà car tu apprends à faire toutes ces choses qui "manquent" pour toi et ensuite vu que c'est toi qui les a développées, tu en as le contrôle total.

J'ai toujours préféré développé mes éléments moi-même, donc MonoGame me convient bien, mais j'irai quand même voir ce que donne Java/LibGDX un jour ;)

Bonjour,

Merci beaucoup pour ton retour. Effectivement, tu as raison sur tous les sujet, c'est uniquement une question de point de vue et d'attente personnelles.

Sauf pour une petite chose, IntelliJ Idea (éditeur de jetbrain JAVA / Haxe) tout comme Android studio (basé sur le premier pour JAVA/Android et que j'utilise pour LibGDX) sont gratuit ;)
Après effectivement, la licence PHPStorm n'est pas donnée pour un dev "amateur". J'ai la chance d'être dans une société qui me la paye, et l'ayant essayé, je ne reviendrais pas en arrière, même pour le coût de la licence (a voir dans le futur ce que les autres IDE nous réservent) :)

Heureux que mon petit jeu te plaise. J'essaierais de le finir malgré tout, de le compléter et de peaufiner sont déploiement... Quand j'aurais plus de temps ;)