Ajoute Galerapagos (bggId 224272)
Validation du contenu / validate (push) Successful in 35s

Modele de score a formules : case "A embarque sur le radeau" par joueur, trois
modes (partie simple, tournoi solidaires, tournoi solitaire), points calcules
selon le nombre de rescapes. Fiche de regles redigee avec nos propres mots.

Schema des modeles regenere : il connait le noeud "total" (somme sur tous les
joueurs). Ne pas publier avant le deploiement du hub et de l'app qui le
connaissent : un hub plus ancien refuserait ce modele.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-01 19:11:01 +01:00
parent 8c4f01c145
commit 84fbaa1be8
4 changed files with 253 additions and 0 deletions
+6
View File
@@ -0,0 +1,6 @@
{
"$schema": "../../schemas/game.schema.json",
"schemaVersion": 1,
"bggId": 224272,
"name": "Galèrapagos"
}
+12
View File
@@ -0,0 +1,12 @@
{
"$schema": "../../schemas/rules.schema.json",
"schemaVersion": 1,
"locale": "fr",
"summary": "Naufragés sur une île, vous devez bâtir un radeau avant l'ouragan en gérant l'eau et la nourriture, quitte à sacrifier l'un d'entre vous par vote. Ceux qui embarquent gagnent.",
"goal": "Quitter l'île à temps, sur le radeau. Tous les naufragés qui embarquent gagnent la partie. Si personne ne survit, ou si l'ouragan arrive et que le radeau ne peut pas partir, tout le monde perd.\nOn peut discuter, négocier et menacer à volonté : aucune promesse n'engage.",
"setup": "Les 6 boules vont dans le sac, les cartes Radeau sont mises de côté et le disque Bois démarre à zéro. Chacun reçoit 4 cartes Épave (3 de 9 à 12 joueurs), le reste forme la pioche.\nLe paquet Météo est composé de cartes tirées au hasard, avec la carte Ouragan cachée parmi les dernières : elle ne sortira pas avant la fin du paquet.\nLes compteurs d'eau et de nourriture démarrent à une valeur qui dépend du nombre de joueurs (table du livret). Le premier joueur est celui qui ressemble le plus à un naufragé.",
"turn": "Un tour se joue en cinq temps.\n1. La carte Premier joueur passe à droite (sauf au premier tour).\n2. On retourne une carte Météo : elle donne la pluie du jour, de 0 à 3 gouttes.\n3. Chacun, à son tour, choisit une action :\n • Pêcher : une boule est piochée, elle donne 1 à 3 de nourriture.\n • Eau : on ajoute au compteur autant d'eau que de gouttes sur la carte Météo (rien par grand soleil).\n • Bois : on avance d'un cran sur la piste du radeau, puis on peut tenter 1 à 5 boules de plus. Si l'une est la boule noire, on est mordu par un serpent : pas de bois en plus, et malade un tour. À 6 crans, une place de radeau s'ajoute.\n • Fouiller l'épave : on pioche une carte Épave en secret.\n4. Survie : chaque survivant consomme 1 eau et 1 nourriture. S'il en manque, on joue des cartes de ressources ; sinon un vote désigne qui est sacrifié, un joueur à la fois.\n5. Nouveau tour.\nLes cartes Épave se jouent à tout moment : ressources, soins, objets permanents, revolver et cartouche, ou cartes inutiles pour tromper les autres.",
"end": "Trois façons de finir.\n• Quitter l'île : en fin de tour, si le radeau a au moins autant de places que de survivants et qu'il reste, après la distribution, 1 eau et 1 nourriture de plus par survivant pour le voyage, tous les survivants embarquent et gagnent. On peut embarquer malade.\n• Ouragan : dès que la carte Ouragan sort, le radeau doit partir à la fin du tour. Il faut les mêmes conditions, quitte à sacrifier des joueurs par vote pour y arriver ; sinon tout le monde perd.\n• Hécatombe : si tous les joueurs meurent de soif ou de faim, tout le monde perd.",
"scoring": "En partie simple, les rescapés gagnent, sans points.\nEn tournoi, on joue un nombre de parties convenu à l'avance, et chaque partie rapporte des points aux seuls rescapés :\n• Naufragés solidaires : chaque rescapé marque autant de points qu'il y a de rescapés.\n• Naufragé solitaire : moins il y a de rescapés, plus on marque. Avec 8 joueurs, un seul rescapé marque 8 points, deux rescapés 7 chacun, et ainsi de suite.\nÀ la fin du tournoi, le meilleur total gagne.\nDans Skori : choisissez le mode au lancement, puis cochez « A embarqué sur le radeau » pour chaque rescapé à la fin de chaque partie. Les points se calculent tout seuls.",
"tips": "Si personne n'embarque (hécatombe), ne cochez rien : tout le monde reste à zéro. En partie simple, supprimez alors la partie plutôt que de la terminer, sans quoi tous les joueurs sont à égalité.\nEn tournoi, c'est vous qui décidez quand finir : terminez la partie après le nombre de parties prévu.\nLa variante « La voix des morts » donne un droit de vote aux joueurs éliminés, sans qu'ils puissent être désignés. Elle ne change pas les points."
}
+58
View File
@@ -0,0 +1,58 @@
{
"$schema": "../../schemas/scoring.schema.json",
"schemaVersion": 3,
"id": "bgg-224272",
"bggId": 224272,
"name": "Galèrapagos",
"description": "Naufragés sur une île, on embarque sur le radeau ou on périt. En partie simple, les rescapés gagnent. En tournoi : solidaires (autant de points que de rescapés) ou solitaire (moins il y a de rescapés, plus on marque).",
"players": {
"min": 3,
"max": 12
},
"winner": "highest",
"categories": [
{
"id": "points",
"label": "Points",
"icon": "Trophy"
}
],
"options": [
{
"type": "select",
"id": "mode",
"label": "Mode de jeu",
"default": "1",
"choices": [
{ "value": "1", "label": "Partie simple" },
{ "value": "2", "label": "Tournoi, naufragés solidaires" },
{ "value": "3", "label": "Tournoi, naufragé solitaire" }
]
}
],
"formula": {
"nodes": [
{ "type": "input", "id": "embarque", "label": "A embarqué sur le radeau", "kind": "boolean", "icon": "Ship" },
{ "type": "option", "id": "mode", "label": "Mode de jeu", "optionId": "mode" },
{ "type": "const", "id": "un", "label": "Un", "value": 1 },
{ "type": "const", "id": "trois", "label": "Trois", "value": 3 },
{ "type": "total", "id": "rescapes", "label": "Nombre de rescapés", "arg": "embarque" },
{ "type": "total", "id": "joueurs", "label": "Nombre de joueurs", "arg": "un" },
{ "type": "compare", "id": "simple", "label": "Partie simple ?", "cmp": "eq", "args": ["mode", "un"] },
{ "type": "compare", "id": "solitaire", "label": "Mode solitaire ?", "cmp": "eq", "args": ["mode", "trois"] },
{ "type": "op", "id": "solidaire-pts", "label": "Points si solidaires", "op": "mul", "args": ["embarque", "rescapes"] },
{ "type": "op", "id": "morts", "label": "Joueurs non rescapés", "op": "sub", "args": ["joueurs", "rescapes"] },
{ "type": "op", "id": "rang-solitaire", "label": "Points d'un rescapé solitaire", "op": "add", "args": ["morts", "un"] },
{ "type": "op", "id": "solitaire-pts", "label": "Points si solitaire", "op": "mul", "args": ["embarque", "rang-solitaire"] },
{ "type": "if", "id": "tournoi-pts", "label": "Points du tournoi", "args": ["solitaire", "solitaire-pts", "solidaire-pts"] },
{ "type": "if", "id": "pts", "label": "Points de la manche", "args": ["simple", "embarque", "tournoi-pts"] },
{ "type": "op", "id": "gagne", "label": "Gagne la partie simple", "op": "mul", "args": ["embarque", "simple"] },
{ "type": "victory", "id": "victoire", "label": "Victoire", "arg": "gagne" },
{ "type": "output", "id": "out-points", "arg": "pts", "category": "points" }
]
},
"icon": "Ship",
"colors": {
"primary": "#0e7490"
}
}
+177
View File
@@ -728,6 +728,183 @@
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "total"
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"arg": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
}
},
"required": [
"type",
"id",
"arg"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "gauge"
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"arg": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
},
"start": {
"type": "integer",
"default": 0
},
"min": {
"type": "integer"
},
"max": {
"type": "integer"
},
"show": {
"type": "boolean"
},
"icon": {
"type": "string",
"maxLength": 40
}
},
"required": [
"type",
"id",
"arg"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "eliminate"
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"arg": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
}
},
"required": [
"type",
"id",
"arg"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "lastStanding"
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"arg": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
}
},
"required": [
"type",
"id",
"arg"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {
"type": {
"type": "string",
"const": "victory"
},
"id": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
},
"label": {
"type": "string",
"minLength": 1,
"maxLength": 80
},
"arg": {
"type": "string",
"minLength": 1,
"maxLength": 60,
"pattern": "^[a-z0-9][a-z0-9_-]*$"
}
},
"required": [
"type",
"id",
"arg"
],
"additionalProperties": false
},
{
"type": "object",
"properties": {