STEAM 组
Harmony for Games HarmonyLib
STEAM 组
Harmony for Games HarmonyLib
3
游戏中
18
在线
成立于
2021 年 3 月 22 日
正在显示第 21 - 30 项,共 89 项条目
6
Incompatibility with Ubuntu, Move It! mod
引用自 trez00d
I should also add, I've got 24GB RAM, and over 64GB swap/pagefile on Windows and Linux, but I can definitely increase those. It does get pretty close to the limit, but typically there's plenty left.

It's hard to say what would be required for _your_ gamesave. I've seen reports of gamesaves using over 120GB of address space (RAM + swap), which would absolutely crash on your system as currently configured.

Keep in mind that with unstable mods, it may be unexpected memory use, eg, a bug triggered by the instability which causes 50GB to be attempted to be allocated. Even if the mod does not require 50GB, it's enough to miscalculate how much memory it needs. The attempt alone tells the game there is not enough memory, and it doesn't have a gracious handler for this error. Instead, it simply crashes. You'd be able to tell from the log file if your crash is due to memory.

Also, if you are somehow near the limit of the memory requirement, it's entirely possible that one configuration to use slightly less than you have, and not crash, while other, with only a minor difference (eg, this brand of harmony instead of the other brand) to be the straw that breaks the camel's back.

I've also seen crashes due to graphics drivers before. Infamously, citrix workspaces does some magic with capturing the screen for remote work, which would interfere with CSL, causing CSL to crash when citrix is installed. There is likely a whole class of software that can cause this kind of crash.

Post your full output log file after a crash, it may shed some light on what kind of crash you are having.
2
Curb Height Adjuster mod & Harmony (re)
6
Incompatibility with Ubuntu, Move It! mod
Hi trez00d,

Thanks for the detailed report. You seem to have two issues (a) crashing (b) Move It incompatibility

Move It! Incompatibility

  • Move It! was updated 9 Dec @ 10:25pm with message "Hotfix for loading issue"
  • The Move It! description shows that as of 2.9.5 it adds support for "Extended Managers Library"
  • The "Extended Managers Library" gets multiple updates per day at this point, and itself depends on Harmony

Based on these clues, I have to conclude that Move It now has an indirect dependency on Harmony via the Extended Managers Library, and the unexplained "loading issue" means that the author is struggling to get a handle on loading under various configurations. It could be that he fixed loading when "Extended Managers Library" is present, but broke it when it's not present.

The Extended Managers Library, being so frequently updated, and based on its own description that "This mod, under its current state, is not ready for mainstream usage", tells me that it is in pre-alpha stage, which means bugs abound.

Looking at the Move It github, I see multiple commits which either add, improve, make compatible, modify support for "Tree Snapping", "Prop Snapping" and "Tree Anarchy", which indicates to me a trial-and-error process to make a handful of mods detect each other and play along. The code itself is hacky, detecting mods by the subscription status, then attempting to load assemblies. This approach is very prone to break depending on load order, versions and updates of the mods it tries to juggle.

I would suggest the problem is in the "Hotfix for loading issue" in Move It. Try using an older version of Move It, approaching its author with a bug report, and/or removing this mod until the dust settles.


Crashing

You have mod 2414618415 (Adaptive Roads), which fails to load, and reports:
83 * 2414618415 2414618415 2414618415 CH: 2.0.4.0 2.0.0.0 [ERR] Exceptions thrown: 4 [ERR] TypeLoadException: Could not load type 'KianCommons.Patches.HarmonyPatch2' from assembly 'AdaptiveRoads, Version=2.4.7.17971, Culture=neutral, PublicKeyToken=null'. (see https://github.com/drok/Harmony-CitiesSkylines/issues/9): 4 times [ERR] missing: NetworkSkins[1.1.7984.15069] [ERR] missing: TMPE.API[11.5.1.21302] [ERR] missing: TrafficManager[11.5.1.24370] [ERR] missing: CSUtil.Commons[1.0.7485.17154] [ERR] missing: NetworkSkins[1.0.7968.20703]

Other than the multiple missing dependencies, this mod suffers from a well known and documented issue, as the report indicates: https://github.com/drok/Harmony-CitiesSkylines/issues/9; try pointing its author to this documentation. This loading bug is positively in the adaptive roads mod.

In your Harmony Report there are multiple mods with problems, and some that are deeply troubled, listed below. Try unsubcribing these to see if they solve the crashing, then re-subscribe them one at a time, to find if any one specifically triggers the crash.

10 2560782729 NetworkMultitool Network Multitool 1.2.0.3 CH: 2.0.4.0 [ERR] Other problems: 2 [ERR] CitiesHarmony.API misuse by NetworkMultitool[1.2.0.3] is prohibited (see https://github.com/drok/Harmony-CitiesSkylines/issues/8): 2 times 13 1664509314 CustomAnimationLoader Custom Animation Loader (CAL) 0H: 1.2.0.1 [ERR] Exceptions triggered: 2 incidents from 1 locations [ERR] HarmonyUserException: Prohibited global UnpatchAll() from CustomAnimationLoader.Mod.OnDisabled: 2 times 16 2472062376 NodeController Node Controller Renewal 3.1.3.1 CH: 2.0.4.0 [ERR] Other problems: 2 [ERR] CitiesHarmony.API misuse by NodeController[3.1.3.1] is prohibited (see https://github.com/drok/Harmony-CitiesSkylines/issues/8): 2 times [ERR] missing: TMPE.API[11.6.0.24267] [ERR] missing: HideCrosswalks[3.0.1.21320] [ERR] missing: TrafficManager[11.6.0.33536] 23 2511258910 BuildingSpawnPoints Building Spawn Points 1.2.3.1 CH: 2.0.4.0 [ERR] Other problems: 2 [ERR] CitiesHarmony.API misuse by BuildingSpawnPoints[1.2.3.1] is prohibited (see https://github.com/drok/Harmony-CitiesSkylines/issues/8): 2 times 24 1886877404 CustomEffectLoader Custom Effect Loader 0H: 1.2.0.1 [ERR] Exceptions triggered: 2 incidents from 1 locations [ERR] HarmonyUserException: Prohibited global UnpatchAll() from CustomEffectLoader.Mod.OnDisabled: 2 times 39 1764637396 ToggleIt Toggle It! 0H: 1.2.0.1 [ERR] Exceptions triggered: 2 incidents from 1 locations [ERR] HarmonyUserException: Prohibited global UnpatchAll() from ToggleIt.ModInfo.OnDisabled: 2 times 60 1567569285 AchieveIt Achieve It! 0H: 1.2.0.1 [ERR] Exceptions triggered: 2 incidents from 1 locations [ERR] HarmonyUserException: Prohibited global UnpatchAll() from AchieveIt.ModInfo.OnDisabled: 2 times 79 2140418403 NodeMarkup Intersection Marking Tool 1.8.Û CH: 2.0.4.0 [ERR] Other problems: 2 [ERR] CitiesHarmony.API misuse by NodeMarkup[1.8.2.2] is prohibited (see https://github.com/drok/Harmony-CitiesSkylines/issues/8): 2 times 83 * 2414618415 2414618415 2414618415 CH: 2.0.4.0 2.0.0.0 [ERR] Exceptions thrown: 4 [ERR] TypeLoadException: Could not load type 'KianCommons.Patches.HarmonyPatch2' from assembly 'AdaptiveRoads, Version=2.4.7.17971, Culture=neutral, PublicKeyToken=null'. (see https://github.com/drok/Harmony-CitiesSkylines/issues/9): 4 times [ERR] missing: NetworkSkins[1.1.7984.15069] [ERR] missing: TMPE.API[11.5.1.21302] [ERR] missing: TrafficManager[11.5.1.24370] [ERR] missing: CSUtil.Commons[1.0.7485.17154] [ERR] missing: NetworkSkins[1.0.7968.20703]

However, once you start re-enabling these badly behaved mods, you're basically gambling with stability. They have known, serious bugs, and if they work, when they work, it's by luck of circumstances, rather than by design. Their bugs can only be solved by their respective authors.

Normally, mods that don't try to be too magical should not be able to crash the game to desktop, except by triggering an out-of-memory condition, which is not handled by the game at all. Can you rule out one of these mods, or even the game, hogging more memory than expected?

Magical mods are those that drop DLL's in the game's directory to hijack/hook the executable in some way. They rely on undocumented, unsupported tricks to accomplish their magic, so their faults are not caught and handled by the application. Hence, when they encounter some error, unhandled conditions mean crash. Examples: FPS booster, patch loader, etc.

I would also include the following mods in the "magical" category, as they appear to change elements of the graphics engine at a low level. Try unsubbing them and cautiously re-adding them one at a time. This is not to put blame on them, but they are where I would begin investigating:

1 2632235148 EffectsPOModule Effects Module 9 762520291 ShadowStrengthAdjuster ShadowStrengthAdjuster 13 1664509314 CustomAnimationLoader Custom Animation Loader (CAL) 0H: 1.2.0.1 [ERR] Exceptions triggered: 2 incidents from 1 locations [ERR] HarmonyUserException: Prohibited global UnpatchAll() from CustomAnimationLoader.Mod.OnDisabled: 2 times 24 1886877404 CustomEffectLoader Custom Effect Loader 0H: 1.2.0.1 [ERR] Exceptions triggered: 2 incidents from 1 locations [ERR] HarmonyUserException: Prohibited global UnpatchAll() from CustomEffectLoader.Mod.OnDisabled: 2 times 25 2414025775 TrafficLightReplacer Traffic Light Replacer 0H: 1.2.0.1 26 940299505 AnimUV AnimUV Params [ERR] missing: mscorlib[4.0.0.0] 30 922939393 LodFixer Transparency LOD Fix + Cloud AÛ 34 1680642819 TrueLodToggler Ultimate Level Of Detail 0H: 1.2.0.1 36 1938493221 Mini_FPS_Booster Mini FPS Booster 1.0 0H: 1.2.0.1 37 1183931915 SkyboxReplacer Cubemap Replacer 38 465318661 ToggleableWhiteness ToggleableWhiteness 40 412146081 PostProcessFX PostProcessFX 50 512314255 MoreNetworkStuff More Network Stuff 51 2126881996 ShadowDistanceFix Shadow Distance Fix 75 2119477759 AdditiveShader Additive Shader 84 * 2101551127 Repaint Repaint 1.4.2 CH: 2.0.4.0 2.0.0.0

Finally, I highly doubt that either harmony mod is directly the cause of your crashes. Rather, I suspect the crash is due to some secondary effect, like load order, or running out of memory. In fact, load order can trigger bugs in either the game or some mods that would cause them to use excessive memory.

Through a divide and conquer approach, try removing mods, and re-introduce them carefully. As your Harmony Report shows, there are currently multiple causes for instability in your game. Instability doesn't necessarily mean crash, but an increased chance of undefined behaviour.

I hope this helps, and after you try ruling out some of the highlighted culprits, I'd appreciate it if you'd update this thread with your findings; it may help someone in the future.
9
Better Road Toolbar mod & Harmony (re)
This also shows that load order can't be guaranteed by copying mods locally.

The game loads assembly files from wherever it's able to find them, preferring workshop versions where an assembly exists both locally and in the workshop.

After all assemblies are loaded into memory, each mod is "OnEnable()", ie, started in a defined order: built-in mods first (alphabetical), then local mods (alphabetical order), and finally workshop mods (subscription order).

It doesn't matter that local mods are "OnEnable()"'d first, if the wrong assembly files are used (ie, the workshop assemblies).

The whole mess works most of the time if none of the mods contain files with conflicting names. As soon as the first mod appears that brings a conflicting filename, the ecosystem starts failing. If the behaviour of the conflicting file is similar to that of the intended file, the failure might be subtle at first.

Harmony Redesigned checks that its loaded assemblies are positively the expected versions, and when it is loaded wrong, it detects this and fails unambiguosly, even flagging the failure in the description with capital "FAILURE" text, to prevent whatever the problem is, to linger and propagate.

While this "FAILURE" may be inconvenient to the early adopters of buggy mods, it helps clean up the malaise quicker, thus cleaning up the ecosystem for the benefit of the community.

The old harmony and also the game is oblivious to bugs, which is why much of the community must be bothered with endless, seemingly random, unexplained errors.
引用自 Darth_Jimbo
引用自 Chaos

If I misunderstood what is happening, please add more detail. The only detail I have seen so far is YuLun's description "mod would break harmony once subscribed", and a couple of complaints on the mods own comments thread.

This is a brand new mod and it hasn't been completely birthed quite yet.

Okay, trying to update you with some more information.
I'm experiencing the following situation:
1. Better Road Toolbar and Harmony redesigned:
Harmony breaks. It shows as "FAILURE" in content manager. There's no report button anymore.
The toolbar is loaded and works, though, but other mods which need harmony stop working (in my case the Moving Bridges Mod, maybe others too)
2. Better Road Toolbar and Boformers Harmony:
Everything seems to work fine.

In both cases, load order is enforced by installing Harmony locally.
I can provide output_log later some time

Aha! Thank you for this more clear description. The problem is that Better Road Toolbar includes the file "CitiesHarmony.Harmony.dll" and it should not, since this is the Harmony library and is supplied by either of the two harmony mods.

The fix

Delete the file:

steamapps\workshop\content\255710\2502526929\CitiesHarmony.Harmony.dll

Explanation
This file overrides "2399343344\CitiesHarmony.Harmony.dll" and "2040656402\CitiesHarmony.Harmony.dll" distributed by the harmonies.

Since the file 2502526929\CitiesHarmony.Harmony.dll is identical to 2040656402\CitiesHarmony.Harmony.dll, there is apparently no conflict.

Since the file 2502526929\CitiesHarmony.Harmony.dll is different from 2399343344\CitiesHarmony.Harmony.dll, the breakage is apparent.

It also breaks Felix's, but latently - ie, the breakage will only be noticed in the future, should Felix update his Harmony. At that time, this mod will also break all mods that require any Harmony, since the game will load the mod's copy of 2502526929\CitiesHarmony.Harmony.dll rather than the updated 2040656402\CitiesHarmony.Harmony.dll

Further improvements
I have made a note that in this case, the Harmony Report does not indicate a clear diagnosis, and I will improve the next version to detect and attribute the breakage to the appropriate mod. (track here: https://github.com/drok/Harmony-CitiesSkylines/issues/17)
12
No Big Truck mod & Harmony (re)
9
Better Road Toolbar mod & Harmony (re)
引用自 Darth_Jimbo
引用自 Chaos

This looks to me like the type of error an untested mod would throw when iit encounters unexpected input (which it should have expected).

Your Harmony Report probably contains some exception summaries for this mod that its author might find useful while debugging.

As I see it, this is just a new mod with new mod bugs.

Stupid question, but what does this mean now?
Can you fix it? Do you fix it?
I'm afraid, that the mod author won't fix as long as it is working with Boformers harmony...
(Saying like: Use Boformers or f**k off!)

If I understand the bugs correctly, none of them can be fixed by either myself or boformer, and occur equally with either harmony.

There are 2 bugs, or more.
  1. The "TypeLoadException" bug can be worked around by subbing this mod after Harmony Redesigned has already been subbed. It's not something I can fix, and it would happen with boformer's harmony too if the mod was subbed before boformer's.
  2. The "FormatException: Input string was not in the correct format" also happens while boformer's harmony is in use. However, this bug is independent of harmony, and it's just a straight-up bug. No harmony can fix it, only the author can fix it, and I have no doubt that he will; the mod would be trash without this bugfix.

If I misunderstood what is happening, please add more detail. The only detail I have seen so far is YuLun's description "mod would break harmony once subscribed", and a couple of complaints on the mods own comments thread.

This is a brand new mod and it hasn't been completely birthed quite yet.
Additionally, in the log file posted on the Better Road Toolbar comments by Zephylr, I see another exception caused by that mod:
FormatException: Input string was not in the correct format
at int.Parse (string) <0x00061>
at BetterRoadToolbar.SpawnButtonEntryPatch.Postfix (ColossalFramework.UI.UITabstrip,string,string,bool,string,string,string,bool,bool,ColossalFramework.UI.UIButton&) <0x00105>
at (wrapper dynamic-method) GeneratedGroupPanel.GeneratedGroupPanel.SpawnButtonEntry_Patch1 (GeneratedGroupPanel,ColossalFramework.UI.UITabstrip,string,string,bool,string,string,string,bool,bool) <0x006fa>
at GeneratedGroupPanel.CreateGroupItem (GeneratedGroupPanel/GroupInfo,string) <0x000fb>
at GeneratedGroupPanel.PopulateGroups (GeneratedGroupPanel/GroupFilter,System.Comparison`1<GeneratedGroupPanel/GroupInfo>) <0x0008e>
at GeneratedGroupPanel.RefreshPanel () <0x0009a>
at MainToolbar.SpawnSubEntry (ColossalFramework.UI.UITabstrip,string,string,string,string,bool) <0x003d5>
at GameMainToolbar.RefreshPanel () <0x0074b>
at MainToolbar.OnLevelLoaded (SimulationManager/UpdateMode) <0x0001b>
at (wrapper delegate-invoke) LoadingManager/LevelLoadedHandler.invoke_void__this___SimulationManager/UpdateMode (SimulationManager/UpdateMode) <0x0004f>
at (wrapper delegate-invoke) LoadingManager/LevelLoadedHandler.invoke_void__this___SimulationManager/UpdateMode (SimulationManager/UpdateMode) <0x00083>
at (wrapper delegate-invoke) LoadingManager/LevelLoadedHandler.invoke_void__this___SimulationManager/UpdateMode (SimulationManager/UpdateMode) <0x00083>
at (wrapper delegate-invoke) LoadingManager/LevelLoadedHandler.invoke_void__this___SimulationManager/UpdateMode (SimulationManager/UpdateMode) <0x00083>
at LoadingManager/<LoadLevelComplete>c__Iterator9.MoveNext () <0x000ac>
at LoadingManager.Update () <0x0010a>

This looks to me like the type of error an untested mod would throw when iit encounters unexpected input (which it should have expected).

Your Harmony Report probably contains some exception summaries for this mod that its author might find useful while debugging.

As I see it, this is just a new mod with new mod bugs.
正在显示第 21 - 30 项,共 89 项条目