HomeJavaModsOp Anvils
Op Anvils
Op Anvils
What is OpAnvils
Op anvils is a plugin designed to allow players to use anvils to combine enchantment past their normal Minecraft limits. I created this plugin with a vision that it could be used on Op Prison and Op Factions servers to allow players to earned high leveled enchantments through in-game effort.


Features
CONFIGURABLE - Individual Enchantment limits can be set in the config to create a unique player experience

PERMISSIONS - With the switch of a config value, enchantment limits can be set per player using permission nodes. With this feature, higher ranked players may be allowed higher enchantment limits.

ENCHANTMENT ALIASES - Set alternate names for each enchantment that can be used in commands and configs to refer to set enchantment. Instead of typing DIG_SPEED, efficiency or any other custom alias can be used to refer to the efficiency enchantment.

ADMIN PANEL - A simply clean inventory GUI that displays information about all enchantments with quick buttons to reload the plugin and player permission limits

DRAG N DROP - The plugin can be dropped into the plugin folder with out any dependencies.

Permissions
opanvils.use - Allows the player to use the features of Op Anvils

opanvils.bypass - Allows the player to bypass all enchantment limits

opanvils.admin - Allows access to the Op Anvils Admin Panel

opanvils.enchantment.* - Similar to opanvils.bypass except it only works when global limits are disabled

opanvils.* - Gives access to all of the plugin's features

opanvils.enchantment.<echantment>.<level> - Sets the enchantment limit for enchantment <enchantment> at level <level>. This is only used when global limits disabled. Ex. opanvils.enchantment.protection.11

Commands
/opanvils - Get the pluign version and author
/opanvils ? - Get the command help menu
/opanvils gui - Open the Admin Panel
/opanvils reload - reloads the plugin
/opanvils mode - Gets what permission mode is used
/opanvils enchantment <enchantment> - Find more information about an enchantment

/opanvils check <player> - Checks the enchantment limits for the player

Spoiler: Config.yml
Code (Text):
########################################################################################################
#                                                                                                      #
#                                     OP Anvils Configuration File                                     #
#                                                                                                      #
#                                             By Varmetek                                              #
########################################################################################################





#  Should there be server mandated max levels?
# If this is disabled, player permission Limits will be used
#
# When using permission limits, players will need to have a permission node which gives them
# a personal maximum enchantment limit

# An example permission for the protections enchantment is
# opanvils.enchantment.protection_enviromental.15
# Changing a players permission limits will require a reload of the plugin
# This can be done with /opa reload perms
#
# This node allows for the player to combine the protection enchantment until level 15
#
# Players with the opanvils.bypass permission will not be affected by any limits;
# It is recommended that this is true
useGlobalLimits: true




#The server custom enchantment limits
# By default all of the enchantment limits are set to their vanilla limits
# You can use the alternate names in aliases.yml here
#
# Values that are -1 or lower are set to default
# Values that are set to 0 cannot be combined at all

globalLimits:

  #Regular Protection
  protection: -1

  #Fire protection
  fire protection: -1

  #Feather falling
  feather falling: -1

  #Blast Protection
  blast protection: -1

  #Projectile Protection
  protectile protection: -1

  #Respiration
  respiration: -1

  #Aua Affinity
  aqua affinity: -1

  #Thorns
  THORNS: -1

  #Depth Strider
  DEPTH_STRIDER: -1

  #Frost Walker
  FROST_WALKER: -1

  #Curse of Binding
  curse of binding: -1

  #Sharpness
  sharpness: -1

  #Smite
  smite: -1

  #Bane of Arthropods
  bane of arthropods: -1

  #Knockback
  KNOCKBACK: -1

  #Fire Aspect
  FIRE_ASPECT: -1

  #Looting
  LOOTing: -1

  #Sweeping Edge
  SWEEPING_EDGE: -1

  #Efficiency
  efficiency: -1

  #Silk Touch
  SILK_TOUCH: -1

  #Unbreaking
  DURABILITY: -1

  #Fortune
  fortune: -1

  #Power
  power: -1

  #Punch
  punch: -1

  #Flame
  flame: -1

  #Infinity
  ARROW_INFINITE: -1

  #Luck of the Sea
  luck of the sea: -1

  #Lure
  LURE: -1

  #Mending
  MENDING: -1

  #Curse of Vanishing
  VANISHING_CURSE: -1




 

Spoiler: Aliases.yml
Code (Text):
#
#
# Enchantment Aliases
#
# This file can be changed allow for alternate names for each enchantment.
# I would rather type in protection than PROTECTION_ENVIROMENT when doing a command
#
# The default aliases are taken from the vanilla ids given from the Minecraft wiki
# You can find those here https://minecraft.gamepedia.com/Enchanting
#
# If you want to add your own aliases you have to get the spigot name for the enchantment.
# This can be found here https://hub.spigotmc.org/javadocs/spigot/org/bukkit/enchantments/Enchantment.html
#
# If an enchantment is not here that could mean one of many things:
#  1) I forgot to update this file
#  2) The Bukkit name is the same as the Minecraft vanilla id
#
#
# A few things to note: numbers and other special characters will be ignored and spaces will be replaced with underscores.
#
#
#                          Have fun :D
#



PROTECTION_ENVIRONMENTAL: [protection]

PROTECTION_FIRE: [fire protection]

PROTECTION_FALL: [feather falling]

PROTECTION_EXPLOSIONS: [blast protection]

PROTECTION_PROJECTILE: [projectile protection]

OXYGEN: [respiration]

WATER_WORKER: [aqua affinity]

BINDING_CURSE: [curse of binding]

DAMAGE_ALL: [ sharpness]

DAMAGE_UNDEAD: [smite]

DAMAGE_ARTHROPODS: [bane of arthropods]

LOOT_BONUS_MOBS: [looting]

SWEEPING_EDGE: [sweeping]

DIG_SPEED: [efficiency]

DURABILITY: [unbreaking, durability]

LOOT_BONUS_BLOCKS: [fortune]

ARROW_DAMAGE: [power]

ARROW_KNOCKBACK: [punch]

ARROW_FIRE: [flame]

ARROW_INFINITE: [infinity]

LUCK: [luck of the sea]

VANISHING_CURSE: [curse of vanishing]



 

Setup
To get started just put the plugin into the plugins folder. The plugin requires Java 8 and works on Spigot versions 1.9+

In the config.yml under "globalLimits", there will be a list of enchantments with a value associated with it. Those numbers are the limits for that respective enchantment. A number that is less than or equal to -1 will set the enchantment limit to its default Minecraft value. A value of 0 will disable the enchantment from appearing on anvil results.

The aliases.yml is a great place to create custom names for the enchantments whose Bukkit names are hard to type. This alternative names can be used in the config.yml to or in permissions nodes to set limits.

Spoiler: Media
2017-08-16_22.13.22.png 2017-08-17_00.00.16.png 2017-08-17_00.01.11.png 2017-08-17_00.02.10.png

**IMPORTANT NOTES**
When changing player permissions run /opa reload to apply the changes.



Commands

Plugin details

Read from the plugin's own plugin.yml.

Quick facts

Install steps are the general flow for this file type — How to install Minecraft Java mods & modpacks walks through it step by step.

Op Anvils is a free Minecraft Java mod. Compatible with Minecraft 1.9, 1.10, 1.11, 1.12. Downloaded 13,773 times (via Spigot). Download it and open it directly in the game.

Explore more