Skip to content

Port OreSpawn 4.0.16 to Forge 26.1.2 - #281

Merged
SkyBlade1978 merged 12 commits into
MinecraftModDevelopmentMods:master-26.1.2from
SkyBlade1978:master-26.1.2
Sep 2, 2026
Merged

Port OreSpawn 4.0.16 to Forge 26.1.2#281
SkyBlade1978 merged 12 commits into
MinecraftModDevelopmentMods:master-26.1.2from
SkyBlade1978:master-26.1.2

Conversation

@SkyBlade1978

@SkyBlade1978 SkyBlade1978 commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Summary

Ports the complete OreSpawn 4.0.8 through 4.0.16 campaign to Minecraft 26.1.2 / Forge 64.0.9, finishing at 4.0.16.2601021.

This includes:

  • persistent long Ore and Fluid editor values;
  • early, safe replacement of provider-declared natural terrain hosts;
  • Stable Layers rock eligibility based on actual world Y;
  • dynamic-registry biome tags and stable-key ore filtering;
  • sampler surface-height alignment;
  • public ore-dimension biome filter APIs and namespaced geome IDs;
  • exposed Snow and surface Ice conversion;
  • shared stable biome attribution for geology, sampling and family-restricted ores;
  • GameTest-owned benchmark shutdown while retaining ordinary benchmark auto-stop.

Forge 26.1.2 adaptations

The port preserves Forge 64's Identifier APIs, biome bootstrap model, ChunkPos.pack(), official runtime naming and reobf=false. It retains namespaced Overworld storage with legacy-root detection, the optimized LevelChunkSection geology write when safe, four target access transformers, disjoint production-only Buildship outputs, and an explicitly zero-rule cold-bootstrap Mavenizer manifest for Forge 64.

The build/release scaffold now uses ForgeGradle 7.0.34, Gradle 9.6.1 and exact Temurin 25.0.3+9, with deterministic version-only artifacts, release audits, checksums, immutable bundle verification, guarded Maven preparation, pinned CI/wrapper/CodeQL/tag workflows, the sealed Mineralogy 5.4.0 migration oracle, and all 21 documentation exports.

Compatibility

  • API major remains 1.
  • Provider/global/world schemas remain 4/6/5.
  • Registry IDs, provider field meanings, profile filenames and migration behavior are unchanged.
  • Existing chunks are not rewritten.
  • Compatibility range [4.0.6,5.0.0) remains unchanged.

Validation

Exact accepted candidate: 651299447413f549fbeaab5e7ef08b2d872532ae.

  • 140 tests across 33 suites, with no failures, errors or skips;
  • 41 JSON/mcmeta files parsed, 16 locales with 359 matching keys, and 21-document byte parity;
  • complete offline build, Javadocs, release audit and Eclipse lifecycle;
  • cold exact-commit build plus genuinely empty-cache Forge bootstrap and idempotent rerun;
  • exact packaged Forge 64 client and server fresh/reload tests with clean log/crash scans;
  • surface, natural-host, dynamic-biome, Snow/Ice, fluid, stable-attribution and GameTest lifecycle gates;
  • preferred-seed 81-chunk generation with all eight managed ore families and no range violations;
  • staged Sky/Average, Cyano and vanilla benchmark qualification below the release thresholds;
  • all three release jars audited for Java 25, Forge 64 metadata, access transformers, documentation/locales and zero fixture/tool/test/world leakage.

The exact candidate was manually tested and accepted before publication to the fork. This PR does not tag, release or directly update the MMD target branch.

Hosted cold-bootstrap follow-up

Current PR head: 0d97dad89229c8e2034172239df3cdc1fb407441.

The first hosted cold-bootstrap attempt reached Forge preparation but hit a transient java.net.http.HttpTimeoutException while Mavenizer downloaded the library list. The exact empty-cache bootstrap had already passed locally. The follow-up commit adds the established bounded three-attempt download retry and a retained workflow-contract assertion. It changes only .github/workflows/ci.yml and ReleaseWorkflowContractTest; runtime code, version and public release-artifact inputs are unchanged.

@SkyBlade1978
SkyBlade1978 merged commit c0bc090 into MinecraftModDevelopmentMods:master-26.1.2 Sep 2, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant