Skip to content

Guardians do not spawn in deep ocean biome in place of other water mobs when spawn-limits are disabled. #22

@waseric

Description

@waseric

Please paste the output from /usb version below

Name: uSkyBlock
Version: 2.9.0
Description: Ultimate SkyBlock v2.9.0-7cf840c
Language: en (en)
State: d=128, r=48, i=447, p=481, n=true, awe=true
Server: Paper git-Paper-119 (MC: 1.17.1)
State: online=true, bungee=true
------------------------------
Vault 1.7.3-b131 (ENABLED)
FastAsyncWorldEdit 1.17-63;ca1744a (WRONG-VERSION)
WorldGuard 7.0.6-beta1+0b66f3e (ENABLED)
FastAsyncWorldEdit 1.17-63;ca1744a (ENABLED)
Multiverse-Core 4.3.0-b846 (ENABLED)
Multiverse-NetherPortals 4.2.1-b786 (ENABLED)

and

Name: uSkyBlock
Version: 2.9.0-SNAPSHOT
Description: Ultimate SkyBlock v2.9.0-SNAPSHOT-a0b10e5
Language: en (en)
State: d=128, r=48, i=459, p=492, n=true, awe=true
Server: Paper git-Paper-780 (MC: 1.16.5)
State: online=true, bungee=true
------------------------------
Vault 1.7.3-b131 (ENABLED)
FastAsyncWorldEdit 1.16-734;78acb85 (WRONG-VERSION)
WorldGuard 7.0.5+3827266 (ENABLED)
FastAsyncWorldEdit 1.16-734;78acb85 (ENABLED)
Multiverse-Core 4.3.0-b846 (ENABLED)
Multiverse-NetherPortals 4.2.1-b786 (ENABLED)

What steps will reproduce the problem?

  1. Set spawn-limits.enabled to false in config.yml; restart server
  2. Create a large aquarium, full island 96x96 dimensions with any wall, all blocks are water source blocks.
  3. Cover with prismarine roof, set biome to deep_ocean; leave, come back, confirm biome is effective (island wide)
  4. Observe squids, dolphins spawning, never any guardians.
  5. Set spawn-limits.enabled to true in config.yml; restart server
  6. remove all mobs, observe guardians spawning as expected.

We had been trying to avoid adding spawn limits, so hadn't turned the option on.
After isolation for other plugins, servers, config elements, changing this config item is consistent.

Our workaround is to enable limits, with a fairly high threshold. So, impact is low once we know the cause.

With limits disabled, I'm pretty sure we're not getting past SpawnEvents.java:onCreatureSpawn call to checkLimits. That, in turn, is likely canceling based on call to LimitLogic.java:canSpawn. canSpawn focuses on maximums, which (probably) aren't relevant if limits aren't enabled. Maybe just a first test in canSpawn if limits config is enabled?

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions