# Items

## Global Settings

These settings apply to ALL item types. Keep in mind that if fields are not required, you do NOT need to write them into your json.

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
type | ResourceLocation | Item Type, each come with new different settings. Listed below on this page. | false | palladium:default
max_stack_size | Integer | Max stack size for an itemstack. Range: 1-64 | false | 64
max_damage | Integer | Max damage for an item. Must be greater then or equal 0. | false | 0
creative_mode_tab | ResourceLocation | ID of the creative mode tab the item is supposed to appear in. Fore more precise placements, check the "Custom Items" page on the wiki. Possible values: [advanced_ae:tab, advancedperipherals:advancedperipherals, advgenerators:main, ae2:facades, ae2:main, ae2insertexportcard:ae2insertexportcard, ae2netanalyser:tab_main, ae2wtlib:main, alexscaves:abyssal_chasm, alexscaves:candy_cavity, alexscaves:forlorn_hollows, alexscaves:magnetic_caves, alexscaves:primordial_caves, alexscaves:toxic_caves, alienevo:alien_evolution, alienevo:cosmetic_items, appflux:tab_main, boh:blocks, boh:cryptids, boh:documents, boh:entities, boh:items, boh:monsters, cbc_at:simple_tab, cbcmodernwarfare:base, cccbridge:cccbridge_group, computercraft:tab, create:base, create:palettes, create_bic_bit:bicycles_bitterballen, create_ca:create_ca, create_enchantment_industry:base, create_eureka:main, create_mechanical_spawner:main, create_new_age:create_new_age_tab, create_power_loader:main, create_radar:radar, create_sa:create_stuff_additions_tab, create_the_air_wars:createtawi, create_the_air_wars:createtheairwar, create_the_air_wars:createtwi, create_the_air_wars:ctaww, createaddition:main, createappliedkinetics:ender_transmission, createbigcannons:base, createnuclear:main, draconicevolution:blocks, draconicevolution:items, draconicevolution:modules, drivebywire:base, endofherobrine:endofherobrine_tab, expatternprovider:tab_main, fluxnetworks:tab, glitchmanv:error_not_found, glitchmanv:spawn_eggs, graveyard:group, hammerlib:root, kubejs:tab, kurolib:kuro_lib, midnight:building_blocks, midnight:functional_blocks, midnight:items, midnight:natural_blocks, minecraft:building_blocks, minecraft:colored_blocks, minecraft:combat, minecraft:food_and_drinks, minecraft:functional_blocks, minecraft:hotbar, minecraft:ingredients, minecraft:inventory, minecraft:natural_blocks, minecraft:op_blocks, minecraft:redstone_blocks, minecraft:search, minecraft:spawn_eggs, minecraft:tools_and_utilities, moreburners:moreburners_tab, numina:creative.mode.tab, palladium:palladium_mods, palladium:technology, powersuits:creative.mode.tab, quarryplus:tab, railways:main, railways:palettes, railways:tracks, solarflux:root, sophisticatedbackpacks:main, sophisticatedstorage:main, tardis:main, tardis:roundels, tconstruct:fluids, tconstruct:general, tconstruct:smeltery, tconstruct:tables, tconstruct:tool_parts, tconstruct:tools, tconstruct:world, tfmg:building, tfmg:main, the_deep_void:the_deep_void, theoneprobe:probe, thermal:thermal.blocks, thermal:thermal.devices, thermal:thermal.foods, thermal:thermal.items, thermal:thermal.tools, toms_storage:tab, trackwork:base, valkyrienskies:general, vs_clockwork:general, vs_eureka:general, vs_tournament:main_tab, vscarmor:vscarmor, witherstormmod:creative_tab] | false | /
rarity | String | Rarity of the item, influences the item name's color. Possible values: [common, uncommon, rare, epic, alexscaves:demonic, alexscaves:nuclear, alexscaves:sweet, alexscaves:rainbow] | false | /
is_fire_resistant | Boolean | Whether or not the item will survive being thrown into fire/lava. | false | false
tooltip | Component[] | Tooltip lines. Can be array of primitive strings or more complex text component | false | /
attribute_modifiers | AttributeModifier[] | Attribute modifiers when having the item equipped. You first specify the slot ("all" for every slot, other options: [mainhand, offhand, feet, legs, chest, head]), then an array for different modifiers. Possible attributes: forge:block_reach, forge:entity_gravity, forge:entity_reach, forge:nametag_distance, forge:step_height_addition, forge:swim_speed, glitchmanv:stage, midnight:malignant_armor, minecraft:generic.armor, minecraft:generic.armor_toughness, minecraft:generic.attack_damage, minecraft:generic.attack_knockback, minecraft:generic.attack_speed, minecraft:generic.flying_speed, minecraft:generic.follow_range, minecraft:generic.knockback_resistance, minecraft:generic.luck, minecraft:generic.max_health, minecraft:generic.movement_speed, minecraft:horse.jump_strength, minecraft:zombie.spawn_reinforcements, palladium:destroy_speed, palladium:fall_resistance, palladium:flight_flexibility, palladium:flight_speed, palladium:heroic_flight_type, palladium:jump_power, palladium:leaping, palladium:levitation_speed, palladium:punch_damage, tconstruct:generic.bad_effect_duration_multiplier, tconstruct:generic.bouncy, tconstruct:generic.crouch_damage_multiplier, tconstruct:generic.good_effect_duration_multiplier, tconstruct:generic.jump_boost, tconstruct:generic.knockback_multiplier, tconstruct:generic.protection_cap, tconstruct:generic.safe_fall_distance, tconstruct:player.critical_damage, tconstruct:player.experience_multiplier, tconstruct:player.jump_count, tconstruct:player.mining_speed_multiplier, tconstruct:player.use_item_speed, witherstormmod:evolution_speed, witherstormmod:hunchback_follow_range, witherstormmod:slow_flying_speed, witherstormmod:target_stationary_flying_speed | false | /
food | FoodProperties | Settings to make this item edible. The only required field in this json part is the mob_effect IF you add any effect | false | /

### Example:

    {"max_stack_size":64,"creative_mode_tab":"minecraft:decorations","rarity":"epic","is_fire_resistant":false,"tooltip":["Line 1",{"translate":"example.line2.translation_key","color":"#BCD42A","underlined":true}],"attribute_modifiers":{"all":[{"attribute":"minecraft:generic.max_health","amount":2,"operation":0,"uuid":"f98db25e-91cb-45ca-ba40-5526ff2cd180"}],"chest":[{"attribute":"minecraft:generic.movement_speed","amount":4,"operation":1,"uuid":"3a4df804-2be2-4002-a829-eaf29a629cac"}]},"food":{"nutrition":5,"saturation_modifier":0.6,"meat":false,"can_always_eat":false,"fast":false,"effects":[{"mob_effect":"minecraft:strength","duration":40,"amplifier":1,"ambient":false,"visible":true,"show_icon":true,"probability":1.0}]}}

## Overview

### GeckoLib 4

- GeckoLib Armor

### Palladium

- Default Item
- Block Item
- Armor
- Sword
- Pickaxe
- Axe
- Shovel
- Hoe
- Shield
- Bow
- Crossbow
- Flux Capacitor (Energy Containing Item)
- Projectile Item

## GeckoLib Armor

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
slot | Type | The slot the item will fit in. Possible values: [helmet, chestplate, leggings, boots] | true | /
armor_material | ArmorMaterial | Armor material, which defines certain characteristics about the armor. Open armor_materials.html for seeing how to make custom ones. Possible values: [minecraft:diamond, minecraft:gold, minecraft:leather, minecraft:turtle, minecraft:chainmail, minecraft:iron, minecraft:netherite] | true | /
armor_model | ResourceLocation | Path to geckolib model file. Required bones: [armorHead, armorBody, armorRightArm, armorLeftArm, armorRightLeg, armorLeftLeg, armorRightBoot, armorLeftBoot]. | false | /
armor_texture | TextureReference | Location of the armor texture. Can also use a dynamic texture using #. | false | /
armor_animations | ResourceLocation | ID of the animations that will be used. | false | /
armor_animation_controller | List | Names of controllers for the animation. | false | /
hide_second_player_layer | Boolean | If enabled, the second player layer will be hidden when worn (only on the corresponding body part) | false | false

### Example:

    {"type":"geckolib:armor","slot":"chest","armor_material":"minecraft:diamond","armor_model":"palladium:test_model.geo.json","armor_texture":"example:textures/models/armor/example_armor.png","armor_animations":"palladium:animations/test_animation.animation.json","armor_animation_controller":[{"name":"controller_name","animation":"animation_name","transition_tick_time":10,"triggers":{"trigger_name":"animation_name"}}],"hide_second_player_layer":true}

## Default Item

Default Item Type, you don't need to specify that you want this one, leaving 'type' out of the json will make it fall back to this one.

### Example:

    {"type":"palladium:default"}

## Block Item

Item for a block, duh

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
block | ResourceLocation | ID of the block that this item is for | true | /

### Example:

    {"type":"palladium:block_item","block":"test:test_block"}

## Armor

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
slot | Type | The slot the item will fit in. Possible values: [helmet, chestplate, leggings, boots] | true | /
armor_material | ArmorMaterial | Armor material, which defines certain characteristics about the armor. Open armor_materials.html for seeing how to make custom ones. Possible values: [minecraft:diamond, minecraft:gold, minecraft:leather, minecraft:turtle, minecraft:chainmail, minecraft:iron, minecraft:netherite] | true | /
armor_renderer | ResourceLocation | Location of the armor renderer file. Doesn't need to be specified, it will automatically look for one in a path corresponding to the item's ID: A 'test:item' will look for the armor renderer file at 'assets/test/palladium/armor_renderers/item.json'. | false | /
openable | Boolean | Marks the armor piece as openable. | false | false
opening_time | Integer | Determines the time the item needs for it to be fully opened. Leave at 0 for instant. Needs 'openable' to be enabled to take effect. | false | 0
opened_sound | ResourceLocation | Sound that is played when the suit has been fully opened. | false | /
closed_sound | ResourceLocation | Sound that is played when the suit has been fully closed. | false | /
opening_toggle_sound | ResourceLocation | Sound that is played when opening button has been pressed. | false | /

### Example:

    {"type":"palladium:armor","slot":"chest","armor_material":"minecraft:diamond","armor_renderer":"test:item_renderer","openable":false,"opening_time":10,"opened_sound":"minecraft:item.armor.equip_leather","closed_sound":"minecraft:item.armor.equip_leather","opening_toggle_sound":"minecraft:item.armor.equip_leather"}

## Sword

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
tier | Tier | Tool tier, which defines certain characteristics about the tool. Open tool_tiers.html for seeing how to make custom ones. Possible values: [minecraft:diamond, minecraft:gold, minecraft:stone, minecraft:wood, minecraft:iron, minecraft:netherite] | true | /
base_damage | Integer | Base value for the damage. For reference: swords usually have 3 | true | /
attack_speed | Float | Base value for the attack speed. For reference: swords usually have -2.4 | true | /

### Example:

    {"type":"palladium:sword","tier":"minecraft:diamond","base_damage":3,"attack_speed":-2.4}

## Pickaxe

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
tier | Tier | Tool tier, which defines certain characteristics about the tool. Open tool_tiers.html for seeing how to make custom ones. Possible values: [minecraft:diamond, minecraft:gold, minecraft:stone, minecraft:wood, minecraft:iron, minecraft:netherite] | true | /
base_damage | Integer | Base value for the damage. For reference: pickaxes usually have 1 | true | /
attack_speed | Float | Base value for the attack speed. For reference: pickaxes usually have -2.8 | true | /

### Example:

    {"type":"palladium:pickaxe","tier":"minecraft:diamond","base_damage":1,"attack_speed":-2.8}

## Axe

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
tier | Tier | Tool tier, which defines certain characteristics about the tool. Open tool_tiers.html for seeing how to make custom ones. Possible values: [minecraft:diamond, minecraft:gold, minecraft:stone, minecraft:wood, minecraft:iron, minecraft:netherite] | true | /
base_damage | Integer | Base value for the damage. For reference: axes usually have roughly 6 | true | /
attack_speed | Float | Base value for the attack speed. For reference: axes usually have roughly -3.0 | true | /

### Example:

    {"type":"palladium:axe","tier":"minecraft:diamond","base_damage":6,"attack_speed":-3.0}

## Shovel

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
tier | Tier | Tool tier, which defines certain characteristics about the tool. Open tool_tiers.html for seeing how to make custom ones. Possible values: [minecraft:diamond, minecraft:gold, minecraft:stone, minecraft:wood, minecraft:iron, minecraft:netherite] | true | /
base_damage | Integer | Base value for the damage. For reference: shovels usually have 1.5 | true | /
attack_speed | Float | Base value for the attack speed. For reference: shovels usually have -3.0 | true | /

### Example:

    {"type":"palladium:shovel","tier":"minecraft:diamond","base_damage":1.5,"attack_speed":-3.0}

## Hoe

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
tier | Tier | Tool tier, which defines certain characteristics about the tool. Open tool_tiers.html for seeing how to make custom ones. Possible values: [minecraft:diamond, minecraft:gold, minecraft:stone, minecraft:wood, minecraft:iron, minecraft:netherite] | true | /
base_damage | Integer | Base value for the damage. For reference: iron has -2, diamond has -3 | true | /
attack_speed | Float | Base value for the attack speed. For reference: iron has -1.0, diamond has 0.0 | true | /

### Example:

    {"type":"palladium:hoe","tier":"minecraft:diamond","base_damage":-2,"attack_speed":-1.0}

## Shield

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
use_duration | Integer | Amount of ticks the shield can be actively held for | false | 72000
repair_ingredient | Ingredient | The ingredient needed to repair the shield in an anvil. Can be null for making it non-repairable | false | /

### Example:

    {"type":"palladium:shield","use_duration":72000,"repair_ingredient":{"tag":"minecraft:wool"}}

## Bow

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
velocity | Float | Velocity multiplier for the shot projectile | false | 3.0
inaccuracy | Float | Inaccuracy for the shot projectile | false | 1.0
use_duration | Integer | Amount of ticks the bow can be used for | false | 72000
projectiles | ResourceLocation | Item tag which contains all items that can be shot. By default all Minecraft arrows | false | minecraft:arrows
held_projectiles | ResourceLocation | Item tag which contains all items that can be shot by being in the off hand. Can be left out to fallback to the 'projectiles' option | false | /

### Example:

    {"type":"palladium:bow","velocity":3.0,"inaccuracy":1.0,"use_duration":72000,"projectiles":"minecraft:arrows","held_projectiles":"minecraft:arrows"}

## Crossbow

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
velocity_multiplier | Float | Velocity multiplier for the shot projectile, works differently to the bow one. | false | 1.0
inaccuracy | Float | Inaccuracy for the shot projectile | false | 1.0
use_duration | Integer | Amount of ticks the bow can be used for | false | 72000
projectiles | ResourceLocation | Item tag which contains all items that can be shot. By default all Minecraft arrows | false | minecraft:arrows
held_projectiles | ResourceLocation | Item tag which contains all items that can be shot by being in the off hand. Can be left out to fallback to the 'projectiles' option | false | /

### Example:

    {"type":"palladium:crossbow","velocity_multiplier":1.0,"inaccuracy":1.0,"use_duration":72000,"projectiles":"minecraft:arrows","held_projectiles":"minecraft:arrows"}

## Flux Capacitor (Energy Containing Item)

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
capacity | Integer | Max amount of energy the item can hold | true | /
max_input | Integer | Maximum amount of energy the item can be inserted with during one insertion. Using 0 makes the item not accept any energy | true | /
max_output | Integer | Maximum amount of energy the item can extract with during one withdrawal. Using 0 makes the item not extract any energy | true | /

### Example:

    {"type":"palladium:flux_capacitor","capacity":500000,"max_input":1000,"max_output":1000}

## Projectile Item

If added to the item tag for a bow or a crossbow, this item type can used as ammunitation to shoot pre-defined projectiles.

### Settings:

Setting | Type | Description | Required | Fallback Value
--- | --- | --- | --- | ---
entity_type | ResourceLocation | ID of the entity type that should be shot. Only projectile entity works, like arrows, snowballs, or Palladium's custom projectile | false | palladium:custom_projectile
entity_data | CompoundTag | Custom NBT data for the shot entity | false | /

### Example:

    {"type":"palladium:projectile","entity_type":"palladium:custom_projectile","entity_data":{}}