Apply biomes to minestom instances#504
Merged
duplexsystem merged 25 commits intoPolyhedralDev:dev/7.0-2from Jun 5, 2025
Merged
Apply biomes to minestom instances#504duplexsystem merged 25 commits intoPolyhedralDev:dev/7.0-2from
duplexsystem merged 25 commits intoPolyhedralDev:dev/7.0-2from
Conversation
Updated method names to new documentation and changed minestom versioning. - Paper Build version was changed as I had issues building at all with the snapshot version. So it was changed to a generic version but everything still builds fine.
…ing issues to load the world. EntityType.fromId(Integer.parseInt(id)); to delegate = EntityType.fromKey(id);
…ng pulling functionality out of a common existing function
…dependency injection for better modularity Renamed `MinestomPlatform` to `TerraMinestomPlatform` and updated `TerraMinestomWorldBuilder` to utilize the platform instance directly. Simplified world builder initialization and improved code clarity.
Updated the Minestom library to version 1_21_5-69b9a5d844 and migrated from the deprecated `ItemComponent` API to `DataComponents`. This ensures compatibility with the latest changes and improves maintainability.
Replaced 3D array with a 1D array for chunk block storage and adjusted related logic to use calculated indices. Updated block type comparison to use state IDs instead of block IDs for consistency and correctness.
Replaced "Custom" with "UserDefined" in biome classes, factories, and references for consistency and clarity. Updated relevant imports, method signatures, and internal logic to align with the new terminology. This change improves readability and better represents the purpose of these biome-related components.
Introduced a `doFineGrainedBiomes` flag to allow fine-grained biome control per chunk. This helps mitigate client disconnection issues caused by a Minestom biome encoding bug, with a plan to deprecate once the bug is resolved. Adjusted relevant classes and the example implementation to support this feature.
Introduce the `MinestomBlockEntity` class to represent block entities and hook into the block system. Update `DefaultBlockEntityFactory` to create `MinestomBlockEntity` instances and adjust `TerraMinestomWorldBuilder` initialization for factory injection. These changes improve extensibility and block entity management.
# Conflicts: # buildSrc/src/main/kotlin/Versions.kt
This commit updates the Minestom dependency to the latest tagged version. Ensures compatibility with new features and fixes in the updated Minestom release.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pull Request
Description
Terra supports using custom biome information to make the generated world even more beautiful. Now, this is supported with Minestom
Note: There is currently a minestom bug with biome serialization. To counteract, one can set the feature flag
doFineGrainedBiomeson your local world builder. This will be removed once the corresponding bug is fixed. Only while supplies last!Note, this depends on the PR by @ckyuri, please merge their PR first.
For the eager people: To install an early-access version, follow the guide in my blog with the version number
7.0.0-BETA+7f324bd72.Changelog
Checklist
Mandatory checks
ver/prefix)or is a branch that is intended to be merged into a version branch.
CONTRIBUTING.mddocument in the root of the git repository.
Types of changes
Compatibility
Documentation
Testing
Licensing
release it under GPLv3. - Except the code by ckyuri, that's their code
released under GPLv3 or a compatible license.