Tags
Creators
Details
0.7.0-preview.1+1.21.11
Compatibility
Changes
We're moving all the way to the end of Minecraft 1.21 with the first preview version for 0.7.0! This preview expands melee weapon items significantly.
A new roadmap has been made alongside this preview showing what to expect and how I will migrate to 26.x as quickly as possible. For a few more details regarding the new future you can look at the roadmap to 26.x!
Changes
Item Behaviour Components
minecraft:useable
- Added an optional
effectsfield.- Its format is the same as the
minecraft:use_effectsdata component. - Provides the
minecraft:use_effectsdata component.
- Its format is the same as the
minecraft:weapon
- Replaced the
may_smashfield with more possibilities in thetypesfield.- Its value is a map with melee weapon types and values.
- See the Melee Weapons section for more information.
So if you had this:
{
"minecraft:weapon": {
"attack_damage": {
"default_damage": 5.0,
"rules": []
},
"attack_speed": 0.15,
"may_smash": true
}
}
You now have to use this instead:
{
"minecraft:weapon": {
"attack_damage": {
"default_damage": 5.0,
"rules": []
},
"attack_speed": 0.15,
"types": {
"minecraft:smashing": {}
}
}
}
Example from the Iron Spear:
{
"minecraft:weapon": {
"attack_damage": {
"default_damage": 2.0,
"rules": []
},
"attack_range": {
"hitbox_margin": 0.125,
"max_creative_reach": 6.5,
"max_reach": 4.5,
"min_creative_reach": 2.0,
"min_reach": 2.0,
"mob_factor": 0.5
},
"attack_speed": 0.2631579041481018,
"damage_type": "minecraft:spear",
"minimum_attack_charge": 1.0,
"swing_animation": {
"type": "stab",
"duration": 19
},
"types": {
"minecraft:kinetic": {
"damage_conditions": {
"max_duration_ticks": 225,
"min_relative_speed": 4.6
},
"damage_multiplier": 0.95,
"delay_ticks": 12,
"dismount_conditions": {
"max_duration_ticks": 50,
"min_speed": 8.0
},
"forward_movement": 0.38,
"hit_sound": "minecraft:item.spear.hit",
"knockback_conditions": {
"max_duration_ticks": 135,
"min_speed": 5.1
},
"sound": "minecraft:item.spear.use"
},
"minecraft:piercing": {
"hit_sound": "minecraft:item.spear.hit",
"sound": "minecraft:item.spear.attack"
}
}
}
}
- Added an optional
attack_rangefield.- Determines the attack range and hitbox margin when trying to attack entities.
- Its format is the same as the
minecraft:attack_rangedata component. - Provides the
minecraft:attack_rangedata component.
- Added an optional
damage_typefield.- Specifies the damage type the weapon deals.
- Its format is an id pointing to a damage type.
- Provides the
minecraft:damage_typedata component.
- Added an optional
minimum_attack_chargefield.- Specifies the minimum attack charge on the attack indicator required to attack with the weapon.
- Its format is a float ranging from 0 to 1 inclusive.
- Provides the
minecraft:minimum_attack_chargedata component.
- Added an optional
swing_animationfield.- Allows a different animation to be used when attacking.
- Its format is the same as the
minecraft:swing_animationdata component. - Provides the
minecraft:swing_animationdata component.
Melee Weapons
Allows a melee weapon to be used in a specific way. Its value is a component map with melee weapon components.
minecraft:kinetic
- Allows this weapon to have a charging attack when using the item.
- Its format is the same as the
minecraft:kinetic_weapondata component.
Example:
{
"minecraft:kinetic": {
"damage_conditions": {
"max_duration_ticks": 225,
"min_relative_speed": 4.6
},
"damage_multiplier": 0.95,
"delay_ticks": 12,
"dismount_conditions": {
"max_duration_ticks": 50,
"min_speed": 8.0
},
"forward_movement": 0.38,
"hit_sound": "minecraft:item.spear.hit",
"knockback_conditions": {
"max_duration_ticks": 135,
"min_speed": 5.1
},
"sound": "minecraft:item.spear.use"
}
}
minecraft:piercing
- Allows this weapon to damage multiple entities along a ray instead of a single entity.
- Its format is the same as the
minecraft:piercing_weapondata component.
Example:
{
"minecraft:piercing": {
"hit_sound": "minecraft:item.spear.hit",
"sound": "minecraft:item.spear.attack"
}
}
minecraft:smashing
- Allows this weapon to attack entities by falling on them.
- Its format is an empty map.
Example:
{
"minecraft:smashing": {}
}
Predicates
Item Predicates
- Removed the
data_componentsfield in favour of vanilla's component predicates.
So if you had this:
{
"data_components": [
"minecraft:bees"
]
}
You now have to use this instead:
{
"predicates": {
"minecraft:bees": {}
}
}
Fixes
- Skeleton-like entities can now use any direct shooter instead of just Bows.
- Piglins and Pillagers can now use any chargeable shooter instead of just Crossbows.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:ZclAAHfk:WJ0J6bil"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:ZclAAHfk:WJ0J6bil"
}

