For regular players:
- Added a new island world preset.
- This preset is experimental. Please report any bugs you find with it!
- Known issues:
- Worldgen is slower in this world type compared to the normal Big Globe world type.
- Fixed nether fungi not growing into Big Globe trees when bonemealed.
- Some structures which spawn on top of lakes will now have hills below them instead of floating in mid-air.
- Some structures are now more likely to spawn in hilly areas.
- Fixed recipes involving balls of string.
- Reduced sounds from rivers again.
- Strongholds now generate below caves instead of inside caves.
- Fixed bug causing a bunch of images to be created in .minecraft/bigglobe_dependency_graphs when the config option which controls this is disabled.
- Fixed end crystals spawned during worldgen showing the base plate.
For data pack makers:
- Scripts can now be declared in files in addition to being embedded in json.
- Scripts can now include code from multiple files.
- Chunk generators can now load world traits from files provided by multiple data packs.
For regular players:
- Possibly fixed some worlds and dimensions erroring out.
- Not sure if this was an issue in the previous version or if this bug was introduced after that, but either way, it's fixed now.
- Fixed several issues with Voxy.
For data pack makers:
- Added a new trait system for chunk generators to share information with other scripts.
- Data packs with custom world types may need to implement the same traits that built-in world types provide.
- Added
script_chance
decision tree type. - Scripts can now create constant literal List's, Set's, and Map's.
- The collection will only ever be created once, not once every time the script runs.
- Iteration order is the same as the creation argument order.
- Scripting: integer numeric literals with no suffix no longer default to being less precise than int. Use the new 'y' or 'Y' suffix for byte literals, and 's' or 'S' for shorts.
- For backwards compatibility, the 'i' and 'I' suffixes will still work too.
- Fixed another bug causing some worlds to generate incorrectly... again. This bug was in the same place as the bug I fixed in the previous version. Hopefully that logic is actually correct this time.
- Hyperspeed generation for Voxy has evolved into... ludicrous speed!
- Fixed compatibility with the world preview mod.
- Sped up world generation somewhat.
- Scripting changes:
- Many scripts now have access to images and other raw data provided by data packs.
- The parser is now more pedantic about ambiguous overload function and method calls.
- If a call is ambiguous, you will now get a compile error which lists all the things you might've meant to call.
- Cast your arguments to exactly match the thing you want to call in order to clarify to the compiler what you want to call.
- Fixed bug that could cause some custom worlds to generate incorrectly in some cases.
- This doesn't appear to affect built-in big globe worlds, which is why it managed to sneak past my testing, but it certainly has the potential to affect all worlds.
- Fixed some bugs in the scripting engine.
- Updated Sodium compatibility code to support both 0.5.x and the new 0.6.0 beta.
Changes for regular players:
- Ported to MC 1.21 and MC 1.21.1.
- Hyperspeed generators for Distant Horizons now require DH 2.2, but at the time of writing this, that version of DH hasn't been released yet. Please be patient while we all wait for the next version of DH to be released.
- Regular generators should work just fine with all versions of Distant Horizons.
- There is now only one seed per world. In older 4.x versions, there were actually two seeds; one derived from the other. This was a dumb decision in retrospect, and I'm fixing it now. Unfortunately, fixing this comes at a cost:
- The overall shape of terrain should be the same as in older versions.
- Ores and rock layers will probably be different, and have mismatches on the border of previously generated chunks.
- Bedrock, random cobblestone in the ground, and the blocks in the core gradient will generate at different positions in this new version compared to old versions, even if you used the same seed in both versions. But you probably won't notice because it's completely random anyway.
- Features like trees might spawn differently or in different places, but this might also depend on which direction you approached the chunk from in the first place, and these will not be cut off at the border between old chunks and new chunks, so you probably won't notice this either.
- Structures like mineshafts or geodes might spawn differently or in different places, and might be cut off at the border between old chunks and new chunks, depending on the structure in question.
- Fixed bug where 3D noise would sometimes not use the world seed at all (either of them).
- This affects void clouds, the core, and the deep dark. These will have mismatches on the border of previously generated chunks.
- Fixed animals not spawning during worldgen.
- Added frozen and sandy cave themes.
- Existing cave systems will have mismatches on the border between old chunks and new chunks.
- Void clouds now avoid generating too close to end cities.
- Made ancient cities less common.
- I don't actually know how this will affect any ancient cities that are near the border between old chunks and new chunks. You might get overlapping cities, cities that are cut-off, or cities that spawn normally.
- Fixed some surface structures sometimes spawning where they shouldn't.
- Possibly sped up script compilation somewhat.
Changes for data pack makers:
- Added
multi_state_3d
andscripted
layer types. - Added derivative grids. These compute analytical derivatives of noise for you.
- More scripts now have access to grids declared in the
/data/modid/bigglobe_noise_sources/
folder.- The benefit of this is that you can sample them with arbitrary seeds and at arbitrary locations, not just the seed and position of the current column.
- Column entry scripts are not included in this, because I need to figure out how to implement try/finally in runtime-generated bytecode first.
- Added higherInt(), higherLong(), lowerInt(), and lowerLong() functions for scripts.
- Added multi-declaration blocks for scripts.
- Added cast-and-compare operators for scripts.
- Column values can now reference other column values in the same folder or sub-folders more easily.
- The "Reload Big Globe chunk generators from mod jar" config option was removed, and now acts as if it's always enabled.
- If you are making a world preset, you must remove the "reload_dimension" property from your scripted chunk generators, or else they will be overridden by the default ones.
- All types of scripts which have a "seed" variable exposed will now always get the same value from it for the same world. This is very much related to the fact that worlds only have one seed now.
- Added debug command which turns voxy into a 3D graphing calculator.