Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

buglet in Util.ModsCompatibilityChecker.GetModName #811

Closed
originalfoo opened this issue Apr 3, 2020 · 5 comments · Fixed by #812
Closed

buglet in Util.ModsCompatibilityChecker.GetModName #811

originalfoo opened this issue Apr 3, 2020 · 5 comments · Fixed by #812
Labels
BUG Defect detected investigating Issue currently under investigation
Milestone

Comments

@originalfoo
Copy link
Member

originalfoo commented Apr 3, 2020

steam user: ar.walsh7

TMPE v11 STABLE 1637663252

https://steamcommunity.com/app/255710/discussions/0/2146469724193231534/?tscn=1585931849

output_log.txt

NullReferenceException: Object reference not set to an instance of an object
  at TrafficManager.Util.ModsCompatibilityChecker.GetModName (ColossalFramework.Plugins.PluginInfo plugin) [0x00000] in <filename unknown>:0 
  at TrafficManager.Util.ModsCompatibilityChecker.ScanForIncompatibleMods () [0x00000] in <filename unknown>:0 
  at TrafficManager.Util.ModsCompatibilityChecker.PerformModCheck () [0x00000] in <filename unknown>:0 
UnityEngine.DebugLogHandler:Internal_LogException(Exception, Object)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
UnityEngine.Logger:LogException(Exception, Object)
UnityEngine.Debug:LogException(Exception)
TrafficManager.Util.ModsCompatibilityChecker:PerformModCheck()
TrafficManager.TrafficManagerMod:CheckForIncompatibleMods()
<LoadIntroComplete>c__Iterator8:MoveNext()
LoadingManager:Update()
@originalfoo originalfoo added the BUG Defect detected label Apr 3, 2020
@originalfoo originalfoo changed the title buglet in TrafficManager.Util.ModsCompatibilityChecker.GetModName buglet in Util.ModsCompatibilityChecker.GetModName Apr 3, 2020
@originalfoo originalfoo added the investigating Issue currently under investigation label Apr 3, 2020
@originalfoo
Copy link
Member Author

originalfoo commented Apr 3, 2020

@originalfoo
Copy link
Member Author

originalfoo commented Apr 3, 2020

steam user: ar.walsh7

Mods listed in OP:

  • 2044086131 - NExt2 SH bug fix
  • 787611845 - Prop Snapping
  • 406723376 - Tree Brush
  • 837734529 - Find It
  • 502750307 - Extra Landscaping Tools
  • 689937287 - Surface Painter
  • 593588108 - Prop & Tree Anarchy
  • 445589127 - Precision Engineering
  • 791221322 - Prop Precision
  • 767233815 - Decal Prop Fix
  • 881291183 - Ploppable Asphalt+
  • 1274199764 - Network Tiling
  • 1394468624 - Improved Stop Selection
  • 1637663252 - TM:PE v11 STABLE
  • 552309905 - No Abandonment
  • 1372431101 - Painter
  • 458519223 - Unlock All + Wonders & Landmarks
  • 694512541 - Prop Line Tool
  • 924884948 - Plop the Growables
  • 530871278 - Daylight Classic
  • 465127441 - Airport Roads
  • 1620588636 - Safenets
  • 812125426 - Network Extensions 2 (duplicate assembly!)
  • 2016920607 - Ploppable RICO Revisited
  • 1844442251 - Fine Road Tool 2
  • 2037862156 - IsIntercity Fix
  • 1758376843 - Network Skins 2
  • 611254368 - Environment Changer
  • 1619685021 - Move It
  • 650436109 - Quay Anarchy
  • 576327847 - 81 Tiles
  • 667342976 - LSM
  • 2034713132 - Auto Repair

@originalfoo
Copy link
Member Author

Line of code that's failing:

https://github.com/CitiesSkylinesMods/TMPE/blob/master/TLM/TLM/Util/ModsCompatibilityChecker.cs#L125

I have better code for that in mod compat checker so will send PR as interim fix, but will still be good to know which of those mods listed is broken.

originalfoo added a commit that referenced this issue Apr 3, 2020
Fixes #811 - Mods with missing PluginInfo, user mod instance or name property would cause exceptions. This commit fixes that.
@originalfoo
Copy link
Member Author

steam user: ar.walsh7

TMPE.log.txt

  * 787611845    Prop Snapping
  * 406723376    Tree brush
  * 837734529    Find It! 1.5.4
  * 689937287    Surface Painter
  * 593588108    Prop & Tree Anarchy
  * 445589127    Precision Engineering
  * 791221322    Prop Precision 1.0.1
  * 767233815    Decal Prop Fix
  * 881291183    Ploppable Asphalt
  * 1274199764   Network Tiling
  * 1394468624   Advanced Stop Selection
  * 552309905    No Abandonment
  * 1372431101   Painter
  * 458519223    Unlock All + Wonders & Landmarks
  * 694512541    Prop Line Tool
  * 924884948    Plop Growables
  * 530871278    Daylight Classic
  * 465127441    Airport Roads 1.3.7
  * 1620588636   Safenets
  * 2044086131   Network Extensions 2
  * 2016920607   RICO Revisited 1.1.1
  * 1844442251   Klyte's Fine Road Tool 2.0.4
  * 1637663252   TM:PE 11.2.1 STABLE
  * 2037862156   IsIntercity Fix
  * 1758376843   Network Skins 2
  * 611254368    Environment Changer
  * 1619685021   Move It 2.7.1
  * 650436109    Quay Anarchy
  * 576327847    81 Tiles (Fixed for C:S 1.2+)
  * 667342976    Loading Screen Mod
  * 2034713132   Auto Repair
  * 502750307    Extra Landscaping Tools

@originalfoo
Copy link
Member Author

Ok, so here's what's happening and it's reproducible:

  • Bugfix NExt2 has same assembly name and version as the older NExt2
  • Game is only loading one of those assemblies
  • TMPE tries to inspect both, but one of them isn't loaded

So the linked PR #812 will fix the issue, but I'll tweak it to see if I can coax the mod name out of the unloaded one.

@originalfoo originalfoo added this to the 11.2.2 milestone Apr 4, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
BUG Defect detected investigating Issue currently under investigation
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant