Catégorie « Jeux vidéos »

Ondegriffe

Jeu de draft en ligne multijoueur

Ondegriffe

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.


Tintecrabe

Jeu de plateau en ligne multijoueur

Tintecrabe

TL;DR : le jeu se trouve ici.

Historique

J’ai profité du premier confinement, il y a plus de deux ans, pour démarrer un développement que j’avais en tête depuis un moment : une version web du jeu de plateau Carcassonne, de Klaus-Jürgen Wrede. En effet, ça faisait quelques années, que je réalisais de temps en temps des petites extensions et que l’idée d’avoir un environnement pour les tester sans avoir à réaliser les tuiles physiques, trouver des pions, etc. m’intéressait.

Du coup comme j’avais un peu de temps entre le télétravail et le chômage partiel, je me suis lancé. C’est parti comme un PoC, juste pour voir si c’était compliqué de rendre un plateau, placer des tuiles, etc. Finalement, comme souvent ça s’est avéré à la fois plus simple et plus compliqué que prévu ‘^^

Mais surtout ça a largement dépassé le stade du PoC pour arriver en quelques mois à quelque chose de tout à fait jouable. Et deux ans après, on en est à quelque chose d’assez abouti. Je rajoute régulièrement des nouveaux éléments et des améliorations d’ergonomie, mais les base ne changent plus trop.

J’ai rapidement évacué l’idée de rester proche de Carcassonne pour prendre mes distances à chaque fois que ça m’arrangeait : le vocabulaire reste proche de la version française d’origine, avec un certain nombre de différences. De même, si les pions et tuiles de base sont très proches, au fur et à mesure que j’ajoute des nouvelles choses, on part de plus en plus loin.

Les règles de base sont sensiblement les mêmes, mais là aussi, avec certaines différences, issues soit de contraintes techniques (j’ai simplifié certains éléments qui ne me semblaient pas apporter grand-chose), soit d’adaptations de règles qu’on applique lorsqu’on joue en famille et qui collent mieux à notre façon de jouer ou bien qui s’adaptent mieux à certaines extensions.

J’ai aussi fait un autre choix : n’utiliser aucun élément graphique du jeu d’origine. Je dessine toutes les tuiles, pions, etc (même si les premiers éléments sont très proches de ceux de Carcassonne). Ceci, pour être libéré de toute contrainte que pourrait m’imposer l’ayant droit, mais aussi parce que c’est plus satisfaisant d’avoir tout réalisé soi-même. De plus, c’est plus simple d’avoir un style homogène si c’est moi qui fais tout.

Le jeu

Le jeu est disponible ici et peut être joué soit localement (les joueurs se relaient sur la même machine), soit en ligne (l’un des joueurs crée la partie puis envoie son identifiant serveur aux autres).

Tintecrabe - page d'accueil
Tintecrabe - page d'accueil

Une fois le jeu lancé, il fonctionne à peu près comme Carcassonne : on pioche une tuile, on la place sur le plateau, puis on y place éventuellement un pion.

Tintecrabe - écran de jeu
Tintecrabe - écran de jeu

Les différentes extensions et règles optionnelles apportent ensuite une foule de possibilités supplémentaires que je ne vais pas détailler ici et vous laisse découvrir.

Le jeu évolue régulièrement, donc n’hésitez pas à me signaler les bugs que vous rencontrez et me remonter vos idées, que ce soit ici ou sur Mastodon.

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). Je n’ai pas trop documenté l’installation, du coup si vous rencontrez des problèmes à ce niveau, n’hésitez pas à me contacter, ici ou sur Mastodon.


Ce matin, je me suis dit que comme parmi mon groupe d'amis, j'étais seul connecté Guild Wars 2, j'allais faire mes objectifs quotidiens JcJ. Là, j'ai constaté que quelque chose avait changé sans figurer dans les notes de mises à jour (ou alors, je l'ai raté) : on ne peut plus choisir quelle équipe on rejoint lorsqu'on rejoint une partie. Sur le principe, je comprends assez bien qu'il s'agit d'empêcher le joueur qui rejoint la partie de se mettre dans l'équipe qui a le plus de points, la renforçant du coup et creusant l'écart, ce qui semblerait assez raisonnable. Sauf que du coup ça rend encore plus saillant un gros vice de conception sur lequel je pensais écrire un article depuis un moment, sans prendre le temps de le faire : un gros foirage dans l'utilisation des couleurs.

Comme dans beaucoup de jeux vidéos, des codes couleurs permettent de différencier les alliés des ennemis. En l'occurrence, tout ce qui est allié est indiqué dans une nuance de vert ou bleu et ce qui est ennemi en rouge (plus du blanc ou jaune pour les non-hostiles, mais attaquables). Tout ça marche très bien lorsqu'on joue en JcE où tout est clair dans l'ensemble. Par contre, ça se corse grandement quand on passe en JcJ. Dans ce dernier mode, deux équipes de joueurs s'affrontent avec divers objectifs, chaque équipe étant identifiée par une couleur. Et fort logiquement, ces couleurs sont... le bleu et le rouge !

Normal, me direz-vous, comme ça, c'est cohérent avec le reste. Oui, mais non. Parce que le bleu identifie l'une des équipes, mais pas forcément la vôtre. Vous pouvez très bien vous retrouver dans l'équipe rouge. En principe, à ce stade, vous devriez commencer à saisir le problème, mais pour bien préciser les choses, voici ce que ça donne dans le cas de l'activité "Bagarre de barils" (où des barils de bière sont balancés périodiquement au milieu de la carte, l'équipe gagnante étant celle qui en aura rapporté le plus dans sa "base") :

Mélange des couleurs
Mélange des couleurs

Je ne sais pas pour vous, mais quand je vois ça, j'ai toujours du mal à bien cerner ce qui représente mon équipe et ce qui représente l'équipe adverse...

J'ai beau tourner ça dans tous les sens, je n'arrive pas à comprendre comment ils en sont arrivés là. Parce qu'on ne parle pas d'un petit projet de fin d'étude, là, on parle d'un des MMORPG les plus joués du moment, vendu à plusieurs millions d'exemplaires, d'un jeu qui a pris des années à développer par une équipe conséquente, d'un jeu sorti depuis maintenant bientôt un an et demi et qui est régulièrement mis à jour.

Dans ces conditions, il semble impensable qu'il n'y ait pas un jour un des membres de l'équipe qui ait lancé une phrase du style "Dites, je pense à un truc là, on aurait pas un problème avec les codes couleurs ?". Et franchement, j'aimerais vraiment savoir ce qu'ont bien pu répondre les autres pour qu'au final la décision soit prise de laisser les choses en l'état. Parce que là, je dis chapeau, justifier un truc aussi absurde, c'est une belle performance !

Et en attendant, je vais arrêter de jouer en JcJ parce qu'autant avant, je faisais en sorte de toujours être dans l'équipe bleue histoire d'avoir un truc cohérent, autant là vu qu'on peut plus choisir...

EDIT 21/12/2013 : Bon apparemment la suppression du choix de l'équipe ne devait être qu'un bug, parce qu'il a été rétabli depuis... Donc ça redevient jouable. Mais ça ne change rien au problème initial des codes couleur !


Quelques jeux pour iPod Touch/iPhone #8

Rocket Bird

Rocket bird - icône

Un petit jeu excellent où il faut diriger (via l'accéléromètre) un petit oiseau qui file à toute vitesse grâce à la fusée fixée sur son dos. Éviter sapins, barrières, bottes de foins, vaches et maisons pour aller le plus loin possible. Le genre de jeu qu'on peut jouer en boucle sans s'arrêter :p

Les graphismes sont sympa quoiqu'un peu d'anti-aliasing ne ferait pas de mal. La musique par contre est sympa cinq minutes et vite lourde par la suite.

Rocket bird - 1 Rocket bird - 2

Sherk Kart (2€39)

J'ai profité d'une promo pour thanksgiving pour où il était à 0€79 pour l'acheter et je ne regrette pas mon achat : ce clone de Mario Kart est bien sympathique. Pas mal de circuits différents, des graphismes en 3D de bonne facture, une musique pas trop soulante, un mode multijoueurs, que demander de plus ?

Les contrôles sont simples : la voiture dirige via l'accéléromètre, on freine sur un bouton à gauche et on utilise les bonus et actions spéciales sur des boutons à droite.

Shrek Kart - 1 Shrek Kart - 2 Shrek Kart - 3

Pour ceux qui préfèrent tester avant d'acheter, une version démo est également disponible (je ne l'ai pas testée par contre, je ne sais pas ce qu'elle contient).

iDracula (2€39)

Lui aussi, je l'ai acheté lors d'une promo, mais ça fait nettement plus longtemps :p

Il s'agit là d'un brave jeu de massacre : vous êtes un chasseur de monstres et plein des bestioles vous foncent dessus : zombies, vampires, démons, etc. Par chance, ils ont le bon goût de laisser tomber plein d'armes, munitions et autres bonus en mourant... et de venir gentiment par ordre croissant de puissance (comme dans Dragon Ball Z, quoi, sauf que là ils sont plus nombreux \o/). Vous l'aurez compris, iDracula n'est pas le jeu qui vous fera gagner des neurones mais ça détend ^^

Le jeu propose trois décors et quatre modes de jeux différents pour varier un peu les massacres. Et les graphismes en 3D isométrique sont du coup moins aliasés que ce qu'on peut trouver habituelle en "vraie 3D" sur l'AppStore, ce qui n'est pas désagréable non plus ^^

iDracula -1 iDracula - 2 iDracula - 3

Là aussi, on peut tester avant d'acheter grâce à la version lite.


Boulder Dash sur iPod Touch/iPhone

Il y a peu est sortie le portage sur iPod Touch et iPhone d'un jeu des années 80 que j'affectionne particulièrement : Boulder Dash.

Y ayant joué des centaines (voire milliers) d'heures sur Commodore 64 à l'époque (entre les différentes versions et l'éditeur de niveau), je me suis empressé de l'acheter dès sa sortie, malgré le prix relativement élevé (4€) pour un portage d'un jeu ayant 25 ans.

Boulder dash, qu'est-ce que c'est ?

Pour ceux qui ne connaitraient pas, dans ce jeu, on incarne un petit bonhomme qui se balade dans des "cavernes" et doit collecter assez de diamants pour ouvrir la sortie et passer à la caverne suivante, tout cela en temps limité. Les cavernes comportent différent types d'objets : diamants, monstres... Un principe simple mais comme dans pas mal de domaines un bon principe simple vaut bien mieux qu'un mauvais principe complexe !

La version iPhone et iPod Touch

A priori le descriptif est alléchant puisque cette version est annoncée comme très proche de l'original : possibilité de prendre les graphismes d'origine, les bruitages sont les mêmes et les niveaux sont ceux du numéro 1, soit 80 cavernes à explorer si l'on considère les 5 niveaux de difficultés (on peut effectivement considérer qu'il y en a bien 80 car les cavernes des différents niveaux de difficultés sont différentes : les cavernes A1 à A5 suivent le même schéma mais ne sont pas identiques).

Boulder Dash - menu principal Boulder Dash - choix des graphismes
Boulder Dash - menus

De plus ce portage apporte ses propres améliorations avec des graphismes alternatifs plus modernes, la gestion dynamique des modes portrait et paysage et la gestion du zoom notamment.

Oui mais...

Descriptif alléchant, disais-je, mais la réalité n'est pas aussi réjouissante... Ayant joué très longtemps la version, d'origine, j'ai assez vite remarqué des détails qui changeaient sans raison apparentes :

  • là où le jeu d'origine était assez rapide, ce portage est assez lent. Mais surtout la vitesse variable selon le niveau de zoom, c'est assez chiant surtout que le temps, lui ne change pas de vitesse de défilement... Porter un jeu 25 ans plus tard sur une machine incroyablement plus puissante que les Commodore 64 et autres Amstrad de l'époque et aboutir à un résultat plus lent c'est quand même un exploit ! On en rêvait (ou pas), Chillingo l'a fait \o/
  • les boules n'ont pas de résistance : on pousse et elles se déplacent direct. Dans la version d'origine, elles "résistaient" pendant un temps aléatoire, ce qui introduisait une difficulté supplémentaire à gérer.
  • on ne peut plus libérer un groupe de monstre en les longeant. Sur la version d'origine, on pouvait longer un groupe de papillons sur la gauche ou un groupe de carrés sur la droite pour les libérer, sans mourir. C'était très pratique comme alternative à l'utilisation du bouton d'action :(

Ça c'est pour les différences.

Boulder Dash - graphismes classiques - 1 Boulder Dash - graphismes classiques - 2 Boulder Dash - graphismes classiques - 3
Boulder Dash - graphismes classiques

Et ce n'est pas tout...

Après y a les bugs/défaut d'ergonomie :

  • le zoom qui s'active même quand on bouge les doigts sur les zones de contrôle : dans le mode où l'on a les contrôles partagés entre la gauche et la droite, si l'on ne fait pas gaffe sur les enchainements de mouvements, on déclenche souvent involontairement un zoom. C'est déjà chiant à la base mais en plus, comme dit plus haut, ça modifie la vitesse de déplacement !
  • le système de zoom à deux doigts comme dans Safari, c'est bien pour une page web, mais pour un jeu d'adresse où il faut être rapide et précis, je trouve ça nettement moins adapté : j'aurais mieux vu deux zones "cliquables" pour le zoom avant et le zoom arrière plus classique mais probablement plus efficace dans ce contexte. Et ça règlerait du même coup le point précédent. C'est toujours un plaisir de clôturer deux tickets en même temps \o/
  • globalement je trouve la gestion des contrôles moyenne (mais ça, en fait, on le retrouve sur la plupart des jeux qui simulent un joypad) : pourquoi ne pas faire un écran de préférences qui permettrait de placer les éléments où on veut ? Par exemple, moi j'aurais bien mis en mode paysage avec les contrôle de mouvement à gauche et le bouton d'action à droite (comme sur un joypad, quoi) mais non, ce mode met tout au milieu... Pas très pratique pour garder un minimum une vue sur l'écran. Personnellement j'ai pas les doigts transparents !
  • quand on quitte l'application, la partie n'est pas sauvegardée... c'est con quand on pense que par ailleurs, il y a une option pour justement suspendre le jeu et le reprendre plus tard !
Boulder Dash - graphismes modernes - 1 Boulder Dash - graphismes modernes - 2 Boulder Dash - graphismes modernes - 3
Boulder Dash - graphismes modernes

Quelques points positifs quand même...

Beaucoup de points négatifs, donc, mais tout n'est pas noir, hein, globalement, c'est quand même assez ressemblant et le fait d'avoir le choix des graphismes d'origine est vraiment une très bonne chose. C'est un plaisir de retrouver l'ambiance que l'on connaissait quand on était gamin !

Les défauts relevés, même s'ils gâchent un peu le plaisir, sont plutôt des détails et le principe du jeu fonctionne toujours bien ^^

Conclusion

Conclusion, ben 4€ c'est cher quand même pour un portage loin d'être parfait qui a un peu l'allure d'une beta (un beta Microsoft, hein, pas une beta Google :o). Et pour le prix, ils auraient pu inclure plus de niveaux (au moins 4 ou 5 jeux étaient sortis à l'époque, plus l'éditeur de niveaux, donc c'est pas ce qui manque !).

Mais en fait le plus gênant, c'est l'aspect ergonomique, parce qu'un jeu peut être bourré de qualités, si l'interface n'est pas pratique, c'est mort, on tient pas longtemps...

Et là y a quand même des points vachement pas cool. À l'usage, on doit pouvoir s'y habituer, mais bon, un appareil du format de l'iPhone (ou de l'iPod Touch dans mon cas), c'est pas fait pour jouer des heures durant... c'est plutôt pour jouer de temps en temps quand on a un peu de temps à tuer... Donc la prise en main doit être la plus immédiate possible !

Le bon côté des choses, c'est qu'a priori, c'est largement améliorable sans révolutionner l'appli. Pas mal de points doivent pouvoir être revus par les développeurs sans y consacrer des mois à coder. Donc on a des chances qu'une version future les corrigent. En tous cas, ils ont intérêt s'ils veulent me vendre la suite ! Parce qu'en l'état, c'est totalement exclus...