Little idea - Regulation

General discussions

Moderator: senjer

Post Reply
HexxOP
Posts: 89
Joined: 09 Jan 2019, 13:04

Little idea - Regulation

Post by HexxOP »

Hi all, i just wanted to talk about a little idea that i have since a bit of time.

Before starting, i’m just talking about it, i’m not asking something for the game or anything, i know that Michiel is busy working on a lot of aspects of the game and i don’t want to add anything on his to-do list.
Sorry if I missed a similar subject.

I was just wondering about the -Regulation- aspect of subway systems.
Probably everybody here know the basics of the job, and understand its importance.

I was just thinking about making regulation activity, where the player would have to take care of little trafic jam, visually, it will be a bit more explicit :
REG_example.PNG
REG_example.PNG (25.82 KiB) Viewed 2739 times
Here you could make the late train terminates at NVT as the one behind is really close, using this action to get it back on its time schedule for the other bound.
You could also have it terminating at RWD(153), and send it on the other bound, hoping it’ll be on time.

This is a simple example as the game is (at least for now), not made for adapting services.
(The activity would be delivered with informations you normally have as regulator, clear documentation of timing between statio etc …
And maybe a script, with things like a call of a driver to give you information just a bit before the trafic jam happens like above)
Obviously for the creation of it i would have to create “default services”, so a train take lateness somewhere, delaying other trains, but it’s totally doable.

If some of you would like to try something like that, i’ll try working on it.


Then, if this works and is liked, we could push a bit the concept with tiny implementations on the game, like the possibility of asking to a train (or a tram), to wait for x minute(s) at a certain station because the train behind is a bit late.
Still simple, randomize a bit station waitings, for now it’s 15s, but with some simple formulas, we could reproduce a bit the life of a line :
If the frequency is normal (like 1 train/10min), it waits 12s to 25s.
If the train is 11min behind the one in front of it (instead of 10), it waits 15s to 33s.
If the train is 12min behind the on in front of it, it waits 22s to 38s
etc …
(This one have the advantage to create surprise and a bit of randomization even for “pure driver” players, always cool to encounter an unexpected red signal).

And probably way more complex, but, we can imagining, updating train complete schedule in game, to separate lines because of a problem, dead train at Tranferium, only 1 track available, so M5 trains goes to Central and M4 terminates at Biskmarkt.
Probably really complex but it’s to give you an idea of a long term thing.

Again, it’s not something like “I want this in the game, hurry up”, I just share a little idea i have, if anyone would try a regulation activity, i’ll try to make a simple one (even though it implies, taking decisions considering the whole line, manually take control of certain trains and using the CVL at the same time etc …)
Feel free to share your feelings about it.
Last edited by HexxOP on 29 Jun 2019, 19:20, edited 1 time in total.
User avatar
MetroSimGermany
Posts: 405
Joined: 08 Mar 2016, 14:41
Location: Berlin, Germany
Contact:

Re: Little idea - Regulation

Post by MetroSimGermany »

The train routing system (CVL) and the passenger information system connected to it is already extremely powerful in MetroSim. I have personally encountered the situation of a traffic jam with delays on the north section of M1 myself already. Though not through a planned factor but rather the old bug that occasionally occurs when trains change ends (and forget to turn the back cab off) or trains failing to change to ZUB and thus standing in front of a ATB 10 absoluut. The AI is not able to resolve either of those problems and human intervention is required, much as you describe above.
If you want to cause a traffic jam like that in an activity I believe you can deliberately tell the train to put its pantos down at a spot where its then out of power and will fail to move onward, or turn off the cab with the same results, simulating a failed train. That will obviously not be a random failure and always happen in that particular activity you programmed it in, but it can add that bit of variety for the driver or work for the dispatcher (maybe get a diesel loco to tow it away?). Depending on whats set in the ctd file, the automatic dispatcher can cope dynamically with a lot of those situations if need be. One example where this is in use is at Simvliet Airport where trains normally arrive and depart from track one. If for whatever reason a train on track one fails to depart, the game will send oncoming trains to track 2 and 3, though you would have to manually remove the path set for the failed train so the others can continue service as usual. That is, unless you actually script the activity to fail the train, because then you can set its train number in such a way the dispatcher will not give it a path. This is in use on practically every station that has more than one track per direction.

I do not know how well the game can handle a two track line where one track is blocked by a failed train and trains have to continue around it using just one track in both directions. Signalling may in that case create a situation where two trains just engage in a staring battle if not supervised by a human.

Surely, what you say is that theres a lot of potential to improve that dispatcher activity, such as giving a warning message when a traffic jam is about to create. For example, a train failing to switch to ZUB I often only noticed 30 minutes later once I myself stood in the traffic jam and the entire line M1 was practically out of service by then.

But overall, a lot of things you mentioned are already possible, such as terminating trains early, sending them elsewhere, etc. Now, this is not a feature that is officially implemented, but the automatic dispatcher and PIS are able to cope with that. Since all the automatic dispatcher does is look for the last letter in the trains name to find out where to set paths too, it doesn't care if that train is actually recognized by shedule. You can take one of those parked 81-717s from Molenwijk, give it a train number with a destination letter thats set to run to Norderpoort and the dispatcher should set your way. This means that you /can/ send a train bound for Panbos to the Noordvliet tail track, give it a number bound for Molenwijk, assign it a path out of that track and it can go back onto the line. The only thing you have to mind is that you have to do the turn around manually (turn off cab 1, turn on cab 2, turn on AI) because the AI does not have instructions for NVT Tailtrack.

If you do this, the train will get temporarily removed from PIS, much like it would if it was delayed for more than I believe 6 minutes. However, as the train progresses back to Molenwijk, IF it has a valid train number mentioned in the shedule the PIS will list the train again on the displays and the train should find itself in the shedule again as well, thus being able to turn around in Molenwijk on its own and progress automatically as it should.

If you have to deal with a traffic jam like this on your own, the automatic dispatcher will sometimes try to route trains into a direction you don't want them in, or you have trains standing extremely close while waiting. You can manually issue a Vertrekverbood at a station to prevent a train from progressing beyond that station on its own (visually speaking, you'd manually force the signal on that station to remain red even if the next block is clear) and you can temporarily switch off the automatic dispatcher for a certain section of track. In case of a traffic jam on the northern M1 its for example extremely useful to put NVT2 into manual mode until the traffic jam has been resolved.

You can read about all those fancy things you can do with the dispatch window on the wiki here: http://sim.bemined.nl/wiki/CVL_Tutorial



Greets, Mika
Support auf Deutsch? Kein Problem! Ich helfe gerne per PM. ;)
Image
HexxOP
Posts: 89
Joined: 09 Jan 2019, 13:04

Re: Little idea - Regulation

Post by HexxOP »

Oh yeah, didn't mention the already amazing flexibility of the CVL, the way yo can change a destination in game, manually take control of junction and all is really great, but here the objective would be to push this a bit more to force the player to think about the whole line and ways to get time or make decisions of changing a destination (like SVC instead of SAP).
But you're right, it's totally possible right now, with the only problem that either everything is scripted (and useless, as the objective is taking decisions, not following a scripted incident), or forcing the player to, alone, understand enough the way CVL and AI works to be able to make all the manual actions needed to get the game take back a train when it's going back on its timetable.

The thing is that right now AI is really precise, if on the .act, if AI is supposed to be activated at PNB, it'll never turn on automatically at RWD, though, as you said, if the player manually turn on the train and AI, giving it the 'original' name, CVL and passenger system often take it back from here recognizing the train it lost.
The alternative would be to add all 'alternative missions' in the .act so the AI would recognize them.
Like for example having a #1##MP and a #2##CP, so the AI would recognize a train normally from M that would have been limited to C on the other bound, with the advantage of setting a depart hour allowing it to depart on time.
But i suppose passenger information would be totally destroyed, awaiting for ghost trains everywhere, i'll try to see what i can do with that.

To be honest, I see this idea like it is in dispatch centers and dispatcher formations i've seen,
Beginning from simple double tracked lines (where the job is basically to get a regular frequency between vehicles and if there is a problem somewhere, cutting the line where there is junctions to have 2 sides fully operational during the incident).
Then having a bit more complex lines, like on Simvliet, where lines share tracks on some parts, with the difficulty to regulate on individual branches and on the central part.
And we can continue, thinking a bit out of 'classic subways', with different missions, sharing same tracks, like on Simvliet, having C non stop BGN - SDW, while B and A serves all stations, adding more complexity to the way of thinking the lines as the timetables are different.
And with Rijndam and it's construction you can even imagine things on systems like NYC subway or Paris RER lines.

-H
User avatar
MetroSimGermany
Posts: 405
Joined: 08 Mar 2016, 14:41
Location: Berlin, Germany
Contact:

Re: Little idea - Regulation

Post by MetroSimGermany »

One thing that could be worth attempting is the following:

The game is able to continue beyond 23:59:59 with 24:00:00 and counting up furhter from there. I have no idea if the sun even rises again after that or if it just eternally stays midnight, doesn't matter anyways, since during normal play that time is never reached.

However, if for the CVL and passenger information system it doesn't actually matter when a service is supposed to run time wise but just that it exists under the train number you specified, it may be possible to define all kinds of special actions under train numbers at a time beyond 23:59:59. They do not need to be arranged logically or make any sense when played through as they will never be but just looked up by the train to know which actions to do after you have manually derouted it.

Although there may be a problem as the train may freeze once it reaches a terminus and wait because for the game the train is many many hours ahead of shedule with this. I have never tested how stuff like this behaves to be honest so its just theoretical thinking right now. :D


Greets, Mika
Support auf Deutsch? Kein Problem! Ich helfe gerne per PM. ;)
Image
User avatar
Sjoerd
Posts: 5647
Joined: 26 Dec 2014, 21:14
Location: Alphen aan den Rijn

Re: Little idea - Regulation

Post by Sjoerd »

In the simulator, for trains that keep running after midnight you have to put in times past 23:59:59. So a train that departs at one on the morning, after midnight, departs at 25:00:00. If you put in the activity a departure time of 01:00:00 instead, and you activity actually starts the afternoon before at 15:00:00, then the simulator will want to run the 01:00:00 service first (even if it is at the bottom of the service code-lines in the act-file for that train), as it believes it is already 14 hours late.
And if a train reaches the end of its current run at 15:30, and the next one is at 25:00.... Then yes; it will remain where it is.
And also yes; the simulator does have a continuing day/night cycle.
CEO of the Rijndam Electrical Transport company :D
Post Reply