nether added technic support on April 29, and technic added nether support on May 1, resulting in them both optionally depending on each other and becoming incompatible with each other.
To resolve this, technic will keep the nether support, the compressor recipe has been moved into technic (https://github.com/minetest-mods/technic/pull/644), and this commit reverts the technic-related parts of a6d1f55f, removing the technic dependency.
The mantle and geode skys were working correctly, but not the sky in the main nether area - it would always switch back to stars.
Issue was found by process of elimination, so I don't know why climate_api doesn't accept "nether:nether" as a unique weather name identifier, or how this issue wasn't noticed earlier (did something change?).
climate_api's api_doc.md file says the name "should be prefixed with the mod's name in a way that could look like ``mymod:awesome_weather``. This name should only be used once."
so perhaps names of the form "mymod:mymod" cause issues? (I don't plan on figuring this climate_api behavior out though)
* bug fixes
Fixes wrong new_y_min when shift_existing_biomes() shifts a biome below the nether floor,
find_surface_anchorPos() no longer assumes y=0 will be outside the nether.
Nil-reference fixed when a mods tries to register a portal after mods are finished loading, but the portal shape+material was already registered by another mod.
* Make ShiftExistingBiomes available via API
makes the ShiftExistingBiomes function available to other mods via the nether global, since it's not a simple function and biomes would also need to be shifted if another mod wants to add a second nether layer.
* Allow layers to extend the depth of nether effects
Mods can set/lower nether.DEPTH_FLOOR_LAYERS when creating a layer under the nether. This allows multiple layer mods to know where their ceiling should start, and to be included in the effects which only happen in the nether.
* document nether API
More of a tentative interop guide than an API.
Use snake_case for API functions.
Add more appropriate/atmosphere distance fog to the nether, via climate_api mod to avoid conflicting with other mods.
Any game or server with climate_api mod installed will be expecting climate_api to take control of sky values.
Adds a magma oceans region to the nether outside the existing nether caverns, which can be reached via tunnels.
Other misc changes:
* chatcomment nether_whereami, a debug aid for knowing which perlin-noise region you are in
* Nether ores no longer obtainable on the ceiling
* Move crafts into crafts.lua
* Add steam to lava cooling, and play bubbling lava upon death by lava
* Add cracked netherbrick
a decorative node which can only be obtained from dungeons or structures
I encourage someone to improve or replace the cracked netherbrick texture. For copyright purposes it's currently a derivative work (by me, 2020) from nether_brick.png, which is licensed under CC BY-SA 3.0 by PilzAdam, so it can fall under the "All other media" PilzAdam's credit in readme.md rather than need its own entry.
* textures for new tool items
* axe, shovel, pick, sword based on nether
* run also tools.lua
* Textture for Compressed Netherbrick
* new node "Compressed Netherbrick"
* define how to craft "Compressed Netherbrick"
* change recipe for NetherLump and remove old node
* Delete nether_nether_compressed.png
Portals will now fail to ignite instead of defaulting to a fallback depth of (starty - 256) when no unprotected target can be found.
The search depth is also increased from (starty - 256) to (starty - 646)
This is to properly handle large protected areas that are sometimes set up at spawn - see issue #26
* respect protected areas when spawning remote portals
* Use portal_shape to determine area to check for natural/protected
* Log warning on deprecated function call
Prevents the c++/native mapgen from placing ores or decorations (when useBiomes is true).
The biomes-based implementation is faster, more deterministic, and keeps its dungeons, but requires MT 5.1 features to work.
Also
* Glowstone & Netherrack stalactites
* Include the new decorations in mapgen_nobiomes
* Decorate dungeons - Add windows and glowstone "chandeliers" to some rooms
* Configurable Nether floor and ceiling depths
The second argument of minetest.settings:get_bool is the default value (for when the configuration value is not set). Remove the superfluous `or nether.NETHER_REALM_ENABLED` which rendered the config option useless, because it always forced the variable to true.
32affba6 re-registered stairs which have already been registered 20 lines earlier in the code, and registered them as "brick" causing the netherbrick stairs to replace Minetest's default:brick stairs. The rest of 32affba6 was already unrolled in 7a0e52da, but the stairs bug remained.
Currently proof of concept: Removes wormhole colour from .png texture and specifies it through MT API instead. The post_effect_color may call for registering a separate node per portal colour.
Palette 0 will have to be the traditional portal magenta (instead of 0 being black) for map compatibility with mod when colour was in the texture and not param2.
While it's rather cute having portals that share parts of their frame with other portals, the way the nether mod implemented portals means a node being part of more than one portal enables a family of bugs.
Igniting a portal now extinguishes any portal that was using nodes now taken by the newly ignited portal.
Allows dev and testing/debugging to focus on one (shape or behavior) without getting mixed up in the other, will also enable different portal shapes later on. Other adjustments:
* Reuse/reignite an existing portal or portal frame if there is one at the remote destination, rather than the area being overwritten by a slightly offset portal schematic.
* Create remote portals in a matching orientation to the local portal.
* Preserve player position & facing relative to portal when traveling through wormhole (even if portals are at 90°)
* Players no longer bounce several times after teleporting
* Player is not teleported until after the portal at the other end is confirmed/built
32affba6 re-registered stairs which have already been registered 20 lines earlier in the code, and registered them as "brick" causing the netherbrick stairs to replace Minetest's default:brick stairs. The rest of 32affba6 was already unrolled in 7a0e52da, but the stairs bug remained.