Add persistent island sizes for 5, 20 and 100 players
Build Sanctuary / build (push) Canceled after 0s

Default new Sanctuary worlds to the 20-player profile and keep legacy world generation isolated. Validate all three capacities progressively with real generation, fluid ticks and saved settings.
This commit is contained in:
koka
2026-09-09 04:14:18 +02:00
parent 0a0034dd42
commit ef5d1eaad9
74 changed files with 7317 additions and 64 deletions
+72 -6
View File
@@ -5,16 +5,20 @@ entourée de vide sans répétition d'îles à grande distance. C'est une premi
tranche de génération pour Minecraft **26.3-pre-2 / Fabric**, pas encore le
système d'expansion collective.
Lalpha.9 utilise les paramètres `sanctuary:sanctuary_cavern`, pour de nouveaux
mondes uniquement. Sa validation moteur passe sur les trois graines de référence. Lalpha.8 conserve
`sanctuary:sanctuary_rift` et ses résultats sur trois graines avec 1 800 ticks
de fluides ; ils ne valident pas la génération v9. Les observations de chaque
version restent séparées dans [Validation](testing.md).
Lalpha.10 propose trois tailles d’île pour 5, 20 ou 100 joueurs, avec
20 joueurs par défaut. Les trois profils passent les contrôles moteur sur
la graine `0`, dans des emprises explicitement inspectées. Les générations
historiques conservent leurs réglages, notamment `sanctuary:sanctuary_cavern`
pour lalpha.9 et `sanctuary:sanctuary_rift` pour lalpha.8. Les observations
de chaque version restent séparées dans [Validation](testing.md).
## Créer un monde
En solo : créer un **nouveau** monde et choisir le type de monde **Sanctuary**
dans les options de génération. Les types de monde vanilla restent disponibles.
Lalpha.10 utilise ce choix pour 20 joueurs par défaut, avec des variantes
5 et 100 joueurs. Les identifiants sont `sanctuary:sanctuary` (20),
`sanctuary:sanctuary_5` (5) et `sanctuary:sanctuary_100` (100).
Sur un nouveau serveur Fabric disposant du mod et de Fabric API :
@@ -24,6 +28,11 @@ level-name=sanctuary
level-seed=0
```
Pour créer une variante alpha.10, remplacer seulement
`level-type` par `sanctuary:sanctuary_5` ou `sanctuary:sanctuary_100`, avec un
nouveau `level-name`. Ces exemples concernent une création de monde, pas le
changement de taille dune sauvegarde existante.
La seed est libre. Modifier `level-type` ne convertit pas un monde existant :
utiliser un nouveau `level-name` pour tester une autre génération. Les fichiers
de test et les sauvegardes personnelles doivent rester distincts.
@@ -31,7 +40,7 @@ de test et les sauvegardes personnelles doivent rester distincts.
## Socle de génération conservé
Les points suivants décrivent le socle livré jusqu’à lalpha.8. Les évolutions
alpha.9 et leur état de validation sont précisés dans la section v9 ci-dessous.
alpha.9 et alpha.10 sont précisées dans les sections v9 et v10 ci-dessous.
- Le générateur reste celui de Minecraft, `minecraft:noise`.
- La forme reprend le champ de bruit flottant actif en 26.2 : `old_blended_noise`
@@ -77,6 +86,63 @@ chaque seed. Laccès à chaque progression vanilla et les ressources renouvel
nécessitent des vérifications concrètes. Les stocks réels sont relevés après la
génération, sans corriger une île pour atteindre un quota.
## Capacité de l’île — génération v10
Lalpha.10 propose trois tailles accessibles à la création dun monde.
Le choix **Sanctuary** vise 20 joueurs par défaut, accompagné de variantes
pour 5 et 100 joueurs. Les presets et paramètres de bruit sont associés ainsi :
| Preset de création | Paramètres enregistrés dans le monde |
| --- | --- |
| `sanctuary:sanctuary_5` | `sanctuary:population_5` |
| `sanctuary:sanctuary` | `sanctuary:population_20` |
| `sanctuary:sanctuary_100` | `sanctuary:population_100` |
Les nouveaux réglages restent distincts des identifiants enregistrés dans
les anciennes sauvegardes. Modifier le preset
sélectionné pour une nouvelle partie ne convertit pas un monde existant.
| Capacité de référence | Facteur horizontal | Aire nominale relative | Diamètre nominal | Hauteur |
| --- | --- | --- | --- | --- |
| 5 joueurs | 1 | 1 | 512 blocs | 384 blocs |
| 20 joueurs, défaut | 2 | 4 | 1 024 blocs | 384 blocs |
| 100 joueurs | √20, environ 4,472 | 20 | Environ 2 290 blocs | 384 blocs |
Le facteur horizontal vaut `√(capacité / 5)` : doubler le diamètre multiplie
laire nominale par quatre. Cette relation décrit lenveloppe de référence,
pas la surface réellement constructible après les trous, les falaises et
la sculpture de la bordure. Aucun cylindre central ni remplissage de secours
ne doit être ajouté pour obtenir laire théorique. La hauteur de dimension
reste `Y=0..383`.
La capacité choisie reste un paramètre de génération. Elle ne modifie pas
`max-players`, nagrandit pas l’île à chaque connexion et ne fixe aucun quota
de ressources. Les anciens mondes jusqu’à lalpha.9 gardent leur génération
et leur taille ; leurs chunks ne sont ni remplacés ni régénérés. Le projet
de continents déverrouillables reste séparé de ces tailles de départ.
Le bruit naturel reste échantillonné aux coordonnées du monde ; seule
lenveloppe extérieure change de taille. Les plans hydrauliques sont construits
à la demande dans des régions de 512 blocs, avec une graine régionale distincte.
Les marges dadmission sont de 16 blocs pour leau et 32 pour la lave. Bassins,
berges et groupes de terrasses sont admis entiers ; les sources dépendant dune
coupe écartée sont retirées aussi. Aucun trajet nest tronqué à la frontière.
Les couches superposées et leurs sources sont ensuite traduites ensemble.
Les forêts, minerais et décorations utilisent toute lemprise du profil.
La recherche facultative dun arbre remarquable reste unique et centrale.
Les sources et exutoires nagissent que pendant la génération, avec les
marqueurs vanilla consommés ; recharger un ancien chunk ne rouvre pas une bouche.
Les trois tailles passent onze tests requis sur la graine `0`, avec 1 800 ticks
de fluides et un aller-retour réel des paramètres sur disque. Le fichier
`data/minecraft/world_gen_settings.dat` conserve la clé du profil choisi.
212 anciens fichiers de production sont strictement identiques, tandis que
huit fichiers dintégration ou dinterface exposent les nouvelles générations.
Le premier calcul dune région reste coûteux ; les résultats ne sont pas un
test de cent connexions ni une garantie de génération rapide de toute l’île.
Voir les emprises et durées dans [Validation](testing.md).
## Cavités et terrasses deau — génération v9
Le nouveau réglage est `sanctuary:sanctuary_cavern`, avec le biome source