Features:
- Add contributors to this mod's credits.
- Add pixelated mod logo in the Nether API mod list gui (I'm using the old mod logo, so I don't have to animate a logo in the mod list).
- Allow users to define a default "player spawn dimension" through new config settings. Note that each world then saves these values, letting you have multiple worlds with different default spawn dimensions!
- Lang keys for credits and description.
- Make this mod's config gui translucent while in a world.
- Merge compatibility config categories in the gui, and remove the "(Compatibility)" text from those categories. This change does not impact the config file itself.
- New config setting to disable the first Ender Dragon spawn. When this setting is active: an End Gateway will generate, the dragon can still be summoned using End Crystals, and the dragon egg still appears after the dragon's first death.
- New
nether_apitree command:listsubcommand: prints Nether API biome weight and structure info to the console.
- New "respawn dimension" logic:
- Each dimension can now store its own global (or generated) default spawn position.
- Fix "random spawn position" bugs for many dimensions (like positioning players in lava or well above the ground).
- Perform initial spawn chunk load for the "player spawn dimension" instead of the overworld, and generate spawn positions for all respawn dimensions.
- Respawning now accounts for all of Forge's per-dimension bed spawn points instead of only the current dimension. This change alone fixes some mods (like aether beds not working if you die outside the aether), and greatly simplifies the respawn logic needed by mod developers wanting to add a dimensional respawn point.
- Nether API compat configs will no longer appear in the config gui if its respective mod is not present.
- Remove non-functional "disable" button from Nether API in the mod list gui.
Bug Fixes:
- Biome ambience particles now account for the "Video Settings -> Particles" setting.
- Ensure that server-side particle spawning is not fixed by mods like Random Patches, RLMixins, and Universal Tweaks. Nether API also fixes MC-10369, but by individually fixing each bug mentioned in the original report. Applying a global fix causes bugs with many mods, like causing particles to be spawned twice.
- Nether caves now generate up to the actual world height instead of "actual world height minus 8".
- No longer crash if another mod outright removes the Nether or End.
- No longer generate End Cities twice within
IEndBiomebiomes (fixes the second and third parts of #20). - No longer generate Nether Fortresses twice within
INetherBiomebiomes (fixes #17 & #17 (comment)). - Some improvements to the "tallNether" config setting tooltip, like adding Alfheim Lighting Engine to the recommended mods list.
- Sort vanilla config entries.
- Use eye pos instead of camera pos for ambience fx.
Compatibility Fixes and Improvements:
- BetterNether:
- Allow eye vines to be planted on the Biomes O' Plenty's flesh block (this just makes sense to me).
- Apply block flag fix to plants.
- Apply the
PlantUtilsEnumPlantTypes to all BetterNether plants and soil blocks. - BetterNether's moss plants may now also be planted on Vanilla's and Biomes O' Plenty's mycelium blocks.
- Eye vines now generate properly (fixes #16).
- Fix crash at startup if some of the BetterNether biomes are disabled in older versions of BN (fixes #8). (Nischhelm)
- New config setting that allows the moss plants to be planted on more than just mycelium blocks.
- New config setting that allows eye vines to generate in Biomes O' Plenty's "Visceral Heap" biome.
- Stalagnate plants now use
World.getActualHeight()(fixes #13).
- Biomes O' Plenty:
- Add config option to allow the fluids from Biomes O' Plenty that already generate in the Nether (Blood and Honey) to not vaporize in the Nether when placed through a bucket.
- Apply the
PlantUtilsEnumPlantTypes to all Biomes O' Plenty nether plants and soil blocks. - BOP grass block break particles no longer have their color tint applied. This makes them consistent with the Vanilla grass block.
- Fix BOP dynamic trees addon creating dirt in the nether.
- Dynamic Trees:
- Add new BlockRooty instances for End Stone, Netherrack, and Soul Sand. These are only used internally by a new
SpeciesPlantableclass. - Fix "subterranean" worldgen not using the actual world height.
- New abstract
SpeciesPlantablespecies class that uses Forge's EnumPlantType system, instead of dynamic trees' dirt system. This allows IBlockState-sensitive soil, and fixes some bugs in general. SpeciesPlantableis injected into the BOP Hellbark tree species at runtime (fixes the second half of #15, which also occurred without Nether API installed).- These changes are also intended to be used by future dynamic trees mod addons, or by upcoming mods that will have built-in dynamic trees support ;)
- Add new BlockRooty instances for End Stone, Netherrack, and Soul Sand. These are only used internally by a new
- Journey Into The Light:
- Allow the Vanilla Shrub plant to be placed on any block with a solid face. This allows Journey Into The Light to use them in its Nether generation without them breaking.
- Apply the
PlantUtilsEnumPlantTypes to all Journey Into The Light nether plants and soil blocks. - Fix a crash caused by some unknown mod reverting
MutableBlockPosfield modifiers (fixes #4 & #19). - Fix nether leaves not dropping their saplings.
- Just Enough Dimensions:
- Allow that mod's settings to be applied to Nether API's
WorldProviders(fixes #3). This change requires no edits to any JED settings!
- Allow that mod's settings to be applied to Nether API's
- Natura:
- Apply the
PlantUtilsEnumPlantTypes to all Natura nether plants and soil blocks. - Bloodwood trees now use
world.getActualHeight(). - Change the supported version of Natura to also allow for later versions of the mod, due to a new Natura fork... but the fork will be expected to maintain Nether API compat from their end for any changes they make.
- Only generate heat sand, nether berry bushes, and tainted soil in the Vanilla hell biome by default, as they do not fit in many modded ones.
- Prevent Natura's dynamic trees addon from generating its trees outside the Vanilla hell biome (fixes the first half of #15).
- Apply the
- Nether Hexed Kingdom:
- Add config settings to control structure generation height (fixes #2).
- Fix some cascading world generation issues (structures with 32x32 cannot be fixed though).
- Fix structure generation trying to spawn invalid entities and flooding the logger.
- Nethercraft:
- Apply the
PlantUtilsEnumPlantTypes to all Nethercraft nether plants and soil blocks. - Nether dirt farmland now also supports any
EnumPlantType.CropandEnumPlantType.Plainsplants. - Nether reeds may now also be planted on Heat Sand.
- Apply the
- NetherEx:
- Allow any item with the "shovel" tool type (not just ItemShovel items) to create Netherrack paths.
- Allow certain nether soil blocks from BetterNether, Biomes O' Plenty, and Journey Into The Light to be turned into Netherrack paths.
- Apply
PlantUtils.SOUL_SAND_PLANT_TYPEto the thornstalk plant. - Automatically apply all of NetherEx's biome entries to Nether API's registry (not just the default ones) (fixes #7).
- Quark:
- Fix Quark nether fossil cascading world gen.
- Stygian End:
- Apply the
PlantUtilsEnumPlantTypes to all Stygian End plants and soil blocks.
- Apply the
- VintageFix:
- Probably fix #21? This fix is based only from what I can remember about the old crash log (it had something to do with a JumpInsnNode ClassCastException in TransformerMapGenCavesHell).
- Void Island Control:
- Allow that mod's settings to be applied to Nether API's generators (fixes #14).
- Fix Void Island Control mod breaking when respawning in another dimension.
API Changes:
api.audio.IMusicType:- New
isBiomeLocalmethod, which allows for control over music continuing to play if the player leaves the biome it starts in (fixes the first part of #20).
- New
api.audio.impl.VanillaMusicType:- New constructor that has
replacesCurrentMusicandisBiomeLocalboolean parameters, making that class easier to use.
- New constructor that has
api.biome.INetherBiome:- New
getBossMusicTypemethod that returns the boss music that plays while players are in this biome.
- New
api.registry.INetherAPIRegistry:- New alternative
registerBiomemethod that takes in aBiomeEntry. - New
getRegistryNamemethod that returns that registry's unique id.
- New alternative
api.util.NetherGenerationUtils:- Moved the
createSeedRandommethod fromWorldProviderTheEnd, allowing other mods to make use of it.
- Moved the
api.util.PlantUtils:- New
PlantUtils.END_PLANT_TYPEfield. An EnumPlantType for any plants that can be planted on "End Stone"-like blocks. At runtime this is automatically applied to Vanilla's Chorus Plants. - New
PlantUtils.NETHER_PLANT_TYPEfield. An EnumPlantType for any plants that can be planted on both "Netherrack"-like blocks and "Soul Sand"-like blocks. - New
PlantUtils.NETHERRACK_PLANT_TYPEfield. An EnumPlantType for any plants that can be planted on "Netherrack"-like blocks. - New
PlantUtils.SOUL_SAND_PLANT_TYPEfield. An EnumPlantType for any plants that can be planted on "Soul Sand"-like blocks. This field just set to Forge'sEnumPlantType.Nether, since they serve the same purpose. - Some new
PlantUtilsmethods to make using EnumPlantType easier. - This class allows for new inter-compatibility between any plants and soils from different mods that use it!
- New
- Let mod devs customize The End's obsidian platform generation.
Features:
- Completely rework configs (this means your old configs will no longer work, but there were only 2 settings at the time).
- Config setting to disable nether caves.
- End caves (with a config setting to disable).
- End biome api!
- End structure api!
- Fix MC-10369 (Certain particles do not get spawned):
- Baby animal spawning particles.
- Ender dragon block destruction particles.
- Entity teleportation particles.
- Eye of ender placement particles.
- Fluid mixing effect particles.
- Iron golem creation particles.
- Redstone torch burnout particles.
- Snow golem creation particles.
- Wither creation particles.
- Fix MC-31681 (Fog and clouds darken when you're under any blocks).
- The Nether can now be 256 blocks tall!
- This is disabled by default.
- This should only be enabled for new worlds (or old worlds if you reset the Nether first).
- For many mods that generate their own nether features, you'll have to adjust their configs to account for the new height. Currently all mods with builtin support (and do not require manual config editing) are as follows (it's also assumed that any mods that use Nether API as a dependency have automatic support for this feature):
Compatability Features:
- Advanced Rocketry:
- Prevent AR from removing End and Nether fog.
- BetterNether:
- Heavily improve performance when generating features (by not causing block updates). This also fixes several cascading world generation issues.
- Biomes O' Plenty:
- Fix BOP nether bramble cascading world generation issues.
- Fix BOP nether hive cascading world generation issues.
- Prevent BOP from removing End and Nether fog.
- Journey Into The Light:
- JITL uses a pseduo-biome generation system, disable that and gives it real biomes.
- Fix all of JITL's Nether cascading world generation bugs.
- Fix certain structures using bad entity ids for spawners (caused lots of log spam and broken spawners).
- Improve performance when generating JITL's Nether features (by not causing block updates).
- JITL's Nether entities now spawn only in JITL's Nether biomes instead of Vanilla's Hell biome (any can be reverted via GroovyScript):
- Hell Cow: Now only spawns in the Blood Forest & Blood Forest Edge biomes.
- Hell Serpant: Now only spawns in the Heat Sands biome.
- Hell Turtle: Now only spawns in the Heat Sands biome.
- Inferno Blaze: Now only spawns in the Blood Forest biome.
- Mini Ghast: Now only spawns in the Blood Forest biome.
- Reaper: Now only spawns in the Earthen Seep biome.
- Witherspine: Now only spawns in the Earthen Seep biome.
- Natura:
- Only generate Natura's nether features in Vanilla's Hell biome, as they usually are very out of place in modded ones. Other biomes can be whitelisted via GroovyScript.
- Nethercraft Classic:
- Add new "Glowing Grove" biome that Nethercraft now adds all of its features into (instead of that mod ruining all nether biomes, like it did before).
- Fix all of Nethercraft's cascading world gen issues.
- Fix Nethercraft's bad entity network registries (also fixes weird projectile behavior).
- More of Nethercraft's entities are now fireproof.
- Nethercraft's dark zombies are now summoned instead of normal zombies during
SummonAidEventwhile in the nether. - Nethercraft's slime eggs can no longer spawn entities on the client.
- "Un-hardcode" Nethercraft's ore gen settings (can be changed by using GroovyScript).
- Stygian End:
- Chorus Plants no longer generate in Stygian End's biomes (each can be toggled via configs).
- End Cities no longer generate in Stygian End's biomes (each can be toggled via configs).
- Fix all of Stygian End's canopy cascading world generation issues (done by drastically changing how the trees generate, can be reverted via configs).
- Fix all of Stygian End's volcano cascading world generation issues.
- Stygian End's acidic plains biome features now generate only on end obsidian.
Technical Changes:
- Biome ambience can now be controled using the new
BiomeAmbienceEvent. - Clear registries the line before their respective
NetherAPIRegistryEventare called, instead of duringFMLServerStoppingEvent. - End exit portal, gateway, and pillar structures are now mutable and can be changed (handled via
WorldProviderTheEnd). - Heavily improve the structure handler api.
ILavaTintBiomenow takes in a block pos.- Invoke
NetherAPIRegistryEventevents during the initialization of their respective world providers, instead of duringFMLServerStartingEvent. - Move to RFG.
- Nether & End biome fog color can be controled using the new
NetherAPIFogColorEvent. NetherAPIRegistryEvent's constructor now takes in aWorldinstance, instead of aMinecraftServerinstance.- New
IEndBiomeinterface, having your end biome classes implement this is heavily recommended but not required. - New
INoSpawnBiomeinterface, players cannot randomly spawn into biomes that implement this. - Register dimension type classes during
FMLServerAboutToStartevent, instead ofFMLServerStartingEvent. - Structure handlers can now be removed from registries by using their string names.
- Structures using this mod's structure api can now make use of
INetherAPIChunkGenerators. - The
/locatecommand can now work with anyINetherAPIRegistryinstance.
Bug Fixes:
- Biome ambient sounds used to play while the game is paused, this has been fixed and is no longer the case.
- Biome ambient sounds used to play while the player is dead, this has been fixed and is no longer the case.
- When the sound handler gets overloaded, the continuous ambient biome sounds used to sometimes stop and not resume, this has been fixed and is no longer the case.
Features:
- New
IAmbienceWorldProviderinterface IAmbienceBiomemethods are all now nullable, and some are no longer client-side only- Nether biomes no longer play overworld cave sounds by default
- Changed the default nether biome fog color to the one used by Vanilla's Nether Wastes biome in 1.16
Bug Fixes:
- Fix crash when removing looping ambient sound as a result of moving between biomes
- Fix all bad biome coords checks for biome ambience
- Fix black nether biome fog
Features:
- New
INetherAPIRegistryListenerinterface - ARR license
Bug Fixes:
- Added compatibility for BetterNether Continuation v0.1.9.6
- Improved compatibility with BetterNether's configs
Initial Release

