[MECH] CustomDifficulty v4.5.0 - Monsters too strong or too weak for you? Change it! [1240]

Discussion in 'Inactive/Unsupported Plugins' started by Pasukaru, Jun 6, 2011.

  1. Offline

    Pasukaru

    CustomDifficulty
    The Plugin to adjust the difficulty in SMP
    Latest version: 4.5.0
    blank line
    [​IMG]
    BLANK LINE : D : D
    CustomDifficulty provides a lot of features to change the all around difficulty in Minecraft.
    You can change the monster's HP, damage, aggressiveness and more! You are also able to modify the player's damage.
    Each difficulty is stored in its own file - which enables you to create as many difficulties as you like! It's possible to set a difficulty for a certain region only (Use the built-in regions, or WorldGuard regions). This enables you - for example - to create hard dungeons with ease.
    For more information, take a look at the 'Features' section below.

    Please report any bugs you may encounter!

    If you are a developer and take a look at the source, please let me know if you have some improvements! I'm still new to this (Java/programming in general) and want to get better. :)

    Features:
    • Change monster's hp (200 HP is max - but that should be enough, a player has 20)
    • Change monster's damage - Let them beat you up - or not even scratch you :>
    • Change aggressiveness of monsters and animals. (Aggressive, Passive, Friendly)
    • Change if monsters burn in sunlight.
    • Spawn any mob, anywhere - naturally! Giant, 'monster' and sheep in any color included!
    • Define spawn chance.
    • Define min/max height for mobs to spawn.
    • Define min/max light level for mobs to spawn.
    • Define block types mobs will only/will never spawn on.
    • Define custom drops for each mob in each difficulty.
    • Define a loot-multiplier to let monsters drop more items!
    • Limit mobs per server/world/chunk
    • iConomy support! (For monster-killing rewards)
    • Change player's damage.
    • Multi-world support!
    • Permissions support!
    • WorldGuard support!
    • Create regions, each with a custom difficulty!
    • No need to restart/reload the server to apply changes, simply use the /difficulty reload command!
    • All (reasonable) commands can be used from the console!
    If you download, please also click the 'like' button at the lower right corner of this post - Thanks!

    If you need a more detailed explanation, feel free to drop me a message and I'll try to help as much as I can. :)
    This text is only used to have an empty line! :>
    How to use:
    Click me :)

    • Copy CustomDifficulty.jar into the /root/plugins folder.
    • Download WorldEdit (If you want to use regions) and place it into the /root/plugins folder as well.
    • Difficulties are located in the /root/plugins/CustomDifficulty/difficulties folder. Each difficulty is in its own [difficulty].yml file.
    • Simply change the values of the default configs and/or create new config files. The plugin will load all *.yml files inside the difficulties folder automatically on reload.
    • If you remove a configuration node, this plugin won't change anything of the corresponding event, thus preventing conflicts with other plugins.
    • You can create regions with the /difficulty region [regionCommand] commands and set difficulties for each of them independently! (See 'Commands and Permissions' below)
    Note that you must notuse tabs in *.yml (YAML) files. If you do, it will mess up the format and Bukkit will throw you a million errors (something like *snakeyaml* ) :>
    Important notes:
    Click me :)

    • All configuration nodes are case sensitive and your world's names shouldn't contain special character, as it might mess up the configuration nodes!
      If a configuration node does not exist, Bukkits default will be used - or nothing happens at all.
      The plugin will check if the monster/player is in a region first (if enabled - see below)
      If the monster/player is in no region, the world's difficulty settings will be used.
    • Slimes are handled according to their size.
    • Wolves are handled according to their tamed/untamed status.
    • Creepers are handled according to their powered/unpowered. status.
    • The last three points exclude the following nodes:
      spawnChance, spawnOnlyOn, spawnNotOn, lightLevelMin, lightLevelMax
    • Creepers have a floating point (e.g. 1.65) damage value and it's used as multiplier, not as fixed damage. This value applies to the damage only, not the explosion range/radius.
    • Wild wolves can be aggressive. They will attack a player on sight, but it is still possible to tame them - unless the player fights back.
    • Tamed wolves HP will always be read from the worlds difficulty! (To avoid exploits like healing it in a region where it as a maximum of 100 hp and then move to a region with a maximum of 50 hp)
    • Player's damage will be calculated like this:
      Round( (usualDamage * damageMultiply) + damageAdd )
      damageAdd is an integer.
      damageMultiply is a floating point value.
      usualDamage is the players default damage (e.g. 2 with fists, 5 with diamond pickaxe) - might be different if another plugin modified the event damage before CustomDifficulty did!
      You can use different values for Player vs Player and Player vs Monster. You can also set negative values - but a negative multiplier is not recommended.
    • Regions are disabled by default! If you want to use them, go to your config.yml(not difficulty.yml!) and set useRegions for the specified actions to 'true' (without quotes!)
      I disabled them by default do increase performance (a tiny, tiny bit :p, unless you have 1 million regions in one world) and I guess not everyone will use them.
    • Change difficulty of (regions or worlds) by using the corresponding command where difficulty = one of your /difficulties/[difficulty].yml without the ".yml" extension!
    Commands and Permissions:
    Click me :)
    Permission node to receive rewards: 'CustomDifficulty.reward'
    Ops can use all commands and permission nodes are case sensitive!
    bold = mandatory
    underlined = optional
    " | " = "or"

    Difficulty-related commands:
    • /difficulty help - Displays the help / lists commands and descriptions.
      Permission node: 'CustomDifficulty.help'
    • /difficulty - Displays difficulty of the world the player is currently in - or of all worlds if the command user is no player (e.g. console)
      Permission node: 'CustomDifficulty.check'
    • /difficulty check <World | all> - Displays the difficulty of <World>, <all> worlds or the world the player is currently in if <World> is not specified. If the command user is no player, it will list all worlds.
      Permission node: 'CustomDifficulty.check'
    • /difficulty <change | set><World> <Difficulty> - Change difficulty of <World>, or the world you are currently in if none specified.
      Permission node: 'CustomDifficulty.change'
    • /difficulty reload - Reloads the config files. Use this after changing/adding difficulties or other configurations!
      Permission node: 'CustomDifficulty.reload'
    • /difficulty performance - Counts the used time for each feature for the next 10 seconds. Use this if you think the plugin causes lag, and to find out which part of it.
    Region-related commands (These require WorldEdit and WorldGuard):
    All commands start with /difficulty region *** - Replace "***" with one of the below:
    • help - Displays help about region commands.
      Permission node: 'CustomDifficulty.region.help'
    • <set | change> <World> <Difficulty> - Change difficulty of world <World>, or the world you are currently in, if <World> is not specified, to <Difficulty>
      Permission node: 'CustomDifficulty.region.set'
    • info <World> <RegionName> - Displays some information about region <RegionName> on world <World> or the world you are currently in.
      Permission node: 'CustomDifficulty.region.list'
    Note:
    If you are using WorldGuard regions, only the region commands 'info' and 'set | change' are available. To define new regions, you WorldGuard's '/region define' command.
    Changelog:
    Version 4.5.0 | 10/6/2011
    • Fixed: Squid spawn - for real this time
    • Fixed: min/max spawn distance works now.
    • Fixed: Ghats can now be friendly. (passive too, but they will behave as friendly. :/) Friendly ghasts hardly move though.
    • Added: OPs will receive a message on login, if a new of CD is available. Can be turned off, config.yml -> global.checkForUpdates
    • Added: Some code to make squids follow their targets. They don't do that naturally like other mobs. -.-
    • Ghasts and PigZombies take damage over time to simulate burning in sunlight. (If enabled)
    Old versions (open)
    Version 4.4.0 | 9/28/2011
    • Changed: Mob limit configuration; Nodes you have to use now:
    Code:
    global:
        mobLimit: 500 #= server Limit
    worlds:
        [worldname]:
            mobAggressiveLimit: 75
            mobPassiveLimit: 75
            mobFriendlyLimit: 75
            mobChunkLimit: 1
    
    You can remove all other limit nodes, they aren't used anymore.
    • Added: A new config node inside the difficulty files:
    Code:
    global:
        dropOnlyWhenKilledByPlayer: false
    
    Should be self-explanatory, but you have to add it manually if you want to enable it.
    • Fixed: Squid spawning. Was checking for lava instead of water..
    • Fixed: A NPE inside the spawn algorithm.
    • Fixed: Another NPE inside spawn algorithm (dev build only)
    • Added: Multiverse-Core will now load before CD does.
    • Added: Register support. All major economy plugins should work with CD now.
    • Removed: iConomy5 support. If you use iConomy5, you also have to download and use Register.
    Version 4.3.0 | 9/24/2011
    • Fixed: Feeding wolf in 1.8; Item amount decreases and Raw Flesh added as food.
    • Fixed: Getting rewards with projectiles (arrows) works now.
    • Fixed: Giants spawning in walls and small caves. - Some still spawn in walls or weird locations and suffocate, but they will be removed immediately.
    • Added: Configuration nodes for the new mobs Enderman, CaveSpider and Silverfish.
    • Added: Now spawn-able: Electrified Creeper, Spider-Jockeys, coloured sheep.
    • Changed: Mobs will now spawn in at least 2 block high rooms instead 1 block only. (To prevent Zombies and other tall mobs to suffocate.)
    Version 4.2.3 | 7/28/2011
    • Changed: Giants attack players up to 3 blocks below them instead of 1.
    • Changed: config.yml nodes: spawnInterval, aggressivenessInterval and burnsInSunlightInterval are now in the worlds.worldname section. You can remove the global ones.
    • Probably fixed: ClassCastException in aggressiveness task. (?)
    • Changed: performance command.
    • Fixed: Another bug, I just don't remember which one... I should start writing it down immediately :eek:
    Version 4.2.2 | 7/27/2011
    • Fixed: BurnsInSunlight now reads the interval correctly from the config. (=Slight performance increase if you don't use an interval of 1. Default is 20.)
    • Fixed: Mobs can now spawn in snowy areas.
    • Added: Giants should attack players now, they don't do it naturally... (Please test this :))
    • Changed: Aggressiveness check is now performed every X ticks for every player, instead of every X move-events for the corresponding player only.
    Version 4.2.1 | 7/26/2011
    • Fixed: NPE in mobCleanup
    • Removed: Creation of unused node 'ignoreInvalidWorldDifficulty' in config.yml
    Version 4.2.0 | 7/25/2011
    • Added: command '/difficulty performance'
    • Added: another way of reading the difficulty of a mob (for testing purposes). change useOldGetDifficulty in your config.yml if you want.
    Version 4.1.0 | 7/15/2011
    • Removed built-in regions. (Use WorldGuard, it provides more features for regions)
    • Added customizable drops.
    • Added: Players will receive rewards if their wolf kills a mob
    • Changed spawn-algorithm, it will use the chunks around a random player per run, instead of chunks around all players.
    • Changed check for old iConomy versions.
    Version 4.0.6 | 7/13/2011
    • Fixed an 'out of bounds exception' in the reward calculations.
    • Mobs shouldn't suffocate anymore if they spawn next to a wall.
    Version 4.0.5 | 7/12/2011
    • fixed automatically created node burnInSunlight to burnsInSunlight in the config.yml
    • probable fix for a concurrent modification exception.
    Version 4.0.4 | 7/11/2011
    • Added fix for incompatible iConomy versions.
    Version 4.0.3 | 7/10/2011
    • Major bug fixed within the spawn-algorithm. To be specific: instead of reading the maximum light level for a mob to spawn, it was reading the minimum height - this, of course, messed everything up.
    Version 4.0.2 | 7/10/2011
    • NPE fix regarding the loot multiplier. - A weird one :confused:
    Version 4.0.1 7/9/2011
    • Mobs shouldn't spawn in water anymore if spawnNotOn WATER and/or STATIONARY_WATER is used.
    Version 4.0.0 | 7/9/2011
    • Aggressiveness is now split into aggressivenessDay and aggressivenessNight.
    • Added option on which blocks mobs will only spawn, or will never spawn on.
    • Reward now requires permission 'CustomDifficulty.reward' to receive it.
    • Added option for min/max light level for mobs to spawn.
    • Added option for min/max height for mobs to spawn.
    • large rewrite of the plugin.
    Version 3.6.0 | 7/7/2011
    • Depreciation of rewards if you kill the same mob type repeatedly.
    • Bugfix of the isDay() function which resulted in wrong calculations for the BurnInSunlight feature. (It was checking for night instead of day - fail)
    • SpawnChance will only affect naturally spawned mobs. (I was too stupid to find it previously - lol). Also, It will never affect the spawn behaviour of 'monster' and giant in any way, even if a plugin spawns them as 'naturally'. If you use another plugin to make them spawn, it should be possible to change the spawn amount there.
    • isAggressive and burnsInSunlight features are now available for animals as well.
    Version 3.5.1 | 5/7/2011
    • Added check for a nearby mob spawner for reward and lootMultiplier.
    • Added success-rate of a mob spawning.
    Version 3.5.0 | 7/5/2011
    • NPE fix within the reward system.
    • Added WorldGuard-Regions support.
    • Added option to disable startup messages.
    • Region Commands now have their own classes.
    • Difficulties with uppercase letters work properly.
    Version 3.4.2 | 7/3/2011
    • Fixed another bug regarding region-persistence. :eek:
    Version 3.4.1 | 7/3/2011
    • Fixed monsters (except skeletons & zombies) starting to burn during night if burnsInSunlight was set to true.
    Version 3.4.0 | 7/2/2011
    • Fixed regions not saving into database due to a wrong function call.
      Thanks to @Kytsune for spotting this bug!
    • Added iConomy support for mob-killing rewards.
    • Added lootMultiplier feature
    Version 3.3.1 | 7/1/2011
    • NPE fix
    Version 3.3.0 | 7/1/2011
    • Added some (possible) bugfixes
    • Added possibility to change if (hostile) monsters burn in sunlight.
    Version 3.2.0 | 6/24/2011
    • Added changeable aggressiveness.
    • Changed the way I hooked into WorldEdit / Permissions.
    • Different settings for wild wolves and tamed wolves.
    • Tested against RB 928.
    Version 3.1.0 | 06/16/2011
    • Added configuration nodes for "monster" (the 'human' mob)
    Version 3.0.0 | 06/16/2011
    • Added regions. (Requires WorldEdit and HSQLDB)
    • Added possibility to create as many difficulties as you want
    • Changed commands a bit to clean up source code - it was a mess!
    • Some minor bug fixes.
    • Something else I don't remember right now. :eek:
    Version 2.2.2 | 06/14/2011
    • Removed "Error in [world].yml - Check HP settings for [monster]" debug message.
    Version 2.2.1 | 06/07/2011
    • Added option to change Player's damage for each difficulty (multiply and [add or subtract damage] or both)
    • Added checks if config nodes are set. (If not - Plugin won't touch the corresponding event)
    • Changed "/difficulty" command - displays now the current world - or all worlds if the command user is no player (e.g. console)
    • Added "/difficulty all" - will display the difficulty on all worlds.
    • Priorities of 'CREATURE_SPAWN' and 'ENTITY_DAMAGE' events have been set to 'Lowest'.
    • Bug-fix - Fixed error with slimes - it was looking for node "slime[size]..." instead of "slime.[size]..."
    • Some minor changes in the source code (e.g. refactoring)
    Version 2.1.1 | 06/06/2011
    • Added Multi-World support.
    • Added Permissions support.
    • Bug-fix - Slimes are now handled according to their size.
    Version 1.0.0 | 06/05/2011
    • Initial release.

    To-do
    • Limit mob spawning to biomes.
    • Suggestions!
    • Change Player's HP | Out of the scope of this plugin as it requires a custom health system. I might add later though... who knows.
    If you like this plugin and want to help me a lil bit - please [​IMG]. Thanks!

    ~Pardon my imperfect English. :>
     
    Snatch, bluehasia, Smokie23 and 27 others like this.
  2. Offline

    Pasukaru

    @morizuki
    Spawn light is already available (it's just not generated in the default file)
    Show Spoiler

    Code:
    monster:
        lightLevelMin: 0
        lightLevelMax: 15
    
    Spawn height is also possible:
    Code:
    monster:
        heightMin: 0
        heightMax: 127
    

    I'll add this to the default file.

    Uploaded v4.1.0
    Drops have been added, and built-in regions removed.

    How to use drops?
    add this line to any monster (you have to use sub-types e.g: creeper.powered: right, creeper: wrong)
    Code:
    monster:
        subtype:
            drops:
            - FEATHER:0:1:3:50
            - 35:4:1:1:100
    
    And here's the explanation how it works:
    Syntax is like this:
    a:b:c:d:e
    • a = Material name, or ID (e.g. DIAMOND or 264)
    • b = Meta information, for wool color, dye color, stuff like this
    • c = minimum amount
    • d = maximum amount
    • e = chance to drop in per cent
    this:
    • FEATHER:0:1:3:50
    Will make a mob drop 1 to 3 feathers with a 50% chance. (50% it won't drop any feathers)
    and this:
    • 35:4:1:1:100
    Will make a mob drop 1 yellow wool with 100% chance.

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

    morizuki

    can u give example config of slimes, creeper and a skeleton?
     
  4. Offline

    Pasukaru

    @morizuki
    It'll look like this:
    Code:
    creeper:
        ... (All the other stuff)
        powered:
            drops:
            - DIAMOND:0:1:1:10 #10% chance to drop a diamond
        unpowered:
            drops:
            - ...
    
    slime:
        small:
            drops:
            - FEATHER:0:1:3:50
        average:
        ...
    
    skeleton:
        drops:
        - BONE:0:1:2:33
    
     
    morizuki likes this.
  5. Offline

    morizuki

    Can wolves earn rewards? or still can't??
     
  6. Offline

    Pasukaru

    You should be able to receive a reward if a wolf kills a mob now.
    I forgot to add that to the change log :eek:
     
    morizuki likes this.
  7. Offline

    morizuki

    in Percentage.. Does it need to be a total of 100%? or not necessarily..?
     
  8. Offline

    Pasukaru

    Depends on what you wanna do with it.
    if you set it to 100%, the mob will always drop an item between minimum and maximum amount.
    if its set to 10%, it will have a 10% chance to drop an item between minimum and maximum amount and 90% to not drop it at all.
     
  9. Offline

    morizuki

    ok thanks.. another question.. for creeper.. If they explode.. will they drop the items?? if it is.. can u put an enable or disable it?
     
  10. Offline

    Pasukaru

    They shouldn't drop items when they explode. Well, I'm not sure, I didn't test for this.
     
  11. Offline

    morizuki

    ok ill try it.. if they drop it.. it's a little unfair XD
     
  12. Offline

    Nanite_bot2559

    Big Fan!!! Love the plugin sooo much, tested it out just now. Any chance that you can set individual commands for spawning mobs? I may just have missed it, but say I want to spawn a Giant at a given time; what command could I use? Also, can I make it periodic? I have an adventure quest in my server, and I only want the Giant to spawn when I want it to.
     
  13. Offline

    morizuki

    do your giant attack? mine not.. even if i removed all of my plugins :(
     
  14. Offline

    Nanite_bot2559

    Here let me test it bro, i killed it b4 it had a chance to hurt me

    -edit

    Ok, tested it and to my astonishment, the monster didn't attack me; as in it didn't chase me before it killed me. This is probably because notch didn't expand too much on giants to begin with, so they prob don't know how to attack. I went back again and changed monster settings; increased his line of sight etc., then he chased me. That's all in the config file.
     
  15. Offline

    diadem

    Any idea why mobs wouldn't spawn at all once I use /difficulty set on a world? (Even if that difficulty is default)

    Mobs only seem to spawn when I use none in the config file.
     
  16. Offline

    akeif

    Can't get the drops to work.
    Do i need to install iConomy or activate permissions?
    I've have all permissions - '*' for my user :\
    I've tried lots of variations in the config file.
    I've tried with only CustomDifficulty and Permissions plugin.
    Can't seem to understand what is wrong :p

    Code:
    cow:
        hp: 1
        damage: 0
        spawnChance: 100.0
        burnsInSunlight: false
        reward: 100.0
        lootMultiplier: 1
        spawnOnlyOn:
        - GRASS
        drops:
        - 2:0:1:1:100
        - 3:0:1:3:50
        - 4:0:1:4:100
        - 5:0:1:6:100
        - 6:0:0:1:100
        - 7:0:4:1:100
        - 8:0:1:1:100
        aggressivenessDay: aggressive
        aggressivenessNight: aggressive
     
  17. Offline

    Pasukaru

    @diadem
    Make sure none of the mob limits is set to zero and the 'possibleSpawnCreatures' list contains valid creature types.
    @akeif
    I copied your part and it works for me without problems. Did you set the difficulty of your world to the one you modified?
    '/difficulty' should print the name of the config file.
     
  18. Offline

    akeif

    Thanks for the quick response!!! And thanks for the plugin by the way. It's absolutly amazing!
    /difficulty show me difficulties I set for my words.
    Here is my config file (in a .txt)
    I've set only cow to spawn and it work.
    All other config work correctly.
     

    Attached Files:

  19. Offline

    Linkage

    Think you could add BOSEconomy support? I would love to pay my players for killing monsters.
     
  20. Offline

    diadem

    My setup file: http://pastebin.com/3SLHgJBC
    My difficulty file: (default) http://pastebin.com/aKLxnLRx (hard) http://pastebin.com/MkZi8eQq

    Everything seems to be working when the world is set to difficult none but as soon as I try /difficulty set default or /difficulty set hard mobs stop spawning.

    Plugins:
    MultiVerse, Permissions (2.7.2), Runecraft, iConomyChestShop, Commandbook, MineQuery, phpBBManager, WorldEdit, PortalStick, Movecraft, citizens, towny, mcbans, phpbbpm, minecraftviewer, remotetoolkitplugin, worldguard (5.2.2), residence, dynmap, helppages, iconomy (5.01), lockette, iAuction, mcMMO, uQuest, CustomDifficulty, VanishNoPickup, BigBrother, NoCheat, WormholeXTreme
     
  21. Offline

    Darcion

    after some changes in numbers or boolean rows i tried to reload and get an internal error

    Code:
    2011-07-16 14:57:09 [INFO] [CustomDifficulty] Reloading...
    2011-07-16 14:57:09 [INFO] [CustomDifficulty] Found the following 5 difficulties:
    hard, boss, easy, default, normal.
    2011-07-16 14:57:09 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'difficulty' in plugin CustomDifficulty v4.1.0
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
        at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:298)
        at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:711)
        at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:676)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:669)
        at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
        at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
        at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:84)
        at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
        at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
        at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
        at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.lang.NullPointerException
        at Pasukaru.CustomDifficulty.hooks.WorldGuard.initializeFlags(WorldGuard.java:64)
        at Pasukaru.CustomDifficulty.hooks.WorldGuard.initialize(WorldGuard.java:48)
        at Pasukaru.CustomDifficulty.util.Manager.useWorldGuardRegions(Manager.java:282)
        at Pasukaru.CustomDifficulty.util.Manager.reload(Manager.java:116)
        at Pasukaru.CustomDifficulty.commands.Reload.onCommand(Reload.java:17)
        at Pasukaru.CustomDifficulty.commands.DifficultyCommands.onCommand(DifficultyCommands.java:26)
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
        ... 12 more
    i tried again and then it worked or not?

    Code:
    2011-07-16 14:57:21 [INFO] [CustomDifficulty] Reloading...
    2011-07-16 14:57:21 [INFO] [CustomDifficulty] Found the following 5 difficulties: hard, boss, easy, default, normal.
    2011-07-16 14:57:21 [INFO] [CustomDifficulty] Will use WorldGuard-Regions!
    2011-07-16 14:57:21 [INFO] [CustomDifficulty] Spawning activated for world free2playV2 2011-07-16 14:57:21 [INFO] [CustomDifficulty] Spawning activated for world free2playV2_nether
    2011-07-16 14:57:21 [INFO] [CustomDifficulty] Spawning activated for world free2fly 2011-07-16 14:57:21 [INFO] [CustomDifficulty] Reloading done. (0.045s)
    2011-07-16 14:57:21 [INFO] [CustomDifficulty] Spawning deactivated for world free2playV2 2011-07-16 14:57:21 [INFO] [CustomDifficulty] Spawning deactivated for world free2playV2_nether
    2011-07-16 14:57:21 [INFO] [CustomDifficulty] Spawning deactivated for world free2fly
    
     
  22. Offline

    Pasukaru

    @diadem
    Hmm, I copied your config files and mobs spawn just fine. Whats your bukkit build?
    I don't know all of your plugins, maybe one of them cancels custom mob spawn events?
    Any errors on

    @Darcion
    Something inside WorldGuard wasn't loaded. Did you create a new world?
    I'll add something to avoid this the next time.
    I'm not sure why WorldGuard didn't load the manager, but without it regions of the involved world probably won't work

    Did you set valid difficulties for your worlds? Mob spawning will disable itself with invalid world difficulties.
    Maybe it's because of WorldGuard, try reloading the server if it won't work.
     
  23. Offline

    Darcion

    @Pasukaru

    i dont understand your description, i made new configs and changed some parameters and got this error
     
  24. Offline

    alfskan

    what difference betwenn chunks around a random player per run and chunks around all players?
     
  25. Offline

    diadem

    I took a quick peak at the source code and i think i found the issue - it was using a server limiter for the total mob count. I've got so many worlds with so many mobs I break the 500 per server pretty fast. I put the server limit to 5000 because I really only care about a world limit.

    I think that count may also be generating a can't keep up message too.

    edit: Would it be possible to not check countCreatures if I set the server limit to 0?

    Also, I'm not sure how it works in java, but in C# doing cast checks are kinda heavy... so it may be faster to just get the total player count and subtract it from the total mob count then search every mob to see if it's a player (it'll eliminate the need for a loop, too).
     
  26. Offline

    locutus

    I've got an exception on load:

    Code:
    15:24:16 [SEVERE] Could not pass event WORLD_LOAD to CustomDifficulty
    java.lang.NoSuchMethodError: com.sk89q.worldguard.bukkit.WorldGuardPlugin.getRegionManager(Lorg/bukkit/World;)Lcom/sk89q/worldguard/protection/managers/RegionManager;
            at Pasukaru.CustomDifficulty.hooks.WorldGuard.initializeFlags(WorldGuard.java:63)
            at Pasukaru.CustomDifficulty.hooks.WorldGuard.initialize(WorldGuard.java:48)
            at Pasukaru.CustomDifficulty.util.Manager.useWorldGuardRegions(Manager.java:282)
            at Pasukaru.CustomDifficulty.util.Manager.reload(Manager.java:116)
            at Pasukaru.CustomDifficulty.CustomDifficultyWorldListener.onWorldLoad(CustomDifficultyWorldListener.java:30)
            at org.bukkit.plugin.java.JavaPluginLoader$50.execute(JavaPluginLoader.java:591)
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:58)
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:321)
            at org.bukkit.craftbukkit.CraftServer.createWorld(CraftServer.java:439)
            at org.bukkit.craftbukkit.CraftServer.createWorld(CraftServer.java:371)
            at org.bukkit.craftbukkit.CraftServer.createWorld(CraftServer.java:367)
            at de.luricos.bukkit.WormholeXTreme.Wormhole.model.StargateDBManager.loadStargates(StargateDBManager.java:201)
            at de.luricos.bukkit.WormholeXTreme.Wormhole.WormholeXTreme.onEnable(WormholeXTreme.java:192)
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:126)
            at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:857)
            at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:264)
            at org.bukkit.craftbukkit.CraftServer.loadPlugin(CraftServer.java:151)
            at org.bukkit.craftbukkit.CraftServer.enablePlugins(CraftServer.java:136)
            at net.minecraft.server.MinecraftServer.e(MinecraftServer.java:284)
            at net.minecraft.server.MinecraftServer.a(MinecraftServer.java:271)
            at net.minecraft.server.MinecraftServer.init(MinecraftServer.java:148)
            at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:335)
    
    I'm running 953 on debian, java6. ANything else you need, let me know.
     
  27. 22:42:08 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'difficulty' in plugin CustomDifficulty v4.1.0
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:37)
    at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:129)
    at org.bukkit.craftbukkit.CraftServer.dispatchCommand(CraftServer.java:299)
    at net.minecraft.server.NetServerHandler.handleCommand(NetServerHandler.java:713)
    at net.minecraft.server.NetServerHandler.chat(NetServerHandler.java:677)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:670)
    at net.minecraft.server.Packet3Chat.a(Packet3Chat.java:33)
    at net.minecraft.server.NetworkManager.b(NetworkManager.java:226)
    at net.minecraft.server.NetServerHandler.a(NetServerHandler.java:85)
    at net.minecraft.server.NetworkListenThread.a(SourceFile:105)
    at net.minecraft.server.MinecraftServer.h(MinecraftServer.java:451)
    at net.minecraft.server.MinecraftServer.run(MinecraftServer.java:361)
    at net.minecraft.server.ThreadServerApplication.run(SourceFile:422)
    Caused by: java.lang.NoSuchMethodError: com.sk89q.worldguard.bukkit.WorldGuardPlugin.getRegionManager(Lorg/bukkit/World;)Lcom/sk89q/worldguard/protection/managers/RegionManager;
    at Pasukaru.CustomDifficulty.hooks.WorldGuard.getDifficulty(WorldGuard.java:126)
    at Pasukaru.CustomDifficulty.util.Manager.getDifficulty(Manager.java:245)
    at Pasukaru.CustomDifficulty.commands.Check.onCommand(Check.java:33)
    at Pasukaru.CustomDifficulty.commands.DifficultyCommands.onCommand(DifficultyCommands.java:17)
    at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
    ... 12 more
    >
    [/CODE]

    Allways when iam trying to use the command /difficulty or /difficulty region this error spams in my Console.

    and i cant make a custom region. Iam trying using this command

    /difficulty region set rpg tet giant

    rpg= worldname
    tet= region name
    giant= custom difficulty.yml

    but all what i get is "An internal error occurred while attempting to perform this command"

    any1 can help me ...iam lost :(
     
  28. Offline

    Dimochka

    Plugin is getting better and better, could you please make wiki or reference for configuration options?

    Now they can be confusing, for instance
    Code:
            mobLimit: 250
            naturalMobLimit: 225
    
    What is the difference between the two?

    Also add Spider Jokey's plox (perhaps as an option for spider mob to increase Spider Jokey spawning change, like spiderJokeyChance: 3.5)! There's a mod to spawn them, maybe you can incorporate it into yours?
     
  29. Offline

    gbumoon

    Does anyone know what would I change in plugins\CustomDifficulty\Difficulties\default.yml to make the Skeletons drop more arrows?
     
  30. Offline

    Darcion

    ok ich schreib das mal grad ins deutsche.

    wenn ich in der config.yml

    diesen teil hier difficulty: none
    in eine andere schwierigkeit ändere spawnen garkeine monster mehr, nirgends
    und wenn ich eine zone zugewiesen habe mit einer anderen schwierigkeit, ändert sich garnichts, es scheint so als würde "none" benutzt, ändere ich also alles in die höchste oder eine der anderen unveränderten schwierigkeiten geht ncihts mehr.

    hier mal die welt und die einstellung


    Code:
    worlds:
        free2playV2:
            useRegions:
                mobHP: true
                aggressiveness: true
                burnsInSunlight: false
                mobDamage: true
                playerVsPlayer: false
                playerVsMonster: true
                reward: false
                lootMultiplier: false
                spawnAlgorithm: false
                burnInSunlight: false
                drops: false
            mobLimit: 250
            naturalMobLimit: 225
            mobChunkLimit: 1
            difficulty: none
    und einer der schwierigkeitsgrade

    Code:
    global:
        rewardDepreciation: 0.0
        possibleSpawnCreatures:
        - chicken
        - creeper
        - pig
        - sheep
        - skeleton
        - slime
        - spider
        - squid
        - wolf
        - zombie
    player:
        vsMonsterDamageAdd: 0
        vsPlayerDamageAdd: 0
        vsPlayerDamageMultiply: 1.0
        vsMonsterDamageMultiply: 1.0
    zombie:
        hp: 200
        damage: 40
        spawnChance: 100.0
        burnsInSunlight: true
        aggressivenessDay: aggressive
        aggressivenessNight: aggressive
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 7
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        spawnNotOn:
        - GLASS
        - STEP
        - WOOD_STAIRS
        - COBBLESTONE_STAIRS
    skeleton:
        hp: 200
        damage: 40
        spawnChance: 100.0
        burnsInSunlight: true
        aggressivenessDay: aggressive
        aggressivenessNight: aggressive
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 7
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        spawnNotOn:
        - GLASS
        - STEP
        - WOOD_STAIRS
        - COBBLESTONE_STAIRS
    creeper:
        spawnChance: 100.0
        lightLevelMin: 0
        lightLevelMax: 7
        heightMin: 0
        heightMax: 127
        spawnOnlyOn:
        spawnNotOn:
        - GLASS
        - STEP
        - WOOD_STAIRS
        - COBBLESTONE_STAIRS
        powered:
            hp: 20
            damage: 1.0
            burnsInSunlight: false
            aggressivenessDay: aggressive
            aggressivenessNight: aggressive
            reward: 0.0
            lootMultiplier: 1
            drops:
        unpowered:
            hp: 20
            damage: 1.0
            burnsInSunlight: false
            aggressivenessDay: aggressive
            aggressivenessNight: aggressive
            reward: 0.0
            lootMultiplier: 1
            drops:
    spider:
        hp: 200
        damage: 20
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: passive
        aggressivenessNight: aggressive
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 7
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        spawnNotOn:
        - GLASS
        - STEP
        - WOOD_STAIRS
        - COBBLESTONE_STAIRS
    slime:
        spawnChance: 100.0
        lightLevelMin: 0
        lightLevelMax: 15
        heightMin: 0
        heightMax: 15
        spawnOnlyOn:
        spawnNotOn:
        huge:
            hp: 320
            damage: 40
            burnsInSunlight: false
            reward: 0.0
            lootMultiplier: 1
            drops:
        big:
            hp: 160
            damage: 40
            burnsInSunlight: false
            reward: 0.0
            lootMultiplier: 1
            drops:
        average:
            hp: 160
            damage: 20
            burnsInSunlight: false
            reward: 0.0
            lootMultiplier: 1
            drops:
        small:
            hp: 120
            damage: 10
            burnsInSunlight: false
            reward: 0.0
            lootMultiplier: 1
            reward: 1
            drops:
    pigzombie:
        hp: 200
        damage: 50
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: passive
        aggressivenessNight: passive
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        spawnNotOn:
    ghast:
        hp: 100
        damage: 70
        spawnChance: 100.0
        burnsInSunlight: false
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
    giant:
        hp: 500
        damage: 100
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: passive
        aggressivenessNight: passive
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        spawnNotOn:
        - GLASS
        - STEP
        - WOOD_STAIRS
        - COBBLESTONE_STAIRS
    monster:
        hp: 300
        damage: 50
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: passive
        aggressivenessNight: passive
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        spawnNotOn:
        - GLASS
        - STEP
        - WOOD_STAIRS
        - COBBLESTONE_STAIRS
    wolf:
        spawnChance: 100.0
        lightLevelMin: 7
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        spawnOnlyOn:
        - GRASS
        spawnNotOn:
        wild:
            hp: 80
            damage: 20
            burnsInSunlight: false
            aggressivenessDay: passive
            aggressivenessNight: passive
            reward: 0.0
            lootMultiplier: 1
            drops:
        tamed:
            hp: 160
            damage: 10
            burnsInSunlight: false
            aggressivenessDay: passive
            aggressivenessNight: passive
            reward: 0.0
            lootMultiplier: 1
            drops:
    cow:
        hp: 10
        damage: 0
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: friendly
        aggressivenessNight: friendly
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 9
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        - GRASS
        spawnNotOn:
    pig:
        hp: 10
        damage: 0
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: friendly
        aggressivenessNight: friendly
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 9
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        - GRASS
        spawnNotOn:
    chicken:
        hp: 10
        damage: 0
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: friendly
        aggressivenessNight: friendly
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 9
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        - GRASS
        spawnNotOn:
    sheep:
        hp: 10
        damage: 0
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: friendly
        aggressivenessNight: friendly
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 9
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        - GRASS
        spawnNotOn:
    squid:
        hp: 10
        damage: 0
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: friendly
        aggressivenessNight: friendly
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 15
        heightMin: 0
        heightMax: 127
        drops:

    ich mache immer /difficulty reload und immer beim ersten mal kommt ein internal error und beim zweiten mal ab da immer mit erfolg, doch scheinbar geht nichts mit version 4.1.0
     
  31. Offline

    Dimochka

    Settlers report that wolf spawn dramatically increased since the new version of CustomDifficulty. Did you change the algorithm when introducing `spawnOnlyOn' option? Looks like they appear at all biomes with equal chances now. Towns are being overrun with hungry wolves and militia is not yet capable to get the situation under control.
     

Share This Page