SupergunArena

Un mini-jeu 2 joueurs

a marqué ce sujet comme résolu.

Salut, moi c'est Uriopass, je code en Java depuis 1 an et demi aujourd'hui, et du haut de mes 16 ans, je viens vous présenter SuperGunArena. En gros, c'est un remake d'un jeu que j'ai déjà fait appelé Supergun. La nouvelle version a pour but d'être construite sur une base propre, et d'ajouter tout un tas de fonctionnalités.   PS : Je précise juste que ceci est un copié collé de ma présentation sur OCR

En savoir plus sur le projet

Genèse

Comme expliqué dans l'introduction, Supergun est un jeu qui a beaucoup plu et j'ai ainsi décidé de faire un remake en mieux. Par exemple, j'ai changé de librarie graphique en utilisant LibGDX. Cette librarie est plus rapide et me permet de faire des maps de taille indéfini contrairement à l'ancienne version qui était limité à du 25x20. Enfin bref, j'avais envie d'appliquer mes nouvelles compétences à ce mini-jeu qui me tient à cœur.  

Généralités et avancement

SupergunArena est un jeu vidéo de type arène dans le style de SuperSmahBrosBrawl (SSBB pour les intimes). Le principe est que l'on possède des armes, qui lorsqu'elles sont utilisées poussent le joueur. Et lorsque celui-ci tombe dans le vide, il meurt tout simplement. Le jeu se joue à deux sur le même clavier (même si un mode en ligne est prévu), et j'ai aussi implémenté une I.A. basique mais efficace. Le jeu est pour l'instant en "beta" si on peut dire, c'est à dire qu'il implémente toutes les fonctionnalités de base, comme les mouvements des personnages, un éditeur fonctionnel, une I.A. et la gestion du score et des morts. Mais bien sûr, il reste encore beaucoup de choses à faire.

Pour faire ce jeu, j'ai utilisé le langage de programmation Java car c'est celui que je maîtrise le plus. J'ai aussi utilisé la librarie graphique LibGDX car elle est puissante, maniable et que je sais aujourd'hui convenablement l'utiliser. J'ai effectué les graphismes sur GIMP, excepté pour les personnages et le fond.  

Objectifs

SupergunArena n'est pas un jeu qui se veut connu, mais simplement un petit jeu pour jouer 10 min. avec un pote quand on en a envie. Mon objectif est de faire plaisir au plus de personne possible, ainsi Java est adapté car il faut simplement télécharger un jar et l'on peut directement lancer le jeu. J'ai actuellement une todo list, et j'essaie du mieux que je peux de m'y tenir et de l'améliorer et la compléter quand je le peux, elle est disponible un peu plus bas dans le sujet.

Par ailleurs, le projet est OpenSource et disponible sur github –> ici

Le projet et son originalité

Le projet ne se veux pas particulièrement original au sens où c'est un jeu "d'arcade" et il n'y a pas d'histoire. Le principe est simple : "pousser ou se pousser". Et donc comme prévu, voici ma todo list avec les choses déjà faites, en production et à faire.

Todo list :

  • [FAIT] Mode de "vie" (–> Mort si vie = 0)
  • [FAIT] Mode de "brawl"
  • [FAIT] Camera dynamique
  • [FAIT] Effet de sang
  • [FAIT] Editeur de map
  • [FAIT] Sauvegarde des maps
  • [WIP] Options
    • [TODO] Touches personnalisées
  • [FAIT] Boites des munitions et d'armes
  • [FAIT] Meilleures munitions (gestion des collisions et angle)
  • [FAIT] IA
  • [WIP] Plus de blocs pour la map
  • [WIP] Mode plus customisable
  • [WIP] Plus d'armes
    • [FAIT] Shotgun
    • [FAIT] Sniper
    • [FAIT] Mitraillette
    • Bazooka
    • Epee
    • Lance-flammes
  • Mode de Parkour
    • [FAIT] Generateur de parkour
  • [TODO] Multiplayer en ligne (ou local)
  • [TODO] Support de plusieurs maps
  • [TODO] Mode "survival" (avec des zombies par exemple)

Et bien sûr, si vous avez des idées, n'hésitez pas à les poster en commentaire !

Bon alors maintenant, je vais un petit peu expliquer le principe interne du jeu.

  • Le jeu possède pour l'instant 4 armes: le pistolet, le sniper, le shotgun et la mittrailletes, ayant toutes leurs avantages et leurs défauts.
  • Il y a quatres options :
  • Ammo, active ou désactive les munitions.
  • Brawl mode, active ou désactive le fait de "pousser" le joueur.
  • IA, active ou désactive l'IA
  • Parkour, active ou désactive le mode "parkour". Activer le mode parkour élargit la caméra et fait apparaitre le bouton "generate parkour" dans l'editeur.

Voici les touches pour les personnages :

Personnage vert :

  • Gauche : S
  • Droite : F
  • Sauter : E
  • Tirer : Espace

Personnage noir :

  • Gauche : Fleche gauche
  • Droite : Fleche droite
  • Sauter : Fleche du haut.
  • Tirer : Enter ou Ctrl droite

Editeur :

  • Dézoomer avec la souris
  • Clic droit pour bouger la caméra.
  • Clic gauche pour poser le bloc
  • Chiffres 1 2 pour changer de bloc.
  • Le bouton switch mode permet de passer en mode "gomme".

Téléchargements

Le lien de téléchargement n'est pratiquement pas susceptible de changer, et contiendra toujours la dernière version :

http://lablanchisserie.fr/Parissou/SupergunRemake/download.php

Screenshots

Pour commencer, un petit GIF (avec deux IAs se battant l'une contre l'autre) : http://lablanchisserie.fr/Parissou/SupergunRemake/DoubleIASupergun.gif .

Screenshot du jeu :

Le jeu

Screenshot de l'éditeur :

L'éditeur

+4 -0

Tu aimes les anagrammes ? :° Et sinon, pense à faire gaffe à ton serveur, l'accès est libre pour tout le monde.

Bon, j'attendais le retour de ce mini-jeu, je testerai ça cet aprem.

Phigger

Héhé au niveau de l'anagramme , c'est fait exprès Sinon pour mon serveur, ça ne me dérange pas qu'il soit libre, vu qu'il n'y à aucune donnée confidentielle, et en échange c'est plus pratique pour moi de ne pas avoir à taper un mdp à chaque fois que j'y vais.

+0 -0

Coucou !

J'ai récemment ajouté le bloc du néant. C'est un bloc animé qui tue le personnage lorsqu'il le touche. Pour l'ajouter, il faut aller dans l'éditeur et taper la touche "2", puis cliquer.

Un petit screenshot pour vous montrer à quoi ça ressemble :

+0 -0

Ah bah, tout de suite quand on connaît la commande, c'est mieux ^^

Bon alors, du coup :

  • Pas de bouton echap pour revenir au menu :/
  • L'IA est en fait activée quand dans les menu elle a le statut disable.
  • L'IA est un peu buguée ^^ Et quand elle respawn, elle réagit beaucoup trop vite et me surprend à chaque fois
  • Les kit d'armes ne se distinguent pas les uns des autres

Mais sinon c'est assez fun ^^

+0 -0

Ah bah, tout de suite quand on connaît la commande, c'est mieux ^^

Bon alors, du coup :

  • Pas de bouton echap pour revenir au menu :/
  • L'IA est en fait activée quand dans les menu elle a le statut disable.
  • L'IA est un peu buguée ^^ Et quand elle respawn, elle réagit beaucoup trop vite et me surprend à chaque fois
  • Les kit d'armes ne se distinguent pas les uns des autres

Mais sinon c'est assez fun ^^

Phigger

Merci beaucoup de ton retour ! Alors :

  • Je viens d'ajouter le bouton échap dans la dernière version.
  • En fait justement, quand tu clique ça la désactive. C'est pas marqué "Ia disabled" mais "Disable IA"
  • Oui elle bug un peu et elle est trop réactive, je planche là dessus et je vais faire en sorte qu'elle ai un peu de temps de réaction.
  • Oui effectivement, je pense rajouter un truc genre un texte qui s'affiche quand tu prends une arme du style "Sniper" au dessus de ton perso mais qui disparait au bout de 2s.

Merci beaucoup ! Par ailleurs, c'est beaucoup plus rigolo à deux, donc si tu as quelqu'un avec qui jouer.. ;)

Par ailleurs, j'ai ajouté dans la dernière version un gestionnaire de map !

Voilà à quoi ça ressemble :

Tada

Et comme toujours, à télécharger ici :

http://lablanchisserie.fr/Parissou/SupergunRemake/download.php

+0 -0

Coucou à tous (enfin surtout Phigger) ! Je passais juste pour dire que j'ai ajouté un updater automatique au jeu, pour ne plus avoir à retélécharger à chaque fois que je sors des features.

C'est donc la dernière fois que vous cliquez sur ce lien :

http://lablanchisserie.fr/Parissou/SupergunRemake/download.php

+0 -0

Hey ! Bonjour à tous !

Alors là… Je suis épaté ! Il est super sympa ce jeu ! Il est vif, dynamique, les graphismes, sans être exceptionels, sont agréables, la prise en main est rapide, l'éditeur de niveaux plutôt réussi :)

On prend beaucoup de plaisir à jouer à ce jeu ! - J'imagine qu'à deux c'est encore mieux :)

Mais mais mais ! Il y a quelques points négatifs : Même si je suis plutôt impressionné par le niveau de l'I.A. (je me demande toujours comment les gens font pour coder ces bêtes-là) je me dois de relever deux, trois défauts : comme l'a dit Phigger, elle est trop réactive au début (peut-être faire un spawn à la manière de Super Smash bros. melee ?) Et quand on saute dans le vide, elle a une fâcheuse tendance à nous y suivre ;)

Bon en fait c'est tout pour les points négatifs :)

Par contre ce qui est bien réussi c'est le côté "brawl"… A certain moments j'avais carrément l'impression de jouer à SSBM (j'ai jamais joué à SSBB) - Notamment ce moment où tu attends ton adversaire sur le bord de la map comme un lâche et où tu lui envoie un smash dans les dents quand il est encore en l'air :) Et à ce moment j'ai trouvé qu'il manquait -pour moi, bien entendu- une attaque au corps à corps, type "batte de baseball" ou "pichenette" des worms, ce qui rajouterait, je pense, un petit côté stratégique en plus :)

Mais en tout cas, le bilan général de ce jeu est plutôt bon, ce jeu permet de passer un moment sympa sans se prendre la tête ! (Il me fait penser à SMO Arena Figter ^^)

+1 -0

Wow ! Merci beaucoup pour ton feedback, ça m'aide à améliorer le jeu. Tout d'abord, merci beaucoup pour tes compliments, je trouve ça super en tant que dev d'imaginer que les utilisateurs s'amusent avec ce que j'ai fais, et ça me va droit au coeur. ^^

Au niveau de l'IA, en fait elle est vraiment toute bête, et il n'y a pas de raison d'être impressionné. Elle va à droite si tu es à droite, à gauche si tu es a gauche, saute si tu es au dessus et tire si tu es dans son champ de vision. Mais là en ce moment je suis en train d'implémenter un pathfinding pour qu'elle puisse se retrouver un peux mieux dans toutes les maps et qu'elle puisse aller chercher des objets comme des armes ou des packs de vie. Par contre, j'ai fais en sorte que quand on soit au dessus du vide, elle aille vers le millieu de la map pour éviter de tomber, je trouve ça étonnant qu'elle te "suive" dans ta chute mais bon.. ^^ Sinon pour le fait qu'elle soit trop réactive, c'est parce qu'elle spawn juste devant toi, tu n'as qu'à déplacer son endroit de spawn dans l'éditeur. :)

Ensuite pour les armes mélées, j'y réfléchis et on me l'a déjà demandé sur d'autre forum. Je pense qu'une batte de baseball est une bonne idée car ça fait vraiment "punch" dans la face qui t'envoie super loin. Du coup je vais me concentrer la dessus.

Enfin, merci et encore merci pour ton feedback, ça me fait super plaisir. :)(Et oui effectivement SMO arena se rapproche pas mal, et j'avoue que j'ai pas fait exprès, en fait quand j'avais déjà vachement avancé le jeu quand mon frère m'a parlé de S.M.O. ^^)

Sinon au passage, je l'ai pas annoncé ici mais j'ai ajouté de la musique et des sons au jeu. Aussi, j'ai ajouté un petit truc en haut de l'écran quand le jeu est ralenti.

+1 -0

Ah et sinon, j'ai une autre remarque que l'on t'a déjà faite pour SuperGun, premier du nom : ce serait bien qu'il soit possible de choisir la fréquence d'apparition des bonus, ou de la désactiver (pour un match à la loyale, à armes égales), et de déterminer un score limite configurable à partir duquel un gagnant est désigné :)

Et d'ailleurs l'effet de ralenti est vraiment sympa :)

Sinon, le mode "parkour" est une bonne idée, mais l'IA en bave… Elle n'a pas l'air de connaître le double-saut ^^

Ah ! Et un truc tout bête ! Ce serait bien que les options soient sauvegardées, pour ne pas avoir à reconfigurer à chaque démarage :) (non, je ne suis pas un gros flemmard :) )

EDIT : Ca pourrait être sympa de gérer le recul des armes ;) (je sais, je sais, je suis sxigeant ^^)

+0 -0

Oui, la personnalisation du mode est la prochaine grosse feature à implémenter. Je vais essayer de la mettre le plus vite possible. ^^

+1 -0

Salut a tous ! Ca fait assez longtemps que je suis pas passé, du fait de mon bac français j'ai peu de temps pour coder.. :)

Je venais juste annoncer que j'ai rajouté une batte de baseball, le friendly fire (on peut se prendre ses propres balles) et j'ai corrigé quelques bugs de caméra \o/ J'ai aussi ajouté une petite image pour montrer quand on est invincible ou non. (au spawn)

Au niveau du code j'ai ajouté un système d'entité qui me permettra d'ajouter plein de features cool prochainement.. (Genre des tapis roulant, des téléporteurs, des l4z3rs.. enfin bref pleins de trucs)

Vous avez plus qu'à lancer le jeu pour qu'il se mette a jour ^^

+1 -0

Aaah ! une nouvelle version ! Bon du coup je vais attaquer tout de suite, et te dire ce qui me plaît et ce qui me plaît moins :

D'abord, ce qui me plaît :

  • La sauvegarde des options du menu :D

  • La batte de baseball :D (même si mon avis sur cette feature est mitigé, mais j'y reviendrai )

  • "Au niveau du code j'ai ajouté un système d'entité qui me permettra d'ajouter plein de features cool prochainement" : Vivement les prochaines updates :)

  • Et la mise à jour automatique, qui est quand même vachement bien pour les flemmards ^^

Attention, places aux remarques négatives ! :pirate:

  • Bon alors déjà, le point positif, c'est qu'il y a pas beaucoup de remarques négatives : elles concernent toutes la batte de baseball !

  • En effet je trouve que le principe est vraiment sympa, et ça rajoute un plus au jeu… Mais je trouve que de la mettre en objet principal est dommage : je préfererais avoir un objet secondaire qui puisse être batte, grenades, ce genre de trucs (enfin après c'est totalement subjectif, ça dépend la vision que tu as de ton jeu, bien sûr)

  • Et par contre je trouve que l'animation et l'usage de la batte sont un peu "mous" : l'animation est trop lente, pas assez dynamique, et la façon des'en servir non plus ! Où sont les effets stylés quand on tape fort ? Et quid de la possibilité de charger son coup, qui pour moi est un élément très important ?

Bon en tout cas cette mise à jour semble prometteuse pour l'avenir du jeu :) Continue ainsi !

+0 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte