Slexom / earth2java

Minecraft Mod that brings mobs , and their mechanics, from MCE to Java Edition
https://www.curseforge.com/minecraft/mc-mods/earth2java
MIT License
26 stars 14 forks source link

No mobs spawning, mud generating despite being disabled. #74

Closed BrekiTomasson closed 2 years ago

BrekiTomasson commented 2 years ago

Running Minecraft 1.18.2, mod version Earth2Java-1.8.0%2B1.18.2.jar

I let the configuration file generate automatically and only changed one line, in mudLakeConfig:

  "mudLakeConfig": {
    "canGenerate": false,
    "mudLakeFrequency": 25
  },

Launching a new world, none of the earth2java mobs are spawning, and mud lakes are generating.

BrekiTomasson commented 2 years ago

Follow-up: I can /summon the mobs just fine, so they're definitely loading in properly, just not spawning naturally.

BrekiTomasson commented 2 years ago

More follow-up. Changing the biome keys from "plains" to "minecraft:plains" suddenly gets the mobs spawning in the biomes in question, so that bit has a workaround, even though the defaults don't seem to work.

Mud spawning despite being disabled, however, is still a problem.

BrekiTomasson commented 2 years ago

earthtojavamobs.json.zip

1.18.2 introduced Biome Tags, so instead of selecting a specific biome like minecraft:desert, you can now select the tag #minecraft:is_desert, which will automatically include modded desert biomes that implement the is_desert tag as well. I've updated the JSON file with all of the default biomes to use the equivalent biome tags where applicable.

Now; this configuration file won't work out of the box since you'll have to update the code to accept Biome Tags, but I definitely suggest this as a new feature going forward.

Lozf commented 2 years ago

I am having the same problem- even ran it as just fabric API and earth2java and the only thing that spawns is the mud lakes.

Romz24 commented 2 years ago

@BrekiTomasson

When I try to use your config, my server just crashes on startup.

[14:44:28] [main/ERROR]: Failed to start the minecraft server
java.lang.RuntimeException: Could not execute entrypoint stage 'main' due to errors, provided by 'earthtojavamobs'!
    at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.lambda$invoke0$0(EntrypointUtils.java:51) ~[fabric-loader-0.13.3.jar:?]
    at net.fabricmc.loader.impl.util.ExceptionUtil.gatherExceptions(ExceptionUtil.java:33) ~[fabric-loader-0.13.3.jar:?]
    at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke0(EntrypointUtils.java:49) ~[fabric-loader-0.13.3.jar:?]
    at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke(EntrypointUtils.java:35) ~[fabric-loader-0.13.3.jar:?]
    at net.fabricmc.loader.impl.game.minecraft.Hooks.startServer(Hooks.java:62) ~[fabric-loader-0.13.3.jar:?]
    at net.minecraft.server.Main.main(Main.java:101) [server-intermediary.jar:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
    at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:416) [fabric-loader-0.13.3.jar:?]
    at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:77) [fabric-loader-0.13.3.jar:?]
    at net.fabricmc.loader.impl.launch.knot.KnotServer.main(KnotServer.java:23) [fabric-loader-0.13.3.jar:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
    at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
    at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
    at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
    at net.fabricmc.loader.impl.launch.server.FabricServerLauncher.main(FabricServerLauncher.java:66) [fabric-loader-0.13.3.jar:?]
Caused by: java.lang.NullPointerException: Cannot invoke "String.contains(java.lang.CharSequence)" because "id" is null
    at slexom.earthtojava.mobs.utils.BiomeSpawnHelper.lambda$setSpawnBiomes$2(BiomeSpawnHelper.java:91) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:178) ~[?:?]
    at java.util.Spliterators$ArraySpliterator.forEachRemaining(Spliterators.java:992) ~[?:?]
    at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[?:?]
    at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[?:?]
    at java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[?:?]
    at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[?:?]
    at java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) ~[?:?]
    at slexom.earthtojava.mobs.utils.BiomeSpawnHelper.setSpawnBiomes(BiomeSpawnHelper.java:91) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at slexom.earthtojava.mobs.utils.BiomeSpawnHelper.setCreatureSpawnBiomes(BiomeSpawnHelper.java:147) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at slexom.earthtojava.mobs.init.EntitySpawnInit.registerAnimalEntitySpawn(EntitySpawnInit.java:80) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at slexom.earthtojava.mobs.init.EntitySpawnInit.registerAnimalEntitySpawn(EntitySpawnInit.java:86) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at slexom.earthtojava.mobs.init.EntitySpawnInit.manageAnimalEntities(EntitySpawnInit.java:50) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at slexom.earthtojava.mobs.init.EntitySpawnInit.init(EntitySpawnInit.java:18) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at slexom.earthtojava.mobs.Earth2JavaMod.onInitialize(Earth2JavaMod.java:38) ~[Earth2Java-1.8.0+1.18.2.jar:?]
    at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke0(EntrypointUtils.java:47) ~[fabric-loader-0.13.3.jar:?]
    ... 15 more
BrekiTomasson commented 2 years ago

Yes, that's why I wrote "Now; this configuration file won't work out of the box since you'll have to update the code to accept Biome Tags, but I definitely suggest this as a new feature going forward."

The configuration file is part of a feature suggestion, where I suggested that the config file should be able to use the new Biome Tags.

ardissaps commented 2 years ago

same, I saw mud lake but no pig

ardissaps commented 2 years ago

https://github.com/Slexom/earth2java/issues/77#issuecomment-1158773077 temporal working solution 1.18.2 config

BrekiTomasson commented 2 years ago

#77 (comment) temporal working solution 1.18.2 config

Yes, I already confirmed this as you can see in my comment from March 14th. The issue is still open because the default settings are still broken and mud lakes are still spawning.

BrekiTomasson commented 2 years ago

Ping @Slexom - Any news on this? It's been three months.

ardissaps commented 2 years ago

#77 (comment) temporal working solution 1.18.2 config

Yes, I already confirmed this as you can see in my comment from March 14th. The issue is still open because the default settings are still broken and mud lakes are still spawning.

but your file crashed me so I make different one.

BrekiTomasson commented 2 years ago

That's why I clearly stated in the comment that "this configuration file won't work". It was a suggestion for how the configuration file should work once the code has been updated to reflect Biome Tags rather than Biome names.

ardissaps commented 2 years ago

This guy just close this issue as complete withoud doing anything, well done

BrekiTomasson commented 2 years ago

Yeah, very disappointing. Sure, he's going to fix it in 1.19, but it doesn't feel like it should be too big an issue to backport it to 1.18.2 as well, considering many of us are going to be stuck in 1.18 until every other mod is updated.

Razatop commented 1 year ago

Yeah, very disappointing. Sure, he's going to fix it in 1.19, but it doesn't feel like it should be too big an issue to backport it to 1.18.2 as well, considering many of us are going to be stuck in 1.18 until every other mod is updated.

Or stuck in 1.18 because people don't like the reporting changes going forward. It's just a shame that he gave up on it even though he still lists the mod for 1.18 but it doesn't work.