Projet
Le moteur mathématique
d'une machine à sous
Un jeu de casino est d'abord une distribution de probabilité à laquelle on donne une forme. Le travail consiste à obtenir la distribution voulue, puis à prouver qu'on l'a obtenue.
python simulation monte-carlo pixi.js spine
Un cahier des charges chiffré
Un jeu arrive avec des contraintes précises : un taux de retour au joueur visé, une volatilité souhaitée, une fréquence de gain, un gain maximum. Ces paramètres ne sont pas indépendants. Augmenter le gain maximum sans toucher au taux de retour oblige mécaniquement à raréfier les gains ailleurs, et le jeu change de sensation.
La conception consiste à trouver le jeu de tables qui satisfait ces contraintes ensemble, pas séparément.
Vérifier plutôt que croire
Le taux de retour se calcule analytiquement sur les fonctions simples, mais dès qu'apparaissent des tours gratuits, des symboles qui s'étendent ou des relances, le calcul exact devient impraticable. On passe alors par la simulation, sur des volumes très importants de tours.
Et ce qui compte n'est pas la moyenne obtenue mais son incertitude : un taux de retour annoncé à trois décimales n'a de sens que si l'intervalle de confiance est plus serré que la précision annoncée. Une simulation trop courte donne un chiffre qui a l'air juste et ne l'est pas.
Toute la chaîne est reproductible à la graine aléatoire près, ce qui permet de rejouer exactement une campagne de simulation et d'expliquer un écart plutôt que de le constater.
Du modèle à l'écran
La seconde moitié du travail est l'intégration : rendu web, animations de symboles, séquences de gain, enchaînement des tours. Les contraintes changent complètement, il faut tenir une image fluide sur des terminaux modestes, avec des animations lourdes et des transitions permanentes.
Le point délicat est la frontière entre les deux mondes. Le résultat d'un tour est déterminé par le moteur mathématique, jamais par l'animation. L'affichage ne fait que raconter un résultat déjà arrêté, et cette séparation stricte est ce qui rend le jeu vérifiable.