Repository navigation
Notation Reference
Abalassembly comprend plusieurs formats de notation, pour rester interopérable avec d'autres outils de la communauté Abalone (notamment KAA de Saab). Cette page documente chacun précisément — tout ce qui suit a été vérifié contre du vrai code ou de vraies parties, pas supposé.
C'est le format que le moteur utilise en interne, et celui de la bibliothèque de 4 480 parties.
Coup en ligne (poussée), 4 caractères : [queue][case adjacente dans la direction de poussée]
- La bille de départ notée est la queue du groupe (la dernière dans la direction opposée à la poussée)
- Exemple :
d6e6= la bille en d6 pousse vers e6 ; les billes alignées devant (e6, f6…) sont poussées aussi - Distance toujours de 1 case entre les deux coordonnées
Coup latéral (broadside), 6 caractères : [début du groupe][fin du groupe][destination du début]
- Exemple :
c2c4d3= les billes c2-c3-c4 se déplacent vers d3-d4-d5 - La direction du mouvement = destination du début − début du groupe
Coordonnées : lettre de rangée (a=bas, i=haut) + chiffre de colonne (1 à 9 selon la rangée). Rangées de 5 à 9 cases selon la position (5,6,7,8,9,8,7,6,5).
Format numéroté : 1.a1a4 1.-b5b4 2.c3c6 2.-d5d2… (N. = coup Noir, N.- = coup Blanc). Forme simplifiée acceptée, sans le préfixe N.- pour les Blancs.
Principe des 2 coordonnées : contrairement à AbaPro, la distance entre les deux coordonnées peut être supérieure à 1 case.
Coup en ligne — [queue avant le coup][tête après le coup] :
- La distance entre les deux coordonnées donne directement la longueur du groupe
- Exemple :
d5d7→ distance 2 → groupe de 2 billes, occupant[d5,d6]avant le coup,[d6,d7]après - Prouvé contre les 5 coups d'une vraie solution de puzzle KAA (Pzl_M_0021) — capture retrouvée exactement où attendue
Coup latéral — deux interprétations possibles (règle documentée dans le manuel KAA §11) :
-
[fin du groupe][destination du début](interprétation privilégiée) -
[début du groupe][destination de la dernière bille](repli, cas ambigu)
- Testé et validé contre 8 vrais coups latéraux dérivés du moteur
Limite connue, découverte en testant : deux groupes de tailles différentes peuvent produire la même paire Nacre depuis une même position (ex. c4d3 peut désigner un groupe de 2 ou de 3 billes selon le contexte). Ambiguïté propre à la notation elle-même, pas un bug du décodeur — le résolveur choisit le premier coup légal trouvé (groupe le plus petit en priorité) plutôt que de deviner arbitrairement.
Format : EjBPosB_EjWPosW (Éjectées Noir + Position Noir factorisée, _, Éjectées Blanc + Position Blanc factorisée)
- Exemple :
0a12b123_0g789h789i789→ Noir : 0 éjectées, cases a1,a2,b1,b2,b3 · Blanc : 0 éjectées, cases g7,g8,g9,h7,h8,h9,i7,i8,i9 - Le premier chiffre = nombre de billes éjectées de ce camp
- Suivi de lettres de rangée, chacune suivie d'une série de chiffres de colonne collés (« factorisés »)
Vérifié contre les exemples exacts du manuel KAA + 28 vraies positions de puzzles réels.
Format utilisé pour stocker les positions de départ dans le code du jeu : 0<cases noires>,0<cases blanches>, chaque case en 2 caractères pleins (ex. 0a1a2b1,0h8h9i9). Différent du format compact KAA (qui factorise les colonnes) — c'est la forme « développée », sans ambiguïté de parsing.
- Notation de Vincent (PlayStrategy) — coordonnées inversées selon son propre système. Pas de décodage tant qu'on n'a pas un vrai fichier de sa part pour calibrer, plutôt que deviner.