Inactive [RPG/MISC] BetterLeveling v1.1 - Makes Player Levels Useful [1.4.5-R0.3]

Discussion in 'Inactive/Unsupported Plugins' started by monstuhs, Apr 15, 2012.

  1. Offline


    BetterLeveling - Make Minecraft player levels useful
    Version: v1.0
    Author: monstuhs

    Resurrected this plugin from the grave. I spent all my time tonight fixing maven dependencies issues so I only had time to compile and ever-so-gently smoke test this with 1.4.5. No clue where I was at with this when I left off so please let me know if you find any bugs.

    BetterLeveling allows you to factor in vanilla Minecraft level to various activities. This uses the vanilla level mechanics so it doesn't rely on it's own built-in leveling system such as mcMMO

    • Additional health regeneration per level
    • Chance to crit on attack based on your level
    • Chance to dodge when attacked based on your level
    • Chance to double-drop ore's when mined based on your level
    • Chance to instabreak certain blocks based on your level
    • Can configure the amount of XP lost and dropped on player death
    • Everything is configurable!
    Download BetterLeveling
    View the Source Code

      WorldName: world
        PercentageDamageFromDodge: 75
        PercentageDamageFromCrit: 200
        PercentageDamageFromHeadshot: 200
        MaximumChanceForCrit: 75.0
        MaximumChanceForDodge: 75.0
        PercentageOfXPDropped: 100
        PercentageOfXPRetained: 0
        PercentageChancePerLevelToDoubleDrop: 1.0
        PercentageChancePerLevelToInstaBreak: 1.0
        PercentageChancePerLevelToDodge: 2.0
        PercentageChancePerLevelToCrit: 2.0
          RegenIntervalInSeconds: 20
          HalfheartsPerLevel: 0.5
        ChanceToCrit: Chance To Crit
        ChanceToDodge: Chance To Dodge
        ChanceToDoubleDrop: Chance To Double-Drop
        ChanceToInstaBreak: Chance To Insta-Break
        ExtraRegenPerSecond: Extra Regen Per Second
        CriticalHit: Critical Hit!
        Dodge: Dodge!
        HeadShot: Headshot!

    Version 1.1
    * Made "ChanceToDoubleDrop" and "ChanceToInstaBreak" double precision (meaning you can do 0.42 or 3.14159) if you want.

    Version 1.0
    * Updated to 1.4.5 R0.3


    Show Spoiler

    Version 0.6 & 0.6.2
    * Insta-break no longer works on blocks connected to things like levers, buttons, doors, etc.
    * Insta-break only works when you are using the appropriate tool (spade for dirt/grass/sand/etc, pick for ore/stone/cobble/etc and axe for wood/logs/etc)
    * Configurable percentage of XP retained on death (default 0%)
    * Configurable percentage of player XP dropped on death (default 100%)
    * All player messages are configurable (which allows localization). You can set the messages in the configuration file (default messages are US English)
    * The "/stats" command now shows the maximum values for crit and dodge chance
    * Changed the "percentage per level" for crit and dodge to be double precision so you can use values like "0.42" or "4.20" or whatever your little heart desires
    * Critical Hit, Dodge, and Headshot messages sent to players can be turned off by specifying '' or "" in the corresponding localization node.

    Version 0.5
    * Updated to bukkit 1.2.5 R3.0
    * Fixed bug where setting chance to instabreak to 0 didn't always work (I'm going to add an on/off configuration setting in the next version)
    * Instabreak only works on Ore blocks now (I plan to make this configurable in the next version)
    * Fixed "ConcurrentModificationException" error
    * Fixed "NagAuthor" warning on disable
    * Fixed bug where "/stats" command would ignore server's maximum value for each stat
    * Download link now uses public dropbox

    Version 0.4
    * Added command: "stats" that shows your current stats

    Version 0.3
    * Added regeneration-per-level support (configurable)
    * (Regen per level * player level) is always rounded down

    Version 0.2
    * Fixed bug where skeletons were attempting to make headshots

    Version 0.1
    * Initial Version
  2. Offline


    Awesome would be using this if I wasn't using mcmmo
  3. Offline


    approved, edited tags
  4. Offline


    I like these features a lot xD
    Btw how do I disable unwanted features? Do I just set the % to 0?
    I'm hoping to see more health as well.
  5. Offline


    Yeah you can set the chance per level to 0. In the next version I'll add a config setting to disable certain features.

    You want more health or faster health regen?
  6. Offline


    i have an Error for you! =D

    16:24:12 [SEVERE] Could not pass event EntityDamageByEntityEvent to Better Level
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDamageEvent(
    at org.bukkit.craftbukkit.event.CraftEventFactory.handleEntityDamageEven
    at net.minecraft.server.EntityLiving.damageEntity(

    at net.minecraft.server.EntityHuman.damageEntity(
    at net.minecraft.server.EntityPlayer.damageEntity(

    at net.minecraft.server.EntityArrow.F_(
    at net.minecraft.server.World.entityJoinedWorld(
    at net.minecraft.server.WorldServer.entityJoinedWorld(
    at net.minecraft.server.World.playerJoinedWorld(
    at net.minecraft.server.World.tickEntities(
    at net.minecraft.server.MinecraftServer.w(
    Caused by: java.lang.ClassCastException: org.bukkit.craftbukkit.entity.CraftSkel
    eton cannot be cast to org.bukkit.entity.Player
    at me.monstuhs.betterleveling.Managers.CombatManager.getDamageAfterHeads
    at me.monstuhs.betterleveling.EventHandlers.CombatListeners.onPlayerComb
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    ... 15 more

    i hope you can fix it ;D

    [EDIT] Update-Idea: HigherDeffPerLvl
  7. Offline


    Yes sir!
  8. Offline


    I like this plug-in! :D
  9. Offline


    It's fixed. Skeleton's were trying to get headshots! It checks to make sure the shooter is a player now. Let me now if you have any other issues
  10. Offline


    i cant download!

    - - - - - - -

    nvm now ok.
  11. Offline


    I'm pretty sure I can do the faster regen. As for more health, I can't actually add more hearts to to GUI, but I can make it so that either it takes more damage for hearts to disappear or there are "invisible" hearts that add to a player's health. What do you think?

    LOL, yeah I was right in the middle of uploading the fixed version

    Thanks! Let me know if you have any suggestions to make it better!

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


    Looks great, bookmarked.
    Benjerji likes this.
  13. Offline


    By 'takes more damage for hearts', are you referring to adding armor points? If so, I think that would be great. If it's not related to armor, it still is great :D

    Since invisible hearts don't make people feel like they have more health, I personally prefer the 'takes more damage for hearts' xD
  14. Offline


    Alright, I added additional health regen based on level. It's completely configurable.

    The default settings are:
    Regeneration occurs every 20 seconds. Players regenerate 0.5 half-hearts per player level.

    PlayerA is level 1, he/she does not regenerate at all (it's rounded down, meaning 1 * 0.5 is rounded down to 0)
    PlayerB is level 2, he/she regenerates 1 half-heart every 20 seconds
    PlayerC is level 10, he/she regenerates 5 half-hearts every 20 seconds.

    It's completely configurable so feel free to play around with the config file settings
    RegenIntervalInSeconds: (This is how often health regen occurs) Default 20
    HalfheartsPerLevel: (This is how many half-hearts are regened per player level) Default 0.5

  15. Offline


    really good idear.

    How about a /stats command that tell us the current values with the level i have?
  16. Offline


    Um...Download doesn't work I go to the github and there's no download button
  17. Offline


    Click on the button on the right that says "RAW"

    Good idea! I'll work on that

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


    Thx trying now
  19. Offline


    Is it possible to extend the hunger bar when leveling up?
  20. Offline


  21. Offline


    Extend the hunger bar when leveling up plz!
  22. Offline


    It needs a configurable "cutoff" point.
  23. Offline


    I set the insta-break blocks to 0% and it still insta-breaks them from time to time.
    Numosh likes this.
  24. Offline


    Yeah me too and honestly it's kinda of annoying.
  25. Offline


    Right, same error here. It's pretty annoying if you try to open a door and smashes the door, or want to flip a switch but smash the block it is on. :)
    Is there any possibility that the instabreak would just work on ores? That way it will be much more usefull and nobody have to set it on 0% (what obviously doesn't work properly), no offense.
  26. Offline


    I would like to say that this is probably my favorite plugin for a basic server.
    i usually don't like pve in this game, usually avoid mobs. but this really makes it no so tedious.
  27. Really great plugin mate! :D everyone on my server loves it. Though there is one tiny problem im worried about... if your pickaxe or whatever procs on bedrock.. you remove it :( so you can actually remove bedrock by then creating holes and then using it for griefing :/
  28. Offline


    i would say have a setting to disable insta-break because it breaks my server :(
  29. Offline


    Am I correct in assuming that you would lose your bonuses if you were to die? If so I am very excited to try this out. The thing I don't like about mcmmo is that your levels just keep going up regardless. It lacks a reward for doing anything meaningful as there is no chance of loss because failure has no repercussions. In contrast (assuming the answer to my initial question is yes) this mod gives a real value to staying alive vs for example letting yourself starve to death next to your bed instead of allowing yourself to starve to death to refill your hunger bar.

    EDIT: In thinking about this I began to realize that many people may not be too thrilled with the idea of losing their xp on death. If I am not mistaken you can collect a % of your xp by returning to the point of your death. An interesting idea would be to incorporate into this mod an option that lets you set the % of xp that remains on death or alternately the % of xp that is recoverable by returning to the point of your death. If one of these options are possible it may broaden the adoption of this mod.
  30. Offline


    I simply love this plugin. Simple, works with the inbuilt system, and just great. However the instabreak is messing out with the server, people having their chests, doors, couldron, diamondores destroyed.
    I had to disable this plugin because of that.

    I would be very very extremly happy if you could make an option to disable the instabreak.
    This is one of my favourite plugins!


Share This Page