Updated to 1.19.3
Mojang pulled a fast one on modders and unfortunately this is not compatible with 1.19.2. They also managed to rewrite some of their registry loading which has made Cyanide a bit more ineffective, as tracking down invalid references is no longer possible (quite unfortunately).
- Added some additional error reporting to placed features.
- Improved the cases in which feature cycle errors were able to be detected. Previously, this would only work with the "add datapacks" screen.
- Improve performance of data pack detection (the
at: data pack foobar.zip
) error, when no errors are detected. Can result in 2-3x speedups for larger world gen data packs.
Added detection and improved error logging for feature cycles. The new error messages now identify the exact cycle, including the biomes and features by name that they were defined in (a significant improvement on printing the hash codes of the biomes).
Example of a feature cycle using Cyanide:
A feature cycle was found.
Cycle:
At step 7
Feature 'minecraft:patch_fire'
must be before 'minecraft:patch_soul_fire' (defined in 'minecraft:warped_forest' at index 1, 2 and 3 others)
must be before 'minecraft:glowstone_extra' (defined in 'minecraft:warped_forest' at index 2, 3 and 2 others)
must be before 'minecraft:glowstone' (defined in 'minecraft:warped_forest' at index 3, 4 and 4 others)
must be before 'minecraft:patch_crimson_roots' (defined in 'minecraft:soul_sand_valley' at index 2, 3)
must be before 'minecraft:patch_fire' (defined in 'minecraft:soul_sand_valley' at index 3, 4)
The same datapack in Vanilla, 1.18-pre7:
Failed to validate datapack
java.util.concurrent.CompletionException: java.lang.IllegalStateException: Feature order cycle found, involved biomes: [caz@5bf17128, caz@7913a77c]
... followed by a ~50 line long stacktrace ...