Inactive [MECH] MobStats v.5.4.2 - Change the strength of mobs [1.4.6-R0.3]

Discussion in 'Inactive/Unsupported Plugins' started by gamerguy14, Oct 1, 2011.

  1. Offline

    gamerguy14

    [​IMG]
    version: 5.4.2

    MobStats makes the strength of mobs change! The further from the closest origin the mob is, the stronger it is. Mobs at an origin are too weak to survive, but get far enough away and they become so strong that they could kill a player in one shot.

    To set up the plugin, download the .jar and place it in your plugins folder. Start your server to create the config file. Open up the config and configure it. Reload your server. Insure that you have Vault in your plugin folder if you want to use the economy features. Run the command replaceall to make sure all mobs are proper and run it again if you encounter vanilla mobs that shouldn't be vanilla.

    Features:
    • Tells players what level zone they are in.
    • Commands to tell you where you are.
    • Will tell players what zone they are in even after teleporting and respawning.
    • Multi World support.
    • Configure the message for when a player enters a zone.
    • Configure messages sent when a player kills a mob.
    • Players can stop themselves from receiving messages for someone killing a mob.
    • Configure death messages.
    • Choose the origins.
    • Worlds can have more than one origin.
    • Equations to customize the zone size, mob damage, mob health, experience drops, and money.
    • Configure different item drops for different mobs in different zones.
    • Configure a max and min values.
    • Change the arrows that skeletons shoot.
    • Change the equipment that mobs have based on level and a weighted random.
    Commands:
    -zone - Tells the player what zone they are in.
    -ms <on or off> - Turns the messages for when someone kills a mob on and off.
    -replaceall - (for ops and the console only) Checks every entity in the game and replaces them if they aren't the right type to have a level.

    Config:

    NOTE: The level cap has been changed to being integrated with equations.

    message: This is the message that gets sent to a player when the player changes zones. When ever you type "-level" it will be replaced with the level of the zone. Type "false" or leave the area blank to turn off that message. This goes for all messages. Kill Message, and Death Message can also have -mob for the type of mob and -player for the name or the player and Kill Messages can also have -exp for the experience earned and -money for the money earned.

    origins: Type the name of each world to have origins for under the origins section then place a list of origins for each world by listing them with hyphens before each location. Type the

    location in the form of x,y,z or type spawn to be the world's spawn point.

    equations: There are 5 types of equations, zones which are the change in levels based on distance, damage which is the change in damage based on levels, health which is the change in health based on levels, experience or XP which is the change in experience drops based on levels, and Money is to set the amount of money to provide Players with for killing a mob of a certain level. Type what equation is to be set, then type the type of equation (Quadratic, QWD, QMD, Exponential, EWD, EMD). Type make a max area for a maximum value and a min area for a minimum value in each equation, excluding these will set the value to positive and negative infinity respectively.

    Types:
    - Quadratic: Values are a, b, c to be filled in the equation ax^2 + bx + c. Setting a to 0 makes a linear equation, c is the value when x is 0.
    - QWD: A Quadratic but the values for a, b, and c can have a d put next to them to multiply that value by the default value of what is being calculated.
    - QMD: A Quadratic that gets multiplied by the default value of what is being calculated after it has been calculated. Setup the same as a regular quadratic.
    - Exponential: Values ar a, b, c, d, f which are to be filled into a(b^(c(x - d))) + f.
    - EWD: The same as a QWD but using an exponential equation instead.
    - EMD: The same as a QMD but using an exponential equation instead.

    If equations make values too high then it can kill a player but instead of respawning, they go to limbo. They can't be damaged or damage other things.

    drops: Type a name for the drop that can be anything in the list under drops. Put a section in with the name of the drop which has a section for Mobs which is a list of mobs, a Start Zone section for the zone where it starts, an End Zone for the zone where it ends, the Odds which is a fraction to place the Odds for if the item is dropped, and Items which is a list of ItemStacks in the form of (item id(#)),(amount). No mobs will set it for all mobs, no Start Zone defaults to 0, no End Zone defaults to endless, and no odds, no denominator for odds or the numerator is larger than the denominator will default to the drop always being dropped. No items will ignore the drop.

    equipment: Equipment is the same as Drops except their names are listed under equipment. Also, when putting in items, a third number may be placed to say what equipment slot it is supposed to be in. With out a number, it i just placed based on its the order in which it is listed. If ArrowPro is used, the abbreviation of an arrow can be used to set it to a skeleton.

    affected mobs: Type a list of all the mobs that are to be affected by listing them one on top of the other with a hyphen before each mob. Leaving it blank will affect all mobs. By default there is a list of all mobs to be used for a reference. Erasing all these values will have no effect on which mobs are affected.

    Download: MobStats.jar
    Source: MobStatsSource
    ArrowPro: Forums, BukkitDev

    Changelog
    v.5.4.2
    - fixed problem where mobs wouldn't spawn from eggs.
    - removed the mandatory use of Vault.
    - added support for build 1.4.6-R0.3

    v.5.4.1
    - fixed problem where Endermen were replaced with Blazes.

    v.5.4
    - added custom mob equipment to the plugin.
    - changed the way mob names are displayed.
    - added support for build 1.4.5-R0.2

    Show Spoiler
    v.5.3
    - added maximums and minimums to equations.
    - added ability to customize the arrows that skeletons shoot.
    - removed level cap.
    - added support for build 1.3.2-R2.0

    v.5.2
    - added Kill Messages
    - added Death Messages
    - added command to make the plugin check all entities and replace them if it has to.
    - removed delay
    - edited what objects are used for mobs making the game run almost like it's vanilla minecraft with this plugin and increasing compatibility.
    - fixed bug where mobs would disappear before the death animation could finish.
    - added support for build 1.3.2-R0.1

    v.5.1
    - added serialization of stats.
    - added level cap
    - added delay between hits
    - fixed bug where mobs disappear when landing hits too quickly.
    - added support for build 1.3.1-R2.0

    v.5.0
    - added QWD equations
    - added QMD equations
    - added Exponential equations
    - added EWD equations
    - added EMD equations
    - added support for build 1.2.5-R3.0

    v.4.2
    - added support for giving money for killing a mob

    v.4.1.2
    - fixed bug ruining pvp attacks and entity on entity attacks

    v.4.1.1
    - fixed bug where health wasn't changing

    v.4.1
    - added custom drops

    v.4.0
    - changed config
    - added custom equations
    - added custom exp drops
    - fixed mobs not reacting to being hit
    - added support for build 1.2.5-R2.0

    v.3.0.1:
    - fixed config creation bug

    v.3.0
    - added the ability to change the origin
    - added the ability to have multiple origins
    - added the ability to configure all messages
    - added the ability to turn off messages
    - changed the way health is handled
    - removed level 0 and made level 1 bigger.
    - removed the ability to send ops and the console messages about players changing zones
    - some minor bug fixes
    - added support for build 1597

    v.2.0
    - added configuration file
    - added the configurable ability to message ops when players change zones
    - added the configurable ability to log to the console when a player changes zones.
    - made message configurable
    - made the size of each zone configurable

    v.1.1.2
    - added support for build 1337

    v.1.1.1
    - added support for build 1317

    v.1.1
    - added support for build 1240

    v.1.0
    - The first release of the plugin.
     
    nhoclesnar likes this.
  2. Offline

    cvxx7q

    perhaps you need a compounding equation

    so you have the base value of say..

    1 DMG
    10 HP

    then for every chunk u add a specified percentage of the base.

    with above numbers at say 10 chunks from spawn your mob would be 10% stronger

    DMG
    1+10%=1.1
    or

    1+(1*0.1)=1.1

    with this method the mobs take a long time to get stronger, of course travelling 20 chunks for 2X strong mobs may be a bit far so adjust values accordingly (maybe in a config?)

    [BREAK]

    DMG
    1+10%=1.1
    or

    1+(1*0.1)=1.1

    HP
    1+20%=1.2
    or

    1+(1*0.2)=1.2

    also peoples definition of "stronger" may vary, perhaps the mobs need to gain HP at twice the rate they gain damage

    so 10 chunks above would equal 20% increase in HP and 10% increase in DMG

    another thing is yo may also add the players Level in the equation, so DISTANCE+PLAYER_LEVEL+BASE=MOB_STRENGTH

    hope i helped ;)
     
  3. Offline

    varunax

    Thanks for updating. I will be using this and posting any problems I run into.

    Issues so far:

    - Mobs can't be damaged. (Attacking a zombie for an example does nothing.)
    - Zones do not seem to be increasing the mobs strength at all. (Set at Zone 16 wearing Iron Armor set had a Zombie dealing 1 damage. Set at Zone 2 wearing Iron Armor and Zombie still did 1 damage.)
     
  4. Offline

    cvxx7q

    well just remember the plugin may not be "broken" since there isnt a stable RB for MC server 1.0.1 (i assume thats what your using) so while the plugin can be "fixed" it may be a game of "cat and mouse" between builds

    but also adding on to your list when you come by a skeleton they cant shoot or even walk then usually a crash follows/server goes all frozen
     
  5. Offline

    jabsu

    I had to make an account just to participate in this topic. MobStats is -- or could be -- a plugin what we really need in my server. By default, the mobs are way too easy even when difficulty is set to hard, so the game kinda lacks the purpose of making potions and enchantments. The fancy combat skills provided by mcMMO are pointless too, of course. One workaround could be that if I'd remove permissions using armor somehow -- making the surviving surrounded by monsters much more challenging -- but that is not what I want.

    Anyway, I've been using the most recent development builds of CraftBukkit, so I haven't been able to make MobStats work. Therefore, gamerguy14, I'm very pleased to see that you'll be continuing this project!

    While you are managing to get rid of those bugs pointed by varunax and cvxx7q, I have couple of ideas to make hunting harder mobs more rewarding:

    1. Configurable mobs' drops by zone range. Like this:

    zones 50-60:
    zombie: gold:base_amount
    creeper: diamond:base_amount
    spider: spider_web:base_amount

    etc.

    If the zone range is not set, drops are default.

    2. The amount of specified drops could be multiplied by zone, like this:

    multiply: %zone% / 10 * %base_amount%
    (algorithm could be better, but this is just an example)

    3. Harder mobs give more experience
    4. Killing messages by zone, e.g. "Player X has killed level 100 Zombie!" (and perhaps rewards?)

    And, thank you! There's never enough of gratitude when someone is helping the community by making these awesome plugins.
     
  6. Offline

    EkadoLaryeil

    Thats not greedy at all, if your players or you choose to form a city in a difficult zone, you should get more for surviving their.
    It actually sounds pretty awesome.
     
  7. Offline

    gamerguy14

    Are the mobs dying at all? The thing is that I changed the way that damage is handled in the game. I tried to set it up so that I count damage based on mobs then set the damage done to the mob in the event to zero. When what I am tracking with the mob hits 0, I kill the mob.

    Thank you all for your help, and keep the feedback coming.
     
  8. Offline

    Fiddy_percent

    a Few things
    first can you give the option to completly remove the messages as they spam the chat
    2ed so lets say your in area 50 and the mobs have alot of health will they just pile up over time because the sun damages take for ever to kill them with that much health (like enderme :( )
    and I also get the health must be between 0 and 4 erro
    is there anyway for them just to attack up instead of health up?
     
  9. Offline

    gamerguy14

    Just type false and the messages are gone.

    Mobs only have higher resistance to other entities, the sun will kill them at regular speeds.

    I fixed the health error and will be releasing the fixed version as a release, not beta.

    Edit: Is this in the beta or version 2.0?

    In the beta if it looks like mobs aren't being damaged, they are just keep hitting and they will die.

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

    jazzman170

    i will be getting this plugin the moment mob drops are configurable for zones! Amazing plugin, just cant wait to see configurable drops! This plugin has amazing potential!
     
  11. Offline

    gamerguy14

    Updated!

    Added support for RB

    Origins are now configurable!

    You will see that mobs don't turn red when hit. They are still taken damage, just I am handling the damage instead so the effect doesn't happen. I will try and fix this, just don't tell me that it is happening.

    I will get to work on that.

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

    jazzman170

    sweet i cant wait to see it!
     
  13. Offline

    gamerguy14

    For the custom drops, I think I will do it in the form of:

    mob:item:amount:startzone:endzone

    How does this sound?
     
  14. Offline

    jabsu

    I think it's good :) Plain and simple.
     
  15. Offline

    Divergentnate

    [SEVERE] Could not pass event ENTITY_DAMAGE to Mob Stats
    No plugins while testing this out.
    build 1597
     
  16. Offline

    Fiddy_percent

    2011-12-16 08:00:16 [SEVERE] Error occurred while enabling Mob Stats v3.0 (Is it up to date?): null
    java.lang.NullPointerException
    at mobstats.MobStats.closestOriginDistance(MobStats.java:235)
    at mobstats.MobStats.onEnable(MobStats.java:208)
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:188)
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:968)
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:280)
    at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:186)
    at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:169)
    at net.minecraft.server.MinecraftServer.t(MinecraftServer.java:348)
    at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:335)
    at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:165)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:399)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
     
  17. Offline

    gamerguy14

    That would be the beta. Upgrade to the release.

    What version of the plugin? Also if I don't have the stack trace, it is useless to me because I can't tell where the error is.

    If you are using the beta, use the release. If you aren't, post the stack trace.

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

    Divergentnate

    Its the only download on this page I could find.

    Is there a special place to download 3.0? It says 1597 in the title and you say it works for 3.0 but the only download on the page seems to download 2.0.
     
  19. Offline

    gamerguy14

    It seems that you have 3.0. Please post the stack trace so that I can fix this problem.

    Sorry about that, I changed the source slightly so I was looking at there wrong line.

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

    Divergentnate

    2011-12-16 10:35:23 [SEVERE] Could not pass event ENTITY_DAMAGE to Mob Stats
    java.lang.NullPointerException
    at mobstats.listeners.Entities.onEntityDamage(Entities.java:30)
    at org.bukkit.plugin.java.JavaPluginLoader$64.execute(JavaPluginLoader.java:711)
    at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
    at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:339)
    at net.minecraft.server.EntityEnderDragon.b(EntityEnderDragon.java:405)
    at net.minecraft.server.EntityEnderDragon.d(EntityEnderDragon.java:291)
    at net.minecraft.server.EntityLiving.w_(EntityLiving.java:297)
    at net.minecraft.server.World.entityJoinedWorld(World.java:1253)
    at net.minecraft.server.WorldServer.entityJoinedWorld(WorldServer.java:107)
    at net.minecraft.server.World.playerJoinedWorld(World.java:1235)
    at net.minecraft.server.World.tickEntities(World.java:1142)
    at net.minecraft.server.MinecraftServer.w(MinecraftServer.java:518)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:425)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:457)
     
  21. Offline

    gamerguy14

    Thank you I will get to work.

    Try downloading the plugin again than starting the server because I have no clue what caused this error because in both copies of the source that I have line 30 in Entities if }. Which can't have a null pointer error. If this error happens again than post it again.

    I think that this is a config mistake. I suspect that you didn't fill out an origin for this world.

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

    jabsu

    The problem is, when the new config file generates, there's no newline between portalmessage and the world origin setting. So it goes like this: portalmessage: You have just moved into a +level zoneMy World: spawn. I guess Fiddy_percent didn't notice that.

    Other than that, this seems to be working pretty fine. I died instantly when a zombie hit me @ zone 800 (zone size was set to 1), so the custom damage system is apparently functional :) This was a quick test, so it's still hard to say how many zones you need to travel for mobs to become hard enough. I think the zones should be more compared to levels with much lower numbers, and with a maximum zone setting (e.g. 30 or 50). Then it would be easier to reason whether the zone is hard or not, and the variation between zones could be more notable. This is debatable, though.
     
  23. Offline

    Divergentnate

    I am still getting the error? I edited the config file and added Origin. It would make sense to me to add the Origin into the default as spawn. It is confusing that you need to add the config yourself to make it work correctly.


    zone: 16
    message: You have just entered a +level zone
    console: false
    op: false
    origins: spawn
     
  24. Offline

    gamerguy14

    It is a mistake in the generation of the file and I will fix it.
    "origins" isn't an argument. You type the world name.

    Thanks for pointing that out. I will fix the code at it will work.

    Fixed!

    I missed one line of code that caused the whole problem. It only changes the generation of the config so nothing really new.

    I wish I had noticed that before release. I was using an already generated config instead of regenerating it.

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

    jabsu

    Actually origin configuration is like this by default:

    Your World: spawn
    Your World_nether: spawn
    Your World_the_end: spawn

    But as I pointed out in my previous post, the "Your World: spawn" line is incorrectly merged with the previous line (portalmessage) in a newly created config file. I guess this was not the case now, though.


    No need to worry. It was so tiny bug that it can be easily left unnoticed :)

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

    Divergentnate

    I an still having the same problem with the new build. I tried the one on the front page and the one from source same problem. Generated config file still looks the same even after deleting and restarting to recreate it several times.

    I am very interested in this plugin and cant wait to use it! I believe you have a great idea!

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

    Fiddy_percent

    still no new config :(
    Can you just give me a sample config so i no what im doing wrong?
     
  28. Offline

    gamerguy14

    This one has been working fine for me:

    Code:
    #Where it says 'zone:', type the size of the zone that you want.
    #This number is the distance from the spawn that changes the levels.
    #eg: 'zone: 16' means that when a player moves away from the spawn, the level of the zone increases every 16 blocks (1 chunk).
    #For all the 'message:' areas write the appropiate message.
    #If you type +level, it will be replaced with the level zone that the player just walked into.
    #If you type 'false' or type nothing next to a message area, it will turn off that message.
    #Type the name of the world then a location, or the word 'spawn' to set it as an origin.
    #Write locations in the form of x,y,z
    #The zone level will be determined by the closest origin.
    #Lines that start with '#' or that are empty are ignored.
    
    
    zone: 5
    message: false
    tpmessage: false
    joinmessage: false
    respawnmessage: false
    portalmessage: false
    world_nether: spawn
    world_the_end: spawn
    world: 5,0,10
    world: spawn
    world: 100,64,100
    
    Also the plugin won't create a new config if the old one is still there.

    console and op options were removed because they were causing problems and I figured that no one would use them.

    I tested the build that is on this page and this is the config I got:

    Code:
    #Where it says 'zone:', type the size of the zone that you want.
    #This number is the distance from the spawn that changes the levels.
    #eg: 'zone: 16' means that when a player moves away from the spawn, the level of the zone increases every 16 blocks (1 chunk).
    #For all the 'message:' areas write the appropiate message.
    #If you type +level, it will be replaced with the level zone that the player just walked into.
    #If you type 'false' or type nothing next to a message area, it will turn off that message.
    #Type the name of the world then a location, or the word 'spawn' to set it as an origin.
    #Write locations in the form of x,y,z
    #The zone level will be determined by the closest origin.
    #You can put more than one origin
    #Lines that start with '#' or that are empty are ignored.
    
    
    zone: 16
    message: You have just entered a +level zone
    tpmessage: You have just teleported into a +level zone
    joinmessage: You have just joined into a +level zone
    respawnmessage: You have just respawned into a +level zone
    portalmessage: You have just moved into a +level zone
    world: spawn
    world_nether: spawn
    world_the_end: spawn
    
    If you are not getting this on the first start then something is wrong.

    Updated Source

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

    Fiddy_percent

    I keep getting the old one
    #Where it says 'zone:', type the size of the zone that you want.
    #This number is the distance from the spawn that changes the levels.
    #eg: 'zone: 16' means that when a player moves away from the spawn, the level of the zone increases every 16 blocks (1 chunk).
    #Where it says 'message:', write the message you want to be sent to the player when they change zones.
    #If you type +level, it will be replaced with the level zone that the player just walked into.
    #Where it says 'console', type 'true' or 'false' for if you want the console to be told that a player changed zones.
    #Where it says 'op', type 'true' or 'false' for if you want ops to be told that a player has changed zones.
    #Lines that start with '#' or that are empty are ignored.

    zone: 16
    message: You have just entered a +level zone
    console: false
    op: false
     
  30. Offline

    gamerguy14

    Are you running the right version?
     
  31. Offline

    Fiddy_percent

    im using the download from this topic
     

Share This Page