Owl spawning regardless of configuration being disabled
noobanidus opened this issue ยท 32 comments
To add on to this from the other Issue I am using OTG with biome bundle which does have a lot of custom biomes. I know you can set them to only spawn in certain biomes, so possibly they're only getting disabled in vanilla biomes? Not sure just wanted to mention that.
@Meatshackles Are you referring to the "spawnOwl" ("Enable the spawning of Owls") value being set to false and owls still continuing to spawn? As far as I can tell, looking into this, it's programmed correctly:
if (ConfigManager.modules.mysticalWorldModuleEnabled && ConfigManager.mobs.spawnOwl) {
for (String biomeName : ConfigManager.owl.biomes) {
Type type = Type.getType(biomeName);
biomes.addAll(BiomeDictionary.getBiomes(type));
}
EntityRegistry.addSpawn(EntityOwl.class, ConfigManager.owl.rate, ConfigManager.owl.min, ConfigManager.owl.max, EnumCreatureType.CREATURE, biomes.toArray(new Biome[0]));
}
As you can see, it only spawns if the mystical world module is enabled and the "spawnOwl" value is set to true -- nothing is ever registered for spawning otherwise...
(Also, note that this doesn't disable any already-spawned owls or other mods that do spawning in a method different to vanilla (i.e., not based on the EntityRegistry's spawn table)...)
Are you running any other mods which interact with spawns? Could you provide a list of other mods you have installed?
Because setting spawnOwl
to false specifically prevents it from being registered to spawn in any biomes, and looking through the code there's no other point outside of the initial registration where spawns could be added for biomes.
Does the same happen if you disable any of the other creatures?
So I tried a skimmed down instance and yea it seams setting the spawn to false does work, I'm thinking some other mod is replacing bewitchment owls with the ones from mystical world because i'm not seeing any bewitchment owls in the instance having the issues. No clue what mod would do that though.
That is troubling... the entity should be registered as entity_owl, so I'm not sure why it would be doing that. No mod should really be messing around with entity spawns when those entities aren't registered to spawn -- that could have massive issues if the ritual entities from Roots, say, were to spawn at random in the world...
If you can drop a list of mods in the instance I might be able to have a glance through them and look. Alternately, perhaps Bewitchment has some sort of configuration that auto-disables if there's another owl? I honestly can't see any reason why they would do that, and based on screenshots I've seen this is not the case, but... it could be a possibility.
Otherwise, whatever biome mod you're using (if you're using one at all) might be responsible.
ModList.txt
Just as a test I upped bewitchments owl spawns to spawn them in packs of 8 and started a new world and saw packs of 8 mystical world owls so i can confirm whatevers doing this is just taking bewitchment spawns and replacing them.
Here's the mod list for the pack having issues, I don't see anything just glancing at it, might have to resort to disabling mods 1 by one till it stops.
@Meatshackles If you were to do that, my recommendation would be to disable the top half of the mods list, then launch; if you have the problem, you know it's in the bottom half; if you don't, you can disable the bottom half and enable the top half, etc. Much quicker way to narrow things down! I'll look into the mod list and see what I can find.
Okay, having a look through that, the two things that jump out at me are Open Terrain Generation and Biome Bundle. Specifically, entity spawning is generally done through a list of "spawnable entities" that is contained within the biome; I know that Open Terrain Generation changes this system around a bit, so it's possible that they have some "adaptive" code to automatically pick suitable mobs per biome.
I'd check their configuration, their CurseForge pages and possibly any Discords associated with them, as it might be a feature that you can disable or configure yourself.
After going through an disabling some mods I've found out its electroblobs wizardry causing the issue, I don't see any configs for it that might relate to it so I will put in an issue with them. But Biome bundle does work with the mob spawns I did test that.
Ok after doing my due diligence and testing it a bunch more ive confirmed its not electroblobs. It just with electroblobs(and a few other mods) but its actually mowzies mobs causing it. Something with with mowzies mobs is unifying the owl whenever I have it and have either Astral Sorcery, Betweenlands, Blood Magic, Botania, or Electroblobs enabled
After looking into it more i htough ti was electroblobs as it stopped happening after it was disabled but after further testing it seems its happening because of mowzies mobs. If i have:
Astral Sorcery
Betweenlands
Blood Magic
Botania
or Electroblobs
enabled at the same time as mowzies it causes this issue, if it turn them all off it works or if i remove mowzies and leave them all on it works.
I also have this issue, and wondering if you could make it so Disabling a mob would remove the Mob Entity as to prevent this issue.
Ah, also I removed my installed mods and configs save for the required to run Bewitchment and Mystical World, and the issue persisted
@Jake-Silver Do you also have Mowzie's Mobs installed?
As it stands, I'm unwilling to completely unregister mobs as it would result in a number of code- and registry-related issues.
I have it in my Pack, but I removed it for the test I did. I had only Mystical World, Mysticlibrary, Patchouli, Bewitchment, and Baubles.
If you cannot, I'll list what I didn't delete, aka, the stuff outside the Config and Mods Folder.
Hopefully Meat can also verify if any of the folders or files match their own.
I thought it was primarily an issue with external biome generators, but it could potentially be some sort of strange conflict with the registration process. I've been looking into how Bewitchment does it, which does seem to be the "correct" way... I'm looking into it further now.
So, in my test environment, I disabled Mystical World, found a forest, and checked the loaded entities with /forge entity list
:
They are also definitely Bewitchment owls:
As it stands, it doesn't appear to be a core conflict between Mystical World & Bewitchment.
So, specifically @Jake-Silver (and potentially @Meatshackles) I need from you a complete list of mods installed when you were able to replicate this issue so I can further test it in a development environment.
You wouldn't happen to know of way to recreate the Mod List Meat used earlier would you? Cause otherwise It'll be a bit as I write down the 100+ Mods used. Also, would you like me to just mention the mods we have in common? Cause I skimmed the list and found quite a few.
Shared Mods.txt
For starters this a list of all the mods we share between our lists.
You mentioned reproducing it in a world without those mods? Was it a fresh new world? Did you clean out the 1.12.2 and memory_repo folders from your mods directory? As it stands the thing you guys have in common is Mowzie's Mobs, which was already identified as a potential cause up above, but you did mention reproducing without it.
I removed the Meory_repo folder and generated a new world, but not a fresh install. Basically everything in the Mods folder and Config Folder was removed except the five required mods for both mods, then disabled owls by Mystic. Also on the Discord, Meat Shack mentioned Disabling Mowzie and still having issue. The conversation is happening under Bewitchment's Discord under Bewitchment-general
This strongly appears to be an issue with another mod, as I cannot reproduce it with just Bewitchment and Mystical World. Good luck in getting it sorted -- I'll leave the issue open for now, but as I mentioned on Discord, I don't have the time to dedicate to it.
So starting a fresh client (via Twitch Launcher) has made the glitch vanish. Perhaps the problem was a old file from an old version of a mod, and starting fresh cleared it. It could be the best solution as we can't find the true source.
I do believe I asked @Meatshackles this question, but are you sure the chunks you were in were freshly generated and not pre-existing from when Mystical World owl spawns were enabled? It doesn't retroactively remove them.
I can assure you it was in four separate new worlds when testing the glitch. And in the fresh client I have yet to see a single Mystical World Owl after disabling them, and many many Bewitchment Owls.