APIs ou fichiers partagés touchés : consommation inchangée de SanctuaryCurrencyStorage, gradle.properties, vérificateurs racine, README, CHANGELOG et migration déclarative.
Dépend d'une autre branche/PR : non.
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 restent stables ;
les sauvegardes et protocoles restent compatibles, ou une migration/version est fournie ;
le comportement client, serveur et multijoueur a été considéré.
Migration : safe_vaults v3 → v4 et données Another World v4 → v5. Le protocole Another World passe de 1 à 2 pour synchroniser chaque solde sur deux mots 32 bits.
Version et validation
Another World passe en 0.0.0-alpha.55 ;
le pack reste en 26.2.0-alpha.206 car cette PR n'est pas une release ; le changelog et la migration indiquent que Packwiz sera actualisé à la prochaine release ;
aucun build, log, backup, JAR généré, secret ou fichier personnel n'est commité.
Test manuel
Aucun test manuel en jeu dans cette PR. Les tests couvrent le calcul du pillage sans overflow, la saturation, le découpage/recomposition des soldes 64 bits et les contrats de migration/ressources.
## Objectif
Implémente #29 en remplaçant les 27 piles du coffre-fort par trois soldes persistants 64 bits pour les rubis, saphirs et émeraudes.
- migre automatiquement les anciennes piles vers les nouveaux soldes ;
- synchronise et affiche les soldes 64 bits dans l’interface ;
- conserve l’intégration du Shop via l’API publique `SanctuaryCurrencyStorage` ;
- crédite directement les 20 % pillés dans le coffre-fort de l’attaquant afin d’éviter une génération non bornée d’objets.
Closes #29
## Périmètre
- Modules touchés : `anotherworld`.
- APIs ou fichiers partagés touchés : consommation inchangée de `SanctuaryCurrencyStorage`, `gradle.properties`, vérificateurs racine, README, CHANGELOG et migration déclarative.
- Dépend d'une autre branche/PR : non.
## 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 restent stables ;
- [x] les sauvegardes et protocoles restent compatibles, ou une migration/version est fournie ;
- [x] le comportement client, serveur et multijoueur a été considéré.
Migration : `safe_vaults` v3 → v4 et données Another World v4 → v5. Le protocole Another World passe de 1 à 2 pour synchroniser chaque solde sur deux mots 32 bits.
## Version et validation
- [x] Another World passe en `0.0.0-alpha.55` ;
- [x] le pack reste en `26.2.0-alpha.206` car cette PR n'est pas une release ; le changelog et la migration indiquent que Packwiz sera actualisé à la prochaine release ;
- [x] les traductions FR/EN/RU sont complètes ;
- [x] `./gradlew :anotherworld:check verifySafeVaultFeature` réussit ;
- [x] `./gradlew check` réussit (133 tâches) ;
- [x] aucun build, log, backup, JAR généré, secret ou fichier personnel n'est commité.
## Test manuel
Aucun test manuel en jeu dans cette PR. Les tests couvrent le calcul du pillage sans overflow, la saturation, le découpage/recomposition des soldes 64 bits et les contrats de migration/ressources.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Objectif
Implémente #29 en remplaçant les 27 piles du coffre-fort par trois soldes persistants 64 bits pour les rubis, saphirs et émeraudes.
SanctuaryCurrencyStorage;Closes #29
Périmètre
anotherworld.SanctuaryCurrencyStorage,gradle.properties, vérificateurs racine, README, CHANGELOG et migration déclarative.Compatibilité inter-mods
Migration :
safe_vaultsv3 → v4 et données Another World v4 → v5. Le protocole Another World passe de 1 à 2 pour synchroniser chaque solde sur deux mots 32 bits.Version et validation
0.0.0-alpha.55;26.2.0-alpha.206car cette PR n'est pas une release ; le changelog et la migration indiquent que Packwiz sera actualisé à la prochaine release ;./gradlew :anotherworld:check verifySafeVaultFeatureréussit ;./gradlew checkréussit (133 tâches) ;Test manuel
Aucun test manuel en jeu dans cette PR. Les tests couvrent le calcul du pillage sans overflow, la saturation, le découpage/recomposition des soldes 64 bits et les contrats de migration/ressources.