[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

    jmcneely

    I am really loving this plugin. I always had hostile mobs turned off because I hated the rate that hostile mobs would spawn. But this plugin fixes all that and more. I now have slimes on the surface with a rare chance of running into one, creepers are rare and spawn all day long but passive during the day, spiders are only found in caves, and you don't even want to hit a chicken(2 hits and your out). This plugin is so much fun :)

    The only thing I would like to suggest is support for permissionsbukkit.
     
  3. Offline

    RugRats

    Decimal support please like 0.5 for half a heart damage?
     
  4. Offline

    topsub

    my understanding is 1 = half a heart
     
  5. Offline

    RugRats

    Really? :eek:
     
  6. Offline

    topsub

    I am having trouble having this plugin detect that my Hell multiverse has a custom difficulty. When i do a /difficulty check on all it says my hell world is none but my config says something else:

    I do have bk: 1000


    Issue solved.. i had to do a /difficulty reload then it picked up everything
     
  7. Is Multiverse starting BEFOR or AFTER CustomDifficulty? If so just do a /difficulty reload and it should work, this is a known issue ;)

    Yes the game works like that, 10 Hearts are 20 Hitpoints, so 1 HP is half a Heart ;)

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

    RugRats

    You again. Just don't ever help me on this forum you annoy me. My question was already answered. I don't want your help thanks.
     
  9. Offline

    Exxter

    Hi There,

    this is a really really great plugin. I have some trouble to configure it right. I want that spawn more monsters in a special world. I have change the config.yml:

    Code:
    global:
        savePlayerKills: 3
        useOldGetDifficulty: false
        initMessages: true
        useWorldGuardRegions: false
        minSpawnDistance: 10.0
        maxSpawnDistance: 222.0
        mobSpawnerRadius: 5.0
        naturalMobLimit: 2000
        mobLimit: 2000
    worlds:
        erste-mp-karte:
            mobLimit: 1000
            naturalMobLimit: 1000
            mobChunkLimit: 2
            difficulty: hard
            burnsInSunlightInterval: 20
            spawnInterval: 1
            aggressivenessInterval: 1
            useRegions:
                aggressiveness: false
                burnsInSunlight: false
                mobHP: false
                mobDamage: false
                playerVsPlayer: false
                playerVsMonster: false
                reward: false
                lootMultiplier: false
                spawnAlgorithm: false
    
    But there are not more monsters and sometimes no more? Which options I have to set, that more monsters will spawn?

    The second thing is, i have change my Difficulties/hard.yml as follows:

    Code:
    skeleton:
        hp: 20
        damage: 4
        spawnChance: 100.0
        burnsInSunlight: false
        aggressivenessDay: aggressive
        aggressivenessNight: aggressive
        reward: 0.0
        lootMultiplier: 1
        lightLevelMin: 0
        lightLevelMax: 0
        heightMin: 0
        heightMax: 127
        drops:
        spawnOnlyOn:
        spawnNotOn:
    
    but Skeletons want spawn at day. I have change wolfes to agressive but there are passive? (previously I enter /difficulty set hard)

    Any Ideas?
     
  10. Offline

    Takel

    MobChunkLimit is the setting you'll want to change if you want to have a higher monster density. The SpawnInterval is how long in server ticks before the plug-in attempts to spawn new mobs. I wouldn't recommend setting the SpawnInterval or the AggressivenessInterval to 1 because that will mean the server will attempt to adjust aggressiveness or attempt to spawn new mobs 20 times per second. Your server will start to smoke with that setting.

    Double check to make sure that the special world is loading a difficulty. If the special world isn't the default world for the server, it's probably not loading any difficulty setting for it because Custom Difficulty tends to load before multi-world plug-ins, which means that Custom Difficulty doesn't know that more worlds exists. You'll need to do a /difficulty reload after every server restart, or rename the CustomDifficulty.jar file so that it'll load last. (Bukkit does load plug-ins alphabetically)
     
  11. Offline

    Exxter

    Perfect, now everything works, thank you very much!! :D
     
  12. Offline

    LucidLethargy

    As much as I love a good guessing game... how does one configure the drop formats?
     
  13. Offline

    topsub

    I get this error now, Any Ideas? I had issues when i started trying to use region from worldguard:
    I don't have this region defined in the config.yml but i am not sure if i have to?

    Code:
    2011-08-15 23:41:37 [SEVERE] null
    org.bukkit.command.CommandException: Unhandled exception executing command 'difficulty' in plugin CustomDifficulty v4.2.3
            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:320)
            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.NullPointerException
            at Pasukaru.CustomDifficulty.hooks.WorldGuard.getDifficulty(WorldGuard.java:42)
            at Pasukaru.CustomDifficulty.util.Manager.getDifficulty(Manager.java:149)
            at Pasukaru.CustomDifficulty.util.Manager.reloadEntityDifficulties(Manager.java:105)
            at Pasukaru.CustomDifficulty.util.Manager.reload(Manager.java:387)
            at Pasukaru.CustomDifficulty.commands.Reload.onCommand(Reload.java:17)
            at Pasukaru.CustomDifficulty.commands.DifficultyCommands.onCommand(DifficultyCommands.java:37)
            at org.bukkit.command.PluginCommand.execute(PluginCommand.java:35)
            ... 12 more
     
  14. Offline

    Tauryuu

    You left out configuration for cows. Moo. :(

    EDIT: Nvm, you just never mentioned them in the Wiki. :p
     
  15. Offline

    colin8696909

    this isn't working for me??? i keep changeing the damage and heath in the config file but it just stays the same...
     
  16. @Pasukaru:

    I have noticed that you cancel the event when a wolf is fed, so the player keeps the pork. Would it be possible to add an option, so that we can configure if a player looses or keeps the pork? I'd do it myself if needed, it's just that i feel that i'm not the only one who might find said option a 'Nice-to-have'.
     
  17. Offline

    Mercury

    @Pasukaru - Is it possible to spawn?
    Electrified Creeper
    Spider Jocky
     
  18. Offline

    Rhas

    Is it possible to change the chunk limit just for a region and not the whole world?

    Like if I want to have a castle full of monsters, but not a million zombies everywhere.

    The only two options I seem to have is lots of monsters everywhere or almost none at all.
     
  19. Offline

    ray0911

    For some reason before 1060 snowball with this plugin was causing damage. My players loved it but now it does not work anymore. Any clue what happend?
     
  20. Offline

    mrvertigo27

    i cant find an example of modified drops and the syntax to use for it im trying to use
    Show Spoiler
    zombie:
    hp: 30
    damage: 2
    spawnChance: 15.0
    burnsInSunlight: true
    aggressivenessDay: aggressive
    aggressivenessNight: aggressive
    reward: 4.0
    lootMultiplier: 3
    lightLevelMin: 0
    lightLevelMax: 5
    heightMin: 60
    heightMax: 100
    drops: 303
    spawnOnlyOn:
    spawnNotOn:
    - SOULSAND
    - GLASS
    - STEP
    - WOOD_STAIRS
    - COBBLESTONE_STAIRS


    and its not dropping with the item code when listed this way, would I need to list drops like the spawnonlyon and spawn not on lists?
     
  21. I'll qoute myself here, i know you shouldn't do it, but its easier.

     
  22. Offline

    Moromillas

    Just checking. When setting zombies and skeletons to spawn in daytime conditions with no burn, should they have the occasional flicker with that fire sprite?

    Edit: Wait... Should I be using 'burnsInSunlight: false' with an 's' after burn? Or, 'burnInSunlight: false' with no 's'?
     
  23. Offline

    Lynxdragon

    Suggestion: Use a 3rd party system for health and ignore bukkits.

    Eg. Normally 1 heart is 1 health, but simply use a separate counter to calculate health, then reflect it upon the players actual health when it reaches an even heart.

    Eg. Health-Multiplyer-Player = 2 (doubles players health)
    making 1 heart = 2 health, Now simply keep track of this health in the plugin and whenever the health reaches an even heart, set the actual health of the player to create the illusion of more health.

    eg.
    If playerhealth is usually 10, and multiplyer is 2 then difficultyplayerhealth is 20
    When a player is damaged, it reduces difficultyplayerhealth and does not effect playerhealth unless;
    When playerhealth is a duplicate of 2(or more depending on multiplyer)(2, 4,6,8,10,12,14,16,18,20) then set playerhealth 1/2 of difficultyplayerhealth to create the illusion of 1 heart being 4 health.

    This is not java code, its Au3. Used to explain roughly.
    Code:
    $Playerhealth=10 ;Default Health Value(dont change unless nessisary)
    $Healthmultiplyer=2 ;Multiplyer of Default
    $Difficultyplayerhealth = Playerhealth * $Healthmultiplyer ; Playerhealth x multiplyer, Gives max health
    $Health = Difficultyplayerhealth / $Healthmultiplyer ;Calculates client side health
    If EventDamage then
        $Damage = EntGetDamage
        $Difficultyplayerhealth = $Difficultyplayerhealth - $Damage
        Set (playerhealth) = $health
       If $Difficultyplayerhealth = 0 then
           Slay (player)
       endif
    endif
    Obviously you would probably just need to dissable normal damage, and make your plugin use difficultyplayerdamage as its own health system. You could intergrate bukkitcontrib or something to allow proper display of health as 1 heart = 1 hp as an optional feature.

    You would also need to divide any healing received when using bread/pork/etc or regions from worldguard to effect your difficultyplayerhealth not the players health by the multiplier.

    Also, Damaging things like other plugins would need to be managed or requested to change there code possibly. Either way im just speaking my technical bull so i hope this makes sense.

    Great plugin. It makes monsters much more manageable!
     
  24. Offline

    Thyrin

    How do I change the difficulty for a world that is created by multiverse? I created a new world with multiverse called 'Dungeon' but it doesn't show up in the CustomDifficulty config, it only shows world and world_nether.

    Also when I use the /difficulty set [difficulty] command it changes the difficulty, but it changed back to default when the server is restarted.

    Am I doing something wrong ?
     
  25. I've got a suggestion for this plug in, would it be possible to have mobs drop mobs on death? I was thinking it would be cool if I could set zombies to have a 33% chance to drop another zombie when they die, sort of like it's coming back to life. Being able to set player drops would be cool too.

    @Thyrin I think you need to just make a whole new section under worlds for you dungeon world.

    eg.
    Worlds:​
    world:​
    -blah​
    -blah blah​
    world_nether:​
    -blarg​
    dungeon:​
    -Bjork​
     
  26. Offline

    Thyrin

    Tried that, doesn't work.
     
  27. Offline

    Sepulzera

  28. Offline

    mrvertigo27

    ok, im back to pester a bit more... i cant seem to keep squids from spawning. i created an Atlantis style map using the CleenroomGenerator plugin. ive tried telling custom difficulty not to spawn them. and worldguard.... and i think one other plugin. is there any conflicts that can cause this? you'll find a link to my current plugin list HERE
    ive tried to look everywhere for this answer.

    thanks in advance!
     
  29. Offline

    Danelli

    help! I can't change my world's difficulty. Its say hard.yml does not exist. Pleazzz help me:(
     
  30. Offline

    Sepulzera

    Move to "Bukkit\plugins\CustomDifficulty\Difficulties" and create (or copy and rename) a "hard.yml"-file first.
     

Share This Page