[Bug]: Massive amount of Dumbo Octopus spawning
generalm13 opened this issue ยท 21 comments
Bug Description
With "Just" goodall in a modded version of minecraft things are more or less fine, but the moment a modpack alters the spawn limits the game goes NUTS with spawning Dumbo Octopus
EDIT 1: I've tested the same thing with the other animals in the mod, but it seems to only happen with the Dumbo Octopus.
EDIT 2: Messed around with the configuration file, i assumed that setting Min and Max to 0 would DISABLE the Octopus, this is NOT the case. They keep spawning regardless
Reducing the Weight to 0 made them stop spawning though :D
In my case i did some testing inside "All of Fabric 5" 1.22 (and in a custom client with only a minimap and Goodall
These are the results:
With just FTB Ultimine, Chunks, Teams and Goodall in the pack the same thing happens but the amount of octopus is not so big the game starts to suffer.
====================
BUT this is what happened in "All of Fabric 5"
I am assuming the pack alters the spawn limits of mobs but i've witnessed the same "behaviour" from the mod in Vanilla minecraft, but due to mob limits being lower it does not cause any actual issues.
But due to the behaviour i decided to report this in both the Github of AoF5 and here.
I first noticed it when i wanted to go mining near my mushroom island, i had a few diamonds i found which i went to collect, but the moment i went a bit deeper this happened
Testing has learned me that they start to massively spawn the moment i go deeper underground (Y=-10?)
/kill @e[type=goodall:dumbo_octopus] resulted in numerous entity numbers
I tested other locations to see if it happens to other goodall mobs but it only seems to happen with the dumbo octopus, but it only seems to happen in areas where they can actually spawn. I tested a different part of the ocean i didn't see any of them spawn and the game was fine there.
How to Reproduce?
- Add goodall to a client
- Go to a location Dumbo Octopus spawn
- Go deeper underground (Y=-10 usually did the trick for me)
- Watch the amount of Dumbo Octopus go up almost instantly.
Expected Behavior
No response
Version
1.0.1
Mod Loader Version
MC: 1.18.2 / Fabric API: 0.51.1
Mod Loader
Fabric
Logs or additional context
No response
Acknowledgement
- I agree that I have read what was said above this check box.
Thanks! when I test originally I flew over the ocean. Now I know I need to dig down.
SpawnData dumboSpawnData = new SpawnData(ModEntities.DUMBO.get(), SpawnGroup.WATER_AMBIENT, dumbo.weight, dumbo.min, dumbo.max);
I think this is really the issue. I'm guessing its checking the Water Ambient spawn cap, seeing its ok, and continuing to spawn Water Creatures. Which will never increase the cap of the Water Ambient.
Oh that makes much more sense I didn't realize that they were being registered in 1 category and spawned in another. Im now more confused why that is even possible but ill fix that for the next update for now ill just say set the weight to 0 so you don't have thousands spawn.
yep here just got approved. https://www.curseforge.com/minecraft/mc-mods/goodall/files/3800471
I changed how I store the spawn data now to make sure they cant be different as it will always use the entitytype spawn group so this can never happen again.
- The setting for the min and max thing must be a vanilla thing because I tell vanilla that is the 2 sizes.
- By default the dumbo only spawns with a weight of 2 (7.5 times less than fish) and in the biome you showed it would spawn even less because salmon spawn at a weight of 15 so to calculate it the dumbo octopus spawn chance to spawn would be 6.25% and has the same spawn checks as every other water creature with a little more limit of forcing it to only spawn 15 below sea level for a 13 block range the only difference between the dumbo octopus and any other vanilla water creature that spawns in that same biome is that my spawn check checks for the SPAWNER spawn reason and lets it go through so unless the mod that increases spawn caps also change the spawn reason to SPAWNER which is bad as literally almost every mob in vanilla has a special check for SPAWNER spawn reason to make sure it can spawn from a spawner without checking for weird world spawn conditions.
- There is not much I can do as the default weight is 2 the only thing I can do is set it to 1 as literally everything else is just the same conditions as a cod, salmon, pufferfish, tropical fish, squid, and dolphin and actually a bit more restrictive.
If you can get the mod that changes the mob spawns that would be great.
- The setting for the min and max thing must be a vanilla thing because I tell vanilla that is the 2 sizes.
- By default the dumbo only spawns with a weight of 2 (7.5 times less than fish) and in the biome you showed it would spawn even less because salmon spawn at a weight of 15 so to calculate it the dumbo octopus spawn chance to spawn would be 6.25% and has the same spawn checks as every other water creature with a little more limit of forcing it to only spawn 15 below sea level for a 13 block range the only difference between the dumbo octopus and any other vanilla water creature that spawns in that same biome is that my spawn check checks for the SPAWNER spawn reason and lets it go through so unless the mod that increases spawn caps also change the spawn reason to SPAWNER which is bad as literally almost every mob in vanilla has a special check for SPAWNER spawn reason to make sure it can spawn from a spawner without checking for weird world spawn conditions.
- There is not much I can do as the default weight is 2 the only thing I can do is set it to 1 as literally everything else is just the same conditions as a cod, salmon, pufferfish, tropical fish, squid, and dolphin and actually a bit more restrictive.
If you can get the mod that changes the mob spawns that would be great.
I am not familiar with the spawnrates of all mobs in minecraft but the moment i go deep underground the mod starts spawning MORE Dumbo's, so i think something is not going 100% as intended? (and this is regardless of wether or not the spawnrates are adjusted)
In defense of the mod:
The mob cap is a LOT higher in AoF5 then it is in a client with just Goodall.
(one of my /kill commands killed 4043 Dumbo's!)
The max i've seen with JUST Goodall installed was below 100
ALSO: Dusk Mod: Increases mob cap the later the night gets
In defense of AoF5:
The Dumbo spawns actually INCREASE when i go deeper underground, isn't it supposed to start Despawning at that point?
We do not have a mod that alters spawn rate/mob cap in the pack. This did happen once on 1 of our servers but I hadn't seen it again, and couldn't reproduce in single player so did not make a report.
I did look through your code at the time to try and find the issue. But nothing stood out that would bypass the cap.
But I do question why the Dumbo seems to be in Water Ambient, and Water Creature groups.
SpawnData dumboSpawnData = new SpawnData(ModEntities.DUMBO.get(), SpawnGroup.WATER_AMBIENT, dumbo.weight, dumbo.min, dumbo.max);
public static final Supplier<EntityType> DUMBO = register("dumbo_octopus", DumboEntity::new, SpawnGroup.WATER_CREATURE, 0.9F, 0.9F);
also curious why you don't just do ::canMobSpawn?
setSpawnRules(ModEntities.DUMBO.get(), SpawnRestriction.Location.IN_WATER, Heightmap.Type.OCEAN_FLOOR, DumboEntity::canDumboSpawn);
setSpawnRules(ModEntities.BOOBY.get(), SpawnRestriction.Location.ON_GROUND, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, BoobyEntity::canMobSpawn);
I am not a programmer so this goes above my head, Might wanna post that info in the topic i linked earlier?
I did look through your code at the time to try and find the issue. But nothing stood out that would bypass the cap. But I do question why the Dumbo seems to be in Water Ambient, and Water Creature groups. SpawnData dumboSpawnData = new SpawnData(ModEntities.DUMBO.get(), SpawnGroup.WATER_AMBIENT, dumbo.weight, dumbo.min, dumbo.max);
public static final Supplier DUMBO = register("dumbo_octopus", DumboEntity::new, SpawnGroup.WATER_CREATURE, 0.9F, 0.9F);
also curious why you don't just do ::canMobSpawn? setSpawnRules(ModEntities.DUMBO.get(), SpawnRestriction.Location.IN_WATER, Heightmap.Type.OCEAN_FLOOR, DumboEntity::canDumboSpawn); setSpawnRules(ModEntities.BOOBY.get(), SpawnRestriction.Location.ON_GROUND, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, BoobyEntity::canMobSpawn);Might wanna chuck that info towards the Goodall Dev. I have like way too little knowledge about this stuff XD
I posted the link earlier, but here it is again: #6
You realize this is where I posted this correct?? This is the Goodall github
In defense of the mod: The mob cap is a LOT higher in AoF5 then it is in a client with just Goodall. (one of my /kill commands killed 4043 Dumbo's!) The max i've seen with JUST Goodall installed was below 100
ALSO: Dusk Mod: Increases mob cap the later the night gets
In defense of AoF5: The Dumbo spawns actually INCREASE when i go deeper underground, isn't it supposed to start Despawning at that point?
The mob cap is not altered. A bug is allowing it to bypass the mob cap.
Can you post a link to your save world with them spawning out of control? Or perhaps its reproduceable with your world seed and the location?
I am not a programmer so this goes above my head, Might wanna post that info in the topic i linked earlier?
I did look through your code at the time to try and find the issue. But nothing stood out that would bypass the cap. But I do question why the Dumbo seems to be in Water Ambient, and Water Creature groups. SpawnData dumboSpawnData = new SpawnData(ModEntities.DUMBO.get(), SpawnGroup.WATER_AMBIENT, dumbo.weight, dumbo.min, dumbo.max);
public static final Supplier DUMBO = register("dumbo_octopus", DumboEntity::new, SpawnGroup.WATER_CREATURE, 0.9F, 0.9F);
also curious why you don't just do ::canMobSpawn? setSpawnRules(ModEntities.DUMBO.get(), SpawnRestriction.Location.IN_WATER, Heightmap.Type.OCEAN_FLOOR, DumboEntity::canDumboSpawn); setSpawnRules(ModEntities.BOOBY.get(), SpawnRestriction.Location.ON_GROUND, Heightmap.Type.MOTION_BLOCKING_NO_LEAVES, BoobyEntity::canMobSpawn);Might wanna chuck that info towards the Goodall Dev. I have like way too little knowledge about this stuff XD
I posted the link earlier, but here it is again: #6You realize this is where I posted this correct?? This is the Goodall github
Hence i deleted my post when i found out 2 seconds after i posted the stupid comment XD
In defense of the mod: The mob cap is a LOT higher in AoF5 then it is in a client with just Goodall. (one of my /kill commands killed 4043 Dumbo's!) The max i've seen with JUST Goodall installed was below 100
ALSO: Dusk Mod: Increases mob cap the later the night gets
In defense of AoF5: The Dumbo spawns actually INCREASE when i go deeper underground, isn't it supposed to start Despawning at that point?The mob cap is not altered. A bug is allowing it to bypass the mob cap. Can you post a link to your save world with them spawning out of control? Or perhaps its reproduceable with your world seed and the location?
Easy as pie: Start a new world, go to a Deep ocean, or anywhere the Dumbo spawn and just Start digging down.
This was the result in a world i created JUST for this screenshot
Please note that the Modpack is NOT causing this (unless it's any of the FTB mods (Chunks, Teams etc, which i installed to get a minimap to help search and observe))
The only difference is that the mobcap is in place and it stops spawning squids after a little bit.