
Itematic
A mod that adds data-driven items to the game, and much more!
599
36
Список изменений
This preview version moves crafting remainders to recipes and adds more actions.
For a few more details regarding the split and future you can look at the roadmap to 1.21!
Changes
Items
- Added the
minecraft:before_death_holderitem event.
Item Behaviour Components
- Removed the following item behaviour components:
minecraft:life_saving- This has been replaced with the new
minecraft:before_death_holderitem event. - To replicate the previous behaviour, the
minecraft:clear_status_effectsandminecraft:add_status_effectsactions can be used. - Note that this means that the
minecraft:death_protectiondata component is unused as a result. - The reason this was moved to an item event is to support the newly added 'consume effects' from the
minecraft:death_protectiondata component from vanilla in 1.21.3, which the action system accommodates for with even more possibilities.
- This has been replaced with the new
minecraft:recipe_remainder- This has been replaced by remainders in recipe ingredients directly and the new remainder field in the minecraft:fuel item behaviour component.
minecraft:useable_on_fluid- This has been replaced in favour of passes in their respective behaviour components.
minecraft:consumable
- Moved the
result_itemfield toremainderinminecraft:useable.
minecraft:entity
- Added an optional
passesfield, which is a list of strings that allows its user to place an entity given a certain context.block: Allows the user to place the entity on a block.fluid: Allows the user to place the entity on a fluid.
- Its default value is
["block"].
Example:
{
"allow_item_data": true,
"entity": {
"type": "minecraft:pig"
},
"passes": [
"block",
"fluid"
]
}
minecraft:food
- Removed the
effectsfield. - This should now be applied with the
minecraft:consume_itemorminecraft:eat_itemitem event combined with predicates and the newminecraft:add_status_effectsaction.
So if you had this:
{
"components": {
"minecraft:food": {
"effects": [
{
"effect": {
"id": "minecraft:hunger",
"duration": 600,
"show_icon": true
},
"probability": 0.8
}
],
"nutrition": 4,
"saturation": 0.8
}
}
}
You now have to use this instead:
{
"components": {
"minecraft:food": {
"nutrition": 4,
"saturation": 0.8
}
},
"events": {
"minecraft:consume_item": {
"action": {
"type": "minecraft:add_status_effects",
"effects": [
{
"id": "minecraft:hunger",
"duration": 600,
"show_icon": true
}
],
"entity": "this"
},
"requirements": {
"conditions": {
"chance": 0.8,
"condition": "minecraft:random_chance"
},
"context": {
"entity": "this",
"position": "this"
}
}
}
}
}
minecraft:fuel
- Added an optional
remainderfield, which is the item stack to leave when used as a fuel. - This replaces the
minecraft:recipe_remainderitem behaviour that was used previously for this.
Example:
{
"remainder": {
"id": "minecraft:bucket",
"count": 1
},
"ticks": 20000
}
minecraft:useable
- Added an optional
remainderfield, which is the item stack to leave when finished using, whether instantaneous or over a specified duration.
Example:
{
"animation": "eat",
"remainder": {
"id": "minecraft:bowl",
"count": 1
},
"ticks": {
"type": "minecraft:constant",
"amount": 32
}
}
- Changed the way the use duration in the
ticksfield works: - If not specified, the item will be used instantly instead of being used indefinitely.
- To reproduce the previous behaviour, use the new
minecraft:indefiniteuse duration provider. - This makes the field in the behaviour component the same as the data component in all cases.
- A positive integer can still be used as a direct usage of
minecraft:constant.
So if you had this:
{
"minecraft:useable": {
"animation": "block"
}
}
You now have to use this instead:
{
"minecraft:useable": {
"animation": "block",
"ticks": {
"type": "minecraft:indefinite"
}
}
}
Data Components
- Removed the following data components:
minecraft:immune_to_damage- This has been replaced by
minecraft:damage_resistantfrom vanilla. - Entries are datafixed properly.
- This has been replaced by
minecraft:use_duration
- You now no longer specify a
ticksfield, making it consistent with the way it is used in theminecraft:useablebehaviour.
So if you had this:
{
"ticks": {
"type": "minecraft:constant",
"amount": 32
}
}
You now have to use this instead:
{
"type": "minecraft:constant",
"amount": 32
}
- You can no longer specify an empty map to specify an indefinite use duration and you must use the
minecraft:indefiniteuse duration provider instead.
So if you had this:
{}
You must now use this:
{
"type": "minecraft:indefinite"
}
- A positive integer can still be used as a direct usage of the
minecraft:constantuse duration provider.
minecraft:weapon_attack_damage
- When determining whether to add the base
minecraft:attack_damageattribute or not, it now defaults totrueinstead offalseand must be explicitly set byrulesaccordingly.
Use Durations
- Added the following use durations:
minecraft:indefinite
minecraft:indefinite
- Always uses the item indefinitely.
- Has no additional fields.
Actions
- Added the following actions:
minecraft:add_status_effects
minecraft:add_status_effects
- Adds status effects to an entity.
- The action is unsuccessful if the entity does not exist, is not a living entity or if no effect is added.
- Fields:
effects: A list of status effects. The effects to apply to the entity.entity: An action context parameter. The entity to target.
Example:
{
"type": "minecraft:add_status_effects",
"effects": [
{
"id": "minecraft:regeneration",
"amplifier": 1,
"duration": 100,
"show_icon": true
},
{
"id": "minecraft:absorption",
"duration": 2400,
"show_icon": true
}
],
"entity": "this"
}
Recipes
- Added remainders to ingredients.
- Replaces the
minecraft:recipe_remainderitem behaviour component. - The existing format still works.
- Currently only in use for shaped and shapeless recipes.
- Fields:
items: An ingredient entry or list of ingredient entries.remainder: An optional item stack. The item stack to leave when the ingredient is consumed.
- Replaces the
Example:
{
"items": {
"item": "minecraft:milk_bucket"
},
"remainder": {
"id": "minecraft:bucket",
"count": 1
}
}
Файлы
Itematic-0.5.0-preview.1+1.21.1.jar(2.34 MiB)
ОсновнойМетаданные
Канал релиза
Beta
Номер версии
0.5.0-preview.1+1.21.1
Загрузчики
Fabric
Версии игры
1.21–1.21.1
Загрузок
16
Дата публикации
1 мес. назад