yairm210 / Unciv

Open-source Android/Desktop remake of Civ V
Mozilla Public License 2.0
8.6k stars 1.58k forks source link

General error message after installing mods #9294

Closed Boombastic76 closed 1 year ago

Boombastic76 commented 1 year ago

Platform Platform: Android Version: 4.6.6 (Build 856) Rulesets: [Higher quality builtin sounds, Policy mod, Modern Civilizations, Ruins Extended, AbsoluteUnitsXL, Brave New World, Historica, Medieval Civilizations, 3rd and 4th Unique Component, Leader Mission, Extra Buildings, Uncivilized Enhancer, Civ6 Icons, Higher Quality City Ambience Sounds, 4th Unique Component, Old Ancient Civilizations, More Luxuries, Only Mod Civilizations, Better Units and Natural Wonders, More Fauna And Flora, Unciv Vanilla Music Pack, Civ V - Vanilla, Additional Music Ambient, Repairing Improvements in older mods, Greek Civ Split, AbsoluteUnits, Slow Tech, Civ6 mod, Civ V Leader portraits, Upgradable Scouts, Civ6 Tileset, Better Pantheons, Upgradable Scouts BNW, Civ5 CityState Music, Ancient Civilizations, Policy Mod Plus, Nusantara Civilizations, Expanded Warfare, Civ6 Nations for Unciv, Civ V - Gods & Kings, Leaders Plus, The Great Unciv Rework, Additional Music Various, 5Hex Tileset, Better ruins, Better Workers, The Barbarians, Ruins Extended Classic Edition] Last Screen: com.unciv.ui.screens.mainmenuscreen.MainMenuScreen


Device Model: SM-G973F API Level: 31


Message:

java.lang.NullPointerException
    at com.unciv.models.ruleset.RulesetCache.getVanillaRuleset(Ruleset.kt:529)
    at com.unciv.models.ruleset.RulesetValidator.getErrorList(RulesetValidator.kt:132)
    at com.unciv.models.ruleset.Ruleset.checkModLinks(Ruleset.kt:462)
    at com.unciv.ui.popups.options.ModCheckTab$runModChecker$1.invokeSuspend(ModCheckTab.kt:101)
    at com.unciv.ui.popups.options.ModCheckTab$runModChecker$1.invoke(Unknown Source:8)
    at com.unciv.ui.popups.options.ModCheckTab$runModChecker$1.invoke(Unknown Source:4)
    at com.unciv.utils.concurrency.ConcurrencyKt$launchCrashHandling$1.invokeSuspend(Concurrency.kt:83)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
    at com.unciv.utils.concurrency.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:164)
    at com.unciv.utils.concurrency.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:164)
    at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandling$1.invoke(CrashHandlingExtensions.kt:17)
    at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandlingUnit$1.invoke(CrashHandlingExtensions.kt:33)
    at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandlingUnit$1.invoke(CrashHandlingExtensions.kt:33)
    at com.unciv.utils.concurrency.CrashHandlingDispatcher.dispatch$lambda$0(Concurrency.kt:164)
    at com.unciv.utils.concurrency.CrashHandlingDispatcher.$r8$lambda$nwZVoCWi6P2779l7sK5tCF-sQTA(Unknown Source:0)
    at com.unciv.utils.concurrency.CrashHandlingDispatcher$$ExternalSyntheticLambda0.run(Unknown Source:2)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
    at java.ut**Platform:** Android
**Version:** 4.6.6 (Build 856)
**Rulesets:** [Higher quality builtin sounds, Policy mod, Modern Civilizations, Ruins Extended, AbsoluteUnitsXL, Brave New World, Historica, Medieval Civilizations, 3rd and 4th Unique Component, Leader Mission, Extra Buildings, Uncivilized Enhancer, Civ6 Icons, Higher Quality City Ambience Sounds, 4th Unique Component, Old Ancient Civilizations, More Luxuries, Only Mod Civilizations, Better Units and Natural Wonders, More Fauna And Flora, Unciv Vanilla Music Pack, Civ V - Vanilla, Additional Music Ambient, Repairing Improvements in older mods, Greek Civ Split, AbsoluteUnits, Slow Tech, Civ6 mod, Civ V Leader portraits, Upgradable Scouts, Civ6 Tileset, Better Pantheons, Upgradable Scouts BNW, Civ5 CityState Music, Ancient Civilizations, Policy Mod Plus, Nusantara Civilizations, Expanded Warfare, Civ6 Nations for Unciv, Civ V - Gods & Kings, Leaders Plus, The Great Unciv Rework, Additional Music Various, 5Hex Tileset, Better ruins, Better Workers, The Barbarians, Ruins Extended Classic Edition]
**Last Screen:** `com.unciv.ui.screens.mainmenuscreen.MainMenuScreen`

--------------------------------

Device Model: SM-G973F
API Level: 31

--------------------------------

**Message:**

java.lang.NullPointerException at com.unciv.models.ruleset.RulesetCache.getVanillaRuleset(Ruleset.kt:529) at com.unciv.models.ruleset.RulesetValidator.getErrorList(RulesetValidator.kt:132) at com.unciv.models.ruleset.Ruleset.checkModLinks(Ruleset.kt:462) at com.unciv.ui.popups.options.ModCheckTab$runModChecker$1.invokeSuspend(ModCheckTab.kt:101) at com.unciv.ui.popups.options.ModCheckTab$runModChecker$1.invoke(Unknown Source:8) at com.unciv.ui.popups.options.ModCheckTab$runModChecker$1.invoke(Unknown Source:4) at com.unciv.utils.concurrency.ConcurrencyKt$launchCrashHandling$1.invokeSuspend(Concurrency.kt:83) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106) at com.unciv.utils.concurrency.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:164) at com.unciv.utils.concurrency.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:164) at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandling$1.invoke(CrashHandlingExtensions.kt:17) at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandlingUnit$1.invoke(CrashHandlingExtensions.kt:33) at com.unciv.ui.crashhandling.CrashHandlingExtensionsKt$wrapCrashHandlingUnit$1.invoke(CrashHandlingExtensions.kt:33) at com.unciv.utils.concurrency.CrashHandlingDispatcher.dispatch$lambda$0(Concurrency.kt:164) at com.unciv.utils.concurrency.CrashHandlingDispatcher.$r8$lambda$nwZVoCWi6P2779l7sK5tCF-sQTA(Unknown Source:0) at com.unciv.utils.concurrency.CrashHandlingDispatcher$$ExternalSyntheticLambda0.run(Unknown Source:2) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641) at java.lang.Thread.run(Thread.java:920)

SomeTroglodyte commented 1 year ago

You should tell us which of these mods caused the problem.

Boombastic76 commented 1 year ago

I installed them all at once, so it is hard to tell which caused it, at least for now. If I have further insight I will let you know.

SomeTroglodyte commented 1 year ago

hard to tell which caused it

See - we're all in the same boat. It's pretty interesting as the trace says it's sinking an unsinkable boat (getVanillaRuleset should never fail, which means this hits whith a cleared or incomplete RulesetCache - can't imagine when there's a window for that) - but that also makes it hard to debug.

This may also have some correlation to #9243.

SomeTroglodyte commented 1 year ago

What were your steps - you launched the game, went to mod manager, loaded your bunch of mods, then back and straight to options - check mods? Does that reproduce now as launch - options - check mods crashes? If not, it should show your culprit.

Boombastic76 commented 1 year ago

Yes, after checking the mods based on various set of rules and leaving back to main menu. By the way, I played some rounds with the majority of the mods activated. Now I experience a load error from an autosaved game.

I will open a new thread for it.