Se connecter

Informatique

Création de Jeux

Sujet : DXT Battle Conquest
1
Demonciel
Niveau 27
02 mai 2023 à 20:43:50

Salut à tous !

DXT Battle Conquest (titre encore à définir) est un jeu en 2D pixel art dans lequel il faudra bâtir des usines qui généreront automatiquement des robots de combat. Les usines peuvent être améliorées selon 3 axes d'upgrade différents et des combinaisons entre 2 axes sont possibles. La partie est gagnée lorsque le mur adverse est détruit. Pour ce faire, il faut que nos robots se fracassent contre celui-ci.

https://www.noelshack.com/2023-18-2-1683051024-image.jpg https://www.noelshack.com/2023-18-2-1683050852-image.png https://www.noelshack.com/2023-18-2-1683052816-image.png https://www.noelshack.com/2023-18-2-1683051238-image.png https://www.noelshack.com/2023-18-2-1683051140-image.jpg https://www.noelshack.com/2023-18-2-1683051364-image.png https://www.noelshack.com/2023-18-2-1683051422-image.png

Ça va faire à peu près un an que je travaille sur le développement de mon jeu. En plus des screenshots, j'ai fait une petite vidéo rapidement pour vous montrer à quoi ça ressemble actuellement: https://youtu.be/DSSMaHCgHKE Pour tester mon jeu, tout ce que je construit dans mon camps et reproduit dans le camps adverse. (Faut encore que je code une IA :hap: )
C'est long donc j'ai mis des timecode en description pour les moments clés.

Je code sur Godot et je réalise mon pixel art sur Piskel. Oui c'est à peine mieux que Paint mais j'apprécie la simplicité que voulez-vous... :hap: Je récupère mes effets sonores un peu partout sur internet, sur Youtube, dans des banques de sound effects, etc... Pour le moment je travaille seul sur ce projet. Je consacre une partie de mon temps après le boulot et durant les week-end donc ça avance assez lentement. C'est le premier vrai projet dans lequel je me lance. Le travaille restant avant d'avoir une version intéressant me paraît encore énorme mais pas irréaliste compte tenu de ce que j'ai déjà fait. Jusque là je n'ai jamais perdue la motivation même s'il y a eu des périodes peu productives, donc ça va de mon point de vue. :noel:

----------------
En détails

Pour le moment, le seul moyen de générer de l'argent est de détruire les robots adverses. En fonction de la difficulté, les bâtiments et les upgrades n'ont pas le même prix.

Le système d'amélioration selon 3 axes me vient directement du jeu "Bloons TD Defense 6". Il est possible d'améliorer un axe jusqu'au niveau 5, et d'en améliorer un autre jusqu'au niveau 2 seulement. C'est le maximum que l'on puisse faire. Il faut donc choisir judicieusement ce que l'on veut améliorer pour réaliser des combos intéressants.
Les améliorations ne sont pas que de simples augmentations de statistiques, chacune apportera sa propre spécificité ainsi qu'une update graphique de l'usine et des unités qu'elle produit. Par exemple, voici mon planning concernant le développement des améliorations du robot standard: https://www.noelshack.com/2023-18-2-1683049063-image.png J'ai compté et ça fait 107 combinaisons différentes possibles en tout, et ce n'est juste qu'un seul type d'unité https://image.noelshack.com/fichiers/2018/10/1/1520256134-risitasue2.png
A terme il sera aussi possible d'améliorer les tourelles ainsi que le mur de défense sur ce même schéma.

Chaque usine possède une quantité limitée de robots sous son contrôle. Par exemple, si une usine atteint sa limite en produisant 10 robots, elle devra attendre qu'un de ces robots meurt avant d'en produire un nouveau.

---------------------------
Les ajouts futurs

Bon bah déjà un fond pour que ce soit plus jolie que le gris par défaut de godot. :noel:

Une IA adverse, tout simplement. Pour le moment le jeu n'est pas jouable principalement à cause de ça. Je réfléchis encore sur la façon dont je vais la programmer. (D'ailleurs, si vous avez des suggestions n'hésitez pas :hap:)

J'envisage d'ajouter des bâtiments auxiliaires qui pourront avoir diverses influences. Certains pourront améliorer la vitesse de production des usines alentours. Certains pourront augmenter la capacité maximale d'une usine. D'autre rapporteront de l'argent de manière continue. D'autres aussi pourront accélérer les unités circulant sur les routes alentours ou réparer le mur de défense. C'est encore à définir pour le moment, je cherche encore les mécaniques qui seraient les plus pertinentes.

A très long terme j'envisage d'ajouter différents type de clans. Pour le moment je n'ai que des robots mais il serait intéressant d'avoir d'autres types de combattants. Des militaires, des singes, des aliens, des monstres, beaucoup de choses pourraient être funs. Ce n'est qu'une idée lointaine pour l'instant car je ne suis pas près d'arriver au jour où je me poserais ces questions. :noel:

Bon bah voilà c'était mon projet perso, en espérant qu'il vous inspire, qu'il vous plaise et qu'il prospère. :ange:

thelastofus2
Niveau 26
04 mai 2023 à 20:51:04

Ca me fait penser à un mode dans starcraft 2 (qu'il y avait surement également dans warcraft 3), je trouve le concept cool.
Mais je trouve qu'il manque quelque chose au jeu pour qu'il puisse vraiment m'intéresser (je dis ca en pensant faire parti du public cible de ce genre de jeu, j'aime les jeux de stratégie de ce type).
C'est peut être un manque de sens de progression de partie en partie (pas au sein d'une même partie) qui me frustre, étant donné qu'on joue que contre l'IA

Demonciel
Niveau 27
04 mai 2023 à 23:53:38

C'est en effet un aspect sur lequel je commence à réfléchir.
Une première solution que j'envisage serait de pouvoir débloquer de nouveaux clans après les avoir battu. Le joueur commencerait une partie avec un seul choix de clan possible. C'est simple mais efficace. :ok:

Je pensais également ajouter des améliorations globales, plus générales et plus simples, qui seraient déblocables avec des point gagnés après chaque victoire. Une réduction globale des prix, des robots qui vont plus vites, des temps de production plus courts, ce genre d'améliorations générales qui affecteraient toute la flotte de robots. Voir même des bâtiments entièrement déblocables avec ce genre de concept. En évitant de devoir farmé comme un sac pour débloquer deux trois conneries évidemment. :noel:

Une troisième solution idéale serait carrément de pouvoir créer une ou plusieurs campagne avec une histoire à suivre. Mais ça me semble un peu trop compliqué pour moi seul. Ça reste une option que je me garde sous le coude si un jour je trouve les moyens de la réaliser. Et elle pourrait très bien se combiner avec la première solution d'ailleurs.

Dans tous les cas c'est certain, il faudra que je trouve un moyen de donner au joueur l'envie d'enchaîner les batailles. Pour le moment il me reste encore énormément de travaille avant de pouvoir plancher sur ce problème. L'objectif direct pour l'instant c'est de pouvoir sortir une démo restreinte en contenus, mais jouable. Je verrais ensuite quelles solutions je mettrais en place.

Demonciel
Niveau 27
04 août 2023 à 22:00:06

Petite update concernant les derniers ajouts !

J'ai implémenté plusieurs variations du petit robot en fonction de son arbre d'amélioration. Il y a donc des petits robots robustes avec un bouclier énergétique, des petits robots déter avec des armes complexes, des robots snipers avec des fusils puissants. Bref j'ai ajouté de la variété. Quelques exemples en images: https://www.noelshack.com/2023-31-5-1691167451-image2.png https://www.noelshack.com/2023-31-5-1691167221-image.png https://www.noelshack.com/2023-31-5-1691167001-image.png https://www.noelshack.com/2023-31-5-1691167032-image2.png https://www.noelshack.com/2023-31-5-1691167086-image.png https://www.noelshack.com/2023-31-5-1691167161-image.png https://www.noelshack.com/2023-31-5-1691167221-image.png

J'ai ajouté des effets de trainée derrière les projectiles ainsi que des effets d'impact un peu plus sympas que de simples particules.

J'ai également mis en place 3 niveaux pour pouvoir accélérer le temps. (x1 x2 x3)

Côté purement technique, j'ai aussi ajouté un système de hitbox dynamique permettant aux projectiles de mettre à jour la taille de leur hitbox en fonction du framerate, pour éviter qu'ils passent à travers les ennemies. Quelques autres bugs mineurs ont été corrigés

Un petit aperçu du tout ici: https://youtu.be/glZl93YBqpU

sparte78
Niveau 6
05 août 2023 à 21:35:54

C'est stylé ! J'aime bien =) Mais ça manque un peu de dynamisme non ? Il ne semble pas y avoir de micro gestion, je trouve ça dommage, après peut-être que c'est ce que tu cherches => prévoir sa production, le placement de ses bâtiments pour structurer l'ordre de sortie des troupes et ainsi anticiper une forme de stratégie ?
Je trouve qu'il pourrait être intéressant que le joueur intéragisse plus avec la bataille, soit en microgestion soit directement avec la macro, comme par exemple la nécessité de déplacer ses bâtiments pour ajuster sa stratégie.
Concrètement : En face je vois des troupes anti-blindés, pouf je mets un bâtiment de production de chair à canon en première ligne pour que les gros missiles à fort temps de CD tue de la chair à canon avant de s'en prendre à mes blindés...

C'est une idée comme une autre, en tout cas bon travail !

PS : J'utilisais Piskel aussi jusqu'à il y a peu... Et puis j'ai acheté Aseprite sur steam pour 12€... Une tuerie... enfin à côté de Piskel c'est le jour et la nuit... Je pourrais te montrer si ça t'intéresse (bien que mes dessins persos soient pas fameux, je ne suis pas un artiste ^^)

Demonciel
Niveau 27
07 août 2023 à 10:12:50

Salut Sparte, merci pour ton retour. :-)

Pour le moment il n'est pas prévu d'ajouter d'éléments interagissant avec le champs de bataille. Tout le gameplay se fait au niveau de la construction des bâtiments. Mais je te rassure, il ne s'agira pas uniquement que de construire des usines de production d'unités. Il sera possible de construire des tourelles et des bâtiments spéciaux offrant divers bonus, avec chacun différentes améliorations possibles. Le mur de défense pourra également être modifié.

Je voudrais que le gameplay de mon jeu se rapproche de la logique d'un tower defense. Il suffit de construire les bâtiments nécessaires en fonction des ennemies qui arrivent. C'est simple mais efficace je trouve. :-)

sparte78
Niveau 6
08 août 2023 à 11:38:06

Tu es sûr de toi c'est chouette, ça montre que tu sais où tu vas =) Continue :)

Albundy1
Niveau 6
09 août 2023 à 12:47:58

Je trouve qu'il pourrait être intéressant que le joueur intéragisse plus avec la bataille, soit en microgestion soit directement avec la macro, comme par exemple la nécessité de déplacer ses bâtiments pour ajuster sa stratégie.

Je trouve aussi, pourquoi pas sur le champ de bataille directement, avec des mines a pauser par exemple.

Demonciel
Niveau 27
09 août 2023 à 14:58:09

Le 09 août 2023 à 12:47:58 :

Je trouve qu'il pourrait être intéressant que le joueur intéragisse plus avec la bataille, soit en microgestion soit directement avec la macro, comme par exemple la nécessité de déplacer ses bâtiments pour ajuster sa stratégie.

Je trouve aussi, pourquoi pas sur le champ de bataille directement, avec des mines a pauser par exemple.

C'est vrai que mon jeu pourrait s'y prêter facilement même si ce n'était pas prévu à la base. Il faut que je réfléchisse à une façon pertinente et ludique de l'intégrer à mon système d'améliorations et de construction de bâtiments.

J'ai déjà une petite idée, je vais essayer de la creuser un peu. :ok:

Demonciel
Niveau 27
05 janvier 2024 à 19:11:10

Salut !

Les infos concernant les derniers ajouts, même si ça avance assez lentement: En gros j'ai codé une IA adverse qui sait jouer pertinemment. :-)

Elle est capable de construire une usine, construire une tourelle, améliorer des usines, et poser des routes. L'IA trouve le chemin le plus court possible pour poser ses routes, si possible vers d'autres routes déjà existantes, ça évite d'avoir des spaghettis qui prennent toute la place.

Elle prend plusieurs paramètres de la partie pour déterminer l'action qu'elle décide d'entreprendre. Par exemple elle regarde ses derniers gains d'argent, le nombre d'usines de chaque type déjà construites, le nombre de tourelles déjà construites, et en fonction de ça, il y aura plus ou moins de probabilité que l'IA décide d'entreprendre telle ou telle action. Tout n'est qu'une question de "réglage des curseurs" sur l'impact des paramètres sur chaque décision, pour que l'IA joue de manière cohérente.

Pour le moment ça fonctionne pas trop mal, mais il reste encore quelques ajustement à faire. L'IA n'est pas encore consciente des actions qui lui sont possibles. Elle va par exemple décider de créer une usine alors qu'il n'y a plus de place sur la grille. Ça ne provoque pas de bug mais ça empêche à l'IA de jouer son coup en quelque sorte. En gros, elle décide toutes les 10 secondes d'une action à réaliser et elle check ensuite si c'est effectivement possible.

Je suis maintenant entrain de mettre en place un espèce de mini terminal de "debug" permettant d'entrer des commandes, pour debuguer mon jeu plus efficacement. A l'avenir ça me permettra surtout de faire spawner des unités directement sur le champs de bataille, entre autres choses.

En parallèle je continue d'ajouter des variantes à mes robots, tout doucement, mais sûrement.

[LittleGamer]
Niveau 10
06 janvier 2024 à 09:46:22

GG pour l'IA ça doit pas être si simple à mettre en place sur un jeu de ce type ! Ça a l'air solide en dépit de son check de possibilité un peu tardif.

L'évolution des robots ça a l'air très cool aussi. Je te souhaite de continuer sereinement ce projet :hap:

1
Sujet : DXT Battle Conquest
News culture
La Planète des Singes : Le Nouveau Royaume - la révolution simienne est en marche !
   Retour haut de page
Consulter la version web de cette page