2.5 KiB
FACTION-046 — deux places dès la fondation
Branche codex/sky-flight-zoom-beta046, à partir de beta.045.
Contrat
Une nouvelle faction coûte toujours dix niveaux par défaut, sans prestige. Elle dispose de deux places : le fondateur responsable et un invité, qui rejoint sans payer et sans prestige. La troisième place et les suivantes demandent une charge de prestige chacune par défaut. Le serveur revalide la capacité à chaque acceptation : deux invitations simultanées ne permettent pas de dépasser la limite.
Migration
La configuration config/sanctuary/cycle-factions.json passe au schéma 3.
Les schémas 1 et 2 sont lus puis convertis une seule fois au chargement :
initialCapacity devient 2 ; un ancien maxMembers: 1 devient 2. Les prix,
récompenses, autres plafonds et le réglage de conservation d'XP sont préservés
(la conversion historique de creationCost vers dix niveaux reste applicable
au schéma 1). Cette règle vaut uniquement pour les fondations futures.
Le journal data/sanctuary-cycle-factions.json accepte les schémas 1, 2 et 3.
La lecture ne réécrit pas les anciens événements : capacités, membres, dépenses,
charges et prestiges existants restent identiques. La prochaine mutation écrit
le schéma 3 avec l'historique conservé. Les créations anciennes à une place
restent valides, les nouvelles créations en proposent deux. Les identifiants
d'événements et de sauvegarde ne changent pas. Ne pas faire relire un journal
schéma 3 par un ancien binaire ; restaurer ensemble journal et joueurs pour
revenir en arrière. Aucun monde personnel n'est modifié pendant ce ticket.
Le marqueur réseau additif sanctuary:faction_founding_pair_v1 évite qu'un
ancien client lise une configuration qu'il ne reconnaît pas. Les libellés FR/EN
présentent les deux places, dont une pour le fondateur.
Vérifications et livraison
Le test de contrat cycle011Smoke passe : conversion des configurations
schémas 1/2, idempotence, conservation d’une ancienne faction à une place,
fondation à deux places, invitation immédiate et écritures interrompues.
Les scénarios natifs font partie des 20 GameTests serveur ciblés réussis :
un invité rejoint sans prestige, un troisième membre est refusé jusqu’au
financement d’une place, puis peut rejoindre. Les nouveaux instantanés client
reflètent la capacité et les dépenses exactes.
Build, exports et parcours client sont décrits dans le ticket beta.046 et Distribution.