Add rifts, river basins and stratified depths for alpha.8
Build Sanctuary / build (push) Canceled after 0s

This commit is contained in:
koka
2026-09-09 00:29:34 +02:00
parent d50d47e149
commit 80e78e0421
85 changed files with 7977 additions and 56 deletions
+150 -5
View File
@@ -5,6 +5,11 @@ 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.8 utilise les paramètres `sanctuary:sanctuary_rift`. Ses contrôles
dans les vrais chunks passent sur les trois graines de référence, avec
1 800 ticks de fluides. Les observations et limites de cette version sont
consignées séparément des générations précédentes dans [Validation](testing.md).
## Créer un monde
En solo : créer un **nouveau** monde et choisir le type de monde **Sanctuary**
@@ -29,13 +34,14 @@ de test et les sauvegardes personnelles doivent rester distincts.
avec `xz_scale=0.25`, `y_scale=0.25`, `xz_factor=80`, `y_factor=160`, `smear=4`,
ainsi que son gradient supérieur. Il est échantillonné **64 blocs plus bas**
pour relever l'île entière de 64 blocs. Reliefs, surplombs, trous et fragments
dépendent de la seed Minecraft. L'ancien gradient inférieur uniforme est
dépendent de la seed Minecraft. Lalpha.8 y soustrait des failles courbes,
sans ajouter de matière. L'ancien gradient inférieur uniforme est
remplacé par la sculpture irrégulière décrite ci-dessous.
- Le terrain naturel reste libre de laisser un trou à l'origine, de former des
surplombs ou de se séparer en fragments. **Aucun noyau ellipsoïdal, cylindre ou
plateforme de départ n'est ajouté.** Au-dessus de `Y=144`, le relief de la
génération précédente est conservé dans la densité, simplement relevé de 64
blocs. Lhydrologie traite ensuite les lits et les rives près de la surface.
plateforme de départ n'est ajouté.** Le relief relevé de 64 blocs reste le
champ source ; les failles de lalpha.8 en retirent de la matière et
lhydrologie traite ensuite les lits et les rives près de la surface.
- Le pourtour est sculpté par retrait de matière à partir du rayon **128 blocs**.
Le contour de référence de 256 blocs est déformé par les bruits, entre 204 et
288 blocs ; il indique la fin de l'érosion, pas un mur de roche.
@@ -58,13 +64,152 @@ de test et les sauvegardes personnelles doivent rester distincts.
rocheuses. Les arbres et les petits filons ont besoin du terrain existant.
Aucun mod de biomes externe nest nécessaire.
Lalpha.7 associe ces biomes aux plages, aux eaux et aux petits filons décrits
Lalpha.8 associe ces biomes aux plages, aux eaux et aux filons décrits
ci-dessous. Les ressources de survie ne se limitent pas au bois et à la pierre,
mais cet incrément ne garantit pas encore une partie Minecraft complète sur
chaque seed. Laccès à chaque progression vanilla et les ressources renouvelables
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.
## Failles, géologie et ressources — génération v8
Les nouveaux mondes utilisent `sanctuary:sanctuary_rift`, la densité
`sanctuary:final_density_rift` et le biome source `sanctuary:rift_island`.
Les anciens paramètres `sanctuary`, `sanctuary_384`, `sanctuary_hydrology`,
`sanctuary_natural`, `sanctuary_layered` et `sanctuary_woodland` restent séparés.
Changer le preset ne migre pas un monde existant ; aucune régénération de
chunks ni modification de sauvegarde nest prévue par cet incrément.
### Failles et palette
`RiftShape` définit une à trois traces principales, courbes et ramifiées,
de longueur nominale 84 à 160 blocs. Leur largeur varie avec deux bruits en
trois dimensions ; le cœur ouvert est de lordre de 4 à 12 blocs, avec des
parois érodées autour. Ces nombres décrivent les traces avant leur intersection
avec la roche, pas une garantie de canyon continu de cette taille. La passe
retire seulement de la matière et laisse intactes les zones de rayon inférieur
à 20 blocs et extérieur à 224 blocs. Elle ne crée aucun socle central.
Les huit biomes `rift_oak_forest`, `rift_birch_forest`, `rift_clearing`,
`rift_dry_woodland`, `rift_rocky_heath`, `rift_dark_grove`, `rift_bamboo_grove`
et `rift_sulfur_depths` ont de nouveaux identifiants dans le namespace
`sanctuary`. Les choix climatiques de lalpha.7 sont conservés en haut. Le
soufre devient admissible dans des régions plus larges des étages inférieurs,
notamment vers Y=176, selon les bruits de variation et dhumidité. Le test de
palette prouve cette possibilité ; seule la lecture des vrais blocs peut
prouver une poche accessible sur une graine.
La végétation vanilla de surface garde ses arbres et ses teintes. La feature
`rift_groves` passe ensuite, avant `rift_shore_sugar_cane`, pour choisir les
volumes inférieurs encore libres après les arbres. Elle peut placer de gros
champignons vanilla, avec des petits champignons dispersés et des sols mêlant
mousse, podzol et mycélium. Les supports naturels et la place disponible
restent nécessaires ; un arbre remarquable peut échouer si son site est occupé.
Lordre des plantations intérieures donne la priorité aux arbres dans trois
cas sur quatre et aux gros champignons dans lautre cas, selon un choix lié
au chunk. Cela laisse des volumes disponibles aux chênes noirs. Dans les
biomes `sanctuary:rift_dark_grove` et `sanctuary:rift_bamboo_grove`, lardoise
des abîmes peut aussi fournir le support naturel des sols et bosquets
inférieurs. Son admissibilité est vérifiée au-dessus de chaque pied : seules
ces deux variantes humides autorisent ce support.
### Matières selon la profondeur
La règle `sanctuary:rift_island` ne change que la matière de blocs déjà solides.
Ses nappes utilisent un bruit 3D, avec un bruit distinct pour faire varier les
transitions de profondeur.
| Domaine | Matières |
| --- | --- |
| Masses supérieures | Pierre, granite, andésite, diorite ; sols enherbés hors affleurements |
| Intérieur des bosquets humides | Tuf, cobblestone, cobblestone moussue, boue compactée |
| Masses profondes | Ardoise des abîmes, roche noire, basalte |
| Poches soufrées | Soufre et cinabre ordinaires sur les masses existantes |
Les strates humides se mêlent aux matières hautes entre Y=192 et Y=224 dans
leurs biomes ; la transition vers les roches profondes s’étend de Y=136 à Y=168.
La profondeur sert de critère géologique : ces blocs ne signifient pas quune
source de lave se trouve forcément à proximité. Aucun bassin, spike, source
vanilla ou bloc de soufre puissant du biome Sulfur Caves nest ajouté.
Les anciens petits dépôts vanilla de granite, andésite, diorite et tuf sont
remplacés par ces nappes dans les seuls biomes `rift_*`. Les anciennes données
de biomes et leurs features ne sont pas modifiées.
### Minerais
Les features `rift_ore_*` ciblent des tags Sanctuary locaux : les pierres hautes
et humides produisent les minerais ordinaires ; ardoise des abîmes, roche noire
et basalte produisent leurs variantes dardoise. Les tags vanilla ne sont pas
élargis globalement. Le soufre et le cinabre restent des matières distinctes.
| Minerai | Taille du filon configurée | Essais principaux par chunk | Altitudes principales |
| --- | ---: | --- | --- |
| Charbon | 9 | 8 | Y=96..304 |
| Fer | 7 | 4 | Y=88..280 |
| Cuivre | 7 | 3 | Y=96..280 |
| Or | 5 | 2 | Y=88..224 |
| Redstone | 5 | 2 | Y=88..216 |
| Lapis | 4 | 1 | Y=104..240 |
| Diamant | 4 | Un essai une fois sur deux | Y=80..208 |
| Émeraude | 3 | 1 | Y=104..224 |
Les hauteurs suivent une distribution en trapèze. Charbon, fer et cuivre
reçoivent aussi respectivement 4, 2 et 2 essais sur roche supérieure exposée,
et autant de recherches de corniche depuis lair entre Y=64 et Y=288. Un essai
peut ne produire aucun bloc. Les tailles configurées ne sont ni des quantités
garanties par filon ni des quotas par île. Lexposition à lair est autorisée
pour ces trois minerais et l’émeraude ; une partie des candidats exposés est
encore écartée pour les autres minerais. Les stocks devront être relevés après
génération, avec leur emprise explicite.
### Eaux et lave
`RiftHydrology` cherche des bassins plus grands et une longue liaison calme
sur la vraie densité fissurée. Le critère de cet incrément est un chemin deau
continu dau moins 140 blocs entre deux bassins au même niveau, alimenté par
une source rocheuse et sa cascade entrante. Il ne sagit pas dune rivière
descendant continuellement en altitude. La recherche parcourt huit directions
et pondère les trajets selon le relief et un bruit ; le parcours retenu est
lissé sur une échelle de 16 à 32 blocs, puis arrondi avant sa conversion en
blocs. Le lit varie entre environ 5 et 7 blocs de largeur, hors élargissement
des bassins. Le chemin et ses marges sont à nouveau vérifiés sur la roche
après ce lissage : une courbe ne peut pas servir à franchir un trou.
La roche doit soutenir le fond et les berges. Lincision du lit reste limitée
à 16 blocs. Les berges de rivière peuvent retirer jusqu’à 12 blocs pour
rejoindre leau par paliers progressifs ; les autres rives conservent leur
limite de 2 blocs. Les dépôts de 3 à 5 couches ont toujours besoin de supports
naturels. Aucun remblai ne franchit une faille ou un trou. Si aucun parcours
compatible nest retenu, le générateur garde les bassins et sources qui
conviennent au relief.
Le calcul initial du plan reste coûteux : les essais finaux sur ce poste
mesurent 80,5 secondes pour la graine `0`, 50,7 pour `42` et 59,7 pour
`8675309`, hors génération des chunks. Le résultat est mis en cache par état
aléatoire du monde ; il nest pas recalculé pour chaque chunk. Loptimisation
de ce premier calcul reste un travail ultérieur.
La recherche de lave profonde vise une à deux petites sources entre Y=40 et
Y=160, en complément de la niche couverte accessible. Cette poche de 18 blocs
sources est recherchée dabord sur une corniche intérieure entre Y=64 et
Y=160. Si aucun site profond ne réunit les conditions de support, de voûte
et daccès, la recherche reprend sur les corniches plus hautes, jusqu’à Y=300.
Il ny a pas de poche créée de force lorsque les deux recherches échouent.
Les sources supplémentaires laissent Minecraft former leurs coulées par ses
ticks, sans colonne préremplie. Leau, les supports et les marges de végétation doivent être
contrôlés après décoration et simulation. La finition des bouches doit rester
limitée à la première génération du chunk, sans effacer un aménagement joueur
lors dun rechargement.
**Validation du 9 septembre 2026 :** le build complet réussit et les contrôles
moteur passent sur les trois graines de référence. Les failles, les bassins terminaux,
les liaisons de rivière, les champignons et les fluides après 1 800 ticks sont
documentés avec les relevés de ressources dans [Validation](testing.md).
Ces échantillons ne garantissent pas la présence de chaque ressource sur
toutes les graines. Les rapports intermédiaires ne servent pas de preuve
pour la version finale ; aucun monde personnel nest utilisé par ces tests.
## Sculpture du pourtour — conservée depuis la génération v2
La version **0.1.0-alpha.2** retire deux contraintes de la génération v1