Mis à jour le 31/10/2013
  • Facile
Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Introduction du cours

Bonjour !

Nous allons ensemble étudier une méthode d'approche d'un jeu en ligne jouable par navigateur. Comment réaliser ce dernier ? Quelles sont les bases requises ? De quoi vais-je avoir besoin ? Différentes questions que nous allons aborder dans ce tutoriel. Mais soyons clairs, aucun code source ne vous sera fourni. Il ne s'agit là que d'une méthode de travail pour réaliser un bon jeu en ligne, jouable par navigateur.
Par ailleurs, il va de soi que vous avez au préalable consulté les tutoriels officiels sur la création d'un site Web avant de poursuivre.

Les prérequis

Qu'est-ce qu'un jeu en ligne ?

Un jeu en ligne par navigateur est un jeu qui se joue par l'intermédiaire d'un navigateur et cela sans avoir besoin d'installer et / ou de télécharger quelconque logiciel. Le jeu se joue directement sur le site Internet. Il existe une multitude de thèmes abordés que l'on peut rencontrer sur le web pour ce genre de jeu. On y retrouve bien évidemment l'inconditionnel élevage virtuel, où chaque membre fait vivre son petit protégé (vache, lapin, humains, ...) au jour le jour. Il existe également des jeux de type "guerre" où les membres développent leurs propres armées, leurs propres artilleries, etc.
Certains de ces jeux sont axés sur un jeu "multijoueurs", c'est-à-dire que vous jouez avec ou contre les autres joueurs, alors que d'autres sont "solitaires" c'est-à-dire qu'ils sont axés sur un jeu personnel.

De quoi ai-je besoin ?

Il vous faut pour créer un tel site une bonne base en programmation Web. En effet, les langages utilisés pour ce genre de site sont divers et variés. Dans un premier temps le XHTML / CSS et le PHP / MySQL sont les bases d'un jeu en ligne. Dans un second temps vous pourrez agrémenter votre programmation d'Ajax, de Java, de JavaScript, et tant d'autres langages, et cela selon votre envie, vos connaissances et / ou vos besoins.

Comme vous pouvez le remarquer, pour se lancer dans un jeu en ligne, il faut impérativement avoir une bonne expérience de la programmation, c'est pourquoi je vous conseille fortement de vous exercer par avance à la programmation sur des sites Internet dynamiques. Je vous recommande également de ne pas rester sur vos acquis et de vous documenter, de lire d'autres tutoriels que les officiels du SdZ sur la programmation Web.

Hormis les langages Web appropriés et une bonne connaissance de ces derniers, il vous faudra également du courage, ce n'est pas pour vous démoraliser, mais un jeu en ligne demande beaucoup de travail et de patience, il faut le savoir. Ce genre de site ne se fait pas du jour au lendemain, mais ce sont des heures, des jours, voire des mois de travail.
Il vous faudra peut-être vous entourer d'une équipe compétente. L'apport de plusieurs personnes peut être bénéfique pour votre projet et pourra réduire le nombre de jours de réalisation. Mais ne vous entourez pas pour autant de trop de personnes. Restez une petite équipe, cela étant plus facile à gérer. ;)

Pour exemple, avec une équipe composée d'un graphiste, un codeur XHTML / CSS, deux codeurs PHP / MySQL, nous avons mis six mois pour créer notre propre jeu en ligne.

Une histoire bien ficelée

Entrons en plein cœur du sujet. Pour commencer vous allez devoir vous creuser les méninges ! En effet pour créer un tel site, vous allez devoir concevoir une histoire qui tient la route. Vous allez devoir penser à toutes les actions que vous allez rendre possible sur votre jeu. Penser également à y incorporer une certaine évolution. Cela évitera d'avoir des membres qui jouent un jour sur votre jeu, et puis s'en vont... Un "but" à atteindre est également une bonne manière de garder une certaine fidélité de la part de vos membres. Sachez que plus vous avez de contenu correctement mis en valeur et pensé, plus vos futurs membres s'appliqueront dans votre jeu.

Toutes ces choses sont à définir AVANT de vous lancer dans la conception ! Prenez le temps de les définir, faites cela soigneusement, la réussite de votre jeu dépend entre autres de ces derniers.

Prêt ? C'est parti ! :)

L'organisation, un atout

Un bon cahier des charges

Après avoir réfléchi au fonctionnement de votre projet, nous allons le mettre par écrit dans un cahier des charges. Ce cahier des charges regroupera l'ensemble de votre projet, le design, le graphisme, la disposition des différentes pages, le contenu de ces dernières, la partie publique, la partie jeu, la partie administration, etc. Le tout devra être soigneusement détaillé pour permettre à toute l'équipe de connaître précisément tous les éléments du jeu, ainsi que ce qu'elle devra / doit accomplir.

Organisez vos fichiers !

Voici une des parties les plus importantes lors de la conception d'un jeu en ligne : l'ordre ! Il faut savoir qu'un jeu en ligne comporte un bon nombre de fichiers. Pour s'y retrouver facilement je vous conseille d'avoir une bonne hiérarchie de fichiers. Pour que vous compreniez bien son importance je vais vous montrer la hiérarchie que j'utilise, il va de soi qu'elle devra être adaptée à votre projet.

/admin/
            Tous vos fichiers d'administration sont placés ici.
/design/
       css/
       images/
            Dans le répertoire design, placez un dossier destiné à vos CSS et un autre à vos images.

/jeu/
       membres/
       armures/
       habitations/
            Dans cette partie placez tout votre jeu, prenez soin de classer vos fichiers par "module".
/site/
            Placez dans cette section toute la section publique. L'index, l'inscription, etc.
index.php

Créez autant de dossiers qu'il vous en faudra.

La base de données

Même topo pour la base de données, l'organisation est de rigueur également. Plus le jeu est développé et complexe, plus il y aura de tables. Je vous propose d'organiser vos tables avec différents préfixes.

Voici ma méthode à adapter également selon vos besoins :

Un préfixe pour le site :

site_commentaires
site_news
...

Un préfixe pour le forum :

forum_categorie
forum_sujet
...
   
Un préfixe pour le jeu :
Ainsi que des "sous-préfixes" suivant les modules. 

jeu_membres
jeu_a_articles
jeu_a_categories
jeu_f_entrainement
jeu_f_inventaire
...

Une fois toutes ces hiérarchies effectuées, nous allons pouvoir passer à la réalisation proprement dite ! ;)

La réalisation

La page d'accueil

C'est cette dernière qui va être la carte de visite de votre jeu, une page d'accueil mal organisée ou graphiquement mal pensée peut amener vos visiteurs à ne plus revenir sur votre site. Il est donc fondamental d'apporter un soin minutieux à cette page afin de garder ce visiteur et le pousser à s'inscrire.

Que mettre sur cette page ?

Il faut harmoniser et agrémenter cette page d'un contenu utile pour une première visite. Voici quelques indices pour sa conception.
Dans un premier temps il est indispensable d'indiquer le titre de votre jeu et une petite description. Pourquoi petite ? Eh bien parce que le visiteur veut connaître la nature du jeu le plus rapidement possible, une trop longue description et ce dernier pourrait partir du site... C'est pourquoi il va falloir dans cette mini-description mettre le plus de renseignements sans pour autant être rébarbatif.
Des images ou des illustrations de votre jeu peuvent être présentes pour présenter graphiquement le jeu.

Ensuite il vous faudra afficher un menu permettant de s'inscrire, de se connecter, je vous conseille de le disposer de façon à ce qu'il soit facilement accessible et qu'il attire l'œil dès le premier regard. Un visiteur qui cherche comment s'inscrire ne cherchera pas longtemps...

D'autres informations peuvent être mises sur votre page d'accueil, comme l'auteur du jeu, où et comment le contacter, la version du site, etc.

Au niveau du design
Élaborez un design qui ressemble à votre jeu. Pour que votre jeu donne envie aux visiteurs et aux membres inscrits de rester, il faut que le "tout" soit en harmonie.

Le jeu

Passons (enfin :-° ) à la création proprement dite de votre jeu. Une fois connecté votre membre va pouvoir jouer, jusque là rien d'exceptionnel. Mais encore une fois il va falloir veiller à soigner tous les détails.
La navigation sur votre jeu doit être simple, la compréhension du jeu et du but de celui-ci doit être claire. Si vous avez peur que votre jeu soit trop complexe, créez une page avec quelques explications sur le jeu et / ou comprenant les "premiers pas" à suivre.
Faites en sorte que le membre ait tous les jours quelque chose à faire et cela sur une durée plus ou moins longue. Différentes actions sont ainsi à prévoir.
Prévoyez une évolution dans votre jeu, un jeu sans évolution a peu d'intérêt et le joueur s'en lassera rapidement.
Mettez les membres en relation les uns avec les autres (équipes, combat, ...), cela facilitera la cohésion entre ces derniers.

Les Crons

Il s'agit d'une fonctionnalité qui permet d'effectuer à un moment donné une tâche précise. Cette fonctionnalité est fournie par votre hébergeur ou, le cas échéant, vous pouvez vous inscrire sur WebCron. Cette fonctionnalité est fréquemment utilisée par les sites de jeu en ligne, pour mettre à jour, à heure fixe les statistiques. Pour exemple, à 14h et à 2h, les statistiques se mettent à jour, les classements s'actualisent...
Le principe est simple, vous définissez l'heure ou les heures auxquelles vous souhaitez que la mise à jour se fasse. Le serveur (ou via WebCron), à l'heure donnée, exécute le script PHP que vous aurez préalablement créé sur une page annexe. Il faut savoir que grâce aux crons vous pouvez exécuter votre script toutes les heures, toutes les minutes, à telle heure, tel jour, etc.
Tout est faisable.

Quelques conseils

La mise en place d'un forum peut permettre à vos membres de discuter entre eux, mais également de trouver de l'aide sur des problèmes qu'ils ont rencontrés, ou tout simplement pouvoir signaler un bug.

Prévoyez un nom simple à retenir pour votre jeu, ainsi qu'une URL (adresse du site) simple.

Soyez à l'écoute de vos membres, ce sont eux les joueurs, il est donc important d'entendre leurs remarques et leurs critiques pour une éventuelle amélioration.

Ne soyez pas trop rapides, un jeu bâclé pourrait être rempli de bugs ou injouable. Préconisez la patience pour un résultat optimal.

Cherchez l'originalité, évitez de plagier un jeu qui existe déjà, cela ne pourrait que vous apporter des désavantages.

Points particuliers

Le bêta-test

Une fois votre jeu créé ainsi que l'ensemble de son infrastructure, il va être important de le tester afin de corriger les éventuels bugs ou oublis qui pourraient survenir dans le jeu. Cette phase est donc importante puisqu'il en va de la qualité de jeu de la version "stable". C'est à ce niveau que le bêta-test apparaît, vous allez mettre en ligne votre jeu et permettre à quelques utilisateurs de tester votre jeu dans le but de vous faire part des problèmes encourus dans le jeu. Consacrez quelques semaines à cette phase de test, si tout se passe bien et que les différents problèmes sont résolus vous pourrez alors ouvrir votre jeu à tout le Web !

Pourquoi ne puis-je pas tester mon jeu comme un grand ?
Pour la simple raison que tout seul, il est difficile de se mettre à la place d'une dizaine de joueurs qui auront vite fait de trouver des combines pour avancer plus vite dans le jeu. C'est pourquoi je vous conseille fortement de vous entourer de plusieurs personnes durant cette phase de test.

Le lancement

Maintenant que tout est terminé, nous allons pouvoir ouvrir le jeu en ligne au grand public. Mais comment faire venir le public ? Ça c'est à vous de trouver la bonne méthode... La publicité est bien sûr la base, ensuite le bouche à oreille. Vous pouvez toujours payer des campagnes publicitaires pour faire connaître votre jeu. Pensez également à vous référencer dans divers moteurs de recherche. Une fois lancé votre site prendra naturellement de l'ampleur. :)

Le financement

Des dépenses vous allez sûrement en avoir si vous vous munissez d'un hébergement payant et / ou d'un nom de domaine. Le but ici étant de rentrer dans vos frais, la première méthode consiste à souscrire à une régie de pub, qui vous permettra de mettre sur votre site des publicités discrètes et qui vous rapportera ainsi quelques euros. Vous avez le choix entre différentes régies : Adsense, Adfever, etc.

Une autre méthode consiste à concevoir une extension payante qui donne certains avantages aux membres qui en auront accès. Cette partie doit être fournie, attirante et complète. Ne bernez pas vos membres sur la marchandise. Faire payer vos membres dans le seul but de gagner de l'argent sans se préoccuper de la qualité de cette extension, sera le meilleur moyen de perdre vos membres. Donnez à cette extension divers avantages de jeu par rapport au jeu initial. Vous pouvez également proposer à vos membres d'acheter des bonus supplémentaires pour votre jeu. Il y a un tas de possibilités, à vous de trouver la bonne.

Lois et conditions

Que dit la loi ?

La loi et les jeux en ligne ? Que faut-il savoir ?

Conformément à la loi française, vous devez spécifier à vos membres qu'ils disposent d'un droit de modification et de suppression de leurs informations et / ou de leurs données personnelles (art. 34 de la loi "Informatique et Libertés" du 6 janvier 1978).
Pour se faire vous devez leur fournir un moyen de vous contacter et / ou prévoir un espace de modification des données directement sur le site.

Déclaration à la CNIL. La déclaration à la Commission Nationale de l'Informatique et des Libertés peut s'avérer obligatoire et nécessaire. Cette commission a pour but de protéger les données personnelles des utilisateurs qui sont enregistrées dans les bases de données de votre jeu.
Pour savoir si vous devez déclarer votre site, rendez-vous sur leur site :
La CNIL - Faut-il déclarer ?

Le copyright

Après avoir créé votre propre jeu, j'imagine que vous ne souhaitez pas qu'on vous le plagie. Le copyright entre en action, mais attention aux idées reçues, vous n'êtes pas dans l'obligation d'acheter ce dernier, vous n'êtes pas non plus obligé d'afficher le symbole (C) en bas de vos pages. Pour la simple et bonne raison, que la législation française, protège chaque auteur.

MAIS, car il y a un mais, faut-il encore avoir la preuve que vous êtes l'auteur si un problème de copie devait survenir. C'est là qu'entrent en jeu les sociétés de "copyright". Ils permettent aux auteurs de déposer devant un huissier, un dépôt horodaté, qui en cas de litige peut être remis aux autorités compétentes, prouvant votre paternité. Ce dépôt est bien sûr payant.
D'autres techniques consistent à vous envoyer dans une enveloppe scellée votre site sur CD, le cachet de la poste faisant foi. Mais cette technique est relativement moins "sûre" que le dépôt devant un huissier.

Pour plus d'informations sur les droits d'auteurs, n'hésitez pas à lire cet article:
Wikipédia - Droit d'auteur

Conditions d'utilisations

Les conditions d'utilisations vont permettre à vos membres de les informer des règles du jeu. Prenez soin de les rédiger précisément et dans un français correct. Pour vous aider à l'élaboration de ces conditions, je vais vous faire part de quelques-unes, que vous pourrez adapter selon vos besoins.

Citation : Conditions d'utilisations

Article 1.
Votre jeu interdit l'anti-jeu. Les comportements pouvant favoriser ou négliger les autres joueurs sont réprimandés.
À savoir :
- L'utilisation de plusieurs comptes pour une seule et même personne.
- ...

Article 2.
Le prêt ou le gardiennage (sitting) de comptes n'est pas toléré pour des raisons pratiques et techniques, sous risque d'être accusé du non respect de l'article 1.

Article 3.
Les propos des joueurs ne doivent pas porter atteinte à l'intégrité de la personne (diffamation, dénonciation...) et ne doivent pas être injurieux, à caractère pédophile, xénophobe ou raciste. De manière générale, tout comportement impliquant le non respect des bonnes manières et des convenances sera sanctionné.

Article 4.
Etc.

Ce tutoriel s'arrête ici, j'espère vous avoir éclairé sur la manière de créer un jeu en ligne. Je vous souhaite bonne chance dans vos futurs projets, et si vous vous lancez dans l'aventure d'un jeu en ligne, prenez votre mal en patience, le résultat sera là ! ^^

Exemple de certificat de réussite
Exemple de certificat de réussite