Difficulty Makes Mobs Not Spawn

confirmed through vigorous testing this is a difficulty issue

  Type: Armor_stand
  #Disguise: Falling_Block spawner
  Faction: Mobs
  Options:
    Silent: true
    Interactable: false
  #  Invisible: true
    CanMove: false
  Skills:
  - skill{s=MaxSpawns} @self ~onSpawn

  - command{c="say Desert Caster.level = <caster.level>";asTarget=true;asOp=true} @NearestPlayer{r=20} ~onTimer:100
  - command{c="say Desert Caster.maxspawns = <caster.var.maxspawns>";asTarget=true;asOp=true} @NearestPlayer{r=20} ~onTimer:100
  - command{c="say Desert Caster.children = <caster.children.size>";asTarget=true;asOp=true} @NearestPlayer{r=20} ~onTimer:100
  - command{c="say Despawning";asTarget=true;asOp=true} @NearestPlayer{r=20} ~onDespawn
  - command{c="say -----";asTarget=true;asOp=true} @NearestPlayer{r=20} ~onTimer:100
  - command{c="say Mob Spawned";asTarget=true;asOp=true} @NearestPlayer{r=20} ~onTimer:100 ?playerwithin{d=15} ?comparevalues{value1=<caster.children.size>;operator=<=;value2=<caster.level>;type=INTEGER} ?variableInRange{var=caster.maxspawns;value=>-1}
  
  - randomskill{skills=SpawnSkeletonAssassin,SpawnGuardianZombie,SpawnMummy,SpawnSupport,SpawnLivingSand,SpawnGhost1,SpawnGhost2,SpawnZombie,SpawnSkeleton,SpawnHusk,SpawnCreeper,SpawnZombie,SpawnHusk} @self ~onTimer:100 ?playerwithin{d=15} ?comparevalues{value1=<caster.children.size>;operator=<=;value2=<caster.level>;type=INTEGER} ?variableInRange{var=caster.maxspawns;value=>-1}
  - variablesubtract{var=caster.maxspawns;amount=1} @self ~onTimer:100 ?playerwithin{d=15} ?comparevalues{value1=<caster.children.size>;operator=<=;value2=<caster.level>;type=INTEGER} ?variableInRange{var=caster.maxspawns;value=>-1}
  - remove{delay=25} @self ~onTimer:100 ?variableInRange{var=caster.maxspawns;value=<0}```
**^ updated mob to not have disguise**


```[08:11:16 INFO]: NibKilgharrah issued server command: /mm mobs spawn DesertSpawner:1
[08:11:16 INFO]: [Not Secure] [NibKilgharrah] Skill Skill.playercount 1
[08:11:16 INFO]: [Not Secure] [NibKilgharrah] Skill Skill.maxspawns = 4
[08:11:19 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.level = 1
[08:11:19 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.maxspawns = 2
[08:11:19 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.children = 0
[08:11:19 INFO]: [Not Secure] [NibKilgharrah] -----
[08:11:19 INFO]: [Not Secure] [NibKilgharrah] Mob Spawned
[08:11:24 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.level = 1
[08:11:24 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.maxspawns = 0
[08:11:24 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.children = 0
[08:11:24 INFO]: [Not Secure] [NibKilgharrah] -----
[08:11:24 INFO]: [Not Secure] [NibKilgharrah] Mob Spawned
[08:11:29 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.level = 1
[08:11:29 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.maxspawns = -1
[08:11:29 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.children = 0
[08:11:29 INFO]: [Not Secure] [NibKilgharrah] Mob Spawned
[08:11:29 INFO]: [Not Secure] [NibKilgharrah] -----
[08:11:30 INFO]: [Not Secure] [NibKilgharrah] Despawning```
**^ Summoning a level1 DesertSpawner in overworld with /mm mobs spawn DesertSpawner:1**


```[08:14:23 INFO]: NibKilgharrah issued server command: /md play TESTING
[08:14:23 INFO]: Preparing start region for dimension minecraft:testing_0
[08:14:23 INFO]: Time elapsed: 0 ms
[08:14:23 INFO]: [WorldGuard] (TESTING_0) TNT ignition is PERMITTED.
[08:14:23 INFO]: [WorldGuard] (TESTING_0) Lighters are PERMITTED.
[08:14:23 INFO]: [WorldGuard] (TESTING_0) Lava fire is PERMITTED.
[08:14:23 INFO]: [WorldGuard] (TESTING_0) Fire spread is UNRESTRICTED.
[08:14:23 INFO]: [WorldGuard] Loaded configuration for world 'TESTING_0'
[08:14:23 INFO]: [MythicDungeons] -= Loading world into memory TESTING_0 processed in 89ms. =-
[08:14:23 INFO]: [MythicDungeons] -= Loading Dungeon TESTING processed in 137ms. =-
[08:14:28 INFO]: [Not Secure] [NibKilgharrah] Skill Skill.playercount 1
[08:14:28 INFO]: [Not Secure] [NibKilgharrah] Skill Skill.maxspawns = 4
[08:14:29 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.level = 1
[08:14:29 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.maxspawns = 2
[08:14:29 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.children = 0
[08:14:29 INFO]: [Not Secure] [NibKilgharrah] -----
[08:14:29 INFO]: [Not Secure] [NibKilgharrah] Mob Spawned
[08:14:34 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.level = 1
[08:14:34 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.maxspawns = 0
[08:14:34 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.children = 0
[08:14:34 INFO]: [Not Secure] [NibKilgharrah] -----
[08:14:34 INFO]: [Not Secure] [NibKilgharrah] Mob Spawned
[08:14:39 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.level = 1
[08:14:39 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.maxspawns = -1
[08:14:39 INFO]: [Not Secure] [NibKilgharrah] Desert Caster.children = 0
[08:14:39 INFO]: [Not Secure] [NibKilgharrah] -----
[08:14:39 INFO]: [Not Secure] [NibKilgharrah] Mob Spawned
[08:14:40 INFO]: No player was found
[08:14:40 INFO]: [Not Secure] [NibKilgharrah] Despawning```
**^ Dungeon WITHOUT difficulty /md play TESTING**


```[08:21:54 INFO]: NibKilgharrah issued server command: /mm debug 5
[08:22:00 INFO]: NibKilgharrah issued server command: /md play TESTING:CASUAL
[08:22:00 INFO]: Preparing start region for dimension minecraft:testing_0
[08:22:00 INFO]: Time elapsed: 0 ms
[08:22:00 INFO]: [MythicDungeons] -= Loading world into memory TESTING_0 processed in 16ms. =-
[08:22:00 INFO]: [MythicDungeons] -= Loading Dungeon TESTING processed in 66ms. =-
[08:22:00 INFO]: [MythicMobs] [i] Updating Armor
[08:22:28 INFO]: NibKilgharrah issued server command: /md leave
[08:22:28 INFO]: [MythicMobs] [i] Updating Armor
[08:22:28 INFO]: [MythicDungeons] Cleaning up instance 'TESTING_0'...
[08:22:28 INFO]: [ChunkHolderManager] Waiting 60s for chunk system to halt for world 'TESTING_0'
[08:22:28 INFO]: [ChunkHolderManager] Halted chunk system for world 'TESTING_0'
[08:22:28 INFO]: [ChunkHolderManager] Waiting 60s for chunk I/O to halt for world 'TESTING_0'
[08:22:28 INFO]: [ChunkHolderManager] Halted I/O scheduler for world 'TESTING_0'
[08:22:28 INFO]: [MythicDungeons] -= Unloading dungeon world TESTING_0 processed in 4ms. =-
[08:22:32 INFO]: NibKilgharrah issued server command: /mm debug 0```
**^Dungeon WITH difficulty /md play TESTING:CASUAL**


```[08:25:52 INFO]: NibKilgharrah issued server command: /md play TESTING:SUICIDE
[08:25:52 INFO]: Preparing start region for dimension minecraft:testing_0
[08:25:52 INFO]: Time elapsed: 0 ms
[08:25:52 INFO]: [MythicDungeons] -= Loading world into memory TESTING_0 processed in 40ms. =-
[08:25:52 INFO]: [MythicDungeons] -= Loading Dungeon TESTING processed in 90ms. =-
[08:26:05 INFO]: NibKilgharrah issued server command: /md leave
[08:26:05 INFO]: [MythicDungeons] Cleaning up instance 'TESTING_0'...
[08:26:05 INFO]: [ChunkHolderManager] Waiting 60s for chunk system to halt for world 'TESTING_0'
[08:26:05 INFO]: [ChunkHolderManager] Halted chunk system for world 'TESTING_0'
[08:26:05 INFO]: [ChunkHolderManager] Waiting 60s for chunk I/O to halt for world 'TESTING_0'
[08:26:05 INFO]: [ChunkHolderManager] Halted I/O scheduler for world 'TESTING_0'
[08:26:05 INFO]: [MythicDungeons] -= Unloading dungeon world TESTING_0 processed in 4ms. =-
[08:26:10 INFO]: NibKilgharrah issued server command: /spawn```
**^Dungeon WITH difficulty /md play TESTING:SUICIDE**


```Difficulty:
  # Whether or not to enable difficulty levels for dungeons.
  EnableDifficultyLevels: true
  # Whether or not to show a difficulty selection menu to the player when playing. Requires the above to ALSO be true.
  EnableDifficultyMenu: false
  # A list of difficulty options and how they affect the dungeon. You can name them whatever you want and have as many as you like!
  # Useful in combination with the "Dungeon Difficulty" condition.
  Levels:
    CASUAL:
      Icon:
        Material: STONE
        Display: CASUAL
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 1      # How much to increase all Mythic Mobs' levels by
      # A range of how much bonus loot to add to loot table and random rewards functions.
      # WARNING: Only works on Mythic Dungeons loot tables and 'random rewards' functions!
      # Mythic Mobs drop tables do not get bonus drops. Instead, use the `dungeondifficulty` mythic condition in your mythic drop table!
      BonusLoot: 0
    AMBITIOUS:
      Icon:
        Material: STONE
        Display: AMBITIOUS
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 2
      BonusLoot: 1-2
    FORMIDABLE:
      Icon:
        Material: STONE
        Display: FORMIDABLE
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 3
      BonusLoot: 2-3
    VENTURE:
      Icon:
        Material: STONE
        Display: VENTURE
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 4
      BonusLoot: 5-7
    SUICIDE:
      Icon:
        Material: STONE
        Display: SUICIDE
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 5
      BonusLoot: 7-11```
^ This is the difficulty settings 

**IMPORTANT NOTE**

when I tried
```EnableDifficultyLevels: false``` and ```/md play TESTING:CASUAL``` the spawner worked perfectly as expected


\ / This is the FULL config for TESTING dungeon \ /
General:
  # Do not change! Used to track the config version when major updates happen.
  Version: 1
  DungeonType: classic
  # The generator to use for chunks in this dungeon. These can also be provided by other plugins.
  # natural = Default superflat.
  # mythicdungeons:void = Classic void generator, provided by Mythic Dungeons.
  # mythicdungeons:block.[BLOCKTYPE] = Generates entire chunks of a specific block. (For example, mythicdungeons:block.STONE would generate chunks at full height of all stone.)
  ChunkGenerator: natural
  # The pretty name of this dungeon that'll appear when it's finished and started.
  DisplayName: '&bA Dungeon'
  # Whether to show the display name above in a title message to the players when the dungeon begins.
  ShowTitleOnStart: false
  Lobby:
    Enabled: false
    Location:
      x: 0.0
      y: -60.0
      z: 0.0
      pitch: 0.0
      yaw: 0.0
  # Whether to use the exit location for any time the player leaves instead of just when they finish the dungeon.
  AlwaysUseExit: false
  # What game mode the players will be in while in the dungeon.
  Gamemode: SURVIVAL
  # How many times the player can die before being unable to respawn. 0 will give the player infinite lives.
  PlayerLives: 0
  # Whether players who lose all their lives get put into spectator. If this is set to false, the player will instead be kicked from the dungeon.
  # NOTE: Spectators cannot use the spectator menu to exit the dungeon.
  DeadPlayersSpectate: true
  # Whether to close the dungeon when all players are spectating. If this is set to false, the dungeon will remain open until all players have left.
  # If set to false, players must use /md leave to exit the dungeon.
  # NOTE: This option only works if DeadPlayersSpectate is set to true.
  CloseDungeonWhenAllSpectating: true
  # Whether players keep their inventory upon entering the dungeon.
  KeepInventoryOnEnter: true
  # Whether players keep their current health upon entering the dungeon.
  # (Otherwise,they will be restored to full health upon entry, and set back to their previous health upon exit.)
  KeepHealthOnEnter: false
  # Whether players keep their current food level upon entering the dungeon.
  # (Otherwise, they will be restored to full food upon entry, and set back to their previous food level upon exit.)
  KeepFoodOnEnter: false
  # Whether players keep their current potion effects upon entering the dungeon.
  # (Otherwise, they will have all potion effects cleared upon entry.)
  KeepPotionEffectsOnEnter: false
  # Whether players keep their current EXP and level upon entering the dungeon.
  KeepExpOnEnter: true
  # Whether to kick players who disconnect during the dungeon.
  KickOfflinePlayers: true
  # How long to wait in seconds after a disconnect before kicking the player from the dungeon.
  KickOfflinePlayersDelay: 300
  # The maximum number of backups the plugin will save before deleting old backups.
  MaxBackups: 3
  # The maximum number of instances there can be of this dungeon at a time.
  MaxInstances: 5
  # How long in minutes until the dungeon is automatically ended and the players are kicked out. 0 will disable the time limit.
  TimeLimit: 0
  # How long in ticks to wait before cleaning up a dungeon when all players have left it. 0 will clean up the dungeon instantly.
  CleanupDelay: 0
  # The maximum number of players that can be in this dungeon. Used by the CONTINUOUS dungeon type.
  MaxPlayers: 0
  
  # When set to 'true', when players take items from reward functions, they'll be put in a rewards list.
  # Upon finishing the dungeon, the players will be given the rewards.
  GiveLootAfterCompletion: false
  # Loot Cooldown makes it so that players can't loot chests they've already looted recently.
  # Reward functions can be configured individually, or use the default values provided in this section.
  LootCooldown:
    Enabled: false
    # Whether or not the cooldown is per-chest or dungeon-wide. !!NOT CURRENTLY WORKING!!
    PerReward: true
    # Setting this to TIMER will make it so the player can't get loot again until their cooldown is up.
    # Options like HOURLY, DAILY, WEEKLY, and MONTHLY will let you configure a set time for loot to be reset.
    CooldownType: DAILY
    # If type is set to TIMER, this is how many minutes until the player can acquire loot again.
    # Otherwise, this is the time of day when the reset occurs in hours.
    CooldownTime: 0
    # If type is set to WEEKLY, ResetDay determines what numbered day of the week the reset occurs.
    # "Sunday" would be 1, "Monday" is 2, "Tuesday" is 3, etc.
    # If type is set to MONTHLY, ResetDay determines what day of the month the reset occurs.
    # Doesn't do anything if CooldownType is set to "TIMER"
    ResetDay: 1
  
  # Access cooldown is used to limit how quickly a player can play this dungeon again after playing it.
  # NOTE: Be wary using this, as this can result in players being unable to play with each other if one of them has already run the dungeon recently!
  #    The "LootCooldown" section should be used instead to avoid this.
  AccessCooldown:
    Enabled: false
    # Whether to apply the cooldown when the player finishes the dungeon (via a "Finish Dungeon" function.)
    CooldownOnFinish: true
    # Whether to apply the cooldown when the player leaves the dungeon by any means.
    CooldownOnLeave: false
    # Whether to apply the cooldown when the player loses all their lives.
    CooldownOnLoseLives: false
    # Whether to apply the cooldown when the player starts the dungeon. If you have a lobby enabled, it won't apply the cooldown until a Start Dungeon function is activated.
    CooldownOnStart: false
    # Setting this to TIMER will make it so the player can't get run this dungeon again until their cooldown is up.
    # Options like HOURLY, DAILY, WEEKLY, and MONTHLY will let you configure a set time for access to be reset.
    CooldownType: DAILY
    # If type is set to TIMER, this is how many minutes until the player can player the dungeon again.
    # Otherwise, this is the time of day when the reset occurs in hours.
    CooldownTime: 0
    # If type is set to WEEKLY, ResetDay determines what numbered day of the week the reset occurs.
    # "Sunday" would be 1, "Monday" is 2, "Tuesday" is 3, etc.
    # If type is set to MONTHLY, ResetDay determines what day of the month the reset occurs.
    ResetDay: 1
Requirements:
  # A list of permissions the player must have.
  Permissions: []
  MinPartySize: 1
  MaxPartySize: 4
  # A list of dungeons the player must have completed. Note: "Finished" means the "Finish Dungeon" function was used in the required dungeon.
  DungeonsComplete: []
  # If a Vault-based economy is installed, it costs this much to play the dungeon.
  Cost: 0
AccessKeys:
  # Whether to consume keys when players enter the dungeon using the key.
  Consume: true
  # A list of itemstacks that are valid key items. NOTE: It is not recommended adding keys from here. Use the `/md addkey <dungeon>` command instead.
  # Mythic items are supported and will default to the latest version of the Mythic item (based on its namespace).
  KeyItems: []
Difficulty:
  # Whether or not to enable difficulty levels for dungeons.
  EnableDifficultyLevels: true
  # Whether or not to show a difficulty selection menu to the player when playing. Requires the above to ALSO be true.
  EnableDifficultyMenu: false
  # A list of difficulty options and how they affect the dungeon. You can name them whatever you want and have as many as you like!
  # Useful in combination with the "Dungeon Difficulty" condition.
  Levels:
    CASUAL:
      Icon:
        Material: STONE
        Display: CASUAL
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 1      # How much to increase all Mythic Mobs' levels by
      # A range of how much bonus loot to add to loot table and random rewards functions.
      # WARNING: Only works on Mythic Dungeons loot tables and 'random rewards' functions!
      # Mythic Mobs drop tables do not get bonus drops. Instead, use the `dungeondifficulty` mythic condition in your mythic drop table!
      BonusLoot: 0
    AMBITIOUS:
      Icon:
        Material: STONE
        Display: AMBITIOUS
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 2
      BonusLoot: 1-2
    FORMIDABLE:
      Icon:
        Material: STONE
        Display: FORMIDABLE
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 3
      BonusLoot: 2-3
    VENTURE:
      Icon:
        Material: STONE
        Display: VENTURE
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 4
      BonusLoot: 5-7
    SUICIDE:
      Icon:
        Material: STONE
        Display: SUICIDE
      MobHealth: 1.0
      MobDamage: 1.0
      BonusMythicLevels: 5
      BonusLoot: 7-11
Rules:
  SpawnMobs: false
  SpawnAnimals: false
  SpawnMonsters: false
  AllowBreakBlocks: false
  AllowPlaceBlocks: false
  AllowEnderpearl: false
  AllowChorusFruit: false
  AllowBucket: false
  # Limits placing things that don't count as blocks like boats.
  AllowPlaceEntities: false
  # Effectively sets RandomTickSpeed to 0 inside the dungeon, preventing blocks from spreading, plants from growing, ice from melting, etc.
  DisableRandomTick: true
  PreventPlantGrowth: true
  PreventExplosionBlockDamage: false
  PvP: false
  HideDeathMessages: false
  # Prevents players outside the dungeon from teleporting in. Admins can bypass with the `dungeons.bypassjoin` permission. (Or `dungeons.bypassjoin.[dungeon_name]`)
  PreventTeleportIn: false
  # Whether to allow all commands in the dungeon.
  AllowCommands: false
  # A list of commands that can still be used, even when "AllowCommands" is set to false.
  AllowedCommands:
  - party
  # A list of commands that CAN'T be used, even when "AllowCommands" is set to true.
  DisallowedCommands: []
  # Vanilla Minecraft item materials to ban. (Must be a valid Spigot material.)
  BannedItems: []
  # A list of more detailed items to ban from the dungeon. (Recommended to use the /md banitem command instead of modifying this directly.)
  CustomBannedItems: []
  # Toggles whether banned items can be picked up if they are on the ground in the dungeon.
  AllowPickupBannedItems: false
  # Toggles whether banned items can be crafted while inside the dungeon.
  AllowCraftBannedItems: false
  # Toggles whether banned items can be placed in or removed from storage in the dungeon.
  AllowStorageBannedItems: false
  # A list of blocks that are allowed to be PLACED in this dungeon, regardless of the "AllowPlaceBlocks" rule.
  # Remove the [] and add the blocks like a list as show in the comments.
  BlockPlaceWhitelist: []
  # - DIAMOND_ORE
  # - GOLD_ORE
  # A list of blocks that are allowed to be BROKEN in this dungeon, regardless of the "AllowBreakBlocks" rule.
  BlockBreakWhitelist:
  - DECORATED_POT
  - PLAYER_HEAD
  # A list of blocks that are NOT allowed to be PLACED in this dungeon, regardless of the "AllowPlaceBlocks" rule.
  BlockPlaceBlacklist: []
  # A list of blocks that are NOT allowed to be BROKEN in this dungeon, regardless of the "AllowBreakBlocks" rule.
  BlockBreakBlacklist: []
  # Whether to let players break any blocks they've placed in this dungeon. Useful when "AllowPlaceBlocks" is true, but "AllowBreakBlocks" is false.
  # OVERRIDES THE ABOVE RULES!!
  AllowBreakPlacedBlocks: false
  # A list of Spigot entities that cannot be damaged.
  DamageProtectedEntities: []
  # A list of Spigot entities that cannot be interacted with. Useful for protecting Item Frames and Armor Stands.
  InteractProtectedEntities: []
  # When set to true, prevents armor, weapons and/or tools from losing durability while in the dungeon
  PreventDurabilityLoss:
    Armor: false
    Weapons: false
    Tools: false
Assignee Loading
Time tracking Loading