Upgrading Core + icon

Upgrading Core + -----

Adds cores that you can upgrade weapons / armor with



Upgrading Core +
This plugin is an up-to-date remake of the plugin Upgrading Code

Features
- Entities drop cores that you can upgrade selected items with
- Items can be upgraded up to 6 (or more if specified in the config) levels
- many configuration options
- every in-game text is localizable
- fully customizable lore

How to use
Depending on the configuration, certain mobs will drop certain cores. You can right-click this core to update an Item. Each core may only be used for certain Item-types (again, configurable).
Once upgraded, the Item gains permanent armor (if it's an armor item such as chest plates, leggings, e.t.c.) or damage (for swords, axes or other aggressive items)
The update-menu is quite simple to understand. Simply put the core in the slot that is surrounded by orange glass-panes on the left side and the item to upgrade in the slot that is surrounded by orange glass-panes on the right side. After that, you can click on the anvil on the bottom of the menu to forge the core into the item.


Commands
/getcore <Name> [<amount>] - gets one or more cores with a certain name - permission 'uc.get'
/ucreload - reloads the config - permission 'uc.reload'
/listcores - lists all aailable cores - permission 'uc.list'

Permissions
uc.drop.<core name> - determines if a core should drop from a mob when killed by a player
uc.upgrade.<core name> - determines if a player can upgrade an item with a certain core

Configuration
This is the default configuration that will be generated if none is present. It should be fairly self-explanatory:
Code (YAML):
# the maximum level that can be achieved using a core
maxLevel
: 6
# The locale that all messages will be translated to. Natively supported locales are
# en-us and de-de
# If you wish to have another locale that is not natively supported,
# place a file of format '<localetag>.lang' inside your plugin-folder
# and specify the locale-tag here.
# The file needs to be in valid '.lang'-format
locale
: en-us
# Whether to display the level of an item as it's title.
# If this option is true, the title will be something like
# Iron Sword +1
# IMPORTANT The title of an item cannot be localized and can thus
# only be presented in english!
displayLevelInTitle
: false
# The name of a single CoreItem. Will be displayed
LOW
:
  # The chance that this may be dropped by a mob
  chance
: 30.0
  # The chance that an upgrade will fail
  failChance
: 80.0
  # The entities that this can be dropped from
  entities
:
   - SPIDER
    - ZOMBIE
    - SKELETON
  # The amount of damage to add each level
  damageModifier
: 1.0
  # The amount of armor to add each level
  armorModifier
: 1.0
  # optional attack speed modifier
  # attackSpeedModifier: 0.0
  # optional armor-toughness modifier
  # armorToughnessModifier: 0.0
  # The display-material
  material
: YELLOW_DYE
  # what materials this is applicable on
  applicableOn
:
   - TURTLE
    - LEATHER
    - CHAIN_MAIL
    - WOOD
    - STONE
  # The display-color of this core
  color
: YELLOW
  lore
:
   - uc.description1
    - uc.description2
MEDIUM
:
  chance
: 15.0
  failChance
: 30.0
  entities
:
   - MAGMA_CUBE
    - GHAST
    - BLAZE
  damageModifier
: 1.0
  armorModifier
: 1.0
  material
: ORANGE_DYE
  applicableOn
:
   - IRON
    - GOLD
  color
: GOLD
  lore
:
   - uc.description1
    - uc.description2
HIGH
:
  chance
: 5.0
  failChance
: 20.0
  entities
:
   - WITCH
    - WITHER
    - ENDER_DRAGON
  damageModifier
: 1.0
  armorModifier
: 1.0
  material
: RED_DYE
  applicableOn
:
   - DIAMOND
  color
: RED
  lore
:
   - uc.description1
    - uc.description2
 
Entity-options: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/entity/EntityType.html
available materials: TURTLE, TRIDENT, WOOD, STONE, LEATHER, CHAIN_MAIL, IRON, GOLD, DIAMOND, NETHERITE
colors: https://hub.spigotmc.org/javadocs/spigot/org/bukkit/ChatColor.html

If the version is 1.16.1+, the color may also be in the format '#rrggbb'

Localization
This plugin has native support for English (option 'en-us') and German (option 'de-de'). The language can be chosen by setting the 'locale'-option in the config.
Every in-game-text can be localized. If you wish to add another language, you will have to put a valid '.lang'-file inside the plugin-folder. You can take this default language as a hint on how to write this file:
Code (Text):
{
  "uc.title": "Upgrade Core {core}",
  "uc.low": "LOW",
  "uc.medium": "MEDIUM",
  "uc.high": "HIGH",
  "uc.description1": "&7An item that can be used to upgrade your weapon/armor",
  "uc.description2": "&7Can be used on: {materials}",
  "message.wrong_item_name": "Unrecognized item-name: {name}",
  "message.missing_item_name": "&cPlease specify an item",
  "message.invalid_number": "please enter a valid number",
  "message.forging_failed": "Forging failed!",
  "message.forging_success": "Your item has been upgraded!",
  "message.forging_not_applicable": "This can't be done!",
  "menu.anvil_title": "FORGE",
  "menu.anvil_description": "click here to upgrade your item",
  "menu.title": "Upgrade",
  "message.permission_denied": "You do not have permission",
  "message.reload_complete": "Reload done!",
  "message.player_required": "You must be a player to execute this!",
  "message.max_level": "The item is already at max level",
  "message.wrong_combination": "{core}-core can't be used to upgrade this",
  "message.list_core": "available cores:",
  "ident.level": "Level",
  "ident.armor": "Armor",
  "ident.armor_toughness": "Armor toughness",
  "ident.damage": "Damage",
  "ident.attack_speed": "Attack speed",
  "tool.turtle": "turtle",
  "tool.trident": "trident",
  "tool.wood": "wood",
  "tool.stone": "stone",
  "tool.leather": "leather",
  "tool.chain_mail": "chain mail",
  "tool.iron": "iron",
  "tool.gold": "gold",
  "tool.diamond": "diamond"
}

If you encounter any Bugs/Glitches/Unexpected behavior/typos please let me know in the discussion section.

Lore
The lore of every core is fully customizable. You have two options; you can have localized lore and non-localized lore.

If you choose to localize the lore, the plugin will attempt to find the strings you provided inside the current locale-file. For example, if you choose 'uc.description1' as the first line and have 'en-us' as your language selected, the lore will read 'An item that can be used to upgrade your weapons'. If you would have chosen 'de-de' as your language setting, the lore would have started with 'Kann benutzt werden, um Rüstung/Waffen zu verbessern'

If you do not want to localize the lore in that way, you can simply enter any text you want. However, note that you also have to add the config-option 'localizeLore' and set it to false. You can still use the special string '{materials}' to display a list of all materials that can be upgraded using this core.

Planned features:
- Better looking GUI
- multiple language-support
- more permissions
- a chance for an upgrade process to fail
- add more weapons (shovels, pickaxes, tridents, e.t.c)
Resource Information
Author:
----------
Total Downloads: 1,225
First Release: May 24, 2020
Last Update: Nov 4, 2021
Category: ---------------
All-Time Rating:
5 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings