Aller au contenu

App iOS

Stakko — puzzle de blocs hors ligne

Jeu de puzzle de blocs sur plateau 8x8, avec défi du jour, duels par graine partagée, 14 thèmes saisonniers et achat « Sans pub ». Cœur de règles en C# testé, miroir TypeScript.

Nature
App iOS
Stack
App iOSUnityC#TypeScriptPhaserAdMobUnity IAPCloudflare Pages
Voir sur l'App Store(nouvel onglet)

Les puzzles de blocs sont partout, mais beaucoup se résument à des pubs entre deux parties. Stakko est un jeu iOS conçu pour être agréable hors ligne, avec une monétisation encadrée par des règles explicites et un achat « Sans pub » qui les désactive toutes.

Ce que fait l'app

  • Plateau 8x8, trois pièces tirées parmi 29 formes ; lignes et colonnes complètes effacées, combos et lignes unies (« Prisme ») qui multiplient le score.
  • Défi du jour : la graine dérive de la date, tous les joueurs reçoivent les mêmes pièces. La version 1.1 en compte 33, chacun avec une règle et un objectif.
  • Duels contre un robot ou un ami : les deux joueurs reçoivent les mêmes fournées, le meilleur score gagne, et le défi s'envoie par la feuille de partage.
  • 14 thèmes dont un par mois, missions, trophées, statistiques, sons générés.

Stack et architecture

Le projet est en Unity 6 et C#. Le code est coupé en deux : un socle partagé (RNG, graine du jour, politique de pubs, services pubs, achats et analytics derrière des interfaces) et le jeu lui-même, pour que le jeu suivant réutilise le socle sans le modifier. Le cœur des règles ne dépend pas d'UnityEngine et se teste avec dotnet. Un prototype Phaser en TypeScript sert de spécification exécutable : RNG et graine du jour sont vérifiés par des valeurs figées dans les deux suites de tests. Les pubs (AdMob, avec consentement préalable) et l'achat s'activent par defines de compilation. Le site vitrine est un export statique Next.js hébergé sur Cloudflare Pages.

Ce qui a été difficile

Deux implémentations des mêmes règles finissent par diverger. La parade a été de tout pinner : mêmes valeurs de RNG, mêmes défis, tests miroirs, et une règle de dépôt qui impose de modifier les deux côtés en même temps. Autre bug retrouvé sur appareil : l'aperçu de pose réservait 5 cases alors que la plus grande forme en compte 9, ce qui levait une IndexOutOfRange à chaque image en glissant un carré 3x3. Présent depuis la 1.0, il a été corrigé en 1.1 en dimensionnant la réserve sur la plus grande forme.

Publication

Stakko est en ligne sur l'App Store. Le passage par la revue a demandé des corrections, par exemple retirer de la fiche toute mention d'Android, refusée au titre de la règle 2.3.10. La version 1.1 a été envoyée à Apple fin septembre 2026.