Skip to content

Image Gen is not applying new biomes and Crashes when adding new structures[BUG] #26

@WannaGrenade

Description

@WannaGrenade

This is a continued thread from my earlier "suggested" post, just to give you a full list more accurately stated. I have found multiple bugs.


ISSUE 1: Added "DATAPACK" for new biomes causing Image gen to not generate by image

I downloaded terralith for more biomes, wondering if the fabric mod could support it. I installed terralith.zip in the world/datapack folder.

I should note these do not MODIFY vanilla biomes but introduces NEW biomes by using 1.16 introduced biome jsons.

I then made a 'biomeImage.png' map ONLY for vanilla biomes, desert, snow_tundra, and ice caps excluding any terralith biomes and installed it in imgen/image.

I used this config:
{ "configVersion": "1.3.3", "biomesImageName": "biomeImage.png", "biomesImageScale": 8.0, "repeatBiomeImage": false, "repeatMirrorBiomeImage": false, "defaultBiome": "minecraft:ocean", "continuousGen": true, "largeBiomes": false, "customBiomes": [ { "biomeID": "modid:biomeid", "RGB": "0x000000" }, { "biomeID": "modid:biomeid", "RGB": "0xFFFFFF" } ], "customHeightMap": false, "heightMapName": "HeightMap.png", "heightMapScale": 1.0, "repeatHeightMapImage": false, "repeatMirrorHeightMapImage": false, "seaLevel": 63, "placeVanillaStructures": true, "customStructures": false, "customStructuresImage": "structureMap.png", "repeatStructureImage": false, "repeatMirrorStructureImage": false, "useBlackList": false, "blackListApplication": 2, "structureBlacklist": [ "modid:structureid", "modid:structureid" ], "customStructuresRGB": [ { "structureID": "modid:structureid", "RGB": "0x123456" }, { "structureID": "modid:structureid", "RGB": "0x024680" } ], "lakeFormationPercentChance": 0.5, "segmentImageWidth": 512, "segmentImageHeight": 512, "imageCacheSize": 4 }

I encountered issues. I was able to narrow it down to this.

When my datapack is not installed and region files are regenerated the world appears like the map. no datapack loaded

When my datapack is installed I do not get imgen generation. datapack loaded


ISSUE 2: Added "FABRIC MODS" for new biomes causing image gen to not generate by image.

Wanted to give some more info. It might be more than the just datapacks.

https://imgur.com/a/AxhTyIq

I decided to try using the terralith fabric mod version instead of the datapack and similarly as before, once generating new chunks, world generations returns soley to normal/terralith generation and does not follow the image.

This is my map image: https://imgur.com/lAK8GH4

I conducted this with another mod called "sensible biomes" that added new biomes and the result was the same.


ISSUE 3: Added "FABRIC MODS" for new structures / modify structures cause server crash

This crash can be avoided if in the config "placeVanillaStructures": is set to false, but it means no structures spawn. I have not investigated if the structure map will get around this.

This was tested with the fabric mods:
- betterdungeons@1.17-1.0.1
- bettermineshafts@1.17-1.0.1
- betterstrongholds@1.17-1.1.1
along with the required APIs
- YungsApi-1.17-Fabric-16
- cloth-config-5.0.38-fabric

This Issue generates a crash report:
---- Minecraft Crash Report ----
// There are four lights!

Time: 9/11/21, 3:13 PM
Description: Exception generating new chunk

java.lang.NullPointerException: Cannot invoke "net.minecraft.class_5314.method_28803()" because "☃" is null
at net.minecraft.class_3195.method_27218(class_3195.java:229)
at net.minecraft.class_3195.method_28657(class_3195.java:263)
at net.minecraft.class_5312.method_28622(class_5312.java:36)
at eu.pollux28.imggen.gen.chunk.ImgGenChunkGenerator.setStructureStart(ImgGenChunkGenerator.java:764)
at eu.pollux28.imggen.gen.chunk.ImgGenChunkGenerator.method_16129(ImgGenChunkGenerator.java:736)
at net.minecraft.class_2806.method_16556(class_2806.java:53)
at net.minecraft.class_2806.method_12154(class_2806.java:231)
at net.minecraft.class_3898.method_17225(class_3898.java:556)
at com.mojang.datafixers.util.Either$Left.map(Either.java:38)
at net.minecraft.class_3898.method_17224(class_3898.java:550)
at java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1146)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478)
at net.minecraft.class_3900.method_17634(class_3900.java:58)
at net.minecraft.class_3846.method_16907(class_3846.java:91)
at net.minecraft.class_3846.method_16900(class_3846.java:146)
at net.minecraft.class_3846.run(class_3846.java:102)
at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1434)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:295)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1016)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1665)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1598)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)

A detailed walkthrough of the error, its code path and all known details is as follows:

-- Head --
Thread: Server thread
Stacktrace:
at net.minecraft.class_3195.method_27218(class_3195.java:229)
at net.minecraft.class_3195.method_28657(class_3195.java:263)
at net.minecraft.class_5312.method_28622(class_5312.java:36)
at eu.pollux28.imggen.gen.chunk.ImgGenChunkGenerator.setStructureStart(ImgGenChunkGenerator.java:764)
at eu.pollux28.imggen.gen.chunk.ImgGenChunkGenerator.method_16129(ImgGenChunkGenerator.java:736)
at net.minecraft.class_2806.method_16556(class_2806.java:53)
at net.minecraft.class_2806.method_12154(class_2806.java:231)

-- Chunk to be generated --
Details:
Location: 9,9
Position hash: 38654705673
Generator: eu.pollux28.imggen.gen.chunk.ImgGenChunkGenerator@53aceff5
Stacktrace:
at net.minecraft.class_3898.method_17225(class_3898.java:556)
at com.mojang.datafixers.util.Either$Left.map(Either.java:38)
at net.minecraft.class_3898.method_17224(class_3898.java:550)
at java.base/java.util.concurrent.CompletableFuture$UniCompose.tryFire(CompletableFuture.java:1146)
at java.base/java.util.concurrent.CompletableFuture$Completion.run(CompletableFuture.java:478)
at net.minecraft.class_3900.method_17634(class_3900.java:58)
at net.minecraft.class_3846.method_16907(class_3846.java:91)
at net.minecraft.class_3846.method_16900(class_3846.java:146)
at net.minecraft.class_3846.run(class_3846.java:102)

-- Affected level --
Details:
All players: 0 total; []
Chunk stats: 529
Level dimension: minecraft:overworld
Level spawn location: World: (8,64,8), Section: (at 8,0,8 in 0,4,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511)
Level time: 0 game time, 0 day time
Level name: world
Level game mode: Game mode: creative (ID 1). Hardcore: false. Cheats: false
Level weather: Rain time: 0 (now: false), thunder time: 0 (now: false)
Known server brands: fabric
Level was modded: true
Level storage version: 0x04ABD - Anvil
Stacktrace:
at net.minecraft.server.MinecraftServer.method_3786(MinecraftServer.java:401)
at net.minecraft.server.MinecraftServer.method_3735(MinecraftServer.java:350)
at net.minecraft.class_3176.method_3823(class_3176.java:184)
at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:670)
at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:270)
at java.base/java.lang.Thread.run(Thread.java:831)

-- System Details --
Details:
Minecraft Version: 1.17.1
Minecraft Version ID: 1.17.1
Operating System: Windows 10 (amd64) version 10.0
Java Version: 16.0.2, Oracle Corporation
Java VM Version: Java HotSpot(TM) 64-Bit Server VM (mixed mode, sharing), Oracle Corporation
Memory: 1206734536 bytes (1150 MiB) / 1627389952 bytes (1552 MiB) up to 4259315712 bytes (4062 MiB)
CPUs: 4
Processor Vendor: GenuineIntel
Processor Name: Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz
Identifier: Intel64 Family 6 Model 142 Stepping 9
Microarchitecture: Amber Lake
Frequency (GHz): 2.90
Number of physical packages: 1
Number of physical CPUs: 2
Number of logical CPUs: 4
Graphics card #0 name: NVIDIA GeForce 940MX
Graphics card #0 vendor: NVIDIA (0x10de)
Graphics card #0 VRAM (MB): 2048.00
Graphics card #0 deviceId: 0x134d
Graphics card #0 versionInfo: DriverVersion=27.21.14.6647
Graphics card #1 name: Intel(R) HD Graphics 620
Graphics card #1 vendor: Intel Corporation (0x8086)
Graphics card #1 VRAM (MB): 1024.00
Graphics card #1 deviceId: 0x5916
Graphics card #1 versionInfo: DriverVersion=23.20.16.4973
Memory slot #0 capacity (MB): 16384.00
Memory slot #0 clockSpeed (GHz): 2.13
Memory slot #0 type: DDR4
Virtual memory max (MB): 30750.70
Virtual memory used (MB): 19454.64
Swap memory total (MB): 14508.31
Swap memory used (MB): 1112.70
JVM Flags: 0 total;
Fabric Mods:
betterdungeons: YUNG's Better Dungeons 1.17-1.0.1
bettermineshafts: YUNG's Better Mineshafts 1.17-1.0.1
betterstrongholds: YUNG's Better Strongholds 1.17-1.1.1
cloth-basic-math: Cloth Basic Math 0.5.1
cloth-config2: Cloth Config v5 5.0.38
com_alexdupre_pngj: pngj 2.1.2.1
fabric: Fabric API 0.40.0+1.17
fabric-api-base: Fabric API Base 0.3.0+a02b446318
fabric-api-lookup-api-v1: Fabric API Lookup API (v1) 1.3.0+cbda931818
fabric-biome-api-v1: Fabric Biome API (v1) 3.2.0+cbda931818
fabric-command-api-v1: Fabric Command API (v1) 1.1.3+5ab9934c18
fabric-commands-v0: Fabric Commands (v0) 0.2.2+92519afa18
fabric-containers-v0: Fabric Containers (v0) 0.1.12+cbda931818
fabric-content-registries-v0: Fabric Content Registries (v0) 0.3.0+cbda931818
fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.5+be9da31018
fabric-dimensions-v1: Fabric Dimensions API (v1) 2.0.11+6cefd57718
fabric-entity-events-v1: Fabric Entity Events (v1) 1.2.3+87cc6e4c18
fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.10+fc40aa9d18
fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.1+92519afa18
fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.7+cbda931818
fabric-item-api-v1: Fabric Item API (v1) 1.2.4+cbda931818
fabric-item-groups-v0: Fabric Item Groups (v0) 0.2.10+b7ab612118
fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.4.4+a02b446318
fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.4+a02b446318
fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.3+92519afa18
fabric-networking-api-v1: Fabric Networking API (v1) 1.0.13+cbda931818
fabric-networking-blockentity-v0: Fabric Networking Block Entity (v0) 0.2.11+a02b446318
fabric-networking-v0: Fabric Networking (v0) 0.3.2+92519afa18
fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.10.9+cbda931818
fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.3+a02b446318
fabric-particles-v1: Fabric Particles (v1) 0.2.4+a02b446318
fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.7.10+e2961fee18
fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.1.5+a02b446318
fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.4.8+a00e834b18
fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.8+cbda931818
fabric-structure-api-v1: Fabric Structure API (v1) 1.1.13+5ab9934c18
fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.2.1+b06cb95b18
fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.2.12+b7ab612118
fabric-transfer-api-v1: Fabric Transfer API (v1) 1.3.0+fc40aa9d18
fabricloader: Fabric Loader 0.11.6
imggen: Image World Generator 1.3.3
java: Java HotSpot(TM) 64-Bit Server VM 16
minecraft: Minecraft 1.17.1
org_slf4j_slf4j-api: slf4j-api 1.7.30
yungsapi: YUNG's API 1.17-Fabric-16
Player Count: 0 / 20; []
Data Packs: vanilla, Fabric Mods, file/01-william-wythers-overhauled-overworld-for-1-17-e2380.zip, file/02-william-wythers-caves-and-cliffs-add-on-for-overhauled-ov-e2380.zip
Is Modded: Definitely; Server brand changed to 'fabric'
Type: Dedicated Server (map_server.txt)


I have decided to upload my server settings so you can playtest.
setup

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions