Coder Social home page Coder Social logo

bloodypenguin / skylines-metrooverhaulmod Goto Github PK

View Code? Open in Web Editor NEW
66.0 15.0 18.0 116.75 MB

Metro Overhaul Mod for Cities: Skylines

Home Page: http://steamcommunity.com/sharedfiles/filedetails/?id=816260433

License: GNU General Public License v3.0

C# 100.00%

skylines-metrooverhaulmod's People

Contributors

andreharv avatar bloodypenguin avatar boformer avatar earalov avatar klyte45 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

skylines-metrooverhaulmod's Issues

Mod causing game-wide graphical glitches

  • Metro Overhaul is causing all building models in the game to become invisible at seemingly random camera angles
  • Some parts of networks - like road arrows, railway power lines - are constantly flickering when MOM is enabled

Station track with platform between tracks

The station tracks are kind of isolated from other train tracks. There is only one "connection piece".

It should be easy to create tracks like this, where the platform is between the 2 tracks:

4m track | 4m platform | 4m platform | 4m track
or
4m track | 4m platform | 4m gap | 4m platform | 4m track

image

Installation

I tried installing this, and it didnt work, any help?

Station Names and Metro Pillars Bugged

So, First of all when placing an elevated station, with train or metro, the name is a bunch of code that I do not want. Even when I rename the actual station it doesn't change the name where it displaces the actual people served. I was wondering if there was a way to fix. The 2 images below is the station.

Screenshot 2020-10-05 210101
Screenshot 2020-10-05 210843

Second, The "classic" version of the two way track does not show the metal pillars. I have done the steps to fix the mod shown on the steam page which has temporarily fixed the issue. Below is the screenshot of the track that I am referring to. I have recently come across this issue again. Once again I am wondering if there is a way to allow me not have to do the bug fixing steps. Note: tracks already placed keep their pillars only new tracks or deleting tracks removes the pillars.

Screenshot 2020-10-05 210518

Error in MetroOverhaul.UI.MetroStationCustomizerUI:Update()

Geetting this error spammed in player.log (linked below) thousands of times on a game where I have not yet added any metro stations, tracks, etc.

NullReferenceException: Object reference not set to an instance of an object
  at MetroOverhaul.UI.MetroStationCustomizerUI.RestoreStationTrackStyles (.BuildingInfo info) [0x00000] in <filename unknown>:0 
  at MetroOverhaul.UI.MetroStationCustomizerUI.Update () [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)
MetroOverhaul.UI.MetroStationCustomizerUI:Update()

Full log file: https://drive.google.com/open?id=11LMpcI9ALEPUtFv4x8EiGg6svtzCEuMf (it was too big for pastebin)

Note: There's some other MOM errors in that log, something about missing prefabs?

Save file: https://steamcommunity.com/sharedfiles/filedetails/?id=1396655467

Station options panel sliders bugged together

I have the problem that the sliders in the options panel for stations are somehow bugged together and I can no longer control them properly. Additionally all stations are bent by default as seen in the screenshot:

Screenshot 2021-01-02 225151

I'm playing on a standard 1080p screen so without any incompetent Windows display scaling that would explain this.

'Out of Range

i keep getting 'Out of Range errors since installing, i have had to uninstall

Issue spamming in the output log since sunset harbor

NullReferenceException: Object reference not set to an instance of an object
at MetroOverhaul.Extensions.BuildingInfoExtensions.IsMetroDepot (.BuildingInfo info) [0x00000] in :0
at MetroOverhaul.AssetsUpdater.UpdateMetroBuildingsMeta () [0x00000] in :0

spamming about 30 of these messages.

C:S Runtime Termination caused by MOM

This mod is causing simulation crash/game lockups.

Reproduction is extremely easy.
Create a new game with no other mods enabled on any map of your choice.
Whilst attempting to place a multi-track station, switch from Train to Metro mode.
Boom.

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

Colossal Handler caught: Object reference not set to an instance of an object
  at MetroOverhaul.SetStationCustomizations.ReconfigureStationAccess () [0x00000] in <filename unknown>:0 
  at MetroOverhaul.SetStationCustomizations.ModifyStation (.BuildingInfo info, Single targetDepth, Single targetStationTrackLength, Single angle, Single bendStrength) [0x00000] in <filename unknown>:0 
  at MetroOverhaul.SetStationCustomizations.HandleSubBuildings () [0x00000] in <filename unknown>:0 
  at MetroOverhaul.SetStationCustomizations.ModifyStation (.BuildingInfo info, Single targetDepth, Single targetStationTrackLength, Single angle, Single bendStrength) [0x00000] in <filename unknown>:0 
  at MetroOverhaul.UI.MetroStationCustomizerUI.DoStationMechanics () [0x00000] in <filename unknown>:0 
  at ColossalFramework.Threading.Task`1+<>c__DisplayClassa[ColossalFramework.Threading.Task+VoidTask].<.ctor>b__8 (ColossalFramework.Threading.Task t) [0x00000] in <filename unknown>:0 
  at (wrapper delegate-invoke) System.Func`2<ColossalFramework.Threading.Task, ColossalFramework.Threading.Task/VoidTask>:invoke_Task/VoidTask__this___Task (ColossalFramework.Threading.Task)
  at ColossalFramework.Threading.Task`1[ColossalFramework.Threading.Task+VoidTask].Execute () [0x00000] in <filename unknown>:0 
  at ColossalFramework.Threading.Task.InternalExecute () [0x00000] in <filename unknown>:0 
  at ColossalFramework.Threading.Dispatcher.RunTask (ColossalFramework.Threading.Task task) [0x00000] in <filename unknown>:0 
  at ColossalFramework.Threading.Dispatcher.ProcessSingleTask (ColossalFramework.Threading.Task task) [0x00000] in <filename unknown>:0 
  at ColossalFramework.Threading.Dispatcher.ProcessNextTask () [0x00000] in <filename unknown>:0 
  at ColossalFramework.Threading.TaskWorker.Execute () [0x00000] in <filename unknown>:0 
  at ColossalFramework.Threading.ThreadBase.ExecuteInternal () [0x00000] in <filename unknown>:0 
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

Runtime terminating: True

Sunken and Tunnel station tracks not working

Trains will spawn, but instantly despawn again if a line contains a sunken/tunnel stop.

I tested this with 3 different stations. 2 of them are based on the default train station

This does not affect elevated train stations.

Traffic light bug at one way train track

Hello,
I am not sure if this is a problem with Traffic Manager : President Edition or a problem with "One-Way Train Tracks [New version]", or maybe both.
I basically tried to help someone build a longer section with a one-way train track.
since the game by default does not support semaphores for such situations, i tried to make a workaround with timed traffic lights to ensure the there is never a deadlock.
The setup goes like this:

' = ' are two one way tracks ... the default one of the game
' - ' is a two way single track ... the one from the mod
(R) red light
(G) green light

step1: ====(G)------(R)====
step2: ====(R)------(R)====
step3: ====(R)------(G)====
step4: ====(R)------(R)====

Step 2 and step 4 are the most important ones.
These steps must be timed carefully such, that if a train enters the single track, it must get enough time to leave the single track again before the train from the opposite direction can enter.

I expected the traffic light to be relevant only for the train entering the single track.
But the problem is that the train stops and waits at the end of the single track, no matter what the traffic light says, and no matter if there is another train waiting for the opposite direction or not.
====(R)-------->BLOCKEDTRAIN>(G)====

Happens only if I play with traffic lights though. Without any setup everything flows until the deadlock occurs.

Also there is a minor glitch for such an intersection.
If I change the mode of the traffic light, there seem to be two traffic lights overlapping each other.

It would be awesome if such setup could actually work :)
It should in theory.

I opened the issue in both repos.
VictorPhilipp/Cities-Skylines-Traffic-Manager-President-Edition#47

Regards

Egi

Array index error in MOM detour

Full log: http://m.uploadedit.com/beth/1586289652925.txt

Simulation error: Array index is out of range.
at MetroOverhaul.Detours.PassengerTrainAIDetour.StartPathFind (uint16,Vehicle&) <0x004fc>
at PassengerTrainAI.SetTarget (uint16,Vehicle&,uint16) <0x00122>
at DepotAI.ProduceGoods (uint16,Building&,Building/Frame&,int,int,Citizen/BehaviourData&,int,int,int,int,int,int) <0x00827>
at TransportStationAI.ProduceGoods (uint16,Building&,Building/Frame&,int,int,Citizen/BehaviourData&,int,int,int,int,int,int) <0x0008f>
at PlayerBuildingAI.SimulationStepActive (uint16,Building&,Building/Frame&) <0x009cb>
at CommonBuildingAI.SimulationStep (uint16,Building&,Building/Frame&) <0x00e71>
at PlayerBuildingAI.SimulationStep (uint16,Building&,Building/Frame&) <0x0002f>
at DepotAI.SimulationStep (uint16,Building&,Building/Frame&) <0x0002a>
at TransportStationAI.SimulationStep (uint16,Building&,Building/Frame&) <0x002f8>
at BuildingAI.SimulationStep (uint16,Building&) <0x00060>
at (wrapper dynamic-method) CommonBuildingAI.SimulationStep_Patch1 (object,uint16,Building&) <0x00055>
at BuildingManager.SimulationStepImpl (int) <0x00675>
at SimulationManagerBase`2.SimulationStep (int) <0x0004c>
at BuildingManager.ISimulationManager.SimulationStep (int) <0x00024>
at SimulationManager.SimulationStep () <0x00693>
at SimulationManager.SimulationThread () <0x0018a>
  [Core]

The error above seems to trigger a recurring error as follows:

Simulation error: Array index is out of range.
  at TransportLine.GetPrevSegment (UInt16 stop) [0x00000] in <filename unknown>:0 
  at TransportLine.CanLeaveStop (UInt16 nextStop, Int32 waitTime) [0x00000] in <filename unknown>:0 
  at PassengerTrainAI.CanLeave (UInt16 vehicleID, .Vehicle& vehicleData) [0x00000] in <filename unknown>:0 
  at PassengerTrainAI.SimulationStep (UInt16 vehicleID, .Vehicle& vehicleData, .Frame& frameData, UInt16 leaderID, .Vehicle& leaderData, Int32 lodPhysics) [0x00000] in <filename unknown>:0 
  at VehicleAI.SimulationStep (UInt16 vehicleID, .Vehicle& vehicleData, UInt16 leaderID, .Vehicle& leaderData, Int32 lodPhysics) [0x00000] in <filename unknown>:0 
  at TrafficManager.Custom.AI.CustomTrainAI.CustomSimulationStep (UInt16 vehicleId, .Vehicle& vehicleData, Vector3 physicsLodRefPos) [0x00000] in <filename unknown>:0 
  at VehicleManager.SimulationStepImpl (Int32 subStep) [0x00000] in <filename unknown>:0 
  at SimulationManagerBase`2[Manager,Properties].SimulationStep (Int32 subStep) [0x00000] in <filename unknown>:0 
  at VehicleManager.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]

Dll and other files

When the mod is downloaded to my steam folder, there a bunch of other files too. Is the DLL only what elevated station users need,and the rest is for asset creators?

[BUG] Infinite loop while loading a savegame

If something go wrong and NetInfo of the node will be null (possible if not all assets are subscribed/enabled) this method will cause infinite loop - game never finish loading a savegame. I've noticed that while testing the user savegame

private static List<ushort> GetMetroNodes(Building building)
{
ushort nodeID = building.m_netNode;
List<ushort> stationNodeIDs = null;
while (nodeID > 0)
{
NetNode node = NodeFrom(nodeID);
if (node.Info != null)
{
if (node.Info.IsUndergroundMetroStationTrack() || node.Info.name == Util.GetMetroStationTrackName(NetInfoVersion.Tunnel, TrackStyle.Vanilla) || node.Info.IsUndergroundMetroTrack() || node.Info.name == Util.GetMetroTrackName(NetInfoVersion.Tunnel, TrackStyle.Vanilla))
{
if (stationNodeIDs == null)
{
stationNodeIDs = new List<ushort>();
}
stationNodeIDs.Add(nodeID);
}
nodeID = NodeFrom(nodeID).m_nextBuildingNode;
}
}
return stationNodeIDs;
}

The instruction from line 447 should be placed outside of if (node.Info != null) check to prevent infinite loop.

Similar situation you can find just a few lines below but the code is correct there.

private static List<ushort> GetStationNodes(Building building)
{
ushort nodeID = building.m_netNode;
List<ushort> stationNodeIDs = null;
while (nodeID > 0)
{
NetNode node = NodeFrom(nodeID);
if (node.Info != null && (node.Info.IsUndergroundMetroStationTrack() || node.Info.name == Util.GetMetroStationTrackName(NetInfoVersion.Tunnel, TrackStyle.Vanilla)))
{
if (stationNodeIDs == null)
{
stationNodeIDs = new List<ushort>();
}
stationNodeIDs.Add(nodeID);
}
nodeID = NodeFrom(nodeID).m_nextBuildingNode;
}
return stationNodeIDs;
}

null ref error in logs

NullReferenceException: Object reference not set to an instance of an object
  at MetroOverhaul.Extensions.BuildingInfoExtensions.IsMetroDepot (.BuildingInfo info) [0x00000] in <filename unknown>:0 
  at MetroOverhaul.AssetsUpdater.UpdateMetroBuildingsMeta () [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)
MetroOverhaul.AssetsUpdater:UpdateMetroBuildingsMeta()
MetroOverhaul.AssetsUpdater:UpdateExistingAssets(LoadMode)
MetroOverhaul.LoadingExtension:OnLevelLoaded(LoadMode)
LoadingWrapper:OnLevelLoaded_Patch1(LoadingWrapper, UpdateMode)
<LoadLevelComplete>c__Iterator9:MoveNext()
LoadingManager:Update()

Log file: https://drive.google.com/file/d/1KBxXGG_bsslaHqxQ7mikSipfnnwrzGVw/view

Minimum length

public const float MIN_LENGTH = 144;

Hi I subscribed MOM 2 years ago and I established a large city with its powerful function. Thanks for your marvelous work!

But when I returned to my city just now I found that the minimum length of the subway station was changed to 144. All of my stations are of 88, so I can not align them (so sad).

May you rollback this value to 88? Thanks again.

Unable to customize individual tracks

Screenshot of the bug

Screenshot

As you can see, the MOM UI isn't letting me customize individual tracks of this ground dual island station (and other multi-platform stations) as it only shows one button. I can still convert the whole station to metro though but I need a metro+train hybrid station.

Attempt to fix

Checked all my mods against this compatibility list and I do not have any conflictinng mods. I then proceeded to:

  1. Re-launch game

  2. Disable all mods except MOM and its dependencies in content manager

  3. Start a fresh new save

  4. The only workshop assets I own are the NExt2 roads and MOM required depot, stations and tracks, so I didn't bother disabling them

which did not solve the problem.

Log

Log file is attached.

Using tail output_log.txt -n 20 -f ---disable-inotify command from WSL, here is what I've found:

When I select a train station, then click the metro tab on the MOM window, this gets written to the log file:

Checkpoint Metro
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

Path 0 is a station path and is being set to METRO

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

About to refresh sprite for Path 0

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

Sprite refreshed. They are MOM_MetroTrackToggleAtlasFg (fg) and MOM_MetroTrackToggleAtlasBg (bg).

(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

When I click the train tab, similar thing happens except it says "Train". Pressing the track toggle does not cause anything to be logged.

Also, when I select another train station (in this case, from something else to Ground Dual Island), this is logged:

Setting 1700703476.Ground Dual Island Station_Data to Default 1700703476.Ground Dual Island Station_Data
 
(Filename: C:/buildslave/unity/build/artifacts/generated/common/runtime/DebugBindings.gen.cpp Line: 51)

More info

  • Cities Skyline version 1.13.1f1 lastest, legitmate copy from Steam

  • I have and only have Park life DLC

  • OS=Windows 10; Locale Language=ZH-CN

  • I subscribed and used those stations and tracks by BadPeanut before I subscribed to MOM

  • My save was created 2 years ago on a different machine, have no metro system, migrated to the current machine after Sunset Harbor update. However I will not attach that save as this issue is reproducible on a fresh map

output_log.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.