feat(worldgen): growing cycle — longer Nether, alternating OW gaps, per-period doubling - #561
Open
bh679 wants to merge 3 commits into
Open
feat(worldgen): growing cycle — longer Nether, alternating OW gaps, per-period doubling#561bh679 wants to merge 3 commits into
bh679 wants to merge 3 commits into
Conversation
…er-period doubling - Nether core hold default 400 → 5000 (matches the End-islands core) - Split the single overworld gap into asymmetric gaps: 10000 before the Nether band (Void→Nether) and 5000 before the End band (Nether→Void) - New disintegrationPeriodGrowthFactor (default 2): each period multiplies the scaled segments (Nether core, void hold, End core, both OW gaps) by the factor, so the journey escalates with distance; fades stay fixed; 1 = classic uniform - WorldGenCycle rewritten with a period-aware locate() (geometric growth, int-safe clamp); all ramp methods evaluate against the scaled per-period spans - Tests migrated to the 14-arg ctor + new asymmetric-gap and doubling coverage Co-Authored-By: Claude Opus 4.8 <[email protected]>
Co-Authored-By: Claude Opus 4.8 <[email protected]>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Reworks the repeating worldgen cycle (
OW → Nether → OW → Void → End islands → Void → repeat) so the journey escalates with distance:disintegrationPeriodGrowthFactor(default 2). Each successive period multiplies the scaled segments (Nether core, void hold, End-islands core, both OW gaps) by the factor; the transition fades stay fixed.1= classic uniform cycle.How
WorldGenCyclegains a period-awarelocate()that walks the geometrically-growing periods (O(1)floorModfast-path when growthFactor=1), with an int-safe clamp so scaled spans never overflow (growth is bounded by the world border anyway). All ramp methods evaluate against the per-period scaled spans; the pureNetherTransition/Disintegrationramp helpers are unchanged.WorldGenCycle.fromConfig(), so no caller signatures change.Mod-impact
Worldgen change. 2 new COMMON config keys + 1 raised default. No new deps, mixins, registries, or packets.
Testing
./gradlew build+ fulltestsuite — green (incl. merge with main fix(nether): collision-check ghast spawns so they don't suffocate in blocks #556–558).WorldGenCycleTestextended: new asymmetric-gap and per-period-doubling tests (assert period-1 segments are 2× period-0 at the accumulated offsets); existing tests migrated to the 14-arg ctor with growthFactor=1 (identical behaviour) and still pass.🤖 Generated with Claude Code