(1.2.3062) Core red error - The STRIPPED 1.2 Core doesn't like disabled Ideology

Started by trajda, July 21, 2021, 01:54:31 PM

Previous topic - Next topic

trajda

1. Circumstances: Core creates a red error if you have any 1.2 version AND Royalty downloaded AND Ideology downloaded at the same time.

2. What happened: After the game is loaded (with or without mods), the error log appears with a red line. I cannot read the code, but it looks like the 1.2 version didn't expect two DLCs to be downloaded simultaneously. The core is confused because it doesn't know in which order DLCs are supposed to be loaded. Despite I have read the How to Report a Bug topic, I will post a Hugslib log. I have tested it, this is not a Hugslib error nor Harmony error. The red error appears even if only a core is loaded. I just use Hugslib for a better bug report.

3. What do I expect: I expect the 1.2 version of the core to stop crying about Ideology. Core doesn't have to solve a DLC order if Royalty is the only available DLC for the 1.2 version.

4. Steps you can follow to make the bug appear on your machine: Just run any 1.2 version of Core while both DLCs are downloaded.

https://gist.github.com/356f4e598f1e724e52d1d07fcab38734
https://imgur.com/c1xHdkN

XML error: <forceLoadAfter><li>Ludeon.RimWorld.Royalty</li></forceLoadAfter> doesn't correspond to any field in type ModMetaDataInternal. Context: <ModMetaData><packageId>Ludeon.RimWorld.Ideology</packageId><author>Ludeon Studios</author><steamAppId>1392840</steamAppId><supportedVersions><li>1.3</li></supportedVersions><forceLoadAfter><li>Ludeon.RimWorld.Royalty</li></forceLoadAfter></ModMetaData>
Verse.Log:Error(String, Boolean)
Verse.DirectXmlToObject:ObjectFromXml(XmlNode, Boolean)
Verse.DirectXmlLoader:ItemFromXmlString(String, String, Boolean)
Verse.DirectXmlLoader:ItemFromXmlFile(String, Boolean)
Verse.ModMetaData:Init()
Verse.ModMetaData:.ctor(String, Boolean)
Verse.ModLister:RebuildModList()
Verse.Steam.WorkshopItems:RebuildItemsList()
Verse.Steam.WorkshopItems:.cctor()
Verse.ModLister:RebuildModList()
Verse.ModLister:.cctor()
Verse.ModsConfig:.cctor()
Verse.LoadedModManager:InitializeMods()
Verse.LoadedModManager:LoadAllActiveMods()
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.<>c:<Start>b__6_1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.<>c:<UpdateCurrentAsynchronousEvent>b__27_0()
System.Threading.ThreadHelper:ThreadStart_Context(Object)
System.Threading.ExecutionContext:RunInternal(ExecutionContext, ContextCallback, Object, Boolean)
System.Threading.ExecutionContext:Run(ExecutionContext, ContextCallback, Object, Boolean)
System.Threading.ExecutionContext:Run(ExecutionContext, ContextCallback, Object)
System.Threading.ThreadHelper:ThreadStart()

Canute

Ofcouse Ideology don't work with 1.2
When you would take a closer look at the supported version of that DLC you would see it.
And when you tried to activate it, i bet something would show red.
When you ignore that, it is your fault.

trajda

Quote from: Canute on July 21, 2021, 02:36:16 PM
Ofcouse Ideology don't work with 1.2
When you would take a closer look at the supported version of that DLC you would see it.
And when you tried to activate it, I bet something would show red.
When you ignore that, it is your fault.

Did you actually read anything I wrote or at least looked at the Huglib I posted? I didn't try to activate it. Core doesn't have any right to be angry at something that isn't in the modlist. So no, this is not my fault. There is no mod that has to be uninstalled from your computer to be capable of playing old versions, why DLC should require such a thing?

Canute

No i don't have read the full posting, since the topic allready show me that you did something wrong.
Ideology can't work with 1.2
And if you maybe allready installed 1.3 Royalty too, it won't work with 1.2 either
And if you refering for
QuoteXML error: <forceLoadAfter><li>Ludeon.RimWorld.Royalty</li></forceLoadAfter>
that xml code didn't exist at rimworld 1.2, ofcouse you geting that error.

The DLC's are basicly like mods for but allways made for one rimworld version. Unlike mod's which can made multi version.


trajda

Quote from: Canute on July 21, 2021, 03:04:03 PMNo i don't have read the full posting

Good, than contact me, after you do read it. Cause...

Quote from: Canute on July 21, 2021, 03:04:03 PMIdeology can't work with 1.2

...you clearly havent read my second post either. You are talking to a person who tries to use 1.3 mod in 1.2 version, which is not me. So, I dont know who are you talking with. This error has nothing to do with ideology, or 1.2 or me. If I would rewrite whole Ideology to be a 1.2 DLC instead, the error would not disappear despite the Ideology would be playable. I might start working at Ludeon, I might write my own 1.2 DLC and the error will not disapear. Cause the problem is somewhere else. It is in the core. The 1.2 version of Core doesnt expect ANY DLC to exist, it doesnt matter, what versions these DLCs actually have. And that is something that could happen ONLY in 1.2. Not before, not after.

TheUnspeakable

Is Ideology disabled in your Modlist?  It looks like the game is still trying to parse the text of Ideology and does not understand it.
If Ideology is disabled, it may be looking at Royalty and seeing that it requests a load after order for something that is not loaded and freaks out.
In either case, you can safely ignore the error, as long as you disable Ideology in the Mod list, your 1.2 game should run fine.

trajda

Quote from: TheUnspeakable on July 22, 2021, 05:38:40 AMIs Ideology disabled in your Modlist?

Yes.

Every Hugslib log starts with a modlist. As you can see (and as I tried to tell in every post) this error appears even if only a core and nothing else is loaded. Thats why I say that core has no right to be angry at something, that isnt there.

This error might not be serious but it is unnecessary, cause the cause has been found. This error will appear to everybody who will one day want to try the "old feeling" and returns to 1.2. I am not asking for any help, I have uninstalled Ideology and everything is fine now. I am here to help Ludeon, so they can realize the problem soon enough to decide if they care or they dont.

It took me 6 hours to find this error in my modlist. Ludeon has to decide if they care that every player who will go back to 1.2 will also experience this error (and 6 hours long looking for it) as I did.

So, is this the thread where I can report a bug to Ludeon? How can I be sure they noticed me so they can make the decision?

Pheanox

Thanks for the bug report.  These are harmless errors, but I will post it internally to see if there is anything we can do to remove it.  If you want to play in 1.2.2723 (the last update before 1.3) for mod compatibility though, then this problem will always be an issue.  To vix it we are going to need to update 1.2 and you'd need to switch to 1.2 latest version.  Which would require mods to be updated to that new update.  It's a bit of a catch 22.  However I will put it up there for dev consideration.