Return false

Un blog IT de plus le blog de Hubebert.

Articles taggés avec ‘Jeu’

Projet de jeu de gestion végétal

Dimanche 28 octobre 2012

Bonjour à tous,

aujourd’hui une présentation d’un projet qui me tient à coeur. Comme beaucoup de nofragés, j’ai toujours voulu développer un jeu vidéo moi même. Maintenant que je suis en 4° année d’école d’IT je me suis permis une option Jeu Vidéo, et je me lance sur mon temps libre pour réaliser mon concept longuement mûri.

Avant-propos technique :

Afin de tester ma motivation et/ou la faisabilité technique, j’ai déjà travaillé environs 2 mois (depuis mi-Aout) sur la réalisation d’un prototype. (voir vidéos). Pour ce prototype j’ai utilisé le framework pygame qui permet de tout faire en Python. Il à l’avantage d’avoir d’excellentes performances pour la 2D et de faire gagner un temps monstre en code grâce au Python. Cependant, pendant la réalisation du prototype j’ai rencontrés quelques défauts qui m’ont poussé à passer à autre chose :

  • Pas d’antialiasing
  • Pas de Synchro verticale (!)
  • Gestion abominable du scroll
  • Packaging en .exe laborieux

J’ai donc donné sa chance au plus récent framework LÖVE. Tout comme pygame, il utilise SDL pour le rendu, qui est excellent en terme de performances. Ce qui me contraint à tout réécrire, et de plus dans un langage auquel je n’accroche pas du tout (le Lua) mais c’est le prix à payer pour les avantages suivants:

  • Anti Aliasing/Vsync natifs
  • Meilleure gestion de l’accèleration matérielle
  • Moteur physique intégré (Box2D, le même qu’Angry Birds d’ailleurs)
  • Système de particule intégré convainquant
  • Distribution Windows/Linux simplissime

Même s’il est plus récent,  LÖVE à déjà fait ses preuves puisqu’on trouve déjà quelques jeux commerciaux en basés dessus. (des petits trucs comme Snayke sur Desura ou Steam Greenlight).

Concept:

Le jeu sera un jeu de gestion, ce qui signifie qu’il faudra jouer sur plusieurs ressources et leur équilibrage pour ne pas perdre. Ma ligne directrice est de coller le plus possible à la réalité. C’est quelquechose qui me tient à coeur, car je reste persuadé qu’on peut s’amuser avec quelquechose de réaliste, pourvu que le gameplay soit bien pensé. Le joueur jouera une variété d’arbre, sélectionnable en début de partie. Le but du jeu est de faire de son éspèce, la plante dominante (comme dans la nature donc). Pour cela le joueur gagne des points. Un highscore game quoi.

Plus son arbre est grand, plus son arbre est ancien, plus on gagne de points. La petite nuance, c’est que les points ne sont comptabilisés que lorsque le joueur se reproduit (non, pas du sexe, avec des fruits), puisque c’est à ce moment qu’il transmet son patrimoine génétique.Au moment de se reproduire, le joueur à un choix. Il peut continuer à jouer dans sa plante, son score est alors sauvegardé et il continue la partie. Autrement, il peut choisir de s’incarner une des graines/fruits/spores générés pendant la reproduction et recommencer une plante, qui, évolution oblige, démarrera avec quelques bonus.

Gameplay:

En fonction de ses ressources le joueur pourra faire pousser des branches des racines et des feuilles sur sa plante.

Le joueur aura à jongler entre plusieurs ressources, et surtout entre deux mondes. À la surface, il devra s’adapter au rythme du jour et de la nuit ainsi qu’a celui des saisons. Cela influera sur la ressource “soleil” qu’il collecte. Dans ce mode, la ressource “soleil” sera collectée en fonction du nombre de feuilles disponibles et de l’ensoleillement. C’est à la surface aussi qu’on aura le plus d’évènements aléatoires (climat, animaux et autre) à gérer.

Sous terre, le fonctionnement sera différent: deux ressources, l’eau et les nutriments. L’eau est collectée uniformément, tandis que les nutriments seront concentrés sur des “spots” de ressources, pour forcer le joueur à pousser dans telle ou telle direction.

Une petite illustration en vidéo avec le prototype en Python/pygame:

Je vous conseille le plein écran pour apercevoir quelquechose.

YouTube Preview Image

Pourquoi j’en parle?

Parce que si vous avez regardé la vidéo ci-dessus vous avez du voir comme c’est moche.

Parce que j’arrive à un stade ou il va falloir prendre en considération la direction artistique du jeu, pour pouvoir coder comme il faut et pas faire des choses que je devrais défaire plus tard si cela ne colle pas avec la DA. Mes sprites sont HORRIBLES. Les curseurs, les branches, tout. Le seul truc qui passe c’est le fond d’écran parce que je l’ai piqué sur opengameart.

J’en parle parce que je suis tout sauf un artiste, et que j’aurais besoin d’un graphiste. Je n’ai aucune idée d’où en trouver un, j’ai essayé de fouiller un peu sur la toile, mais sans succès. Donc si vous avez une idée, un lien, un forum, un ami ou une motivation à tout épreuve à m’apporter, n’hésitez pas à me le dire, ce sera bienvenu.

Merci.

En bonus une autre vidéo plus ancienne, avec des sprites encore plus moches!

YouTube Preview Image

Autres idées (en vrac):

Achievements? Achievements!

Éspèces débloquables au fur à mesure

Multijoueur pour se la comparer (pas pour jouer en même temps)

Refaire le CSS du blog? Un jour…

Et bien sûr vous pouvez me contacter sur mon mail wefrag:

hubebert@wefrag.com

SPRING - Le Moteur 3D

Vendredi 13 février 2009

Le premier d’une série d’articles sur SPRING : un moteur 3D open source orienté jeux de stratégie. A la fois souple puissant, test d’un “jeu” open source qui à de quoi en apprendre aux grands.

Et en plus, ça fait classe.

Aucun rapport avec le "Moteur de Printemps", merci quand même Google Translate pour sa participation.

Le premier d’une série d’articles sur SPRING : un moteur 3D open souce orienté jeux de stratégie. A la fois souple puissant, test d’un “jeu” open source qui à de quoi en apprendre aux grands.

SPRING est à l’origine créé pour faire un remake du meilleur RTS jamais pondu, (dixit Gamespot) par les divines fesses de Chris Taylor: le très saint Total Annihilation.

Évidemment Total Annihilation ça date de 1997 et donc c’est Céphalogène, mais addictif. En témoigne le nombre de patchs et d’add-on homebrews produits pour le jeu et son extension officielle: Core Contigency. Mais certains développeurs ont décidés d’aller plus loin : en refaire un, en moins moche. Qui devait s’appeler à l’origine Total Annihilation : SPRING.

Seulement, le milieu open source n’était pas le seul à vouloir une suite a Total Annihilation. Le brave Chris à la tête de Gas Powered Games — son studio de développement — continuait de commettre des Dungeon Siege jusqu’au jour où il décréta que la technologie était enfin assez avancée pour faire une digne suite à Total Annihilation. Supreme Commander était né. En fait de suite, il s’agit surtout d’un grand remake avec un moteur 3D, un vrai (encore que) et des options en plus.

Chrichri et son T-shirt Supreme Commander vous saluent d'un sourrire craquant.

Chrichri et son T-shirt "Supreme Commander" vous saluent d'un sourire charmeur.

Total Annihilation était révolutionnaire par sa gestion à flux tendus de l’économie: ici pas de production de petits bataillons, peu d’escarmouche à 3 ou 4 unités après les premiers instants. Ici on parle en tank/seconde et on s’affronte à très grande échelle. Supreme Commander garde les principes, mais donne la change avec un zoom aux hormones, qui permet de micro-gérer comme de macro-gérer plus simplement. En plus c’est beau, en plus c’est facile à prendre en main, en plus c’est bien.

Donc SPRING ça ne servirait plus à rien? Et si, Car SupCom a aussi des défauts: pour commencer compter un quad-core pour espérer être fluide. Vous avez dit gourmand? Chris vous réponds qu’il faut y mettre les moyens. Le gameplay est enrichi mais pousse maheureusement à s’enfermer dans une course à la défense parfaite plutôt qu’à l’attaque. Reproche qui sera corrigé par la suite avec la parution de Forged Alliance.

SPRING n’est donc pas mort, au contraire. Le moteur supporte plusieurs mods, j’en testerais dans des articles ultérieurs. Si la plupart se basent sur le principe de Total Annihilation, certains s’en démarquent complètement comme SPRING 1944, qui vous l’avez deviné s’éloigne un peu de la science fiction.

Leau bumpmappée, un effet plutôt réussi.

L'eau bumpmappée, un effet plutôt réussi. Vous remarquerez également la déformation crée par la chaleur des réacteurs. Le genre de détails qui n'influent en rien sur les performances.

Le moteur donc, puisque c’est de cela dont il est question permet d’afficher des cartes variées, on passe de la neige à l’océan sans oublier les décors lunaires et planétaires. A propos d’océan on notera une gestion de l’eau très réussie, en mode dynamique ou bumpmapée selon la configuration de l’utilisateur.

La gestion de la physique est elle aussi surprenante, et rare pour un jeu de stratégie: selon la planète la gravité varie, influant sur la difficulté à monter les pentes, la balistique, ou la distance sur laquelle un avion planera avant de s’écraser. Ajoutons à cela une gestion évoluée des collisions: chaque entité explosant projette des débris, dont la direction est calculée en fonction de l’impact et de l’explosion elle même. Ce n’est donc pas seulement le souffle de l’explosion qui provoque des dégâts, mais aussi les débris.

Enfin, pour ce qui est de la modélisation, on touche là à un des points les plus aléatoires de SPRING. Le grand nombre de mods existants permet à certains de sortir du lot, mais la qualité est très inégale, même au sein d’un mod en particulier. La modélisation est donc elle aussi variable; il arrive que des unités cubiques et mal animées en côtoient d’autres dont la qualité est presque irréprochable. La même constatation se fait sur les maps. Certaines sont tout à fait plates, mornes et même sans ciel tandis que d’autres regorgent de détails originaux et présentent des possibilités stratégiques passionnantes.

En résumé SPRING est un moteur qui semble prometteur, mais pour pouvoir apprécier la qualité graphique générale il faudra se baser sur un mod et non sur le moteur lui même, et ce sera l’objet de mes prochains articles.

Pour aller plus loin

Le Site Officiel.

Le lien vers la section téléchargement.

Et le lien vers la page wiki du site officiel de SPRING qui dresse une liste de mods pour son moteur.

Quelques screens pour finir.

La destruction d'un tank, on peu y voir les-dits débris partir.

La destruction d'un tank. On peut voir les fameux débris voler sur la droite.

Les fins

Les fins de parties prennent parfois un air de Fallout.

KP

Certains mods sont plus originaux, et sortent des sentiers battus. (ici Kernel Panic)