Some of you might already have noted that some assets refuse to load cause they need some AI of some mod the asset creator used. The last days I coded a mod to help fixing these assets. Originally I wanted to help fixing the Alpha Romeo 164 but the author not only refuses to confirm that the asset is broken (in fact he denies it) but also didn't want any help and removed all comments, no matter how helpful they were.
Anyway, I'll use this asset as example. The first info is for users:
How to identify broken assets?
Search your Player.log for "System.IO.InvalidDataException". Here's a example:
What we see here is that it tries to load the Alfa Romeo 164 from package 453021816. This fails cause it can't find the assembly CitiesSkylinesNoDespawnMod, to be more precise the type CitiesSkylinesNoDespawnMod.VehicleAIMod.PassengerCarAIMod.
If you find such an asset make the author aware of it and link it here so we get a list. That's all you as a user can do, the next info is for the asset creators:
How to fix your asset?
First off: The fix is still experimental. That means !!! BACKUP YOUR ASSET !!!
You need to have the needed mod (No Despawn Mod at this example) as well as V10DeleteAI installed. Then open the asset in the editor, this also prints out to the Player.log:
The good thing is that this part gets printed to the log even if it can't load the asset, so if Google isn't helpful to find the needed mod use that list (the No Despawn Mod is 407335588, for example. To translate a number to a mod simply attach it to the URL http://steamcommunity.com/sharedfiles/filedetails/?id= - so for the example: http://steamcommunity.com/sharedfiles/filedetails/?id=407335588 ).
Now you'll see a red Button "Remove AI" - click it and you'll see this:
Make sure To and From is correct (in case you don't know better ask some coding guy), then click OK. After that do not remove the AI again or your asset will be damaged!
Here's also the fixed Alfa Romeo 164: https://dl.dropbox.com/s/uyh502sg7gueavx/alfar164.crp
Anyway, I'll use this asset as example. The first info is for users:
How to identify broken assets?
Search your Player.log for "System.IO.InvalidDataException". Here's a example:
Code:
Loading custom asset Alfa Romeo 164 from 'alfar164' [CustomAssetMetaData, 54c3f94290aee8b7f201b368b7f54aa0, in package ''453021816' [/home/v10lator/.ssd/SteamApps/steamapps/workshop/content/255710/453021816/alfar164.crp]' (1111740, 2048)] [Modding]
(Filename: /home/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebug.gen.cpp Line: 56)
Assembly resolution failure. No assembly named 'CitiesSkylinesNoDespawnMod, Version=1.0.5577.29262, Culture=neutral, PublicKeyToken=null' was found. [Serialization]
(Filename: /home/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebug.gen.cpp Line: 56)
Unkown type detected. Attempting to resolve from 'CitiesSkylinesNoDespawnMod.VehicleAIMod.PassengerCarAIMod, CitiesSkylinesNoDespawnMod, Version=1.0.5577.29262, Culture=neutral, PublicKeyToken=null' to 'CitiesSkylinesNoDespawnMod.VehicleAIMod.PassengerCarAIMod, CitiesSkylinesNoDespawnMod, Version=1.0.5577.29262, Culture=neutral, PublicKeyToken=null' [Packer - Internal]
(Filename: /home/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebug.gen.cpp Line: 56)
Assembly resolution failure. No assembly named 'CitiesSkylinesNoDespawnMod, Version=1.0.5577.29262, Culture=neutral, PublicKeyToken=null' was found. [Serialization]
(Filename: /home/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebug.gen.cpp Line: 56)
Unexpected type 'CitiesSkylinesNoDespawnMod.VehicleAIMod.PassengerCarAIMod, CitiesSkylinesNoDespawnMod, Version=1.0.5577.29262, Culture=neutral, PublicKeyToken=null' detected. No resolver handled this type. Skipping -1 bytes. [Packer - Internal]
(Filename: /home/builduser/buildslave/unity/build/artifacts/generated/common/runtime/UnityEngineDebug.gen.cpp Line: 56)
System.IO.InvalidDataException: Loading custom asset failed:['alfar164' [CustomAssetMetaData, 54c3f94290aee8b7f201b368b7f54aa0, in package ''453021816' [/home/v10lator/.ssd/SteamApps/steamapps/workshop/content/255710/453021816/alfar164.crp]' (1111740, 2048)]]
Unknown type to deserialize CitiesSkylinesNoDespawnMod.VehicleAIMod.PassengerCarAIMod, CitiesSkylinesNoDespawnMod, Version=1.0.5577.29262, Culture=neutral, PublicKeyToken=null [Modding]
What we see here is that it tries to load the Alfa Romeo 164 from package 453021816. This fails cause it can't find the assembly CitiesSkylinesNoDespawnMod, to be more precise the type CitiesSkylinesNoDespawnMod.VehicleAIMod.PassengerCarAIMod.
If you find such an asset make the author aware of it and link it here so we get a list. That's all you as a user can do, the next info is for the asset creators:
How to fix your asset?
First off: The fix is still experimental. That means !!! BACKUP YOUR ASSET !!!
You need to have the needed mod (No Despawn Mod at this example) as well as V10DeleteAI installed. Then open the asset in the editor, this also prints out to the Player.log:
Code:
The following mods were used when this asset was created:
406255342
406132323
408209297
408092246
407055819
410329674
410805639
406623071
408126282
409070218
409069482
407871375
407563935
407100916
407873631
405920272
407335588
407795371
408905948
411164732
411833858
412146081
412101021
[Modding]
Now you'll see a red Button "Remove AI" - click it and you'll see this:
Make sure To and From is correct (in case you don't know better ask some coding guy), then click OK. After that do not remove the AI again or your asset will be damaged!
Here's also the fixed Alfa Romeo 164: https://dl.dropbox.com/s/uyh502sg7gueavx/alfar164.crp