quiqueck / BCLib

A library mod for BetterX team mods, developed for Fabric, MC 1.16.4+
https://modrinth.com/mod/bclib
Other
26 stars 25 forks source link

[Bug - 1.20.x] BCLib fails to create the biome list when using datapacks #105

Closed CamperSamu closed 1 year ago

CamperSamu commented 1 year ago

What happened?

When using Terralith 1.20.x or Stellarity 1.20.x (ex. FSEE) the game crashes on world generation.

BCLib

3.0.9

Fabric API

0.84.0+1.20.1

Fabric Loader

0.14.21

Minecraft

1.20.1

Relevant log output

When using Terralith:

2023-06-22 00:15:55,986 Server thread ERROR An exception occurred processing Appender StackDeobfAppender java.lang.IllegalArgumentException: Illegal group reference
    at java.base/java.util.regex.Matcher.appendExpandedReplacement(Matcher.java:1076)
    at java.base/java.util.regex.Matcher.appendReplacement(Matcher.java:1006)
    at java.base/java.util.regex.Matcher.replaceAll(Matcher.java:1268)
    at dev.booky.stackdeobf.mappings.RemappingUtil.remapClasses(RemappingUtil.java:17)
    at dev.booky.stackdeobf.mappings.RemappingUtil.remapStackTraceElement(RemappingUtil.java:111)
    at dev.booky.stackdeobf.util.Log4jRemapUtil.remapThrowableProxy(Log4jRemapUtil.java:44)
    at dev.booky.stackdeobf.util.RemappingRewritePolicy.rewrite(RemappingRewritePolicy.java:64)
    at org.apache.logging.log4j.core.appender.rewrite.RewriteAppender.append(RewriteAppender.java:81)
    at org.apache.logging.log4j.core.config.AppenderControl.tryCallAppender(AppenderControl.java:161)
    at org.apache.logging.log4j.core.config.AppenderControl.callAppender0(AppenderControl.java:134)
    at org.apache.logging.log4j.core.config.AppenderControl.callAppenderPreventRecursion(AppenderControl.java:125)
    at org.apache.logging.log4j.core.config.AppenderControl.callAppender(AppenderControl.java:89)
    at org.apache.logging.log4j.core.config.LoggerConfig.callAppenders(LoggerConfig.java:683)
    at org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:641)
    at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:624)
    at org.apache.logging.log4j.core.config.LoggerConfig.logParent(LoggerConfig.java:674)
    at org.apache.logging.log4j.core.config.LoggerConfig.processLogEvent(LoggerConfig.java:643)
    at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:624)
    at org.apache.logging.log4j.core.config.LoggerConfig.log(LoggerConfig.java:560)
    at org.apache.logging.log4j.core.config.AwaitCompletionReliabilityStrategy.log(AwaitCompletionReliabilityStrategy.java:82)
    at org.apache.logging.log4j.core.Logger.log(Logger.java:162)
    at org.apache.logging.log4j.spi.AbstractLogger.tryLogMessage(AbstractLogger.java:2205)
    at org.apache.logging.log4j.spi.AbstractLogger.logMessageTrackRecursion(AbstractLogger.java:2159)
    at org.apache.logging.log4j.spi.AbstractLogger.logMessageSafely(AbstractLogger.java:2142)
    at org.apache.logging.log4j.spi.AbstractLogger.logMessage(AbstractLogger.java:2017)
    at org.apache.logging.log4j.spi.AbstractLogger.logIfEnabled(AbstractLogger.java:1983)
    at org.apache.logging.slf4j.Log4jLogger.error(Log4jLogger.java:315)
    at net.minecraft.server.MinecraftServer.method_29741(MinecraftServer.java:687)
    at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:265)
    at java.base/java.lang.Thread.run(Thread.java:1623)

When using Stellarity: (no Stack Deobfuscator due to the type of crash breaking it)

[00:07:41] [Server thread/ERROR] (Minecraft) Encountered an unexpected exception
java.lang.NullPointerException: Cannot invoke "org.betterx.bclib.api.v2.levelgen.biomes.BCLBiome.getID()" because "biome" is null
    at org.betterx.betterend.registry.EndFeatures.getBiomeStructures(EndFeatures.java:1384) ~[better-end-4.0.6.jar:?]
    at org.betterx.betterend.registry.EndFeatures.addBiomeFeatures(EndFeatures.java:1363) ~[better-end-4.0.6.jar:?]
    at org.betterx.betterend.BetterEnd.lambda$onInitialize$0(BetterEnd.java:78) ~[better-end-4.0.6.jar:?]
    at org.betterx.bclib.api.v2.levelgen.biomes.InternalBiomeAPI.lambda$applyModificationsAndUpdateFeatures$5(InternalBiomeAPI.java:183) ~[bclib-3.0.9.jar:?]
    at java.util.ArrayList.forEach(ArrayList.java:1511) ~[?:?]
    at org.betterx.bclib.api.v2.levelgen.biomes.InternalBiomeAPI.applyModificationsAndUpdateFeatures(InternalBiomeAPI.java:182) ~[bclib-3.0.9.jar:?]
    at org.betterx.bclib.api.v2.levelgen.biomes.InternalBiomeAPI.applyModifications(InternalBiomeAPI.java:171) ~[bclib-3.0.9.jar:?]
    at org.betterx.bclib.api.v2.levelgen.LevelGenEvents.finalizeStem(LevelGenEvents.java:143) ~[bclib-3.0.9.jar:?]
    at org.betterx.worlds.together.world.event.WorldBootstrap.lambda$finalizeWorldGenSettings$1(WorldBootstrap.java:301) ~[bclib-3.0.9.jar:?]
    at java.lang.Iterable.forEach(Iterable.java:75) ~[?:?]
    at org.betterx.worlds.together.world.event.EventImpl.emit(EventImpl.java:20) ~[bclib-3.0.9.jar:?]
    at org.betterx.worlds.together.world.event.WorldBootstrap.finalizeWorldGenSettings(WorldBootstrap.java:301) ~[bclib-3.0.9.jar:?]
    at net.minecraft.server.MinecraftServer.handler$zhh000$bclib$together_addSurfaceRules(MinecraftServer.java:11323) ~[client-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.createWorlds(MinecraftServer.java) ~[client-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.loadWorld(MinecraftServer.java:324) ~[client-intermediary.jar:?]
    at net.minecraft.server.integrated.IntegratedServer.setupServer(IntegratedServer.java:69) ~[client-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:646) ~[client-intermediary.jar:?]
    at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:265) ~[client-intermediary.jar:?]
    at java.lang.Thread.run(Thread.java:1623) ~[?:?]

Other Mods

Mods:
  [✔] 3dskinlayers-fabric-1.5.3-mc1.20
  [✔] AdditionalStructures-1.20.x-(v.4.2.0)
  [✔] Adorn-5.0.0+1.20.1-fabric
  [✘] advancementinfo-1.20-fabric0.83.0-1.3.1.jar (disabled)
  [✔] advancementscreenshot-1.20.1-4.2
  [✔] alternate-current-mc1.20-1.6.0
  [✔] anvilrestoration-1.20.1-2.0
  [✔] appleskin-fabric-mc1.20-2.5.0
  [✔] architectury-9.0.8-fabric
  [✔] armor-stand-editor-2.1.1+1.20-rc1
  [✔] authme-7.0.1+1.20
  [✔] autohud-6.1+1.20-fabric
  [✔] AxesAreWeapons-1.6.5-fabric-1.19.3
  [✔] badpackets-fabric-0.4.1
  [✔] balm-fabric-1.20-7.0.4
  [✔] bclib-3.0.9
  [✔] bedrockify-1.9+mc1.20
  [✔] bedrockwaters-1.7.7+1.20.1
  [✔] better_log4j_config-fabric-1.0.0
  [✔] better-clouds-1.2.2-BETA+1.20.1.12a1b70
  [✔] better-end-4.0.6
  [✔] better-nether-9.0.6
  [✔] better-trim-tooltips-1.0.1
  [✔] BetterAdvancements-Fabric-1.20.1-0.3.2.160
  [✔] betterbeaconplacement-1.20.1-3.1
  [✔] betterbeds-1.3.0-1.19.3
  [✔] betterconduitplacement-1.20.1-3.0
  [✔] BetterF3-7.0.0-Fabric-1.20-pre6
  [✔] bettermounthud-1.2.2
  [✔] BetterPingDisplay-Fabric-1.20.1-1.1.1
  [✔] bettersafebed-fabric-1.20-8
  [✔] betterspawnercontrol-1.20.1-4.2
  [✔] betterstats-2.10.1+1.20.1
  [✔] biomemakeover-FABRIC-1.20.0-1.10.0
  [✔] blockus-2.7.1+1.20
  [✔] blur-3.1.0
  [✔] Boat-Item-View-Fabric-1.20.1-0.0.5
  [✔] bottledair-1.20.1-2.1
  [✔] brewery-0.4.1+1.20
  [✔] capes-1.5.2+1.20-fabric
  [✘] carpet-fixes-1.20-1.15.2.jar (disabled)
  [✘] caxton-0.4.7+1.20.1.jar (disabled)
  [✔] chat_heads-0.10.16-fabric-1.20
  [✔] cinderscapes-4.0.6
  [✔] CITResewn-1.1.3+1.20
  [✔] cloth-config-11.0.99-fabric
  [✔] clutter-1.20.1-0.3.7
  [✔] collective-1.20.1-6.61
  [✔] colorfulhearts-fabric-1.20-4.0.0
  [✔] comforts-fabric-6.3.3+1.20.1
  [✔] continuity-3.0.0-beta.2+1.20
  [✔] cooldown-coordinator-0.6.1
  [✔] copper-horns-1.0.2
  [✔] cryingportals-1.20.1-2.3
  [✔] ctov-3.3.1
  [✔] cyclepaintings-1.20.1-3.2
  [✔] DamageVignette-2.0.2-fabric+mc1.20.x
  [✔] dark-graph-1.1.0
  [✘] dashloader-5.0.0-beta.1+1.20.0.jar (disabled)
  [✔] day-dream-1.0.8
  [✔] Debugify-1.20.1+1.1
  [✔] deeper-oceans-mc1.20-v1.0.1a
  [✔] defaultoptions-fabric-1.20-18.0.0
  [✔] DetailArmorBar-2.6.3+1.20.1-fabric
  [✔] diamondeconomy-1.5.6
  [✔] diggusmaximus-1.5.9-1.20
  [✔] do-a-barrel-roll-3.0.1+1.20-fabric
  [✔] doubledoors-1.20.1-4.5
  [✔] ductwork-0.7.3
  [✔] dynamic-fps-2.4.0
  [✔] dynamiccrosshair-7.0.2+1.20-fabric
  [✔] eating-animation-1.9.4+1.20
  [✔] elytratrims-1.1.7+1.20
  [✔] emotecraft-for-MC1.20.1-2.2.7-a.build.49-fabric
  [✔] enchant-the-rainbow-1.3.0+1.20.1
  [✔] entityculling-fabric-1.6.2-mc1.20
  [✔] fabric-api-0.84.0+1.20.1
  [✔] fabric-carpet-1.20-1.4.112+v230608
  [✔] fabric-language-kotlin-1.9.5+kotlin.1.8.22
  [✔] fabric-seasons-2.2.1+1.20
  [✔] fabric-seasons-extras-1.2-BETA+1.20
  [✔] fabric-seasons-terraformers-compat-1.0
  [✔] fabricskyboxes-0.7.1+mc1.20
  [✔] fallingleaves-1.15.1+1.20.1
  [✔] FallingTree-1.20.1-4.1.1
  [✔] Fastload+1.18.2-1.20-3.4.0
  [✔] featuredservers-1.20-1.7
  [✔] ferritecore-6.0.0-fabric
  [✔] fishontheline-1.20.1-3.0
  [✔] ForgeConfigAPIPort-v8.0.0-1.20.1-Fabric
  [✔] friendsandfoes-beekeeperhut-fabric-mc1.20-1.3.0
  [✔] friendsandfoes-fabric-mc1.20-1.9.0
  [✔] friendsandfoes-flowerymooblooms-fabric-mc1.20-1.1.0
  [✔] fsb-interop-1.3.2+mc1.20-build.36
  [✔] fusion-1.0.0-fabric-mc1.20
  [✔] geckolib-fabric-1.20-4.2
  [✔] geophilic-v2.0.0-mc1.20u1.20.1
  [✔] global_packs-fabric-1.19.4-1.16.1_fabric
  [✔] graves-3.0.0-beta.2+1.20
  [✔] grindstonesharpertools-1.20.1-3.1
  [✔] holdthatchunk-2.0.1+1.19
  [✔] ImmediatelyFast-1.1.15+1.20.1
  [✔] indium-1.0.18+mc1.20
  [✔] interactic-0.2.0+1.20
  [✔] InvMove-1.20-0.8.4-Fabric
  [✔] iris-mc1.20-1.6.4
  [✔] IronChests-2.0.0
  [✔] itemcollectors-1.1.7a-fabric-mc1.20
  [✔] itemswapper-fabric-0.4.0-mc1.20
  [✔] Jade-1.20-fabric-11.1.3
  [✔] jamlib-0.6.0+1.20
  [✔] jei-1.20.1-fabric-15.1.0.19
  [✔] journeymap-1.20.1-5.9.9-fabric
  [✔] JustEnoughProfessions-fabric-1.20.1-3.0.1
  [✘] KeepSomeInventory-MOD-v1.3.0.jar (disabled)
  [✔] kleeslabs-fabric-1.20-15.0.0
  [✔] krypton-0.2.3
  [✘] Ksyxis-1.1.jar (disabled)
  [✔] lambdynamiclights-2.3.1+1.20.1
  [✔] language-reload-1.5.7+1.20
  [✔] lazy-language-loader-0.3.3
  [✔] lithium-fabric-mc1.20.1-0.11.2
  [✔] logcleaner-1.0.0
  [✔] lootbeams-2.0.5
  [✔] lunade-fastanim-1.6-1.20
  [✔] LunaSlimes-1.6.1-1.20
  [✔] make_bubbles_pop-0.1.1
  [✔] memoryleakfix-fabric-1.17+-1.1.1
  [✔] memoryusagescreen-fabric-mc1.20-1.9.0
  [✔] midnightlib-fabric-1.4.1.1
  [✔] mineralchance-1.20.1-3.2
  [✔] mixintrace-1.1.1+1.17
  [✔] mob-captains-v2.1.2
  [✘] modernfix-fabric-5.0.4+mc1.20.1.jar (disabled)
  [✔] modmenu-7.1.0
  [✔] moonlight-1.20-2.5.8-fabric
  [✔] morechathistory-1.19.1-1.1.1
  [✔] moreculling-1.20-0.18.1
  [✔] NBTac-FABRIC-1.20.1-1.1.2
  [✔] NE-1.20.1-1.6.4
  [✔] neruina-1.0.0-fabric+1.20.1
  [✔] netherportalspread-1.20.1-7.5
  [✔] no-telemetry-1.7.0
  [✔] NoChatReports-FABRIC-1.20.1-v2.2.1
  [✔] notenoughanimations-fabric-1.6.4-mc1.20
  [✔] ok-boomer-0.1.2+1.20
  [✔] omnihopper-2.0.3+1.20
  [✔] onsoulfire-1.20.1
  [✔] optigui-2.1.2
  [✔] owo-lib-0.11.0+1.20
  [✔] particle-rain-2.0.5
  [✔] PetOwner-1.8.5-1.19.4+
  [✔] physics-mod-3.0.5-mc-1.20-fabric
  [✔] Ping-Wheel-1.3.0-fabric-1.20.1
  [✔] polymer-bundled-0.5.2+1.20.1
  [✘] porting_lib-2.1.1024+1.20-entity-refactor.jar (disabled)
  [✔] PresenceFootsteps-1.9.0
  [✔] profundis-1.5.0
  [✔] puzzle-1.5.1+1.20
  [✔] quartz-elevator-2.2.5+1.20
  [✔] raised-fabric-23w16a-1.2.2
  [✔] raknetify-fabric-0.1.0+alpha.5.88-all
  [✔] randommobsizes-fabric-1.20.1-1.2
  [✔] randomshulkercolours-1.20.1-3.0
  [✔] rare-ice-0.6.0
  [✔] rechiseled-1.1.0a-fabric-mc1.20
  [✔] RegionsUnexploredFabric-0.4.1+1.20.1
  [✘] reimaginedmenus-1.0.3-1.20.x.jar (disabled)
  [✔] revamped-trims-1.0.1
  [✔] right-click-harvest-3.2.2+1.19.x-1.20.1-fabric
  [✔] Rrls-1.20-3.0.0-fabric
  [✔] rsls-1.0.1
  [✔] ruined-equipment-2.3.1+1.20.1
  [✔] sbet-v1.0.1
  [✔] scaffoldingdropsnearby-1.20.1-3.0
  [✔] screenfx-1.3.1+1.20.1
  [✔] server-hats-0.16
  [✔] servercore-fabric-1.3.7+1.20.1
  [✘] sfcr-1.7.3-1.20.jar (disabled)
  [✘] Shimmer-fabric-1.20-0.1.15.jar (disabled)
  [✔] simplystatus-1.7.2
  [✔] sleepwarp-2.1.0+1.20
  [✔] slumber-1.1.0
  [✔] sodium-extra-0.4.20+mc1.20-build.103
  [✔] sodium-fabric-mc1.20-0.4.10+build.27
  [✔] sodium-shadowy-path-blocks-3.1.0
  [✔] soundphysics-fabric-1.20.1-1.1.1
  [✔] spark-1.10.42-fabric
  [✔] StackDeobfuscator-1.3.2+fabric.4bca927
  [✔] starlight-1.1.2+fabric.dbc156f
  [✔] status-effect-bars-1.0.3
  [✔] stonecutter-damage-1.19.4-mcmeta-13
  [✔] styled-chat-2.2.0+1.20
  [✔] styledplayerlist-3.1.1+1.20.1
  [✔] supermartijn642configlib-1.1.6-fabric-mc1.20
  [✔] supermartijn642corelib-1.1.9-fabric-mc1.20
  [✔] supplementaries-1.20-2.5.8-fabric
  [✔] swordblocking-1.3.1-1.20
  [✔] symbol-chat-1.20.1-1.0.1
  [✔] tectonic-mod-mc1.20-v2
  [✔] TerraBlender-fabric-1.20.1-3.0.0.164
  [✔] terrestria-6.0.7
  [✔] toms_storage_fabric-1.20-1.6.2
  [✔] tooltipfix-1.1.1-1.20
  [✔] transmog-fabric-1.2.3+1.20
  [✔] trimmable-tools-mc1.20-v1.0.4
  [✔] trinkets-3.7.0
  [✔] universal_shops-1.3.1+1.20
  [✔] vanilla-permissions-0.2.0+1.20
  [✔] vanilla-refresh-1.4.16b
  [✔] vcinteraction-1.20.1-1.0.3
  [✔] villagernames-1.20-4.5.1
  [✔] visuality-0.7.0+1.20
  [✔] visualoverhaul-fabric-5.0.1
  [✔] vmp-fabric-mc1.20.1-0.2.0+beta.7.96-all
  [✔] voicechat-fabric-1.20.1-2.4.11
  [✔] waveycapes-fabric-1.4.0-mc1.20
  [✔] waystones-fabric-1.20-14.0.0
  [✔] yet-another-config-lib-fabric-3.0.1+1.20
quiqueck commented 1 year ago

Thanks for the report. I think I know why this currently breaks.

quiqueck commented 1 year ago

This should be fixed with BCLib 3.0.10 and BetterEnd 4.0.7