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_api tree command:
    • list subcommand: 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 IEndBiome biomes (fixes the second and third parts of #20).
  • No longer generate Nether Fortresses twice within INetherBiome biomes (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 PlantUtils EnumPlantTypes 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 PlantUtils EnumPlantTypes 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 SpeciesPlantable class.
    • Fix "subterranean" worldgen not using the actual world height.
    • New abstract SpeciesPlantable species class that uses Forge's EnumPlantType system, instead of dynamic trees' dirt system. This allows IBlockState-sensitive soil, and fixes some bugs in general.
    • SpeciesPlantable is 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 ;)
  • 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 PlantUtils EnumPlantTypes to all Journey Into The Light nether plants and soil blocks.
    • Fix a crash caused by some unknown mod reverting MutableBlockPos field 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!
  • Natura:
    • Apply the PlantUtils EnumPlantTypes 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).
  • 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 PlantUtils EnumPlantTypes to all Nethercraft nether plants and soil blocks.
    • Nether dirt farmland now also supports any EnumPlantType.Crop and EnumPlantType.Plains plants.
    • Nether reeds may now also be planted on Heat Sand.
  • 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_TYPE to 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 PlantUtils EnumPlantTypes to all Stygian End plants and soil blocks.
  • 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 isBiomeLocal method, which allows for control over music continuing to play if the player leaves the biome it starts in (fixes the first part of #20).
  • api.audio.impl.VanillaMusicType:
    • New constructor that has replacesCurrentMusic and isBiomeLocal boolean parameters, making that class easier to use.
  • api.biome.INetherBiome:
    • New getBossMusicType method that returns the boss music that plays while players are in this biome.
  • api.registry.INetherAPIRegistry:
    • New alternative registerBiome method that takes in a BiomeEntry.
    • New getRegistryName method that returns that registry's unique id.
  • api.util.NetherGenerationUtils:
    • Moved the createSeedRandom method from WorldProviderTheEnd, allowing other mods to make use of it.
  • api.util.PlantUtils:
    • New PlantUtils.END_PLANT_TYPE field. 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_TYPE field. An EnumPlantType for any plants that can be planted on both "Netherrack"-like blocks and "Soul Sand"-like blocks.
    • New PlantUtils.NETHERRACK_PLANT_TYPE field. An EnumPlantType for any plants that can be planted on "Netherrack"-like blocks.
    • New PlantUtils.SOUL_SAND_PLANT_TYPE field. An EnumPlantType for any plants that can be planted on "Soul Sand"-like blocks. This field just set to Forge's EnumPlantType.Nether, since they serve the same purpose.
    • Some new PlantUtils methods to make using EnumPlantType easier.
    • This class allows for new inter-compatibility between any plants and soils from different mods that use it!
  • 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!

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 SummonAidEvent while 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 NetherAPIRegistryEvent are called, instead of during FMLServerStoppingEvent.
  • End exit portal, gateway, and pillar structures are now mutable and can be changed (handled via WorldProviderTheEnd).
  • Heavily improve the structure handler api.
  • ILavaTintBiome now takes in a block pos.
  • Invoke NetherAPIRegistryEvent events during the initialization of their respective world providers, instead of during FMLServerStartingEvent.
  • Move to RFG.
  • Nether & End biome fog color can be controled using the new NetherAPIFogColorEvent.
  • NetherAPIRegistryEvent's constructor now takes in a World instance, instead of a MinecraftServer instance.
  • New IEndBiome interface, having your end biome classes implement this is heavily recommended but not required.
  • New INoSpawnBiome interface, players cannot randomly spawn into biomes that implement this.
  • Register dimension type classes during FMLServerAboutToStart event, instead of FMLServerStartingEvent.
  • 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 /locate command can now work with any INetherAPIRegistry instance.

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 IAmbienceWorldProvider interface
  • IAmbienceBiome methods 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 INetherAPIRegistryListener interface
  • ARR license

Bug Fixes:

  • Added compatibility for BetterNether Continuation v0.1.9.6
  • Improved compatibility with BetterNether's configs

Bug Fixes:

  • Fix possible conflict involving Mixins (issue#1)

Initial Release


Project members

jbredwards

Owner

Details

Licensed Custom License
Published 2 years ago
Updated 20 hours ago