Bonjour,

Un ami et moi-même développons le jeu « Plee the Bear » durant notre temps libre. Il s'agit d'un jeu de plates-formes en 2D du type années 90, avec des bonus, des secrets, des mini-jeux. Nous voulons rester dans l'esprit d'un Sonic ou d'un Mario sans pour autant en faire un énième clone. Ainsi, nous avons développé un univers et une ambiance qui nous semblent propres au projet.

Nous sortons environ une nouvelle version par an, la prochaine étant prévue pour le mois de juillet. La version en cours de développement compte actuellement deux niveaux, un tutoriel et deux mini-jeux. Le moteur du jeu est aujourd'hui suffisamment complet pour nous permettre de faire les niveaux que nous voulons et nous avons développé plusieurs outils annexes pour la conception des niveaux et des personnages.

Le jeu commence dans une forêt, alors que Plee recherche son fils pour le punir. En effet, ce dernier s'est enfui de la maison après avoir mangé tout le miel. Très tôt dans sa recherche, Plee retrouve son fils, qui se fait enlever par un personnage étrange au pouvoirs magiques. Ce personnage se présente comme étant Dieu et s'enfui avec le petit ourson. La quête du héros devient alors une rescousse de son fils l'amenant dans des environnements variés.

Nous sommes tous deux principalement intéressés par le code, mais je fais aussi de nombreux dessins et quelques musiques. Cependant, la charge est clairement trop lourde pour seulement deux personnes. Par conséquent, nous cherchons de nouveaux contributeurs souhaitant investir un peu de leur temps libre dans le projet. Les contributions peuvent se faire dans de nombreux domaines, la seule contrainte étant de mettre le code sous licence GPL et les données sous licence Creative Commons paternité, partage à l'identique.

Le développement se fait en C++. Le jeu utilise la SDL et les éditeurs sont écrits avec wxWidgets. Bien que le code et les commentaires soient en anglais, nous essayons de maintenir une documentation française à jour sur le wiki. Sur ce même wiki sont décrites les étapes pour récupérer le jeu depuis le dépôt SVN. Cette dernière page liste notamment les dépendances nécessaires pour compiler et exécuter le jeu. En particulier, la version en cours de développement de la bibliothèque libclaw doit être récupérée et installée.

La liste ci-dessous présente de manière non exhaustive des éléments pouvant ou devant être effectués pour faire avancer le projet. Elle illustre les différents domaines dans lesquels peuvent s'effectuer les contributions.

Réseau :
Le jeu est prévu pour pouvoir être joué à un ou deux joueurs en mode coopératif. De plus, des mini-jeux font leur apparition, eux-aussi prévus pour un ou deux joueurs. Il est tout à fait possible actuellement de jouer à deux sur la même machine, il n'y a cependant aucun système pour faire une telle partie à distance. Nous cherchons donc des contributeurs prêts à s'approprier cette tâche.

Port sur d'autres plates-formes :
Nous développons sous Linux mais nous essayons aussi de maintenir une version pour Windows. Cependant, nous n'avons l'occasion de tester cette dernière qu'au alentours de la sortie d'une nouvelle version du jeu. Nous apprécierions qu'une personne plus familière avec ce système prenne en charge la maintenance de cette version durant le cycle de développement ou à l'approche des sorties.

Graphisme :
Les retards en matière de dessins sont un frein pour l'avancée du code. Bien que nous puissions coder le comportement de personnages indépendamment du visuel, une trop grande progression dans le code entraîne un écart de plus en plus décourageant. Nous avons en particulier besoin des animations pour les personnages suivants :
  • le fils de Plee (des croquis sont disponibles) ;
  • un lapin gambadant dans la forêt ;
  • un lapin géant en guise de boss (c'est le petit lapin transformé en grand).


Ces éléments sont indispensables pour terminer le premier niveau et pouvoir passer confortablement au niveau suivant. Nous avons de plus un tutoriel sur la réalisation d'animations pour le jeu.

Son :
Nous avons actuellement très peu de bruitages, ce qui est très pénalisant pour l'ambiance du jeu. Nous avons en particulier besoin des éléments suivants :
  • un grognement de gorille ;
  • des bruits de pas d'un gorille qui cours ;
  • un son de guêpe qui vole.


De nombreux autres sons sont nécessaires à l'ambiance mais difficilement descriptibles. L'idée est de combler ces manques au fur et à mesure en jouant au jeu.

Éditeurs :
Les éditeurs de niveaux, de personnages et d'animations sont écrits en C++ et utilisent la bibliothèque wxWidgets pour l'interface utilisateur. Bien qu'ils soient tout à fait fonctionnels pour l'usage que nous en faisons, de nombreuses améliorations sont possibles. Par exemple :
  • Se souvenir du dernier dossier utilisé pour les boîtes de dialogues de sélection de fichier ;
  • Édition simultanée des propriétés communes à plusieurs objets d'une sélection multiple (éditeur de niveaux) ;
  • Intégration des attributs XML concernant l'espace de nom et le schéma utilisé dans les fichiers.


Moteur physique :
Le moteur physique a actuellement deux lacunes. D'une part il est impossible d'empiler des éléments et d'autre part les objets sont plus ou moins contraints d'être rectangulaires. Bien que cela ne gêne en rien l'univers du jeu, il peut être pertinent de combler ces lacunes. Un contributeur intéressé par les problèmes de complexité algorithmique pourrait se retrouver dans ces manques.

Moteur graphique :
L'affichage est géré via la SDL et OpenGl. Nous envisageons d'intégrer quelques effets visuels pour appuyer certains événements (personnage invincible, parties scénarisées). L'idée est de programmer ces effets en GLSL. Néanmoins, aucun de nous ne s'y est encore penché. Nous recherchons une personne intéressée par le graphisme pour faire avancer cette partie.

Pour toute question relative au projet, vous pouvez nous contacter à l'adresse « plee-the-bear (chez) gamned (point) org » ou simplement intervenir dans ce fil de discussion.

Julien