[Request][partially coded] LvlUp Items.

Discussion in 'Archived: Plugin Requests' started by InflamedSebi, Nov 9, 2012.

  1. Offline

    InflamedSebi

    There was a Plugin, that does this similar, but broken and inaktive now and the original devs didn't log in since more than 1/2 year.

    So I'm looking for someone to recreate and imrove it and wants to take the future development.

    The original was called AutoEnchanter [Here]
    The sourcecode is available [Here], so maybe you can use some parts of it.

    If you want more informations you can read the original plugin or better just go further:

    The main features should be:
    -level up on use, based on a global mathematical formula with:
    Uses_need_for_Lvlup = m * ( ax^4 + bx^3 + cx^2 + dx + e)​
    x = current_lvl_of_enchantement + 1​
    a,b,c,d,e = global variables​
    the formula should define the numer of uses need to level up and not the overall number of uses for this lvl.​
    m = multipier to adjust the formula for each enchantment​

    so with a=0.8; b=-9.6; c=59.6; d-85.3; e=138.2 and m=1.0​
    u get:​
    from lvl 0 to 1: 104 uses​
    from 1 to 2: 142 more uses​
    from 2 to 3: 224 more uses​
    ...​
    from 4 to 5: 341 more uses​
    ...​
    from 9 to 10: 3645 more uses​


    -configurable for each item and also item groups
    -multiple independent enchantments per item with:
    configurable max level even unsafe​
    -configurable lvlup event, based on:
    wich block is breaking with it (tools)​
    which mob was damaged (swords)​
    what kind of damage was taken (armor)​
    -unsafe enhantments
    so they ignore the lvl/item restriction from the original vanilla
    -a command to toggle the leveling for the item held
    -permissions, so you can define wich users can lvl up items

    config file could look like this:

    Code:
    Formula:
        # UsesToLvlUp = modifier * (ax^4 + bx^3 + cx^2 + dx + e) | x is the current level of the enchanting + 1
        a: 0.8
        b: -9.6
        c: 59.6
        d: -85.3
        e: 138.2
     
    # Mask
     
    Enchantments:
        Item_Name:                                      # Itemname from API or groupname like defined in groups (see bottom)
            Event_Name:                                # Eventname [Damage Npc; Get Damaged or Break A Block]
                Event_Target:                          # Blockname or Entityname or Damagetype or a list defined in the groups (see bottom)
                    Number_Of_Enchantment:              # just a subgroup to add more than 1 Enchantment
                        Enchant: 'Enchantment_Name'    # Enchantmentname from API
                        MaxLvl: 1                      # The maximum lvl an Enchantment can reach even if unsafe (optional, default 1)
                        Modifier: 1.0                  # The lvl modifier for this enchantment, see formula (optional, default 1.0)
                Number_Of_Enchantment:                  # Global enchantments subgroup if enchantments are global without Event_Target
                        Enchant: 'Enchantment_Name'    # same like above
                        MaxLvl: 1                      # same like above
                        Modifier: 1.0                  # same like above
     
    # Example
     
    Enchantments:
        DIAMOND_PICKAXE:
            BlockBreakEvent:
                rareblocks:
                    1:
                        Enchant: 'WATER_WORKER'
                        MaxLvl: 3
                        Modifier: 1.0
                    2:
                        Enchant: 'LOOT_BONUS_BLOCKS'
                        Modifier: 3.5
                1:
                    Enchant: 'DIG_SPEED'
                    MaxLvl: 5
        swords:
            DealDamageEvent:
                1:
                    Enchant: 'DAMAGE_ALL'
                    MaxLvl: 2
        IRON_SWORD:
            DealDamageEvent:
                CraftBlaze:
                    1:
                        Enchant: 'FIRE_ASPECT'
                        MaxLvl: 3
                        Modifier: 2.0
     
    # This configuration will lvl all swords with Sharpness
    # iron swords additionally with Fire Aspect if it hits Blaze
    # Also diamond pickaxes will lvl Efficiency if breaking blocks
    # and if breaking goldore or emeraldore it will lvl Aqua Affinity and Fortune (but fortune 3.5 times slower)
     
    # Defined Groups to use as itemlist or eventtargetlist above
    # Mask
     
    Itemgroup:
        name:
            - item
            - item
     
    # Example
     
    Itemgroup:
        swords:
            - IRON_SWORD
            - WOOD_SWORD
            - STONE_SWORD
            - GOLD_SWORD
            - DIAMOND_SWORD
        viphelmets:
            - LEATHER_HELMET
            - CHAINMAIL_HELMET
        rareblocks:
            - EMERALD_ORE
            - GOLD_ORE
    ----------------------------------
    Edits:
    + config.yaml example added
    + rewritten features
    + some minor changes

    If you have questions, just ask :D

    I know its a bigger project, but a awesome one ... and I did not find any similar plugin, so it will be the only one working this way :D

    EDIT by Moderator: merged posts, please use the edit button instead of double posting.
     
    Last edited by a moderator: May 29, 2016
  2. Offline

    poo2thegeek

    Hi dude, I just updated this one
    If you want I can send you a pm for a download link?
    It works, ive tested it
    Its the exact same as the old version, and im hoping the plugins owner will let me have controll of it.
    Thanks
     
  3. Offline

    InflamedSebi

    the download would be nice :)
    I dont think the owner can say anything against it ... hes inactive xD

    if someone still wants to recreate it, i will appreciate it, because i added some features and changed some ^^
     
  4. Offline

    dotblank

    The plugin is LGPL, you are free to do whatever you want with it. You have my blessing to re-release it as you see fit, just change the name, or submit a patch so I can merge the updated version upstream
     
  5. Offline

    iPadHD

    I love how the owner of the plugin comes.. Shame on you dotblank, letting such a good plugin go down! Be a shamed of your self! (Smacks on hand)
     
  6. Offline

    dotblank

    I fully intend to update it. It is not forgotten! I plan on using this plugin on one of my own server game types. At the very least expect bukkit compatibility.
     
  7. Offline

    GammeXPlays

    do you have a download link available? I can't find it on your profile
     

Share This Page