hachchch / Geneciv

Build Human before the Burn Planet Earth. In this mod You can Control Cells, Fishes and Dinosaurs to Conquer the biosphere. recommend to use Hexarealm and AbsoluteUnits!
14 stars 5 forks source link

Game crashes due to "algae unit" construction #22

Open NahuiiNoob opened 4 months ago

NahuiiNoob commented 4 months ago

i was playing geneciv and suddenly the game starts crashing at turn 68, i cant do nothing to fix it, i would love if u take a look at the crash error, maybe its an error from the mod:

Message:

kotlin.UninitializedPropertyAccessException: lateinit property currentTile has not been initialized
    at com.unciv.logic.map.mapunit.MapUnit.getCurrentTile(MapUnit.kt:44)
    at com.unciv.logic.map.mapunit.MapUnit.getTile(MapUnit.kt:202)
    at com.unciv.models.ruleset.unique.Unique$conditionalApplies$relevantTile$2.invoke(Unique.kt:151)
    at com.unciv.models.ruleset.unique.Unique$conditionalApplies$relevantTile$2.invoke(Unique.kt:149)
    at kotlin.SynchronizedLazyImpl.getValue(LazyJVM.kt:74)
    at com.unciv.models.ruleset.unique.Unique.conditionalApplies$lambda$9(Unique.kt:149)
    at com.unciv.models.ruleset.unique.Unique.conditionalApplies(Unique.kt:258)
    at com.unciv.models.ruleset.unique.Unique.conditionalsApply(Unique.kt:64)
    at com.unciv.models.ruleset.unique.UniqueMap$getMatchingUniques$1.invoke(Unique.kt:402)
    at com.unciv.models.ruleset.unique.UniqueMap$getMatchingUniques$1.invoke(Unique.kt:402)
    at kotlin.sequences.FilteringSequence$iterator$1.calcNext(Sequences.kt:171)
    at kotlin.sequences.FilteringSequence$iterator$1.hasNext(Sequences.kt:194)
    at kotlin.sequences.SequenceBuilderIterator.yieldAll(SequenceBuilder.kt:172)
    at kotlin.sequences.SequenceScope.yieldAll(SequenceBuilder.kt:92)
    at com.unciv.logic.map.mapunit.MapUnit$getMatchingUniques$1.invokeSuspend(MapUnit.kt:214)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlin.sequences.SequenceBuilderIterator.hasNext(SequenceBuilder.kt:129)
    at kotlin.sequences.SequencesKt___SequencesKt.any(_Sequences.kt:1218)
    at com.unciv.logic.map.mapunit.MapUnit.hasUnique(MapUnit.kt:226)
    at com.unciv.logic.map.mapunit.MapUnit.hasUnique$default(MapUnit.kt:221)
    at com.unciv.logic.map.mapunit.MapUnitCache.updateUniques(MapUnitCache.kt:116)
    at com.unciv.logic.map.mapunit.MapUnit.updateUniques(MapUnit.kt:243)
    at com.unciv.logic.map.mapunit.MapUnit.setTransients(MapUnit.kt:464)
    at com.unciv.models.ruleset.unit.BaseUnit.getMapUnit(BaseUnit.kt:83)
    at com.unciv.logic.map.TileMap.placeUnitNearTile(TileMap.kt:542)
    at com.unciv.logic.civilization.managers.UnitManager.placeUnitNearTile(UnitManager.kt:79)
    at com.unciv.logic.civilization.managers.UnitManager.placeUnitNearTile(UnitManager.kt:70)
    at com.unciv.logic.civilization.managers.UnitManager.addUnit(UnitManager.kt:45)
    at com.unciv.models.ruleset.unit.BaseUnit.postBuildEvent(BaseUnit.kt:212)
    at com.unciv.models.ruleset.INonPerpetualConstruction$DefaultImpls.postBuildEvent$default(IConstruction.kt:38)
    at com.unciv.logic.city.CityConstructions.constructionComplete(CityConstructions.kt:459)
    at com.unciv.logic.city.CityConstructions.constructIfEnough(CityConstructions.kt:343)
    at com.unciv.logic.city.managers.CityTurnManager.startTurn(CityTurnManager.kt:23)
    at com.unciv.logic.civilization.managers.TurnManager.startTurn(TurnManager.kt:72)
    at com.unciv.logic.GameInfo.nextTurn(GameInfo.kt:399)
    at com.unciv.ui.screens.worldscreen.WorldScreen$nextTurn$1.invokeSuspend(WorldScreen.kt:597)
    at com.unciv.ui.screens.worldscreen.WorldScreen$nextTurn$1.invoke(WorldScreen.kt)
    at com.unciv.ui.screens.worldscreen.WorldScreen$nextTurn$1.invoke(WorldScreen.kt)
    at com.unciv.utils.ConcurrencyKt$launchCrashHandling$1.invokeSuspend(Concurrency.kt:87)
    at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
    at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
    at com.unciv.utils.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:173)
    at com.unciv.utils.CrashHandlingDispatcher$dispatch$1.invoke(Concurrency.kt:173)
    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.CrashHandlingDispatcher.dispatch$lambda$0(Concurrency.kt:173)
    at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
    at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
    at java.base/java.lang.Thread.run(Unknown Source)

Save Mods:

[moREsources, Higher Quality City Ambience Sounds, =GeneCiv=, =Geneciv Extension AkashicRecords, Thin Bubbly Borders, Closer Cities Distance of 1, Ice Breakers, 5Hex Tileset, Yet Another Music Pack, ReligionPlus]

Save Data:

Show Saved Game
NahuiiNoob commented 4 months ago

UPDATE: I found the issue, the game crashes just when the construction of an "algae unit" is about to be completed in a city. I have tried several times and I have confirmed that in fact, every time when an "algae unit" is being built and there is 1 turn left for it to appears on the map, I hit "next turn" and when that "algae unit" should appear in the game is when it crashes