Cities: Skylines

Cities: Skylines

Building Vehicle Monitor
 此主题已被置顶,因此可能具有重要性
kx36  [开发者] 2020 年 5 月 3 日 上午 10:09
BUG REPORTS
Please post any bug reports here
最后由 kx36 编辑于; 2020 年 5 月 3 日 上午 10:09
< >
正在显示第 1 - 15 条,共 15 条留言
Kage 2020 年 6 月 11 日 下午 6:10 
All works fine in regular game mode, alongside other mods, but:

Asset editor > new > temperate (theme) > loading > (map and ui initialized) > ...

ModException: The Mod D:\Steam\steamapps\workshop\content\255710\2051693155 [BuildingVehicleManager.dll] has caused an error ---> System.NullReferenceException: Object reference not set to an instance of an object
at BuildingVehicleManager.Loading.SetupClickTrigger (System.String panelName, System.String labelName) [0x00000] in <filename unknown>:0
at BuildingVehicleManager.Loading.OnLevelLoaded (LoadMode mode) [0x00000] in <filename unknown>:0
at LoadingWrapper.OnLevelLoaded (UpdateMode mode) [0x00000] in <filename unknown>:0
--- End of inner exception stack trace ---

I can still edit assets afterwards. Then when I close the editor to go back to the main menu, another mod error pops up:

ModException: The Mod D:\Steam\steamapps\workshop\content\255710\1658679290 [ForestBrush.dll] has caused an error ---> System.NullReferenceException:
at (wrapper managed-to-native) UnityEngine.Component:get_gameObject ()
at ForestBrush.ForestBrush.CleanUp () [0x00000] in <filename unknown>:0
at ForestBrush.UserMod.UninstallMod () [0x00000] in <filename unknown>:0
at ForestBrush.UserMod.OnLevelUnloading () [0x00000] in <filename unknown>:0
at LoadingWrapper.OnLevelUnloading () [0x00000] in <filename unknown>:0
--- End of inner exception stack trace ---

I don't know if that's the issue or your mod.
最后由 Kage 编辑于; 2020 年 6 月 11 日 下午 6:23
kx36  [开发者] 2020 年 6 月 12 日 上午 2:36 
Thanks for the detailed bug report, it was really helpful!

The stack trace at the top was a bug in my code which I have now fixed. Can't attach my mod to building panels in editor modes that don't have building panels. I should have checked for that and now I am doing so.

The stack trace at the bottom about the Forrest Brush mod may be completely unrelated to my mod or it might just be because the game had already had one error. Once you've had one error, you'll probably get a lot of other errors until you restart the game.

I use that Forrest Brush mod too and I have incidentally found when viewing the logs that Forrest Brush throws an absolute ton of NullReferenceExceptions, although the game handles most of them and hides them from the player. It's a really useful mod but it is buggy.

Thanks again.
最后由 kx36 编辑于; 2020 年 6 月 12 日 上午 2:49
M.S.Referee 2020 年 6 月 24 日 上午 9:03 
After change the language in-game, when check any text of buildings nothing happend.

Building Vehicle Manager should use function like this mod no affect by change language in-game. They are same check text to trigger panel.
https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=1739993783&searchtext=CargoInfo

Or make a icon, hotkey for it. To use a icon to trigger will good.
最后由 M.S.Referee 编辑于; 2020 年 6 月 24 日 上午 9:07
M.S.Referee 2020 年 7 月 29 日 下午 10:41 
And after testing, Building Vehicle Manager incompatible with
https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=1739993783

When "Cargo Info Fix" mod be triggered once, and then when you check any text of service building, warehouse and others, "Building Vehicle Manager" lost ability and can't trigger panel.
最后由 M.S.Referee 编辑于; 2020 年 7 月 29 日 下午 10:42
kx36  [开发者] 2020 年 8 月 2 日 上午 3:45 
@M.S.Referee I am struggling to replicate either of your issues.

Issue 1. can't load Building Vehicle Manager panel when language changed
I've tried switching between english, german, french and chinese both in game and at the main menu and it all worked fine for me.

Issue 2. Incompatibility with Cargo Info
I get the Cargo Info panel when i click on freight train stations, I get the Building Vehicle Manager panel when i click on warehouses. I can go back and forth between the 2 with no problem.

What happens if you turn off all other mods except these two? still the same?

I will try to get in contact with the original author of Cargo Info and discuss.
M.S.Referee 2020 年 8 月 2 日 上午 10:14 
The problem of change language in-game made by unfixed "Transport Lines Manager" before. Now Klyte45 have updated and fixed that problem.

And Incompatibility with Cargo Info problem, before I build Cargo Train Station, Building Vehicle Manager work fine. And after build Cargo Train Station and click window of Cargo Info once, then Building Vehicle Manager lost ability and can't trigger panel.

I guess some mods may affect that:
https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=816260433&searchtext=MetroOverhaul
https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=1764208250&searchtext=More+Vehicles
https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=451376483&searchtext=MMC+Multi+monitor+Cities
https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=1420955187&searchtext=Real+time
最后由 M.S.Referee 编辑于; 2020 年 8 月 2 日 上午 10:15
Lost Nomad 2020 年 11 月 20 日 上午 10:30 
Cashes the game by raising a SIGILL exception in TM:PE. This is on linux, I have not checked if it crashes the windows game client.

Simulation error: SIGILL
at TrafficManager.Custom.AI.CustomPassengerCarAI.FindParkingSpaceProp (Boolean isElectric, UInt16 ignoreParked, .PropInfo info, Vector3 position, Single angle, Boolean fixedHeight, Vector3 refPos, Single width, Single length, System.Single& maxDistance, UnityEngine.Vector3& parkPos, UnityEngine.Quaternion& parkRot) [0x00000] in <filename unknown>:0
at TrafficManager.Manager.Impl.AdvancedParkingManager+<>c__DisplayClass27_0.<FindParkingSpaceBuilding>g__LoopHandler|0 (Int32 i, Int32 j) [0x00000] in <filename unknown>:0
at TrafficManager.Util.LoopUtil+<>c__DisplayClass1_0.<SpiralLoop>b__0 (Int32 x, Int32 y) [0x00000] in <filename unknown>:0
at TrafficManager.Util.LoopUtil.SpiralLoop (Int32 width, Int32 height, TrafficManager.Util.TwoDimLoopHandler handler) [0x00000] in <filename unknown>:0
at TrafficManager.Util.LoopUtil.SpiralLoop (Int32 xCenter, Int32 yCenter, Int32 width, Int32 height, TrafficManager.Util.TwoDimLoopHandler handler) [0x00000] in <filename unknown>:0
at TrafficManager.Manager.Impl.AdvancedParkingManager.FindParkingSpaceBuilding (.VehicleInfo vehicleInfo, UInt16 homeID, UInt16 ignoreParked, UInt16 segmentId, Vector3 refPos, Single maxBuildingDistance, Single maxParkingSpaceDistance, Boolean randomize, UnityEngine.Vector3& parkPos, UnityEngine.Quaternion& parkRot, System.Single& parkOffset) [0x00000] in <filename unknown>:0
at TrafficManager.Manager.Impl.AdvancedParkingManager.FindParkingSpaceInVicinity (Vector3 targetPos, Vector3 searchDir, .VehicleInfo vehicleInfo, UInt16 homeId, UInt16 vehicleId, Single maxDist, TrafficManager.API.Traffic.Enums.ExtParkingSpaceLocation& parkingSpaceLocation, System.UInt16& parkingSpaceLocationId, UnityEngine.Vector3& parkPos, UnityEngine.Quaternion& parkRot, System.Single& parkOffset) [0x00000] in <filename unknown>:0
at TrafficManager.Manager.Impl.AdvancedParkingManager.TryMoveParkedVehicle (UInt16 parkedVehicleId, .VehicleParked& parkedVehicle, Vector3 refPos, Single maxDistance, UInt16 homeId) [0x00000] in <filename unknown>:0
at TrafficManager.Manager.Impl.AdvancedParkingManager+<>c__DisplayClass18_0.<OnCitizenPathFindFailure>b__1 (UInt16 parkedVehId, .VehicleParked& parkedVehicle) [0x00000] in <filename unknown>:0
at CitiesGameBridge.Service.VehicleService.ProcessParkedVehicle (UInt16 parkedVehicleId, GenericGameBridge.Service.ParkedVehicleHandler handler) [0x00000] in <filename unknown>:0
at TrafficManager.Manager.Impl.AdvancedParkingManager.OnCitizenPathFindFailure (UInt16 instanceId, .CitizenInstance& instanceData, TrafficManager.API.Traffic.Data.ExtCitizenInstance& extInstance, TrafficManager.API.Traffic.Data.ExtCitizen& extCitizen) [0x00000] in <filename unknown>:0
at TrafficManager.Manager.Impl.AdvancedParkingManager.UpdateCitizenPathState (UInt16 citizenInstanceId, .CitizenInstance& citizenInstance, TrafficManager.API.Traffic.Data.ExtCitizenInstance& extInstance, TrafficManager.API.Traffic.Data.ExtCitizen& extCitizen, .Citizen& citizen, ExtPathState mainPathState) [0x00000] in <filename unknown>:0
at TrafficManager.Custom.AI.CustomHumanAI.CustomSimulationStep (UInt16 instanceId, .CitizenInstance& instanceData, Vector3 physicsLodRefPos) [0x00000] in <filename unknown>:0
at CitizenManager.SimulationStepImpl (Int32 subStep) [0x00000] in <filename unknown>:0
at SimulationManagerBase`2[Manager,Properties].SimulationStep (Int32 subStep) [0x00000] in <filename unknown>:0
at CitizenManager.ISimulationManager.SimulationStep (Int32 subStep) [0x00000] in <filename unknown>:0
at SimulationManager.SimulationStep () [0x00000] in <filename unknown>:0
at SimulationManager.SimulationThread () [0x00000] in <filename unknown>:0 [Core]

(Filename: /home/builduser/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)
kx36  [开发者] 2020 年 11 月 28 日 下午 3:54 
Lost Nomad,
Thank you for posting the exception, but I'm afraid I can't see how this mod ties into that crash from the info you provided. It just looks like an exception in TM:PE. This mod doesn't interact with any parking AI.

Chaos,
Thanks, I have removed my very basic implementation of scaling and I'll just leave it to other mods such as ScaleUI to handle scaling. That should fix the bug you were seeing where the BuildingVehicleManager panel was maintaining its size relative to the screen but the contents were scaling based on the setting in ScaleUI.

As for the NullReferenceException, I'm not sure why that happened. I couldn't replicate it, but I have added null checks to everything in that method so it shouldn't happen exactly like that again. When you disabled and re-enabled ScaleUI did you come out of a game to the main menu, disable and re-enable and then go straight back into a game? Doing so is known to cause many exceptions. In this game, it is usually advised you should always quit to desktop, never to main menu.
最后由 kx36 编辑于; 2020 年 11 月 28 日 下午 5:22
kx36  [开发者] 2020 年 12 月 27 日 上午 8:23 
Thanks, Chaos. That's very helpful.
The panel wasn't always a singleton and I should have removed the Destroy in OnLevelUnloading when I made it one. I have removed that now.

I have also added the Shift+B hotkey, which I hope to make configurable in the future but that's a lot more work so at the moment is hard coded in.

And I have renamed the mod from "Building Vehicle Manager" to "Building Vehicle Monitor" to manage people's expectations as it can't create or modify vehicles, just monitor and delete them.

I am considering publishing the source. Initially I didn't because it was changing too fast, but now it is "finished". Although I have spoken to a few modders who have had their code completely ripped off and republished with a "2" on the end of it by people who justify it by saying the mod is inactive which kinda puts me off.

The advice still stands not to quit to main menu and reload a map, and it's not just my advice, it's long standing community advice to avoid crashes and corrupted savegames. A lot of mods don't handle map loading and unloading gracefully, and I have even seen bugs caused by this in the vanilla game, but the worst offenders are mods which use Detours or Harmony to essentially modify the game's API at runtime by sticking code on the front or back of the game's own methods or replacing those methods entirely. They're very powerful but it's really hard to use these safely. e.g. people end up applying patches on top of patches when you reload a map.
rkumob 2021 年 2 月 22 日 下午 3:25 
Having an error when clicking on Cargo Airport

An error has occured in mod's OnUpdate method. Mod name: Building Vehicle Monitor - Monitor a building's associated vehicles. To use, open a building and click on the text which mentions vehicles or use the hotkey Shift+B Assembly: BuildingVehicleManager, Version=1.6.0.28200, Culture=neutral, PublicKeyToken=null Severity: Medium System.NullReferenceException: Object reference not set to an instance of an object at BuildingVehicleManager.SimpleVehicle.Equals (BuildingVehicleManager.SimpleVehicle other) [0x00000] in <filename unknown>:0 at BuildingVehicleManager.SimpleVehicle.Equals (System.Object obj) [0x00000] in <filename unknown>:0 at System.ValueType.DefaultEquals (System.Object o1, System.Object o2) [0x00000] in <filename unknown>:0 at System.ValueType.Equals (System.Object obj) [0x00000] in <filename unknown>:0 at System.Collections.Generic.EqualityComparer`1+DefaultComparer[System.Collections.Generic.KeyValuePair`2[System.UInt16,BuildingVehicleManager.SimpleVehicle]].Equals (KeyValuePair`2 x, KeyValuePair`2 y) [0x00000] in <filename unknown>:0 at System.Linq.Enumerable.Contains[KeyValuePair`2] (IEnumerable`1 source, KeyValuePair`2 value, IEqualityComparer`1 comparer) [0x00000] in <filename unknown>:0 at System.Linq.Enumerable+<CreateExceptIterator>c__Iterator4`1[System.Collections.Generic.KeyValuePair`2[System.UInt16,BuildingVehicleManager.SimpleVehicle]].MoveNext () [0x00000] in <filename unknown>:0 at System.Linq.Enumerable.Any[KeyValuePair`2] (IEnumerable`1 source) [0x00000] in <filename unknown>:0 at BuildingVehicleManager.VehicleHelpers.VehiclesChanged (UInt16 buildingID) [0x00000] in <filename unknown>:0 at BuildingVehicleManager.Checker.OnUpdate (Single realTimeDelta, Single simulationTimeDelta) [0x00000] in <filename unknown>:0 at HealkitMod.Patches.ThreadingWrapperOnUpdatePatch.Prefix (Single realTimeDelta, Single simulationTimeDelta, System.Collections.Generic.List`1 ___m_ThreadingExtensions) [0x00000] in <filename unknown>:0

Prior to selecting a Cargo Airport a Park Maintenance building was selected and its vehicles in monitor window were shown.
最后由 rkumob 编辑于; 2021 年 2 月 22 日 下午 3:27
buda atum 2022 年 1 月 26 日 下午 12:51 
An error has occured in mod's OnUpdate method.
Mod name: Building Vehicle Monitor - Monitor a building's associated vehicles. To use, open a building and click on the text which mentions vehicles or use the hotkey Shift+B
Assembly: BuildingVehicleManager, Version=1.7.0.2078, Culture=neutral, PublicKeyToken=null
Severity: Medium

System.NullReferenceException: Object reference not set to an instance of an object
at BuildingVehicleManager.SimpleVehicle.Equals (BuildingVehicleManager.SimpleVehicle other) [0x00000] in <filename unknown>:0
at BuildingVehicleManager.SimpleVehicle.Equals (System.Object obj) [0x00000] in <filename unknown>:0
at System.ValueType.DefaultEquals (System.Object o1, System.Object o2) [0x00000] in <filename unknown>:0
at System.ValueType.Equals (System.Object obj) [0x00000] in <filename unknown>:0
at System.Collections.Generic.EqualityComparer`1+DefaultComparer[System.Collections.Generic.KeyValuePair`2[System.UInt16,BuildingVehicleManager.SimpleVehicle]].Equals (KeyValuePair`2 x, KeyValuePair`2 y) [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.Contains[KeyValuePair`2] (IEnumerable`1 source, KeyValuePair`2 value, IEqualityComparer`1 comparer) [0x00000] in <filename unknown>:0
at System.Linq.Enumerable+<CreateExceptIterator>c__Iterator4`1[System.Collections.Generic.KeyValuePair`2[System.UInt16,BuildingVehicleManager.SimpleVehicle]].MoveNext () [0x00000] in <filename unknown>:0
at System.Linq.Enumerable.Any[KeyValuePair`2] (IEnumerable`1 source) [0x00000] in <filename unknown>:0
at BuildingVehicleManager.VehicleHelpers.VehiclesChanged (UInt16 buildingID) [0x00000] in <filename unknown>:0
at BuildingVehicleManager.Checker.OnUpdate (Single realTimeDelta, Single simulationTimeDelta) [0x00000] in <filename unknown>:0
at HealkitMod.Patches.ThreadingWrapperOnUpdatePatch.Prefix (Single realTimeDelta, Single simulationTimeDelta, System.Collections.Generic.List`1 ___m_ThreadingExtensions) [0x00000] in <filename unknown>:0
kx36  [开发者] 2022 年 1 月 26 日 下午 4:22 
Hi buda atum,

Thanks for reporting this bug. Looks like the Airports update has broken something. Could you tell me what you were doing when you got this error? e.g. If it happened when you clicked on a building, what building was it etc.?

I've added extra redundant null reference checks into that method, which might have fixed it, but I would still like this info to help me debug it if possible.

Thanks
最后由 kx36 编辑于; 2022 年 1 月 26 日 下午 6:03
buda atum 2022 年 1 月 27 日 下午 8:02 
Hi kx36. I clicked on the Double Track Cargo Station https://psteamcommunity.yuanyoumao.com/sharedfiles/filedetails/?id=703597323&searchtext=double+track .

I had a back log of trains spawning and it threw an error. I reset the station and the error went away. I do not think this was airport related. That station has issues of its own.
SgtMustang (Slava Ukraini) 2022 年 4 月 17 日 上午 11:52 
Appears to be a similar issue to others. Method to reproduce in my case is to click on one of the "bugged" cargo train stations. There are a few vehicles which appear to be trains, which do not have names in the name column - my guess is that these entries with missing names have something to do with it? The error continues to repeat indefinitely and without an Error handling mod it'll force me to restart the game.

Otherwise, the cargo train stations appear to operate just fine. I haven't noticed any issues.

An error has occured in mod's OnUpdate method.
Mod name: Building Vehicle Monitor - Monitor a building's associated vehicles. To use, open a building and click on the text which mentions vehicles or use the hotkey set in the options page.
Assembly: BuildingVehicleManager, Version=1.7.0.2990, Culture=neutral, PublicKeyToken=null
Severity: Medium

System.NullReferenceException: Object reference not set to an instance of an object

at BuildingVehicleManager.SimpleVehicle.Equals (BuildingVehicleManager.SimpleVehicle other) [0x00000] in <filename unknown>:0

at BuildingVehicleManager.SimpleVehicle.Equals (System.Object obj) [0x00000] in <filename unknown>:0

at System.ValueType.DefaultEquals (System.Object o1, System.Object o2) [0x00000] in <filename unknown>:0

at System.ValueType.Equals (System.Object obj) [0x00000] in <filename unknown>:0

at System.Collections.Generic.EqualityComparer`1+DefaultComparer[System.Collections.Generic.KeyValuePair`2[System.UInt16,BuildingVehicleManager.SimpleVehicle]].Equals (KeyValuePair`2 x, KeyValuePair`2 y) [0x00000] in <filename unknown>:0

at System.Linq.Enumerable.Contains[KeyValuePair`2] (IEnumerable`1 source, KeyValuePair`2 value, IEqualityComparer`1 comparer) [0x00000] in <filename unknown>:0

at System.Linq.Enumerable+<CreateExceptIterator>c__Iterator4`1[System.Collections.Generic.KeyValuePair`2[System.UInt16,BuildingVehicleManager.SimpleVehicle]].MoveNext () [0x00000] in <filename unknown>:0

at System.Linq.Enumerable.Any[KeyValuePair`2] (IEnumerable`1 source) [0x00000] in <filename unknown>:0

at BuildingVehicleManager.VehicleHelpers.VehiclesChanged (UInt16 buildingID) [0x00000] in <filename unknown>:0

at BuildingVehicleManager.Checker.OnUpdate (Single realTimeDelta, Single simulationTimeDelta) [0x00000] in <filename unknown>:0

at HealkitMod.Patches.ThreadingWrapperOnUpdatePatch.Prefix (Single realTimeDelta, Single simulationTimeDelta, System.Collections.Generic.List`1 ___m_ThreadingExtensions) [0x00000] in <filename unknown>:0
最后由 SgtMustang (Slava Ukraini) 编辑于; 2022 年 4 月 17 日 上午 11:53
kx36  [开发者] 2022 年 4 月 27 日 下午 12:42 
I have had another go at fixing this SimpleVehile.Equals() bug along. Believe it or not I have been trying to fix it between these error reports. It's just hard when I can't reproduce the bug and I have to wait months to see if someone reports the bug again to know if it's fixed. I've gone for a brute force approach and it now checks literally every nullable variable in that method for null, even things that should be impossible to be null.

Some other bugs fixed too, relating to crashes on quitting to main menu and then opening a level again. But it's still common advice in the Cities:Skylines community not to do this as the base game itself has bugs in in which can crash the game and/or corrupt savegame files. Please always quit to desktop.
< >
正在显示第 1 - 15 条,共 15 条留言
每页显示数: 1530 50