Journal Bim! Ça joue là

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes :
18
21
juin
2024

Sommaire

Bonjour 'nal,

Quel plaisir de te retrouver. Je me suis enfin décidé à publier un APK de mon jeu pour que tu puisses le tester :

Ça fait des jours et des jours que je fais juste un dernier truc en me disant qu'après je publie, mais en réalité il y a toujours un truc à ajouter, il manque toujours quelque chose. Donc là c'est bon, j'y vais, tant pis pour ce qu'il manque, je pense qu'on peut beta tester.

Pour rappel c'est un jeu multi-joueur en ligne, et comme il n'y a pas beaucoup de joueurs je te suggère de te synchroniser avec des connaissances si tu veux trouver un adversaire !

Qu'est-ce que Bim!

(Section ajoutée suite aux commentaires de freem et Epy, merci !)

Bim! est un jeu « à la bomberman ». Deux à quatre joueurs sont dans une arène, le dernier survivant a gagné. Pour combattre, les joueurs posent des bombes dont ils peuvent augmenter la puissance en trouvant les améliorations disséminées dans l'arène. Une petite vidéo pour illustrer (clique sur l'image pour la lancer) :

À ma connaissance il n'y a qu'un seul autre jeu disponible sur Android avec un gameplay similaire et jouable en ligne, et il est évidemment non-libre. Le gameplay de Bim! se limite aujourd'hui à l'essentiel et devrait s'étoffer et se préciser dans les versions à venir en gardant en tête les bases : des parties simples et rapides, et une bonne ambiance. Tout en restant libre, bien sûr !

Quoi de neuf

Depuis la dernière fois, j'ai effectué les modifications suivantes.

J'ai changé le joystick logiciel pour quelque chose du type croix directionnelle (toujours logiciel évidemment) et j'ai mis une petite vibration sur les directions, ce qui permet de savoir que c'est pris en compte. Auparavant, avec le stick, je finissais toujours par avoir le doigt à l'autre bout de l'écran en essayant de tirer dessus comme s'il était physique. En plus d'autres petits problèmes de ressenti. Là avec la croix ça semble plus intuitif même si ce n'est pas idéal.

J'ai modifié la manière dont les entrées du joueurs étaient transmises à la simulation. Auparavant il pouvait y avoir plusieurs actions par cycle et l'application était immédiate. Maintenant il n'y a qu'une action par cycle et elle est appliquée avec un petit délai.

Le délai est important pour le jeu en ligne. Avec un effet instantané l'action d'un joueur était appliquée localement et envoyée au serveur qui la transmettait aux autres joueurs. Pendant le transport les autres joueurs avaient avancé de plusieurs cycles et devaient réparer la simulation avec les actions inconnues précédemment. Cela avait pour effet de faire popper subitement les actions des autres joueurs, ce qui était assez moche. Même en simulant une supposition des actions des autres, il y avait des ratés. En appliquant un délai à l'action cela lui laisse le temps d'arriver chez les autres avant d'être appliquée.

La musique du jeu est maintenant mise en pause lorsque l'application part à l'arrière plan.

Pas mal de modifs ont été faites sur l'aspect serveur. Déjà l'adresse du serveur de jeu est obtenue d'un service en ligne, ce qui me permettra de faire une transition plus douce lors de la mise à jour du premier.

Ensuite le serveur de jeu (et le client) sait maintenant gérer un second match après le premier.

Enfin le serveur envoie bien ses logs dans un fichier, maintenant avec l'horodatage.

Et bien sûr j'ai fait quelques bricoles sur des détails de compilation et sur la CI.

Bugs connus

Il y a quelques petits problèmes sur lesquels il va falloir que je me penche.

  1. La longueur des flammes a l'air un peu aléatoire. Quand on prend les bonus elles grandissent, mais parfois elles redeviennent petites avant de redevenir grandes. Aucune idée si c'est un problème de sérialisation, ou d'algo, ou autre chose.

  2. À cause du délai appliqué aux entrées de l'utilisateur on a tendance à poser les bombes dans la case voisine de celle où on était quand on a appuyé sur le bouton, c'est casse-pied.

  3. On pose parfois deux bombes d'affilée. Aucune idée si c'est un bug ou si on a réellement appuyé deux fois sur le bouton. Un petit délai de temporisation entre deux dépôts de bombe serait le bienvenu.

Les pisteurs, la pub, et la mesure d'audience

Il n'y en a pas ! Ouais je sais, ça ne fait pas très moderne…

Le bon côté c'est que je n'ai pas à gérer des SDK d'analyse, ni à afficher des pop-ups de conditions d'utilisation, de cookies, et autres joyeusetés GDPR-compliant.

Le mauvais côté c'est que je me sens complètement à poil. La seule sorte de mesure d'audience que j'ai c'est un log anonyme sur le serveur. Si tu n'arrives pas à te connecter, je ne le sais pas. Si tu crashes, je n'ai pas de rapport de bug. Impossible de savoir dans quels menus tu vas, ni où tu cliques. Je n'ai pas la version de ton système, ta localisation, ou quoi que ce soit qui puisse m'être utile à comprendre ce que tu fais ni la portée de ce journal.

Du coup, si t'as un souci, il faudra que tu en parles dans un message sous ce journal :) C'est pas dit que je réponde mais ça me sera bien utile.

Téléchargement

La version zéro est disponible en téléchargement sur la page des releases sur GitHub. N'oublie pas d'inviter un ami pour jouer avec toi :)

  • # Mais en fait, c'est quoi?

    Posté par  . Évalué à 10 (+9/-0).

    Quand je lis rapidement les 2 précédents journaux, je ne vois rien qui semble décrire le jeu lui-même. C'est même assumé dans le 1er.

    Quand je vais sur le github, la seule chose qui me saute aux yeux, c'est la licence.

    Perso, je fait partie des emmerdeurs qui estiment que l'information la plus utile quand on voit un jeu, c'est son genre.
    Ensuite viens l'univers, quand c'est pertinent.
    Une petite phrase pour indiquer ce qu'il peut y avoir de potentiellement intéressant par rapports aux autres (ou l'esprit dans lequel c'est fait), c'est pas mal.
    Ajouter 1 ou 2 screenshots en plus, et on a déjà un truc qui peut possiblement donner envie.
    La licence AGPL qui saute à la tronche en guise de README, moi, ça me fait plutôt fuir (c'est pas une question de licence, juste, avoir le nom de la licence va largement me suffire en tant que joueur ou dev open source).

    Vu le seul screenshot utile (sur 3 journaux) je peux déduire un truc en tour par tour, en vue de dessus. Et vu les 2-3 infos de descriptions, je sais que c'est censé être compétitif (PvP). Mis à part ça, rien.

    Je pense que ce que j'ai décrit plus haut (genre, univers éventuel, une petite phrase, 1 ou 2 nimages) ne prend pas trop de temps et te permettra, peut-être, d'attirer plus, que ce soit d'alpha testeurs ou de possible contributeurs. En tout cas les 5 minutes que ça devrais prendre seront peut probablement perdues.

    • [^] # Re: Mais en fait, c'est quoi?

      Posté par  . Évalué à 4 (+2/-0).

      Je ne l'aurais pas dit de cette façon mais je suis d'accord, ça manque de description du jeu, de captures d'écran idéalement (pour un jeu vidéo ça semble logique ) même s'il n'est pas fini.

      Et sur la description je me permet d'attirer l'attention sur le fait que nous ne sommes pas tous et toutes des joueurs de longue date avec tout le vocabulaire sur le genre de chaque jeu, donc les descriptions « c'est un XXXX-like » ça ne fonctionne pas pour tout le monde.

      Alors que potentiellement la curiosité pourrait m'amener à essayer un genre qui ne m'intéressait pas avant :)

      "Vendez" votre création ;)

      Bon courage pour la suite du développement !

      • [^] # Re: Mais en fait, c'est quoi?

        Posté par  (site web personnel) . Évalué à 6 (+4/-0).

        Ah mais évidemment ! À force d'avoir le nez dedans je passe à côté de l'essentiel :) J'ai complété le journal suite à vos commentaires.

      • [^] # Re: Mais en fait, c'est quoi?

        Posté par  . Évalué à 2 (+0/-0).

        Je ne l'aurais pas dit de cette façon

        Je pense que je ne saurais jamais communiquer de façon claire sans risquer de vexer. Je m'en excuse.

        Quand on commence a mettre trop de sucre et de crème, on ne voit plus le met ni n'en perçois le goût. C'est l'une des raisons pour l'usage de ce type de constructions: «Perso, je fait partie des emmerdeurs» même si c'est clairement pas super fin.

        Je n'ai plus de compte github, donc je n'aurais pas pu faire le ticket, mais quand les gens utilisent codeberg (une forge qui est libre, elle. Et a 100%, jusqu'à preuve du contraire. On sait que ni github ni gitlab ne peuvent encore bénéficier de ce doute.) j'essaie de le faire, mais je je sais pas pourquoi je trouve ça plus facile de rester hyper factuel sans avoir l'impression d'être une grosse brute qui agite sa massue dans tous les sens, en anglais et encore plus sur un gestionnaire de tickets.

        • [^] # Re: Mais en fait, c'est quoi?

          Posté par  (site web personnel) . Évalué à 3 (+1/-0).

          Je pense que je ne saurais jamais communiquer de façon claire sans risquer de vexer. Je m'en excuse.

          Boah c'est pas si vexant.

          Quand on commence a mettre trop de sucre et de crème, on ne voit plus le met ni n'en perçois le goût. C'est l'une des raisons pour l'usage de ce type de constructions: «Perso, je fait partie des emmerdeurs» même si c'est clairement pas super fin.

          Ben en fait si t'enlèves « je fait partie des emmerdeurs » et que tu reformules « saute à la gueule », il est très bien ton message.

          Perso j'essaye d'éviter l'argot et les vulgarités dans les messages, sauf pour un effet comique. Sinon à chaque fois je le regrette parce que ça paraît vite agressif. Pas besoin d'en mettre des tartines et de faire des courbettes, politesse de base et cordialité ça passe partout.

          Veuillez agréer, Monsieur L'Utilisateur du Site LinuxFr.org, …

        • [^] # Re: Mais en fait, c'est quoi?

          Posté par  . Évalué à 2 (+0/-0). Dernière modification le 25 juin 2024 à 15:29.

          Je pense que je ne saurais jamais communiquer de façon claire sans risquer de vexer. Je m'en excuse.

          Je comprends tout à fait le problème, j'ai le même à l'oral; je me suis permis de faire la remarque parce que le ton semblait "agressif" alors que le fond était totalement justifié.
          Je pense que "je fais partie des emmerdeurs" prépare le lecteur/la lectrice à un ton que tu ne voulais pas avoir.
          Et à l'écrit c'est évidemment bien plus complexe de faire passer une intonation.

          Ah mais évidemment ! À force d'avoir le nez dedans je passe à côté de l'essentiel :) J'ai complété le journal suite à vos commentaires.

          Merci pour l'édition du journal 👍 c'est bien plus motivant à lire aussi

Envoyer un commentaire

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.