Archives de l'année 2026

Ondgriffe

Jeu de draft en ligne multijoueur

Ondgriffe

TL;DR : le jeu se trouve ici.

Historique

Après avoir développé Tintecrabe, j’ai eu envie de me lancer dans quelque chose qui me trottait dans la tête depuis des années : faire un jeu qui intègre des tableaux anciens (avec l’avantage qu’ils sont dans le domaine public). J’avais auparavant pensé à plein de mécaniques, mais trop complexes à implémenter.

Là, je me suis lancé dans un truc nettement plus simple : un jeu de draft (une mécanique de jeu dont le principe de base est à chaque tour de choisir une carte parmi une main puis de la passer à son voisin). Restait à penser comment exploiter les cartes et là, j’ai mélangé des mécaniques venant principalement de deux jeux auxquels je joue souvent en famille (et que je recommande) : Isle of Skye pour les objectifs qui changent à chaque tour, mais connus à l’avance et 7 Wonders pour les icônes sur les cartes. En touillant un peu, ça a donné ce jeu.

N’étant pas graphiste et n’ayant pas très envie de réinventer la roue (l’intérêt, c’est de pouvoir jouer, donc il ne faut pas que ça prenne trop longtemps pour arriver à une version jouable), j’ai repris les grandes lignes de l’interface de Tintecrabe, avec ses couleurs, textures et icônes. Par contre, comme il s’agit d’un jeu de draft et donc intrinsèquement multijoueur où les joueurs jouent simultanément à main cachée, je n’ai conservé que le mode de jeu en ligne et pas le jeu en local.

Le jeu

Ondegriffe est donc un jeu de draft en ligne dans le navigateur jouable à deux joueurs et plus.

On y rassemble une collection de peintures anciennes ou plus récentes (domaine public ou sous licence Creative Commons). Chaque œuvre appartient à diverses catégories (selon son type, son siècle de réalisation, la nationalité de son auteur ou autrice et les éléments qu’elle contient) et on obtient des points en fonction d’objectifs liés à ces catégories.

Une première extension ajoute des cartes « mécennes », qui rapportent en fin de partie des points en fonction des icônes de catégories détenues soit par soi-même, soit par ses voisins.

Ondegriffe - écran de jeu
Ondegriffe - écran de jeu

Pour jouer, vous pouvez utiliser une des deux instances disponibles :

Pour démarrer, une personne doit initier la partie puis envoyer le code d’identification ou directement l’URL qui le contient aux autres joueuses et joueurs :

Capture d'écran : emplacement du bouton de copie de l'URL
Capture d'écran : emplacement du bouton de copie de l'URL

Le jeu est disponible en français et de manière plus approximative, en anglais. La bascule se fait via un bouton du menu en haut à droite).

Capture d'écran : emplacement du bouton de changement de langue
Capture d'écran : emplacement du bouton de changement de langue

Aller plus loin

Hors-mis la mise en relation via l’identifiant serveur, tout se passe entre navigateurs et le “serveur” ne fait que servir des ressources statiques, ce qui veut dire que vous pouvez également vous installer le jeu en local depuis le dépôt GitLab et y apporter les modifications que vous souhaitez, voire déployer votre propre version personnalisée sur n’importe quel serveur (le code est sous licence MPL, donc, faites-vous plaisir).

L’installation se fait comme suit :

  1. cloner le dépôt GIT
  2. faire pointer une URL sur le dossier www
  3. s’assurer que le serveur web sert les fichiers .mjs avec le type MIME text/javascript (AddType text/javascript .mjs sur un serveur Apache 2)
  4. se positionner sur la branche ou le tag souhaité
  5. lancer la commande suivante pour initialiser les fichiers configuration.mjs et index.html
bash update.bash {PEERJS_DOMAIN} {PEERJS_PORT} {URL} {PROFILE}

Les deux premiers paramètres identifient l’URL et le port du serveur PeerJS à utiliser (il vaut mieux l’avoir sur le même domaine principal que le jeu pour éviter les problèmes avec certaines extensions navigateur de sécurisation ou de vie privée), le troisième est l’URL sur laquelle vous servez le jeu et le dernier, le profil ‘test’ ou ‘prod’ de votre instance.

Si vous rencontrez des problèmes à ce niveau, n’hésitez pas à me contacter, ici ou sur Mastodon.