Force join

You are here: Home > Forum > Wishlist > Features wish list > Force join

Page 1 of 2

Force join 05/06/2014 at 09:05 #61325
maxand
Avatar
1637 posts
I notice "Abandon join" is a Train List option, so why not "Force join"?

Currently I'm stuck with three trains sharing one platform, the outer two needing to join. I haven't got time or space to back one or both out, swap them around, try out every variation of stopping position (near/far end/exact, etc). I just want them to join, have done with it, and deal with the rest of the trains building up all over the sim.

If anyone knows a magic way to do this or other suggestions, please offer them. I do try to read ahead and make joining trains enter the station in order of arrival times, but it doesn't always seem to work for me. Sometimes I have no option but to make them arrive in the wrong order.

To be fair, on most occasions joining occurs normally, so forcing a join would only be used as a desperate measure. I don't care if using this option incurs extra penalty points.

The solution I envisage would be a window with headcode fields for the joiner and the joinee, plus an extra field for the headcode of the new train. Surely SimSig can marry the new headcode to its TT.

Is this a reasonable and feasible suggestion?

Log in to reply
Force join 05/06/2014 at 09:24 #61326
northroad
Avatar
870 posts
Max,
Even if you have a force join option this is not going to work for the scenario that you say you have. The middle train is not going to let you join the two outers. You have obviously sent them all into the platform in the wrong order. What Simulation and timetable are you using to get this.

Geoff

Log in to reply
Force join 05/06/2014 at 09:32 #61327
JamesN
Avatar
1577 posts
Online
So to summarise -

Train A is signalled into platform, scheduled to join train B. You then signal train C into the platform, preventing train A from ever being able to see train B. Then to compound the situation instead of holding train B outside the station to allow C to depart, you go and shove that into the platform aswell?

Right.

If you're unwilling to shunt the trains around to correct your mistake, then I propose editing the timetable of train C and train B (this is how to Force join).

First, edit train C's timetable. At its current location (the one it's in the platform at) Add Activity, select Join, and put train B's TD in the box.

Second, if applicable, delete all locations in train C's timetable after the location you've just added the join to.

Finally, Edit train B's timetable to add a join activity for train C. You should use the Move Up Arrow to ensure this instruction occurs before the one it's currently trying todo (join A). All 3 trains should then join.

****

Force Join isn't practical, as the behaviour once the two trains join is undefined. Which of the two timetables does the new slightly longer train follow. For every compelling argument to follow train Y's TT, there's one for train Z.

Last edited: 05/06/2014 at 09:32 by JamesN
Log in to reply
The following user said thank you: Finger
Force join 05/06/2014 at 09:32 #61328
AndyG
Avatar
1835 posts
The 'hand of God' fix would be simply to switch the TTs of say the 2nd and 3rd trains so that the trains are in the order envisaged by the WTT.
I can only help one person a day. Today's not your day. Tomorrow doesn't look too good either.
Log in to reply
Force join 05/06/2014 at 10:17 #61331
peterb
Avatar
451 posts
" said:
Force Join isn't practical, as the behaviour once the two trains join is undefined. Which of the two timetables does the new slightly longer train follow. For every compelling argument to follow train Y's TT, there's one for train Z.
In addition to this, you have the scenario of what happens if the train is not next to another. Also, how does train B know to accept the join from train A? What if train B is facing the wrong way? What if your train is in the middle of three, how does the sim know which train you want it to join to?

I think the 'magic way' is to manually edit or reassign the timetables yourself, and instruct the trains to merge that way. But I think as well you need to consider how and why this is happening, and if it can be prevented.

" said:
Surely SimSig can marry the new headcode to its TT.
I'm not quite sure what you mean by this.

Log in to reply
Force join 05/06/2014 at 10:41 #61335
kbarber
Avatar
1712 posts
But I can see a scenario where this would be a very good idea - in order to restore normal running after a perturbation. In fact I'd go further and advocate a 'Split train' option as well.

A completely hypothetical example. Imagine a Kings X/Peterborough multiplayer chain. There has been disruption leading to late running on the up and a 4-car set is at the Cross waiting to depart for P'boro when the fitters are called to the wrong food trolley. By the time it's sorted (they have to test their handiwork, of course :whistle: ), the inward working for the following P'boro (another 4-car) is not far away; the late running is now coming under control and, with a quicker-than-usual turnround the second P'boro will be not far off right time away.

With a 'Force join' option, the two trains can be coupled. The earlier P'boro gets cancelled and an 8-car set departs for Peterborough only a few minutes late.

Control now instructs Hitchin to use the 'Split train' option to detach the rear 4 cars, which now take up their back working. You would need to shunt the detached portion across to the up side (and you might need to hold it somewhere out of the way for a few minutes too - Biggleswade might have to do a bit of regulating to make the space for you). The consequence is that, in this closed system, trains can end up back on their planned diagram with minimal further disruption.

Any thoughts?

Log in to reply
The following user said thank you: guidomcc
Force join 05/06/2014 at 11:02 #61336
Noisynoel
Avatar
989 posts
But you can do all this by amending the relevant timetables of the trains involved
Noisynoel
Log in to reply
The following users said thank you: AndyG, Finger
Force join 05/06/2014 at 11:09 #61337
BarryM
Avatar
2158 posts
" said:
But I can see a scenario where this would be a very good idea - in order to restore normal running after a perturbation. In fact I'd go further and advocate a 'Split train' option as well.

A completely hypothetical example. Imagine a Kings X/Peterborough multiplayer chain. There has been disruption leading to late running on the up and a 4-car set is at the Cross waiting to depart for P'boro when the fitters are called to the wrong food trolley. By the time it's sorted (they have to test their handiwork, of course :whistle: ), the inward working for the following P'boro (another 4-car) is not far away; the late running is now coming under control and, with a quicker-than-usual turnround the second P'boro will be not far off right time away.

With a 'Force join' option, the two trains can be coupled. The earlier P'boro gets cancelled and an 8-car set departs for Peterborough only a few minutes late.

Control now instructs Hitchin to use the 'Split train' option to detach the rear 4 cars, which now take up their back working. You would need to shunt the detached portion across to the up side (and you might need to hold it somewhere out of the way for a few minutes too - Biggleswade might have to do a bit of regulating to make the space for you). The consequence is that, in this closed system, trains can end up back on their planned diagram with minimal further disruption.

Any thoughts?
Yes! Turn the trains around and send them in two parts. Or send one and have the other sent to a depot.

Barry

Barry, Sydney, New South Wales, Australia
Log in to reply
Force join 05/06/2014 at 11:12 #61338
peterb
Avatar
451 posts
A 'split train' feature is probably as useful as 'force join', potentially helpful and negating the need to edit to edit timetables. The problem with both is the resulting train(s) are undefined. You can ask a train to split but unless you define the outcome (i.e. in a timetable) the sim doesn't know where to split the train, how long the resulting trains will be, or indeed what timetables to assign them.
Log in to reply
Force join 05/06/2014 at 11:30 #61339
lazzer
Avatar
605 posts
" said:
But you can do all this by amending the relevant timetables of the trains involved
I think the issue here is one of convenience (operational flexibility), and not the actual ability to do it.

Log in to reply
The following user said thank you: kbarber
Force join 05/06/2014 at 13:18 #61341
kbarber
Avatar
1712 posts
" said:
" said:
But you can do all this by amending the relevant timetables of the trains involved
I think the issue here is one of convenience (operational flexibility), and not the actual ability to do it.

I think that's what I had in mind. Amending timetables in real time is a bit of a faff and stopping a whole multiplayer to do it before the train escapes isn't likely to be popular let alone help the flow of the session; much easier if you can simply get a train to do things once only using actions of this kind.

Of course it will need parameters to be input for what trains to join (presumably that would issue an equivalent 'join' command for the other train involved) and perhaps what next train to form, likewise what next for each of the split parts. But I imagine that can be arranged.

My thought is that this, rather than amending a timetable, is more like the actions Control would instruct.

Log in to reply
Force join 05/06/2014 at 13:25 #61342
maxand
Avatar
1637 posts
JamesN wrote:
Quote:
Train A is signalled into platform, scheduled to join train B. You then signal train C into the platform, preventing train A from ever being able to see train B. Then to compound the situation instead of holding train B outside the station to allow C to depart, you go and shove that into the platform as well?
I simply thought A would join B. When I checked the Train List I was surprised to see that there were now three, not two, trains at the same platform!

lazzer wrote:
Quote:
I think the issue here is one of convenience (operational flexibility), and not the actual ability to do it.
Now that's more like it. I wonder how many users, particularly inexperienced ones, feel it would be an advantage to have a special user-friendly function such as described in my original post, rather than have to get busy "under the hood" with the timetable editor?

peterb wrote:
Quote:
A 'split train' feature is probably as useful as 'force join', potentially helpful and negating the need to edit to edit timetables.
Hadn't considered a 'split train' command until Keith Barber's post, but it does complement 'force join'.

Quote:
The problem with both is the resulting train(s) are undefined.

and
Quote:
Force Join isn't practical, as the behaviour once the two trains join is undefined. Which of the two timetables does the new slightly longer train follow. For every compelling argument to follow train Y's TT, there's one for train Z.
I don't understand why forum members are having problems with this. After all, I occasionally need to order a train to Abandon timetable to ensure it will do exactly what I need it to do, then when it is correctly positioned I order Run to another timetable and resume its original TT. This is no different. Maybe you think I wish to create an entirely new train with a new headcode. No, all I want to do is follow through the original TT so the new train created as the end result will follow the TT allocated for it.

(added) In my original post I wrote:
Quote:
The solution I envisage would be a window with headcode fields for the joiner and the joinee, plus an extra field for the headcode of the new train. Surely SimSig can marry the new headcode to its TT.
SimSig currently is able to trap headcodes entered by the user that do not correspond to any in the currently loaded TT, so associating the headcode of the newly created train to a headcode in the existing TT should be no problem. Maybe an extra trap should be added if a train with that headcode is already in the area. (end of addition)

I'm still not very good at editing timetables, but the procedure described by JamesN in post #3 for Adding Activity > Join should do the trick as long as the sim is paused while all this editing is taking place. Thanks JamesN. Also thanks AndyG for suggesting switching timetables, which effectively repositions trains. Will give both of these methods a good try.

Like a lot of things in SimSig, once workarounds like this become second nature, the need for overt 'force join' commands seems to reduce.

To take this suggestion further, for those having difficulty visualizing what has happened, how about a "Platform View" window displaying all the trains at a particular platform as individual blocks, each with a pointy end to show which way they're facing, as well as any gaps to show whether inability to join is due to improper Stopping Position? Simple graphics are all that's needed. Or maybe this could be incorporated into the Simplifier. Something to consider for the future.

Last edited: 05/06/2014 at 13:40 by maxand
Log in to reply
Force join 05/06/2014 at 14:29 #61346
KymriskaDraken
Avatar
963 posts
As an aside, does SimSig look at the two trains to be joined and decide if they can really be joined together, or does it just let you join any two trains - e.g. an HST and an EMU?

Kev

Log in to reply
Force join 05/06/2014 at 15:20 #61349
Stephen Fulcher
Avatar
2028 posts
Online
There is some merit in this suggestion.

As to which headcode the train takes after being forced to join, this could be solved by the system automatically taking the user to the same window as when you tell a train to run to another timetable, and allowing them to select whichever one they like.

This feature could be useful for when you have lots of delays and just want to couple a couple of trains together to go forward together, as happens often in reality.

Whilst Noels theory about editing the timetables is of course true, it is a very time consuming exercise - two trains to tell to join for a start, and that is before deciding what to do with them afterwards. I for one am not all that quick at editing timetables, even less so writing new ones in the middle of the game.

Log in to reply
The following user said thank you: maxand
Force join 05/06/2014 at 16:05 #61350
jc92
Avatar
3631 posts
Online
" said:
As an aside, does SimSig look at the two trains to be joined and decide if they can really be joined together, or does it just let you join any two trains - e.g. an HST and an EMU?

Kev
trains are simply "metres of data" ie a train exists which is X metres long with a set of characteristics, which when it joins to another train (as defined by activities) it can form a new train with new characteristics

so yes, you can join anything together regardless of coupling type, brake type, coupling code etc.

"We don't stop camborne wednesdays"
Log in to reply
Force join 05/06/2014 at 16:14 #61352
Steamer
Avatar
3925 posts
I think part of the issue here is the way SimSig handles trains- they are essentially generic lengths of train, with a few other properties like max speed and power. P*R*** simulates actual trains, of length x carriages which can be split and divided at will. Working with multiple units, it is only possible to split off whole units. The problem with that method (or certainly the way said simulator works it) is that all joins and divides have to be supervised by the signaller- not prototypical, and tricky on large simulations. SimSig's divides and splits are generally automatic.

Quote:
The solution I envisage would be a window with headcode fields for the joiner and the joinee, plus an extra field for the headcode of the new train. Surely SimSig can marry the new headcode to its TT.
Same thing (as far as this discussion is concerned)- the final field you describe is essentially the same as the 'Run to another timetable' box. Enter any headcode that has an entry in the timetable list and the train will follow that TT.

Quote:
Quote:
Force Join isn't practical, as the behaviour once the two trains join is undefined. Which of the two timetables does the new slightly longer train follow. For every compelling argument to follow train Y's TT, there's one for train Z.
I don't understand why forum members are having problems with this. After all, I occasionally need to order a train to Abandon timetable to ensure it will do exactly what I need it to do, then when it is correctly positioned I order Run to another timetable and resume its original TT. This is no different. Maybe you think I wish to create an entirely new train with a new headcode. No, all I want to do is follow through the original TT so the new train created as the end result will follow the TT allocated for it.
The issue is that should two trains be force-joined, how does the resulting train know which TT to follow? Does it follow train X's, or train Y's? Context should work if one train has no further locations but another one does, but what if both have more locations? Although actually, you've solved this problem in the quote further above- a third field defining the TT to work to following the join.

"Don't stress/ relax/ let life roll off your backs./ Except for death and paying taxes/ everything in life.../ is only for now." (Avenue Q)
Log in to reply
Force join 05/06/2014 at 17:38 #61355
postal
Avatar
5191 posts
Online
Once again pages and pages of heat and not so much light because one user of SimSig cannot work to TTs, understand the consequences of his/her actions or be bothered to do the real life thing of having to sort out his/her mistakes within the operational confines.

Within the operational confines are at least these options:

1) Do the shunting needed to get things in the right place and suffer the time-keeping consequences.
2) Act as Control and instruct that 2 of the units swap diagrams. This is achieved in SimSig by using F2 and re-assigning the TTs between the 2 units.
3) Edit the TTs of the 3 trains to change the Js and Ns.

As far as Keith's KX example is concerned, the TT editing is minimal and it would benefit the people who are worried about the time it will take to try it in real time. There is not even a need to pause the sim as it is so quick and easy. Use F2 and right click on the train in platform to edit the TT. At the start location of KX, add activity "joins" and the TD of the arriving train. Less than 10 seconds. Use F2 and right click on the arriving train to edit the TT. As the final location of KX add activity "joins" and the TD of the train in platform. Move this activity up the list to be above the Next Working activity. Less than 10 seconds. At some stage before the forward working gets to Hitchin, F2, right click, edit TT, add "Detaches (New Rear)" and the TD of the train the portion is to form. Less than 10 seconds.

Unless people try things (or are frightened to try things and have to look for a technical quick-fix to dodge the consequences of their own actions) they will never develop the experience or capability to take full advantage of what SimSig has to offer.

“In life, there is always someone out there, who won’t like you, for whatever reason, don’t let the insecurities in their lives affect yours.” – Rashida Rowe
Log in to reply
The following users said thank you: Finger, BarryM
Force join 05/06/2014 at 18:15 #61356
Steamer
Avatar
3925 posts
" said:
Once again pages and pages of heat and not so much light because one user of SimSig cannot work to TTs, understand the consequences of his/her actions or be bothered to do the real life thing of having to sort out his/her mistakes within the operational confines.
To be fair, this thread is much more constructive and useful than others of late, and has raised some interesting points.

I've just thought of another case where this option would be very useful:

On West Hampstead, I've sent a train that runs-round at West Hampstead onto the wrong goods line, the upshot of which is that half the train is 'outside' the TT location. When the loco tries to re-join, it can't because it's still trying to get to that location. Since the loco was created from a 'DEF:' command, I can't move them and the only option is to move the loco back to the front of the train.

"Don't stress/ relax/ let life roll off your backs./ Except for death and paying taxes/ everything in life.../ is only for now." (Avenue Q)
Log in to reply
Force join 05/06/2014 at 22:19 #61373
Mooson
Avatar
9 posts
On the Brighton Sim one often gets one portion of the Hastings/Littlehampton to Victoria trains, which join at Haywards Heath running 40 or more late with the other portion running on time and thus approaching Haywards Heath where they join way out of order and sometimes even behind the next train which is booked to join portions and with numerous other trains from Brighton in between and needing to get past the joining portions at HH. Once the portion which arrives first at HH has arrived I tell that to run to the timetable of what should be first, put the next portion which arrives from either Hastings or Littlehampton into the same platform, then tell that to run to the timetable of what should be the second portion of the train allegedly now in front and the two portions will then happily join. Once the portions have joined they can then go forward, (don't forget to change the description to mach waht you have now called the train. You can even, if you want to 'cheat', if they are well late change the whole train to run forward as something completely different which should be at HH at that time, as is done by control in certain parts of the country, if not on Southern, to fiddle the punctuality figures so that a train arrives at, say, Victoria, on time (in theory) as far as the figures are concerned, whereas, as far as the passengers are concerned they are 30 mins or an hour late.
Fortunately, in the above examples the portions are normally of the same stock and off-peak are only single units or a 4 car and an 8 car so could be successfully combined in real life.

Log in to reply
Force join 05/06/2014 at 22:49 #61374
Finger
Avatar
220 posts
" said:
On West Hampstead, I've sent a train that runs-round at West Hampstead onto the wrong goods line, the upshot of which is that half the train is 'outside' the TT location. When the loco tries to re-join, it can't because it's still trying to get to that location. Since the loco was created from a 'DEF:' command, I can't move them and the only option is to move the loco back to the front of the train.

Does that happen on recent loaders as well? I noticed there are some changes of the behavior of trains that can't get to their destination - see this post for details.

Log in to reply
Force join 06/06/2014 at 11:59 #61381
clive
Avatar
2738 posts
I think there is merit to these suggestions. I've raised them in our bug-tracking system (number 10948). The details of the UI can be worked out if and when we implement them.
Log in to reply
The following users said thank you: kbarber, maxand, guidomcc
Force join 06/06/2014 at 13:13 #61383
maxand
Avatar
1637 posts
postal wrote:
Quote:
Once again pages and pages of heat and not so much light because one user of SimSig cannot work to TTs, understand the consequences of his/her actions or be bothered to do the real life thing of having to sort out his/her mistakes within the operational confines.

...

Unless people try things (or are frightened to try things and have to look for a technical quick-fix to dodge the consequences of their own actions) they will never develop the experience or capability to take full advantage of what SimSig has to offer.
Seems like you've just made a major contribution to global warming there, but thanks anyway for confirming there is no other way at present of getting out of such a predicament other than editing the TT. Keith's join/split example strikes me as certainly off the beaten track (excuse the pun) but no less amenable to solution by the same principles. Nice to see other unusual situations emerging that can be handled in this way.

Thanks Clive for giving further consideration to this proposal.

Log in to reply
Force join 06/06/2014 at 17:52 #61395
Muzer
Avatar
718 posts
To me, I'm not convinced this is necessary, except when you get in the situations where trains somehow don't realise they're supposed to join - just occasionally I have real problems with adding joins back to the timetable where I've had to abandon timetables, for example. In one exe sim (I can't remember which one, but it might well have been fixed since it was an exe) I remember having two trains doing a weird dance of moving forwards/reversing instead of joining! No idea why that was happening, it was fixed by arbitrarily telling one of them to reverse.

What this situation brings to mind would also be the ability to lengthen as well as shorten trains, at least when the "new" section of the train would take up no more than plain line (I accept it'd be too tricky UI-wise on a junction). In a few circumstances I've had to shorten trains (either through my own fault or a bug in the timetable/sim) - I always think then (especially if the train stays in the sim for quite a while) that it's a shame I can't lengthen them again in order to keep the "unrealistic" parts to a minimum. This feature might also be useful for a "force join" feature in case you end up joining trains where the result is shorter than it should otherwise have been (depending on exactly how it's implemented)

Log in to reply
The following user said thank you: maxand
Force join 06/06/2014 at 18:41 #61401
Steamer
Avatar
3925 posts
" said:
What this situation brings to mind would also be the ability to lengthen as well as shorten trains, at least when the "new" section of the train would take up no more than plain line (I accept it'd be too tricky UI-wise on a junction). In a few circumstances I've had to shorten trains (either through my own fault or a bug in the timetable/sim) - I always think then (especially if the train stays in the sim for quite a while) that it's a shame I can't lengthen them again in order to keep the "unrealistic" parts to a minimum. This feature might also be useful for a "force join" feature in case you end up joining trains where the result is shorter than it should otherwise have been (depending on exactly how it's implemented)
It's possible by creating a train of length x metres (where x is the length you want to add) and editing the timetable of the existing train such that they join. Although I suppose it's a moot point if the hand of god was used to shorten the train in the first place!

"Don't stress/ relax/ let life roll off your backs./ Except for death and paying taxes/ everything in life.../ is only for now." (Avenue Q)
Log in to reply
Force join 07/06/2014 at 08:25 #61414
maxand
Avatar
1637 posts
Steamer wrote:
Quote:
It's possible by creating a train of length x metres (where x is the length you want to add) and editing the timetable of the existing train such that they join.
I didn't think it was possible to create an entirely new train (with a specific length and other attributes) while playing a TT. Is this what you meant, or did you simply mean adjust the length of an existing train?

Log in to reply