diff --git a/Tools/Scripts/DrainageAnalysis.cs.uid b/Tools/Scripts/DrainageAnalysis.cs.uid new file mode 100644 index 0000000..6342bd6 --- /dev/null +++ b/Tools/Scripts/DrainageAnalysis.cs.uid @@ -0,0 +1 @@ +uid://dhwyjpwd58pos diff --git a/Tools/Scripts/README.md b/Tools/Scripts/README.md index cf7260a..054bace 100644 --- a/Tools/Scripts/README.md +++ b/Tools/Scripts/README.md @@ -81,6 +81,17 @@ Generates the entire 2D blueprint. Roughly in order: steepest descent on a regular grid can only route along eight headings, and at map scale that reads as straight hatching, not drainage; the droplet model is the working replacement (its carve field measures isotropic to within 1.5 % across the folded 45° grid period). + **River plan (task 21, C0b part 1)** — `DrainageAnalysis.cs` + the headless + `RiverPlanTool.tscn` produce a river PLAN from an erosion-ON blueprint: priority-flood with a + one-ulp epsilon resolves the ~15k erosion pits for ROUTING ONLY (terrain untouched), deep+large + depressions survive as terminal basins, D8 flow directions + Kahn accumulation build the + drainage network, and the top ~3 TRUE-ocean outlets (the ocean body, WBID 1 — enclosed lagoons + do not count as "the sea") become trunk candidates with lean tributaries, mountain-exit handoff + points, and lean endorheic terminals. Output is a JSON *plan* sidecar + console report — + deliberately NOT a blueprint section, so a plan can never masquerade as realized water. Part 2 + (task 22) carves and waters the gated plan. Pure analysis: the source blueprint is never + written. + 3. **Sea level and water** — sea level per the configured model (`SeaLevelModel`: `"flat"` scalar — the default, `SeaLevelValue` 0.15 — or the legacy `"field"` latitude Lerp); flood fill separates true ocean from inland lakes; a mainland fill guarantees one contiguous landmass. diff --git a/Tools/Scripts/RiverPlanTool.cs.uid b/Tools/Scripts/RiverPlanTool.cs.uid new file mode 100644 index 0000000..f0f95e2 --- /dev/null +++ b/Tools/Scripts/RiverPlanTool.cs.uid @@ -0,0 +1 @@ +uid://b37tm1tov0x6m