Links
Tags
Creators
Details
All versions
1.5.0
Release
v1.5.0-mc1.12.22 weeks ago 78
Compatibility
Minecraft: Java Edition
1.12.2
Platform
Forge
Supported environments
Client and server
Changes
Features:
- Allow biome ambience (including end and nether biome fog) to be changed through a new
ambience.jsonconfig file (more info here)! - Config settings:
- Many new config settings to customize end caves.
- New config settings to reload
ambience.jsonand controlambience.jsonserver sync. - New config settings to set the min/max length that nether fortress pillars can generate (suggestion from #23). Note that each large pillar is actually made up of many 1x1 pillars. Probably best used for void worlds.
- New config settings to set the min/max y position of a nether fortress structure start (suggestion from #23).
- New config setting to toggle the dragon griefing fix.
- New config settings to toggle MC-10369 fixes.
- Fix occasional Vanilla weather desync when traveling between dimensions. This fixes the nether fog sometimes being darker than it should be.
- Fix Vanilla dragon egg teleportation bugs:
- Fix teleporting into the air.
- Fix teleporting outside the world.
- Particles now show the actual direction the dragon egg went.
- Fix Vanilla ender teleportation bugs (with a config setting to disable):
- Prevent client-only teleportation. Fixes janky teleporting when fighting endermen or shulkers (for example).
- Prevent dead entity teleportation. Fixes annoying situations where enderman loot will be somewhere else.
- Modded fluids now have a more accurate fog color:
- If a fluid doesn't have a color set, use its block color or map color rather than white.
- New
/nether_api ambience reloadcommand the reloadsambience.jsonon the server and syncs with all clients.
Bug Fixes:
- Better sorting for Nether API config sub-categories.
- Don't calculate and load initial spawn chunks for non-initial spawn dimensions that permit respawning (fixes #39).
- Due to biome registry order, it was possible for BOP or NetherEx to re-enable the Vanilla hell biome though their own default configs even if the Nether API config weight was set to was 0. This is now fixed.
- Fix biome fog color flickering when crossing between biomes.
- Fix clients referencing Vanilla's nether/end world providers instead of Nether API's if they join a server without loading a singleplayer world first. This fixes the following bugs:
- Nether/End biome fog not working on dedicated servers.
- Nether/End biome music not working on dedicated servers.
- Nether/End using overworld cave sounds (instead of none) on dedicated servers (if the biome doesn't have its own dark ambience sound).
- Probably other stuff too.
- Fix mod credits and description for prism launcher.
- Fix server lag when calculating a random respawn point with a with large spawn radius (fixes #45).
- Fix some log output calls not using
NetherAPI.LOGGER. - Improve entity teleportation particle handling for very large distances (if distance is too large, don't render a trail).
- Improve magma block nether generation (now only replaces netherrack-like blocks or solid blocks with a material of
Material.GROUNDorMaterial.SAND). - Mark non-initial spawn dimensions as initialized during world load (fixes #44 and probably some other random things).
- The
/nether_api listcommand now only outputs to the log, since outputting to the chat made its formatting look weird.
Compatibility Fixes and Improvements:
- BetterNether:
- Add city structure to the
/locatecommand. - Add quartz stained glass to ore dictionary.
- Cacti blocks (agave, barrel cactus, nether cactus) now have the correct entity pathfinding type.
- Fix lucis mushroom generation having incorrect rotation (fixes part of #24). BetterNether RotN/Continuation only, the original BetterNether does not have this issue.
- Fixes for quartz stained glass panes:
- BetterNether RotN/Continuation only, the original BetterNether does not have quartz stained glass panes.
- Add crafting recipes.
- Add models (fixes part of #24).
- Add localization values (BetterNether RotN only).
- Add to ore dictionary.
- Prevent black apples from sometimes generating inside lava.
- Add city structure to the
- Biomes O' Plenty:
- Bramble now has the correct entity pathfinding type.
- Fix BOP replacing all non-lava fluid fog colors with water.
- Fix BOP replacing the world provider's fog (if world provider fog is enabled).
- Nether API now accounts for BOP biome fog color configs for the nether/end fog color calculation.
- New config setting to allow End features added by BOP to generate without the world type set to "Biomes O' Plenty".
- Use different approach for block particle color fix, and resolve various conflicts caused by the old method (fixes #41 and #43).
- CatServer:
- Fix crash (fixes #40).
- NetherEx:
- Fix Coolmar Spider rendering bug.
- Ichor fluid now uses the correct map color.
- New config setting to apply different nether bricks to nether fortress based on its origin biome (false by default) (suggestion from #23).
- New config setting to apply gloomy nether bricks to nether fortresses if its origin biome has a top block of soil sand (false by default).
- New config setting to use "frozen" entity instead of "blaze" entity for arctic abyss nether fortress (false by default) (suggestion from #23).
- Stygian End:
- Cactus now has the correct entity pathfinding type.
API Changes:
- Many internal fields have either been moved to new config settings, or are now exposed through a new
api.util.NetherAPIPropertiesclass. - The API now makes use of
org.jetbrains.annotations.ApiStatusannotations. api.audio.IDarkSoundAmbience:- New
IDarkSoundAmbience.DEFAULT_CHANCE_PER_TICKfield that equals the chance used by Vanilla in modern versions. - New
IDarkSoundAmbience.DEFAULT_LIGHT_SEARCH_RADIUSfield that equals the light search radius used by Vanilla in modern versions. - New
IDarkSoundAmbience.DEFAULT_SOUND_OFFSETfield that equals the sound offset used by Vanilla in modern versions. - New static
moddedmethod that returns a newDarkSoundAmbienceinstance with custom ambience properties. - New static
vanillamethod that returns a newDarkSoundAmbienceinstance with Vanilla ambience properties.
- New
api.audio.IMusicType:- New static
moddedmethod that returns a newIMusicTypeinstance with custom music properties. - New static
vanillamethod that returns a newIMusicTypeinstance with Vanilla music properties (cannot replace current music, and is not local to the current biome).
- New static
api.audio.ISoundAmbience:- New
ISoundAmbience.DEFAULT_CHANCE_PER_TICKfield that equals the chance used by Vanilla in modern versions. - New
ISoundAmbience.ofmethods.
- New
api.biome.IAmbienceBiome:- Make it easier to use this interface by offering new sub-classes.
- New sub-classes:
IAmbienceBiome.Delegate,IAmbienceBiome.Impl, andIAmbienceBiome.Mutable.
api.biome.ILavaTintBiome:- Restore original
getBiomeLavaColormethod from v1.0.0 (removed in v1.3.0), now marked as "override only" and with a default implementation returning -1. - The
getBiomeLavaColormethod from v1.3.0 now has a default implementation pointing to the original method.
- Restore original
api.biome.IMusicBiome:- New interface.
- Allows any implementing biome to have a custom
api.audio.IMusicType(regardless of the dimension!). - Extracts the music logic shared between
api.biome.INetherBiomeandapi.biome.IEndBiome, with a newgetCreativeMusicTypemethod.
api.biome.INoSpawnBiome:- New
denyPlayerSpawnmethod with a default implementation returning true.
- New
api.block.IConditionalParticleColor:- New interface.
- Having your Block implement this allows it to control whether its block particles will be colored.
api.event.BiomeStructureEvent:- New class.
- Contains child event classes to offer control over traits of structures that support the events. Child events are
GetBlockID,PrepareSpawnerLogic, andPrepareSpawnList. - Currently, the only Vanilla structure that supports these events is "Fortress". It's generally recommended for modded structures registered using Nether API to use these events, but it's not required.
api.structure.IBiomeStructure:- New interface.
- Makes it much easier for
StructureStartandStructureComponent StructureComponentinstances to supportapi.event.BiomeStructureEvent.
api.structure.MapGenSpawningStructure:- Internal changes to make it support
api.structure.IBiomeStructure. - Mark
MapGenSpawningStructure.spawnableCreaturesfield as "obsolete". If you want to retrieve creature spawns, use the world-sensitivegetPossibleCreaturesgetter method. If you want to add default creature spawns, use theaddSpawnableCreaturemethod. - New protected methods for ease-of-use.
- Internal changes to make it support
api.util.InitialSpawnUtils:- New class.
- Provides some utility functions relating to initial spawn dimensions.
api.util.NetherAPIProperties:- New class.
- Exposes certain internal Nether API properties in a stable, non-changing way.
api.util.NetherGenerationUtils:- New
getEndIslandHeightValuemethod that exposesChunkGeneratorEnd.getIslandHeightValuefor other mods to use.
- New
api.util.ParticleFactoryUtils:- New class.
- Provides some utility functions relating to
IParticleFactory.
api.world.IAmbienceWorldProvider:- Add 4 static utlity methods to cover all use-cases for
getAmbienceOrFallback, and mark that method as "obsolete".
- Add 4 static utlity methods to cover all use-cases for
Supplementary resources
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:65qOM4nb:VsETicHl"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:65qOM4nb:VsETicHl"
}

