
Récompenses aléatoires avec les points de chaîne
- 5 mars 2023
- StreamingTrucs et astuces
Si vous me suivez sur Twitch, vous avez peut-être déjà vu ou même expérimenté la récompense “Ouvrir un coffre (Guild Wars 2)”. Je vous explique comment je l’ai mis en place.

Vous connaissez déjà peut-être le système de roue de la fortune, une roue circulaire, découpée en belles tranches de pizza, et pour chaque tranche une récompense, ou non. Mon problème avec ce genre de design, c’est que lorsque vous avez des textes un peu longs, c’est compliqué de les positionner correctement dans la roue. Ça limite aussi le nombre de récompenses différentes à chaque tirage, puisque chaque nouvelle récompense va ajouter une nouvelle part à votre pizza de la fortune. Et a minima, une simple couleur ou une icône ne me semble pas suffisamment satisfaisante. C’est pourquoi j’ai misé sur un coffre, animé très simplement en CSS et où tout le système aléatoire du tirage au sort est “technique”, caché à la personne qui lance l’action.
Fonctionnement
Sur ma chaîne, une personne peut ouvrir un coffre toutes les 10 minutes. La récompense coûte 2000 points de chaîne. Pour mémoire, un spectateur non abonné peut gagner 320 points par heure, un abonné de niveau 1, un peu plus de 380 pts/h. Il faudra donc approximativement 6 heures de visionnage pour activer la récompense (je streame en moyenne 10 heures par semaine). Sans compter les différents bonus qui s’obtiennent en participant à un raid vers votre chaîne ou encore les séries de visionnage.
Chaque coffre contient un cadeau (mais c’est tout à fait possible de faire des coffres perdants). J’y inclus diverses récompenses (plus ou moins rares) que je gagne en jouant, et des apparences obtenues en ouvrant des boîtes en jeu.
La sélection de récompenses est aléatoire, et ça me fait gagner du temps puisque je n’ai plus besoin de lancer des tirages au sort pendant mes directs. Je pense juste à noter le nom du compte des gagnants que je ne connais pas déjà et j’envoie les cadeaux en jeu en une seule fois en dehors de mes streams. Et de temps à autre à ajouter des récompenses à la liste.
Prérequis
Voici la liste des différents outils que j’utilise pour ce système de tirages au sort. Évidemment, vous pouvez utiliser d’autres logiciels/outils en fonction de vos habitudes ou préférences, du moment que l’objectif qu’ils permettent d’attendre est identique.
Étapes de la réalisation
Pour commencer, il me fallait une image d’un coffre. Comme je ne sais pas spécialement dessiner, et plutôt que d’utiliser une image libre trouvée sur internet, et puisque c’était déjà très à la mode de demander à des IA de générer des illustrations, j’ai proposé à DALL·E 2 de produire une image avec le prompt suivant :
treasure chest icon, flat, digital art




À partir de l’image que j’ai préférée (la dernière), je l’ai ouverte dans Photoshop, j’ai détouré, changé un peu l’orientation, ajouté un contour pour que ce soit plus lisible et exporté pour le web.

J’ai ensuite créé un overlay en PHP qui retourne un paramètre passé à l’URL, le tout avec l’image générée par DALL·E et un peu d’animation CSS.
Étape suivante, créez une “Récompense de spectateur > Points de chaîne > Gérer les récompenses et les défis”. Ajoutez une récompense peu contraignante pour faire vos tests. Par exemple : aucune limite, coût très très élevé, ainsi vous pouvez l’activer immédiatement et seulement vous, puisque vous avez un nombre de points de chaîne illimité, en tant que propriétaire.
Le nom de la récompense est assez important, puisque c’est lui qui est utilisé pour identifier vos différentes récompenses. Essayez de trouver le nom définitif dès le départ, sinon, pensez bien à vérifier auprès de votre bot, qui va réagir à la récupération de cette récompense, qu’elle est toujours opérationnelle.
Avant de passer à Mix It Up, l’étape suivante consiste à ajouter une scène “Navigateur” dans OBS, que vous appelez comme vous voulez (chez moi : Chest). Vous pouvez laisser l’URL par défaut. Cliquez sur l’œil pour masquer cette nouvelle scène (l’œil doit être barré et légèrement grisé).
Maintenant, nous allons nous occuper de Mix It Up (MIU). Dans le principe, j’ai un fichier gifts.txt dans lequel chaque ligne correspond à une récompense. MIU va lire une ligne de ce fichier aléatoirement, l’assigner à une variable, supprimer la ligne en question, modifier l’URL de la scène “Navigateur” sur OBS, puis l’afficher, jouer un son, attendre quelques secondes et masquer la scène, et en enfin, envoyer un message sur mon chat Twitch.

Dans Mix It Up, sélectionnez “Twitch Channel Points” dans le menu et tout en bas : “Add Command To Existing Reward” (ajouter une commande à une récompense existante). Dans la pop-up qui s’ouvre, ajouter les actions suivantes :
(1) N’oubliez pas de passer le paramètre $giftencoded dans l’URL de votre overlay, si vous voulez afficher la ligne choisie aléatoirement de votre fichier gifts.txt.
Exemple : https://…/chest.php?gift=$giftencoded
Pour tester votre action, soit vous cliquez sur le bouton “Play” dans la liste de Mix It Up soit vous récupérez la récompense à partir de votre chat Twitch.
Aperçu de la récompense

Thoanny
Je suis Anthony, né en 89, infographiste et développeur web indépendant. J'adore partager mes passions. Pour me contacter : hello@thoanny.fr