Skip to content

Port OreSpawn 4.0.16 to Forge 1.13.2 - #295

Merged
SkyBlade1978 merged 6 commits into
MinecraftModDevelopmentMods:master-1.13.2from
SkyBlade1978:master-1.13.2
Sep 8, 2026
Merged

SkyBlade1978 merged 6 commits into
MinecraftModDevelopmentMods:master-1.13.2from
SkyBlade1978:master-1.13.2

Conversation

@SkyBlade1978

Copy link
Copy Markdown
Contributor

Summary

Ports the accepted OreSpawn 4.0.16 campaign to Minecraft 1.13.2 / Forge 25.0.223 and publishes version 4.0.16.113021.

This backport adds the applicable fixes from 4.0.9 through 4.0.14 while preserving Forge 1.13's static, two-dimensional biome model:

  • moves the single terrain-host replacement pass to the start of LOCAL_MODIFICATIONS, ahead of provider surfaces, while preserving later authored blocks and rejecting air, fluids, bedrock and block entities;
  • evaluates Stable Layers rock bounds against actual world Y while retaining shifted formation Y for layer identity and deterministic fallback selection;
  • adds immutable ore-dimension biome ID and dictionary include/exclude builder/getter contracts using the existing provider JSON fields;
  • accepts canonical namespaced and legacy unnamespaced geome IDs with strict target-native validation;
  • converts exposed one-layer Snow at top + 1 while retaining the existing Snow/Ice scan and all buried/authored safety controls;
  • records the dynamic-registry, sampler-height, 3D biome-attribution and GameTest-server fixes as target-inapplicable rather than adding compatibility facades to Forge 1.13.

The release/build work also adds the cache-cold Forge bootstrap gate with pinned Java 25/8/17 toolchains, while retaining official MinecraftMavenizer 0.5.19 with a verified zero-patch result. Existing ForgeGradle 7 release safeguards, deterministic version-only artifacts, 21-document export, exact Mineralogy 1.13.2 5.0.1 oracle, LWJGL3-only Eclipse classpath, duplicated bin/main discovery, five access transformers and the Forge 25 WorldGenRegion.isChunkInBounds fluid guard are preserved.

Compatibility

  • Minecraft 1.13.2, Forge 25.0.223, MCP snapshot_20180921-1.13
  • Java 8 bytecode, ForgeGradle 7.0.34, Gradle 9.6.1, pack format 4
  • API major 1 and profile/provider schemas 4/6/5 remain unchanged
  • registry IDs, provider field meanings, profile filenames, migrations, existing chunks and [4.0.6,5.0.0) compatibility remain unchanged

Validation

  • 130 JUnit tests across 33 suites; zero failures, errors or skips
  • 26 JSON/mcmeta files parsed; 16 locales with exactly 357 matching keys
  • all 21 documents byte-identical across tracked, generated, Eclipse, runtime and packaged copies
  • complete offline build, Javadocs, release audit, checksums and Buildship/genEclipseRuns production-classpath gate
  • cold exact-commit lifecycle plus genuinely empty-cache Forge bootstrap and same-cache offline replay
  • userdev and exact reobfuscated packaged Forge 25 client/server fresh and reload phases
  • surface qualification covering 2,304 columns, 6,912 fillers, natural-host ordering and safety, Nether ceiling handling, weather conversion, springs, fluids and exact-save reload
  • packaged client world/editor round trip preserving all eight long fields and byte-equivalent profile JSON
  • preferred seed -4965128775892001975 with four configured rocks, all seven applicable managed ores in range, covered lava, Custom 77/13/2, unchanged profile/original-area hashes on reload and no decoration-region boundary error
  • matched three-run 81-chunk Sky/Average, Cyano and vanilla controls remained within release thresholds
  • all three artifacts audited for Java class major 52, Forge 25 metadata, SRG reobfuscation, exact access transformers, documentation/locales and zero fixture/oracle/test/world/tool leakage

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

@SkyBlade1978
SkyBlade1978 merged commit a7fdbb2 into MinecraftModDevelopmentMods:master-1.13.2 Sep 8, 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