feat(canaplia): implémenter le gameplay complet (#36 à #43) #54

Merged
koka merged 1 commits from integration/canaplia-complete into main 2026-08-29 06:09:24 +00:00
Owner

Objectif

Implémenter le gameplay complet de Canaplia pour les tickets #36 à #43, sur les fondations déjà fusionnées par #53.

Périmètre

  • Modules touchés : itsalive (contenu et règles serveur), ambiance (API lunaire et rendu client), onlyfun (exclusion boutique/récompenses).
  • APIs ou fichiers partagés touchés : API publique AmbianceLunarHarvestApi, payloads Canaplia bornés, build.gradle, gradle.properties, manifestes Fabric, CANAPLIA.md, README.md, CHANGELOG.md et migrations.
  • Dépend d'une autre branche/PR : non ; branche basée sur origin/main après fusion de #53.

Fonctionnalités

  • 16 variantes, cultures doubles, résines temporisées, 64 objets et codex.
  • Découverte data-driven validée côté serveur dans Overworld, Nether et End, compatible avec les anciens chunks.
  • Hybridation locale bornée, incluant les variantes lunaires via l'API publique d'Ambiance.
  • Compostage déterministe de 10 fleurs identiques vers la résine correspondante, avec migration monotone.
  • Effets serveur, mauvais voyages, aura de résine et synchronisation client bornée.
  • Composition visuelle Ambiance avec réglages d'accessibilité persistants.
  • Codex progressif personnel/partagé sans fuite des recettes non découvertes.
  • Exclusion complète du namespace Canaplia des boutiques et récompenses OnlyFun.
  • Ressources originales générées et traductions FR/EN/RU.

Compatibilité inter-mods

  • chaque donnée/règle reste dans son module propriétaire ;
  • les appels inter-mods passent par une API publique et une dépendance Gradle explicite ;
  • aucun cycle de dépendances n'est ajouté ;
  • les IDs et namespaces historiques restent stables ;
  • les sauvegardes et protocoles sont versionnés et une migration est fournie ;
  • le comportement client, serveur et multijoueur a été considéré.

Versions : ItAlive alpha.33 (data 2, réseau 4), Ambiance alpha.14 (réseau 5), OnlyFun alpha.20. Le pack_version reste inchangé car cette PR n'est pas une release distribuable.

Validation

  • ./gradlew :ambiance:check :itsalive:check :onlyfun:check
  • ./gradlew verifyWorkspace
  • ./gradlew check — 140 tâches réussies
  • lancement serveur dédié : 14 règles de découverte chargées, démarrage et arrêt propres
  • lancement client : mixins et ressources chargés, arrivée à l'écran principal sans erreur
  • aucun build, log, backup, JAR généré, secret ou fichier personnel commité

Closes #36
Closes #37
Closes #38
Closes #39
Closes #40
Closes #41
Closes #42
Closes #43

## Objectif Implémenter le gameplay complet de Canaplia pour les tickets #36 à #43, sur les fondations déjà fusionnées par #53. ## Périmètre - Modules touchés : `itsalive` (contenu et règles serveur), `ambiance` (API lunaire et rendu client), `onlyfun` (exclusion boutique/récompenses). - APIs ou fichiers partagés touchés : API publique `AmbianceLunarHarvestApi`, payloads Canaplia bornés, `build.gradle`, `gradle.properties`, manifestes Fabric, `CANAPLIA.md`, `README.md`, `CHANGELOG.md` et migrations. - Dépend d'une autre branche/PR : non ; branche basée sur `origin/main` après fusion de #53. ## Fonctionnalités - 16 variantes, cultures doubles, résines temporisées, 64 objets et codex. - Découverte data-driven validée côté serveur dans Overworld, Nether et End, compatible avec les anciens chunks. - Hybridation locale bornée, incluant les variantes lunaires via l'API publique d'Ambiance. - Compostage déterministe de 10 fleurs identiques vers la résine correspondante, avec migration monotone. - Effets serveur, mauvais voyages, aura de résine et synchronisation client bornée. - Composition visuelle Ambiance avec réglages d'accessibilité persistants. - Codex progressif personnel/partagé sans fuite des recettes non découvertes. - Exclusion complète du namespace Canaplia des boutiques et récompenses OnlyFun. - Ressources originales générées et traductions FR/EN/RU. ## Compatibilité inter-mods - [x] chaque donnée/règle reste dans son module propriétaire ; - [x] les appels inter-mods passent par une API publique et une dépendance Gradle explicite ; - [x] aucun cycle de dépendances n'est ajouté ; - [x] les IDs et namespaces historiques restent stables ; - [x] les sauvegardes et protocoles sont versionnés et une migration est fournie ; - [x] le comportement client, serveur et multijoueur a été considéré. Versions : ItAlive `alpha.33` (data 2, réseau 4), Ambiance `alpha.14` (réseau 5), OnlyFun `alpha.20`. Le `pack_version` reste inchangé car cette PR n'est pas une release distribuable. ## Validation - [x] `./gradlew :ambiance:check :itsalive:check :onlyfun:check` - [x] `./gradlew verifyWorkspace` - [x] `./gradlew check` — 140 tâches réussies - [x] lancement serveur dédié : 14 règles de découverte chargées, démarrage et arrêt propres - [x] lancement client : mixins et ressources chargés, arrivée à l'écran principal sans erreur - [x] aucun build, log, backup, JAR généré, secret ou fichier personnel commité Closes #36 Closes #37 Closes #38 Closes #39 Closes #40 Closes #41 Closes #42 Closes #43
koka added 1 commit 2026-08-29 05:59:06 +00:00
feat(canaplia): implement complete gameplay integration
Verification 26.2 / check (pull_request) Canceled after 0s
b708bf5ffa
koka merged commit 1ce299f88a into main 2026-08-29 06:09:24 +00:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: koka/sanctuary#54