Minecraft的疑難雜癥#13-Feature order cycle found, involved sources
又來寫文章了(,崩潰專欄都能高產(chǎn)嘛?
這個崩潰(Exception generating new chunk)主要是因為在數(shù)據(jù)包(模組也會包含數(shù)據(jù)包)中當兩個生物群系在同一步驟中以不同的順序引用同一放置的地物時,就會發(fā)生地物順序循環(huán)(Feature order cycle)。
地物指的是地面上各種自然生成的物體w
這個問題主要是出自于數(shù)據(jù)包(模組)間的沖突w,手動修復(fù)對大多數(shù)人來說比較困難。
崩潰日志原來長這個樣子的——
---- Minecraft Crash Report ----
[...省略...]
Description: Exception generating new chunk
java.lang.IllegalStateException: Feature order cycle found, involved sources: [Reference{ResourceKey[minecraft:worldgen/biome / minecraft:ice_spikes]=net.minecraft.class_1959@3e59e106}]
at net.minecraft.class_7510.method_44210(class_7510.java:100)
at net.minecraft.class_2794.method_44215(class_2794.java:102)
at com.google.common.base.Suppliers$NonSerializableMemoizingSupplier.get(Suppliers.java:183)
[...省略...]
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
[...省略...]
-- Chunk to be generated --
Details:
Location: -8,27
Position hash: 120259084280
Generator: net.minecraft.class_3754@4d13c517
Stacktrace:
at net.minecraft.class_3898.method_17225(class_3898.java:684)
[...省略...]
-- Affected level --
Details:
[...省略...]
-- System Details --
Details:
[...省略...]
單看這個崩潰日志并不能發(fā)現(xiàn)什么,他只告訴我是原版的(minecraft:ice_spikes)地物有問題......難不成我要刪掉原版的地物?!
唔,有人專門為這個問題做了一個模組,可以方便地查看出錯的地方!
那就是Cyanide模組[*2][*3]!它可以準確確定并列出數(shù)據(jù)包中的錯誤。
來看看在他的作用下,崩潰日志變成什么樣子了:
---- Minecraft Crash Report ----
[...省略...]
Description: Exception generating new chunk
com.alcatrazescapee.cyanide.codec.FeatureCycleDetector$FeatureCycleException: A feature cycle was found.
Cycle:
At step 6
Feature 'gtceu:ore'
? must be before 'gtceu:ore' (defined in 'minecraft:deep_frozen_ocean' at index 36, 37 and 52 others)
at com.alcatrazescapee.cyanide.codec.FeatureCycleDetector.buildFeaturesPerStep(FeatureCycleDetector.java:141)
at net.minecraft.class_7510.handler$cbe000$cyanide$buildFeaturesPerStepWithAdvancedCycleDetection(class_7510.java:529)
[...省略...]
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:165)
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- Head --
[...省略...]
-- Chunk to be generated --
Details:
Location: 7,18
Position hash: 77309411335
Generator: net.minecraft.class_3754@26e93d74
Stacktrace:
at net.minecraft.class_3898.method_17225(class_3898.java:684)
at com.mojang.datafixers.util.Either$Left.map(Either.java:38)
[...省略...]
-- Affected level --
[...省略...]
-- System Details --
[...省略...]
這下我們就可以看到誰是幕后黑手了,是格雷(gtceu)在深海(minecraft:deep_frozen_ocean)的礦物生成出了問題!
解決方案:
如果你是玩家,且不懂如何修改數(shù)據(jù)包:
刪掉模組似乎是你的唯一選擇...... 這個崩潰如果遇到第一次,還可以通過繞開刷新該區(qū)塊的地方繼續(xù)游戲,但是這并非長久之計,有一個肯定會有其他的地方會有.......
如果你是玩家,但是了解如何修改數(shù)據(jù)包,又或者你是數(shù)據(jù)包開發(fā)者
請參考相關(guān)鏈接的[1]了解如何操作w(由于我沒有操作過,不敢亂說w,據(jù)我個人看的話,是需要到數(shù)據(jù)包(模組)內(nèi)部,就可以在worldgen文件夾里找到這個文件)

相關(guān)鏈接:
[1]?How to fix feature order cycles - Minecraft 1.18, 1.18.2, 1.19 (https://misode.github.io/guides/feature-order-cycle/)
[2]?Cyanide (Forge) - Minecraft Mods - CurseForge(https://www.curseforge.com/minecraft/mc-mods/cyanide-forge)
[3]?Cyanide (Fabric) - Minecraft Mods - CurseForge(https://www.curseforge.com/minecraft/mc-mods/cyanide-fabric)
(MC百科沒有收錄,我提交了但是還沒審核,所以這里先放Curseforge)