Skip to content

Conversation

@renovate
Copy link
Contributor

@renovate renovate bot commented Oct 11, 2025

This PR contains the following updates:

Package Change Age Confidence
net.minestom:minestom 2025.10.05-1.21.8 -> 2025.12.20-1.21.11 age confidence

Release Notes

minestom/minestom (net.minestom:minestom)

v2025.12.20-1.21.11

Compare Source

The 1.21.11 branch has now been merged, thanks to all who tested and contributed to it!

Environment Attributes & Timelines

See minecraft.wiki Environment Attributes and Timelines for exact format details.

Environment attributes bring a pretty notable breaking change to the Biome and DimensionType API (many fields have changed, all of the removed fields are now configured via Environment Attributes as well as many new options).

Both Biome.Builder and DimensionType.Builder have a new setAttribute(EnvironmentAttribute<T>, T) to override a single attribute. Biome additionally has an option to modify an inherited attribute (reminder: attributes are merged with their parent) via modifyAttribute(EnvironmentAttribute<T>, Modifier<T, Arg>, Arg). The available modifiers for a given attribute can be observed in the operators argument of the EnvironmentAttributeTypes initializers. For example, when modifying a boolean typed attribute, the BOOLEAN_OPERATORS are available (AND, NAND, OR, NOR, XOR, XNOR).

Timelines are a system for applying Environment Attribute modifiers to a dimension interpolated over time. You can choose the period and add keyframes to apply modifiers over time with configurable interpolation function.

Timelines must be registered in their registry (MinecraftServer#getTimelineRegistry), and then may be added to a DimensionType as a registry tag.

An example of some of these APIs is available below.

var myDimension = DimensionType.builder() .setAttribute(EnvironmentAttribute.SKY_COLOR, new Color(0x77aaff)) .setAttribute(EnvironmentAttribute.CLOUD_COLOR, new AlphaColor(0xFFFF0000)) .setAttribute(EnvironmentAttribute.FOG_START_DISTANCE, 0f) .setAttribute(EnvironmentAttribute.FOG_END_DISTANCE, 1000f) .build(); var myBiome = Biome.builder() // Force the cloud height to be 45 when in this biome no matter the dimension type configuration .setAttribute(EnvironmentAttribute.CLOUD_HEIGHT, 45f) // Enable bees stay in hive ONLY if the parent (dimension) is also enabled .modifyAttribute(EnvironmentAttribute.BEES_STAY_IN_HIVE, EnvironmentAttribute.Modifier.Boolean.AND, true) .build(); var myTimeline = Timeline.builder() .periodTicks(24000) // 1 day .tracks(Map.of( // Move cloud height up by 20 at 12000 and then back to 0 with interpolation EnvironmentAttribute.CLOUD_HEIGHT, new Timeline.Track<>( EnvironmentAttribute.Modifier.Float.ADD, List.of( new Timeline.Keyframe<>(0, 0f), new Timeline.Keyframe<>(12000, 20f), new Timeline.Keyframe<>(24000, 0f) ), EaseFunction.IN_OUT_CUBIC ) )) .build();

This API is probably non-final (Mojang has also labelled this system experimental), expect some tweaks and improvements over time.

New in Minecraft

  • (Zombie) Nautilus, Camel Husk, and Parched are now spawnable with the associated EntityType and NautilusMeta/ZombieNautilusMeta/CamelHuskMeta/ParchedMeta.
  • New data components are USE_EFFECTS, MINIMUM_ATTACK_CHARGE, DAMAGE_TYPE, ATTACK_RANGE, PIERCING_WEAPON, KINETIC_WEAPON, SWING_ANIMATION, and ZOMBIE_NAUTILUS_VARIANT.
  • The new stab attack (also can be used for click detection) can be observed via the new PlayerStabEvent.

Misc Changes

  • Transfers are now supported (#​2484) thanks to @​mudkipdev
  • Absolute and relative block batches now provide their inverse in the callback function (when inverse is calculated) (#​2981) thanks to @​TropicalShadow
  • Removed previously deprecated Auth related classes (MojangAuth, VelocityProxy, and BungeeCordProxy).
  • Minestom now provides the common set of easing functions in the Ease util class.
  • Unsafe-free collections are being used by default, you can switch back to using Unsafe if you notice major regressions via ServerFlag#UNSAFE_COLLECTIONS.

Misc Future Tasks

  • Correctly processing entity passenger/vehicle offsets remain as TODO items from 1.20.6.
  • API to send and automatically wait for code of conduct acceptance from 1.21.9.

Full Changelog: Minestom/Minestom@2025.12.19-1.21.10...2025.12.20-1.21.11

v2025.12.20b-1.21.11

Compare Source

Full Changelog: Minestom/Minestom@2025.12.20-1.21.11...2025.12.20b-1.21.11

v2025.12.19-1.21.10

Compare Source

What's Changed

New Contributors

Full Changelog: Minestom/Minestom@2025.10.31-1.21.10...2025.12.19-1.21.10

v2025.10.31-1.21.10

Compare Source

What's Changed

New Contributors

Full Changelog: Minestom/Minestom@2025.10.18-1.21.10...2025.10.31-1.21.10

v2025.10.18-1.21.10

Compare Source

What's Changed

Full Changelog: Minestom/Minestom@2025.10.11-1.21.10...2025.10.18-1.21.10

v2025.10.11-1.21.10

Compare Source

Minestom 1.21.10

The 1.21.10 (including 1.21.9) branch has now been merged, thanks to all who tested and contributed to it!

Java 25

Minestom tracks the latest LTS version of Java. Since Java 25 has been released, it is now the minimum required version of Java to use Minestom. To use Java 25 you must be on IntelliJ IDEA 2025.2 or higher.

In gradle (Kotlin), you can set the Java version as such:

java { toolchain { languageVersion.set(JavaLanguageVersion.of(25)) } }

New in Minecraft

This is a new segment to these release notes, a high level description of how some of the new Minecraft features appear in Minestom:

  • Mannequins and Copper Golems are now spawnable with the associated EntityType and MannequinMeta/CopperGolemMeta.
    • Note: Some fields from PlayerMeta were moved to the common AvatarMeta between player/mannequin. Offsets may have changed for those editing metadata manually for player entities.
  • Object text components may be used with the adventure API, see Javadocs.
  • The server code of conduct may be sent during configuration with the CodeOfConductPacket, at which point you should block the AsyncPlayerConfigurationEvent until receiving a ClientAcceptCodeOfConductPacket.

Misc Changes

  • The IChunkLoader interface has been renamed to ChunkLoader.
  • Minestom now tracks the server and client connection states separately, and play->configuration state changes only occur between ticks. These changes significantly improve stability when reentering the configuration phase from play. As such, PlayerConnection#getConnectionState has been fatally deprecated in favor #getServerState and #getClientState. When updating, #getConnectionState can be translated directly into #getClientState to preserve prior behavior. However, some logic may benefit from being side-state aware around configuration swaps.
  • Block collision and occlusion shapes are now distinct, they can be accessed with myBlock.registry().collisionShape() and myBlock.registry().occlusionShape() respectively.
  • PlayerChangeHeldSlotEvent#getOldSlot now returns a byte (inline with other methods about player held slots) instead of an int.
  • The ResourceLocation argument now uses an Adventure Key instead of a raw string.
  • Adventure API, Key, and NBT are exported as transitive dependencies of Minestom.
  • Fastutil is no longer exported as a transitive dependency of Minestom.

Misc Future Tasks

  • Receiving transfers and correctly processing entity passenger/vehicle offsets remain as TODO items from 1.20.6.
  • API to send and automatically wait for code of conduct acceptance from 1.21.9.

Full Changelog: Minestom/Minestom@2025.10.05-1.21.8...2025.10.11-1.21.10


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the dependencies Pull requests that update a dependency file label Oct 11, 2025
@renovate renovate bot force-pushed the renovate/net.minestom-minestom-2025.x branch from 180c578 to 9359eb1 Compare October 18, 2025 17:13
@renovate renovate bot changed the title chore(deps): Update dependency net.minestom:minestom to v2025.10.11-1.21.10 chore(deps): Update dependency net.minestom:minestom to v2025.10.18-1.21.10 Oct 18, 2025
@renovate renovate bot force-pushed the renovate/net.minestom-minestom-2025.x branch from 9359eb1 to dc80954 Compare October 31, 2025 07:54
@renovate renovate bot changed the title chore(deps): Update dependency net.minestom:minestom to v2025.10.18-1.21.10 chore(deps): Update dependency net.minestom:minestom to v2025.10.31-1.21.10 Oct 31, 2025
@renovate renovate bot changed the title chore(deps): Update dependency net.minestom:minestom to v2025.10.31-1.21.10 chore(deps): Update dependency net.minestom:minestom to v2025.12.19-1.21.10 Dec 19, 2025
@renovate renovate bot force-pushed the renovate/net.minestom-minestom-2025.x branch from dc80954 to 3b39b60 Compare December 19, 2025 20:53
@renovate renovate bot force-pushed the renovate/net.minestom-minestom-2025.x branch from 3b39b60 to ead5e93 Compare December 20, 2025 05:08
@renovate renovate bot changed the title chore(deps): Update dependency net.minestom:minestom to v2025.12.19-1.21.10 chore(deps): Update dependency net.minestom:minestom to v2025.12.20-1.21.11 Dec 20, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

1 participant