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

    monstuhs

    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

    Features:
    • 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

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

    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


    [​IMG]

    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
    [​IMG]

    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

    kahlilnc

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

    Plague

    approved, edited tags
     
  4. Offline

    nhoclesnar

    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

    monstuhs

    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

    TheVnChecker

    i have an Error for you! =D

    16:24:12 [SEVERE] Could not pass event EntityDamageByEntityEvent to Better Level
    ing
    org.bukkit.event.EventException
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
    va:303)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.jav
    a:62)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.j
    ava:459)
    at org.bukkit.craftbukkit.event.CraftEventFactory.callEntityDamageEvent(
    CraftEventFactory.java:360)
    at org.bukkit.craftbukkit.event.CraftEventFactory.handleEntityDamageEven
    t(CraftEventFactory.java:378)
    at net.minecraft.server.EntityLiving.damageEntity(EntityLiving.java:608)

    at net.minecraft.server.EntityHuman.damageEntity(EntityHuman.java:595)
    at net.minecraft.server.EntityPlayer.damageEntity(EntityPlayer.java:215)

    at net.minecraft.server.EntityArrow.F_(EntityArrow.java:214)
    at net.minecraft.server.World.entityJoinedWorld(World.java:1264)
    at net.minecraft.server.WorldServer.entityJoinedWorld(WorldServer.java:1
    06)
    at net.minecraft.server.World.playerJoinedWorld(World.java:1246)
    at net.minecraft.server.World.tickEntities(World.java:1153)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:542)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:449)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:492)
    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
    hotAttempt(CombatManager.java:77)
    at me.monstuhs.betterleveling.EventHandlers.CombatListeners.onPlayerComb
    at(CombatListeners.java:32)
    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)
    at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.ja
    va:301)
    ... 15 more

    i hope you can fix it ;D

    [EDIT] Update-Idea: HigherDeffPerLvl
     
  7. Offline

    nhoclesnar

    Yes sir!
     
  8. Offline

    Fexul

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

    monstuhs

    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

    t0gexdarki

    i cant download!

    - - - - - - -

    nvm now ok.
     
  11. Offline

    monstuhs

    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

    WhosDaMan

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

    nhoclesnar

    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

    monstuhs

    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.

    Example:
    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

    Odai

    really good idear.

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

    EarthBoundNess

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

    monstuhs

    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

    EarthBoundNess

    Thx trying now
     
  19. Offline

    nhoclesnar

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

    monstuhs

    Done!
     
  21. Offline

    In_Craft

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

    RyGuy147

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

    NotoriousPyro

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

    Numosh

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

    Alxxx

    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

    bjjones13

    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.
    thanks!
     
  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

    BTSpaniel

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

    rivitingone

    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

    cheeselife

    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!

    Thanks!
     

Share This Page