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. Damn. I just gett all messed up in my head. Math isn't made for me. :S

    SO quick question. If I want the default zones to be the double in size. How'd I do that? :)

    EDIT: Nevermind. Figured it out but the prob with mobs just disapearing when hit twice while still blinking red makes this unusable atm. :(
     
  3. Offline

    xglsuperbounce

    Why is it that I can make a mob that takes 20+ hits to kill with a diamond sword, but if it catches on fire for maybe 20 seconds it dies. Is this actual health? or is it having a hit animation every time but only taking away health like 20% of the time? I need it to take damage from all things consistently. So like a 20 hit dia sword monster would take like 20 lightning strikes or something. If you know what I mean?
     
  4. Offline

    gamerguy14

    The reason for this is because it doesn't work with damage that wasn't caused by another entity. I made it like this because if I didn't, monsters could survive the whole day which I assumed wouldn't be wanted at all, but if you would like it to be changed I can change it so that you can choose in the config.
     
  5. Offline

    tgyk1337

    So lemme get this straight: This plugin gives me zone support where I can make different difficulties?
    Zone1=10hp for zombies, 20 for Endermen, etc.
    Zone2=increase
    Zone... = more increase?
    Please tell me it's true? I've been hunting for many-a-moons.
     
  6. Offline

    jazzman170

    is there any possible way to set up like say a lvl 55 zone being the LAST zone, and it extends all the way to the end of the world, so in this case my border. I dont want to screw over my players that are far away from spawn while being in a lvl 200 - 300+ area when lvl 55 are considered "Prety hard but solo-able' on my server.

    So from spawn to zone 55, it ends at 55 but extends 55 to the rest of the way which would have been zone 56+
     
  7. You could offer them to build outposts. If they build an explorers outpost (or a small town or whatever) you will make that place a low-level spot. This way they have to explore and build and explore...

    Well, atleast this could be one way until a better one is found? :)
     
  8. Offline

    gamerguy14

    Each mob uses the same equation to determine their stats but you may include their default values in the equation. Then yes as zones go on they will increase based on the equation you entered.

    That is a good idea, I will try to include a level cap in the plugin but for now you can just make new origins in your world so that it is lower levels at farther away zones.

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

    gamerguy14

    I will be updating soon!

    It will support 1.3.1-R2.0. The problem where entities didn't have any delay after being hit is fixed, and the delay will be configurable. This value defaults to 1.5 seconds but if someone can tell me the real value (the minecraft value) I will change the default. Currently I am just fixing a bug that got pushed in when I was fixing the damage delays where mobs drop no exp.
     
  10. Offline

    gamerguy14

    As I was making the latest update I thought of several ways that I could make this plugin better but I also came up with a major concern that came with it all and that is configuration.

    I can easily expanding configuration to having equations that are not only world specific but entity specific. Then I can also expand on this to allow entities to gain experience and increase in level getting to levels higher than their current zone just by killing Players. Also I could allow levels to increase stuff other than damage and health. I can make it so can increase the speed of the mobs, there view distance, and probably other things too. But the problem I came up with here is that though I could make this super configurable, will the config get to complicated for people to deal with.


    So that is my question, can people deal with large and complicated configs and do they want to if it means a much more powerful plugin?

    Please post your opinions in the comments. I also have this up on the BukkitDev page for this plugin.
     
  11. Offline

    Lyhome

    Constantly getting this error, it's spamming my console and is completely unbearable I had to remove the plugin.

    "2012-09-24 01:25:26 [INFO] [MobStats] Error: net.minecraft.server.EntityGhast.a(double, double, double, double)"
     
  12. Offline

    gamerguy14

    I think that I know the problem and will be fixing soon.
     
  13. Offline

    Techrosis

    Is there a way to make it ignore a world. It's running in my skylands+ world and get's kinda wierd and will eventually crash out my server. The only way for me to fix it is to remove the plugin and start the server and let it clean itself up and the stop and put the plugin back in. It seems to be fine for a while but then craps out again. Apparently slimes are the cause from what i can see. Any ideas?
     
  14. Offline

    gamerguy14

    I'll take a look at this. Would you prefer it to fix slime problem or for it to be disabled from world to world>
     
  15. Offline

    Techrosis

    Hmm, not really sure. Honestly, I think the problem lies in the slimes. What was happening is they were all spawning in the same spot and would some how take damage and just keep multiplying until it crashed out. BTW, I'm running Spigot server for performance and not sure if it has some sort of routines that are affecting the spawning mechanism of your plugin or not. I think what would work in my situation would be to just be able to have your plugin ignore slimes.
     
  16. Offline

    Kainzo

    wtb Heroes support
     
  17. Offline

    gamerguy14

    It should run with Heroes without causing any problems as long as heroes doesn't override the NMS classes for mobs. If you wanted to increase experience gained from killing higher level mobs, you can take the plugin's .jar file and call then check if a mob is an instance of StatsEntity then call the getLevel() method and make whatever calculation that you want with it.
     
  18. Offline

    Kainzo

    Heroes completely rewrites the damage/health system for Minecraft... pretty certain that it would cause some conflicts.
    I'll give it a test now anyways :)
     
  19. Offline

    gamerguy14

    Okay I see. Does it do it through event listening or through NMS? The getHealth method of an entity is not broken, nor is the setHealth method when running MobStats.
     
  20. Offline

    Kainzo

  21. Offline

    gamerguy14

    From what I can gather, you create a Monster object to hold each mob in. Then it would make sense that all works since it doesn't modify the mob itself as MobStats does. MobStats modifies each entity by adding a level and maxHealth field in each sub class of a minecraft entity. It then puts in a getLevel() method to grab this level and overrides the getMaxHealth() method to return the maxHealth field and overrides the getExpReward() method to return modified exp. The rest of the changes are just to actually stick the modifications in.
     
  22. Offline

    Techrosis

    I'm testing something on my server. I'm trying to use WorldGuard and block slime spawns. If it works I'll let you know. It'd at least be a work around for now.
     
  23. Offline

    gamerguy14

    I found the problem with the slimes. I wasn't overriding the method that would make a new Slime so I changed that. I will release an update as soon as I can.
     
  24. Offline

    bob2351723

    I have run into the slime problem as well.
     
  25. Offline

    aaomidi

    Hey, Is this ever going to support 1.4?
     
  26. Offline

    gamerguy14

    I am working on it. I can't tell how long it will take though since many of the methods have been changed.
     
  27. Offline

    erdedt

    now support 1.4 but the mob enderman is blaze? outward is blaze can you fix it?
     
  28. Offline

    gamerguy14

    I have seen this problem before, but now I finally see what it was. I will take a look at it and see how I can fix it.

    Fixed it. I had a typo in the code where I was creating a Blaze instead of an Enderman. I had seen the overworld Blaze before but I hadn't realized that it was replacing the Enderman.

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

    erdedt

  30. Offline

    gamerguy14

    I don't know since I can't find epicboss's source and would need to see it do determine if it works. When I get a chance, I will take a better look.
     
  31. Offline

    erdedt

    In nether can't spawn Wither Skeleton only can spawn normal Skeleton
     

Share This Page