Réflexions sur la création de jeux vidéos

Ce qui suit n’est en aucune façon LA solution pour créer un bon jeu mais seulement quelques observations liées à ma propre expérience et aux avis et conseils que j’ai reçu de la part de développeurs confirmés.

Il est vrai, comme l’a dit RedStar sur un autre forum, qu’un projet commun doit inclure une personne qui saura trancher en cas de désaccord. Si on arrive à maintenir une équipe de développement stable, c’est absolument nécessaire.

J’avais essayé, au début de mon projet courant, de monter une équipe avec des joueurs, dont certains possédaient un sens narratif certains, donc parfait pour créer un jeu de style RPG.
Mais au bout de quelques mois, rien n’avançait, et je me retrouvais tout seul à bosser. En fait , il y avait beaucoup de parlottes, mais pas d’actes.
Un autre exemple : L’épouse d’un ami (une codeuse de talent) a voulu monter le même genre de projets donc, elle a commencé par créer une association loi 1901, puis grâce aux subventions, a investi dans une licence pro Unity. Quelques mois plus tard, même punition, même motif: Elle bossait toute seule, c’est à dire: Les modèles 3D + textures, le coding, les sons et ambiances, etc… (encore une fois, elle était codeuse, à la base).
Au bout de 2 ans de travail acharné, elle a jeté l’éponge, dissout l’asso et abandonné le projet. Depuis, elle ne veut plus entendre parler de développement de jeu, et c’est bien dommage, je l’aurais bien embauché !

La plupart des avis que j’ai reçu, ainsi que encore une fois, ma propre expérience, disent qu’il faut commencer seul, cela peut être long, pénible et décourageant parfois, mais il faut s’accrocher: La volonté déplace des montagnes.

Donc :

1) Noter ses idées sur papier:

  • Style de jeu (RPG, RTS, FPS, simulation, etc…)
  • Game-play
  • 3D ou 2D
  • Plateforme(s) de destination
  • Faisabilité

Note: Ce dernier point est très important: En effet, certains moteurs prétendent que l’on a pas besoin d’être programmeur pour créer un jeu: C’est faux ! Vous pourrez effectivement créer des trucs styles “Pong” ou « Breakout » mais ca n’ira pas beaucoup plus loin. Le coding est une des phases principales de la création de jeu, et c’est le code qui déterminera avec précision les mécaniques du jeu et donc, le game-play.
A l’inverse, si vous êtes un codeur confirmé mais n’avez aucun talent ni connaissances en graphismes, c’est voué à l’échec aussi. En effet, la plupart des éventuels futurs joueurs se fient à une seule chose: ce qu’ils ont devant les yeux, en bref, les images. Donc, il en faut un maximum pour attirer un public.

2) Choisir son moteur de jeu avec soin:

– La licence: Que vous permet elle? Vous oblige t’elle à reverser une partie de vos gains éventuels (ex : Unity)? Vous oblige t’elle à diffuser sur une plateforme particulière (ex : Cry Engine + Steam). En bref, quelles possibilités le moteur vous offre et à quelles contraintes vous oblige t’il?
Pour ma part, j’ai mis un an complet avant de me décider (et j’en ai essayé une palanquée !)
– OS choisi: Soyez sûrs que le moteur fonctionne sous votre OS favori, certains offrent la possibilité d’une compilation depuis les sources, mais c’est rarement efficace à 100%.
– Votre plateforme de destination: PC (Linux, Windows), Mac, IOS, Android, console? Tous les moteurs n’offrent pas les mêmes choix. De plus , vouloir développer pour console peut augmenter sérieusement le budget que vous auriez à prévoir. Eh oui, si certains moteurs offrent la possibilité de développer pour WII, par exemple, ce n’est pas le cas de tous, et vouloir choisir une autre plateforme pourrait vous valoir l’achat d’une licence supplémentaire TRES onéreuse, plusieurs milliers d’Euros dans certains cas… Par console, et non pas par marque ! Ou alors, il vous faudra trouver un distributeur/éditeur et le contrôle sur votre projet pourrait vous échapper en partie, si ce n’est complètement.
– Soyez sûrs que le moteur choisi soit stable, offre des mises à jours régulières et accepte la portabilité d’une version vers la suivante. J’ai lu de nombreux topics parlant d’Unity et d’absences de compatibilité entre les versions et donc, de projets devant être reconstruits de A jusqu’à Z !
– Le code du moteur est il disponible? En effet, si vous êtes codeur, il vous faudra peut être modifier certaines fonctionnalités.
– Le langage de script (Python, Lua, JavaScript, etc…): La plupart des moteurs incluent un langage de script, plus facile à maîtriser qu’un langage traditionnel comme le C#, par exemple. Donc, si vous n’avez aucune connaissance en programmation, il vous faudra choisir un langage de script facile et rapide à apprendre et qui gère parfaitement les éléments de votre jeu . De plus, assurez vous que le langage de script choisi soit assez rapide, en effet, plus vous ajouterez de code, plus les scènes seront longues à charger. Pour ma part, le Python et ses dérivés (oui, il y en a) semble être le meilleur choix, car on peut quasiment tout faire avec, et son apprentissage paraît relativement simple pour les non-initiés (dont moi-même).
– Evolution de la technologie : Un exemple : Le moteur offrent il la possibilité de la réalité virtuelle: Oui, les joueurs demandent de plus en plus d’immersion et la VR semble prendre de plus en plus d’importance dans les gros studios.

3) Le marché

– Faîtes une petite étude de marché si vous comptez vendre votre(vos) œuvre(s). En effet, en France, par exemple, les plus grosses ventes sont par exemple: les Pokémons, les Sims, et les FPS. Pour les space games, l’Allemagne, la Russie (les Russes en sont friands), l’Angleterre et les USA semblent être de gros consommateurs. Japon, Chine, Corée et pays de l’est en général préfèrent les RPGs. Tout ceci n’étant donné qu’à titre indicatif, bien sûr, cela peut varier selon les saisons et les modes. Mais une chose est sûre : Prévoyez les traductions en conséquence et au fur et à mesure. Ajouter des langues supplémentaires en fin de projet augmenterait considérablement votre somme de travail, fortiori si c’est un RPG, donc, avec beaucoup de texte.

4) La durée de vie :

– Assurez vous que votre jeu est modifiable par les joueurs. En effet, certains jeux ont une durée de vie plus longue que les autres en raison de leur mods (=modifications), des extensions non officielles créées par les joueurs et la communauté générée. Ainsi, si votre jeu a du succès, les joueurs se jetteront sur votre production suivante comme la misère sur le pauvre monde. Un exemple : Freelancer et Star Citizen (Chris Roberts). Le jeu n’est même pas en version stable et officiellement sorti, mais la communauté est déjà énorme et mondiale !

5) Créer un site internet.

– Oui, c’est essentiel pour la diffusion. Dans le cas de projets non-lucratifs, on peut se tourner vers des solutions comme WordPress ou Joomla (ou phpBB pour les forums). A contrario, si votre projet est destiné à la vente, il vous faudra sûrement créer votre site de A jusqu’à Z (licences). Mais le HTML + CSS ne sont pas bien compliqués à apprendre et il y a pléthore de tutoriels sur internet.
(je peux peut-être proposer des solutions gratuites d’hébergement, contactez moi par pm si vous êtes intéressés)

Important !

6) Ne vous appropriez JAMAIS le travail d’autres, cela pourrait rapidement se retourner contre vous.

Donc:

7) Pensez à lire attentivement les licences de tout ce que vous utiliserez: Modèles 3D, images, textures, sons, musiques et même polices de caractères. En effet, l’erreur la plus courante est de croire que parce que c’est gratuit, on peut l’utiliser dans n’importe quel cas. Un exemple: Evitez d’utiliser les fontes courantes Windows, Mac ou Linux disponibles depuis l’OS lui-même car dans le cas d’un projet à but commercial, cela pourrait vous apporter de très gros ennuis. Il existe de nombreux sites fournissant des fontes 100% libres.

Pour finir : Ne vous laissez jamais décourager. Le développement d’un jeu et sa finalisation peuvent prendre des années selon et le temps que vous y consacrerez et votre budget. De plus, et tout en gardant à l’esprit votre projet principal, multipliez les petits jeux sans prétentions (« Breakout », « Pong », petits jeux de plateformes 2D, etc…), cela vous permettra de bien connaître votre moteur de jeu, et pourrait même générer quelques revenus.