Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
MythicEnchants MythicEnchants
  • Project overview
    • Project overview
    • Details
    • Activity
  • Issues 7
    • Issues 7
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Operations
    • Operations
    • Metrics
    • Incidents
  • Analytics
    • Analytics
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Create a new issue
  • Issue Boards
Collapse sidebar
  • MythicCraft
  • MythicEnchantsMythicEnchants
  • Wiki
  • Custom Enchantments

Last edited by Phillip Nov 30, 2024
Page history

Custom Enchantments

MythicEnchantments allows you to create fully functional enchants using the Mythic Skill System. Details of this system can be found on the Mythic Manual.

Getting started creating a new enchantment in MythicEnchants is fairly straight-forward! All custom enchantments are located in the plugins/MythicEnchants/CustomEnchantments folder, and to add a new one you just create a new file named after your enchant (or add it to an existing file).

Inside each file, a custom enchantment can look like this:

burning:
  Display: "<red>Burning</red>"
  SupportedItems:
    - "diamond_sword"
    - "netherite_sword"
  Weight: 2
  MaxLevel: 3
  MinCost:
    Base: 1
    AdditionalPerLevelCost: 0
  MaxCost:
    Base: 4
    AdditionalPerLevelCost: 0
  Skills:
    - ignite{ticks=100} @target ~onAttack ?enchantleve{level=1}
    - ignite{ticks=200} @target ~onAttack ?enchantleve{level=2}
    - ignite{ticks=300} @target ~onAttack ?enchantleve{level=3}

This enchantment would set whatever you hit on fire, just like Fire Aspect! Why did we remake Fire Aspect? Nobody knows! But in this case, it will set things on fire for 100 ticks per level.

Most mechanics, conditions, and triggers from Mythic can be used in enchantments - almost anything that makes sense will work how you'd expect. MythicEnchants also adds a bunch of new tools you can use that are specific to enchantments!

  • Enchantment Config
    • Internal Name
    • Display
    • MaxLevel
    • Weight
    • MinCost and MaxCost
    • AnvilCost
    • Options
    • ValidSlots
    • SupportedItems
    • PrimaryItems
    • ConflictingEnchants
    • Skills
  • Examples

Enchantment Config

When creating an enchantment these are the settings you can use.

Internal Name

This string will be how your enchant will be referenced internally in MythicEnchants and can be any name you like. Must be a unique name and does not clash with other MythicEnchant names, NO SPACES ALLOWED. The name will be lowercased by convention.

example_enchant:

Display

This is how you'd like the enchantment to be displayed on the item's lore.

example_enchant:
  Display: "<red>Burning</red>"

MaxLevel

The maximum level your enchantment can be. The value must be between 1 and 255 (inclusive). Defaults to 1.

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3

Weight

Sets how common this enchantment will appear when enchanting. The higher the number, the more common the enchantment. The value must be between 1 and 1024 (inclusive).

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  Weight: 200

MinCost and MaxCost

Sets the minimum or maximun XP cost for this ennchantment when offered on the Enchanting Table. The final cost is calculated using the formula base + additionalPerLevel * (enchantLevel - 1).

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  Weight: 200
  MinCost:
    Base: 10
    AdditionalPerLevelCost: 5
  MaxCost:
    Base: 20
    AdditionalPerLevelCost: 5

AnvilCost

Sets the XP cost when using an anvil to enchant an item. The cost is halved when using a book, and the final cost is multiplied by the enchantment's level.

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  Weight: 200
  MinCost:
    Base: 1
    AdditionalPerLevelCost: 0
  MaxCost:
    Base: 3
    AdditionalPerLevelCost: 4
  AnvilCost: 3

Options

This is a special field which comes with numerous sub-options, like determining if the enchant should be offered in the enchanting table, if the enchant should be generated in random loots, and many more. A list of available enchant options can be found in the Enchantment Options page

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  Options:
    Cursed: true

ValidSlots

The slots the item can be in for the enchantment to be effective.
any, mainhand, offhand, head, chest, legs, feet, armor, and body (For Horses and Wolves)

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  ValidSlots:
  - mainhand
  - offhand

SupportedItems

A list of items that can be enchanted with this enchantment. Can take a list of items, if the config is set as a list, or an item tag if not.

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  ValidSlots:
    - mainhand
  SupportedItems:
    - "diamond_sword"
    - "iron_sword"
example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  ValidSlots:
    - mainhand
  SupportedItems: "swords"

PrimaryItems

Item types that this enchantment appears on the Enchanting Table. Must be a subset of supported items. Can take a list of items, if the config is set as a list, or an item tag if not.

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  ValidSlots:
    - mainhand
  SupportedItems: "swords"
  PrimaryItems:
    - "diamond_sword"
    - "iron_sword"

ConflictingEnchants

A list of enchantments this enchant is incompatible with. Can take a list of enchantments, if the config is set as a list, or an enchantment tag if not.

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  ValidSlots:
    - mainhand
  SupportedItems:
    - "diamond_sword"
    - "iron_sword"
  ConflictingEnchants:
    - "minecraft:fire_aspect"
    - "mending"
example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  ValidSlots:
    - mainhand
  SupportedItems: "swords"
  ConflictingEnchants: "exclusive_set/damage"

Skills

Using Mythic skills and mechanics you are able to apply countless effects and abilities while using your item. Visit the MythicMobs Skills Page to read more.

example_enchant:
  Display: "<red>Burning</red>"
  MaxLevel: 3
  ValidSlots:
    - mainhand
  SupportedItems: "swords"
  Skills:
    - message{m="Hello world"} @world ~onJump

Examples

A replica of Fire Aspect which sets your target on fire when you attack it.

burning:
  Display: "<red>Burning</red>"
  SupportedItems:
    - "diamond_sword"
    - "netherite_sword"
  Weight: 2
  MaxLevel: 3
  MinCost:
    Base: 1
    AdditionalPerLevelCost: 0
  MaxCost:
    Base: 4
    AdditionalPerLevelCost: 0
  Skills:
    - ignite{ticks=100} @target ~onAttack ?enchantleve{level=1}
    - ignite{ticks=200} @target ~onAttack ?enchantleve{level=2}
    - ignite{ticks=300} @target ~onAttack ?enchantleve{level=3}

If you have Mythic Premium, you can also simplify things with math:

  Skills:
  - ignite{ticks="100 * <skill.var.enchant-level>"} @trigger ~onAttack
Clone repository

Manual

  • Home
  • Changelogs
  • Commands and Permissions
  • FAQ / Common Issues
Usage
  • Installation & Setup
  • Premade Enchantments
  • Creating Custom Enchantments
  • Options
  • Rarities
Custom Enchantments
  • Mechanics
  • Targeters
  • Triggers
  • Conditions
  • Placeholders