-
Type:
Bug
-
Resolution: Fixed
-
Priority:
Minor
-
None
-
Affects Version/s: None
-
None
-
CraftBukkit version 4527-Spigot-7c52c66-4f0c392 (MC: 1.21.8) (Implementing API version 1.21.8-R0.1-SNAPSHOT)
-
Multiverse-Core 5.x
-
Yes
Secondary multiworld worlds (normal type) cannot spawn hostile mobs when the difficulty of the primary world is set to Peaceful, regardless of `server.properties`, in worlds created with Multiverse-Core > 5.
Reproducible with Multiverse-Core >= 5.0, does not occur with MV 4.x.
The newly created world seems to be created with the allowMonsters SpawnFlag is set to false.
MV5 uses Bukkit's SpawnCategory to handle spawning. https://github.com/Multiverse/Multiverse-Core/issues/1469#issuecomment-2837383203
Verified with Spigot 1.21.5 and 1.21.8.
This affects natural spawning, spawners, spawn eggs, and `/summon`.
Reproduction Steps
- Initialise a fresh Spigot server with all-default configurations (including Easy difficulty in `server.properties`)
- Add Multiverse-Core 5.0 or higher (restart server)
- Using MV, set the primary world's difficulty to peaceful
- /mv modify world set difficulty peaceful
- Notice that when a mob egg (Zombie) is used in the default world, the mob appears for a split second before being removed (vanilla behaviour for Peaceful).
- Create a new `normal` type world and teleport to it
- /mv create test normal
- /mv tp test
- Attempt to spawn mobs (Zombie) in any fashion in the new world. Notice they don't even appear for a split second.
- Explicitly enable monster spawning in the new world.
- /mv entity-spawn-config modify test monster set spawn true
- Repeat step 6.
- Restart the server
- Mob spawning in the secondary world may work now. In my long-running world, they don't, but in a brand new world they sometimes do.
- If mob spawning still fails in the secondary world, switch back to the primary world, switch it to a non-Peaceful difficulty using MV, and restart the server. Mob spawning should now work in the secondary world.