Page 1 of 2
Rules on trains entering, and not entering. 03/05/2010 at 17:21 #1209 | |
DrPepperExpress
44 posts |
Hi folks. I've completed a TT for the scrolly Westbury sim, in which i was hoping to have 4 different possible outcomes. However the i think i've made a mistake with the rules, or, the sim can not support what i want the rules to do. Here's the jist of it. I have two trigger trains (as i've called them) set up, which rule whether or not certain outcomes occur. If one of, or both of, the trigger trains run, then you should experience a fairly normall day's running. Whereas if one, or both, of the trigger trains DON'T run, then you will have mayhem, with SWT and/or XC services being diverted to run via the Westbury panel. I have ruled all of the XC services out using one of the trigger services, which is 6B12, and the SWT services have been ruled out using the other trigger which is 6Z99. So to clarify, if 6B12 runs then the XC services won't be diverted via Westbury. And if 6Z99 runs, SWT services WILL be diverted via Westbury. After running a test a few times to see the outcome, none of the XC or SWT services are coming in, even though i've set 6B12 NOT to run (so that XC services are diverted), and 6Z99 to run (so that SWT services are also diverted) 100% of the time. Can you not set the 'xxxx must not run if xxxx runs' to multiple other trains, originating from only one headcode? Or is there something more obvious that i'm blatently missing? Thanks in advance. Simon. Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 17:21 #8922 | |
DrPepperExpress
44 posts |
Hi folks. I've completed a TT for the scrolly Westbury sim, in which i was hoping to have 4 different possible outcomes. However the i think i've made a mistake with the rules, or, the sim can not support what i want the rules to do. Here's the jist of it. I have two trigger trains (as i've called them) set up, which rule whether or not certain outcomes occur. If one of, or both of, the trigger trains run, then you should experience a fairly normall day's running. Whereas if one, or both, of the trigger trains DON'T run, then you will have mayhem, with SWT and/or XC services being diverted to run via the Westbury panel. I have ruled all of the XC services out using one of the trigger services, which is 6B12, and the SWT services have been ruled out using the other trigger which is 6Z99. So to clarify, if 6B12 runs then the XC services won't be diverted via Westbury. And if 6Z99 runs, SWT services WILL be diverted via Westbury. After running a test a few times to see the outcome, none of the XC or SWT services are coming in, even though i've set 6B12 NOT to run (so that XC services are diverted), and 6Z99 to run (so that SWT services are also diverted) 100% of the time. Can you not set the 'xxxx must not run if xxxx runs' to multiple other trains, originating from only one headcode? Or is there something more obvious that i'm blatently missing? Thanks in advance. Simon. Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 21:06 #8930 | |
AndyG
1842 posts |
Can you use Train A enters 0 mins after trigger train reaces a certain location? Make the trigger train a dummy into an unused siding, to sit for duration of sim.
I can only help one person a day. Today's not your day. Tomorrow doesn't look too good either. Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 21:16 #8932 | |
DrPepperExpress
44 posts |
Yep, i could do that, but then it would mean sitting and figuring out how many minutes each one of about 150 to 170 trains need to enter at, after the trigger train. Which would then mean re-doing all of the rules i've already got for the services which are (or should be) on diversion, which is about the same figure as above. I think i'll have to sit and mess with a few different settings in a smaller TT, to see which results work, if any. Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 21:30 #8933 | |
Peter Bennet
5377 posts |
It's a while since I've worked on rules but what you say you have done sounds right in theory. So if you have "1SWT must not run if 6Z99 runs" you need that written for every train you want inhibited. What I've done in the past when I want to replicate stuff like that is use an Excel spreadsheet with all the reference trains in one column (A1) then write =CONCATENATE(A1," must not run if 6Z99 runs."in the next and copy down then cut an paste into the converted txt file. I think "must not run as" has a 3 letter abreviation -see Clive's converter manual. There is also the Mutually exclusive key but I've never used that so can't comment. Peter I identify as half man half biscuit - crumbs! Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 21:36 #8934 | |
DrPepperExpress
44 posts |
I've never used the Mutually Exclusive checkbox either, as i don't know what it means even after reading the help options and readme's. But yes Peter, thats basically what i've done. Every SWT service is ruled out using 'xxxx must not run if 6Z99 runs' and the same for the XC services. Yet, whether the trigger runs or not, neither the SWT or XC services show up in the sim. It's got me stumped. Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 21:41 #8935 | |
Peter Bennet
5377 posts |
Me too; I think your suggestion of a simple test timetable seems best. By the way if you do need to fiddle with a lot of rules you may find it easier to use the txt file as they all get listed together at the end- and as above re Excel you can copy them to a spreadsheet using 'text to columns' and manipulate them from there. I find that if you copy the spreadsheet to a Notepad and recopy to the txt file the Excel formatting will be stripped out. Peter I identify as half man half biscuit - crumbs! Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 22:11 #8936 | |
DrPepperExpress
44 posts |
Well i've just tried it on a small TT, 7 trains: 0Z001 0Z002 One being a trigger, one not. 1Z01 1Z02 1Z03 1Z04 1Z05 These SHOULD enter after 0Z001 enters, and NOT enter when 0Z002. Rules Read: 0Z001 Must not run if 0Z002 runs 1Z01 must not run if 0Z002 runs 1Z02 must not run if 0Z002 runs etc, to 1Z05. None of the 1ZXX's enter, regardless of which of the triggers run. So i assume, as one would, that SimSig doesn't support these kind of rulings? Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 22:23 #8937 | |
DrPepperExpress
44 posts |
However, this seems to work. But i am NOT going through some 150 odd trains just to add that. So i think for the time being, it's back to the drawing board. Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 22:47 #8938 | |
UKTrainMan
1803 posts |
If it's something relatively simple as adding rules for each 150 or so trains and it's something that is easy to work out in terms of following a pattern kinda thing then I'd happily assist you with this by adding the appropriate rules and sending you back the finished result.
Any views and / or opinions expressed by myself are from me personally and do not represent those of any company I either work for or am a consultant for. Log in to reply |
Rules on trains entering, and not entering. 03/05/2010 at 22:55 #8939 | |
DrPepperExpress
44 posts |
Thanks for the offer, but for now that won't be necessary. I'm toying with the idea of just taking the rules out, and having it as just a plain 'Chaos' type thing with a few other bits and bobs added. Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 00:28 #8940 | |
postal
5216 posts |
Simon I don't follow how you were trying to set up your original TT (can't see how to set a rule up that 1Z00 must run if 0Z01 runs). However, I can follow what you have set up in your test TT. To try and test whether it is a sim-specific problem, a core code problem or a TT problem I have set up a similar test TT on the Edinburgh sim (2 seeds, 0Z01 and 0Z02 each with a 50% probability, and 5Z10/12 not to run if 0Z01 runs, 5Z20/22 not to run if 0Z02 runs) and this seems to work as planned. Zipped copy of wtt and wtr attached. I also ran a test with 0Z01 running at 50% probability and 0Z02 not to run if 0Z01 runs and the correct two 5Zxx trains entered as planned. Can you test this out on the Edinburgh sim on your system and also compare the Edinburgh TT set up for the seed trains and the rules with your TT and post back if it gives you any clue as to where things are not working as planned. JG Edinburgh Test TT “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 |
Rules on trains entering, and not entering. 04/05/2010 at 01:38 #8941 | |
AndyG
1842 posts |
DrPE A way to do multiple rules is to insert a typical one, convert to txt with Clive's converter including the rules, clone edit and convert back to WTT. All the rules can be 0 minutes, as actual entry times are per the individual TTs. (JG - try "1Z00 must enter 0 minutes after 0Z01 arrives at/enters" I can only help one person a day. Today's not your day. Tomorrow doesn't look too good either. Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 05:45 #8942 | |
Peter Bennet
5377 posts |
Have just done a simple timetable with one train 1A00 and trip 5X00 with 5X00 running at 50% and it all works as expected. If you want to email me your test TT I can have a look. Peter I identify as half man half biscuit - crumbs! Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 06:31 #8943 | |
GoochyB
222 posts |
Could the sim only be looking at the first 4 characters of the control train, i.e. "1SWT must not run if 0Z001 runs" is actually run as "1SWT must not run if 0Z00 runs", and since your alternative control trains are 0Z001 and 0Z002 (at least in your test example) it would always see 0Z00 as having run without distinguishing which one it was and therefore the others never would. Postal and Peter's tests didn't use a repeated 4 characters, so would be consistent with this hypothesis. If this was the case, then changing your control train alternatives to 0Z00 and 0Z01 might solve the problem. Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 07:47 #8944 | |
clive
2766 posts |
In general this bit of the code does a "find nearest" match - it first looks for an exact match of the ID and then, if that fails, does a match of the first four characters only. In each case, if more than one train matches, it uses the one nearest in time. There is one place where the second test is not done, and I've noted that as a potential bug (Mantis 4454).
Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 08:34 #8945 | |
DrPepperExpress
44 posts |
postal said:SimonHave tested this with success, your seeds worked they way they should've everytime! The principle you've used is basically the same as the one i have, yet on Westbury, this doesn't work. Unless of course, it IS a fault on my part, and i've just not seen where i've gone wrong. Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 08:36 #8946 | |
DrPepperExpress
44 posts |
AndyG said:DrPEAndy, i have taken this into consideration and i will try it as a last resort, if anything else suggested fails. Thanks. Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 08:40 #8947 | |
DrPepperExpress
44 posts |
Peter Bennet said:Have just done a simple timetable with one train 1A00 and trip 5X00 with 5X00 running at 50% and it all works as expected. If you want to email me your test TT I can have a look.Did you get that to work on Westbury Peter? If so can you attach a copy of yours to your next message please, so i can take a look? I may spot my own problem! Attached here is a copy of the test i did for Westbury, which uses the exact same principle i used for the main TT. Westbury test TT Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 08:46 #8948 | |
postal
5216 posts |
Clive I've just modified my Edinburgh test to give the seeds as 0Z001 and 0Z002. Performance was exactly as when TDs were entered as 0Z01 and 0Z02 (i.e. seed train runs, subordinate trains do not run). Set up a further test with 0Z001 running 50% of time and 0Z002 must not run if 0Z001 runs. Again worked exactly as planned. Not sure all of this addresses the core problem in any event; OP gives trigger TDs as 6B12 and 6Z99 in the full scale Westbury scenario which opened the discussion. JG “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 |
Rules on trains entering, and not entering. 04/05/2010 at 09:18 #8949 | |
postal
5216 posts |
1) Run Simon's test TT on Westbury on my system and all worked as planned. 2) Run my test TT on Edinburgh with mutually exclusive rule rather than must not run if Y runs (i.e. 0Z001 and 5Z10 are mutually exclusive). Worked in exactly the same way as the must not run rule TT. What is the scenario that raised the need for the mutually exclusive rule? If Simon has time, can he post his full scale Westbury TT so that it can get a work-out from others in the hope that the problem can be pinned down. “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 |
Rules on trains entering, and not entering. 04/05/2010 at 11:06 #8952 | |
DrPepperExpress
44 posts |
I'll post it here as an attachment for the time being. Will edit shortly to include said attachment. **Attachment removed** Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 12:07 #8954 | |
GeoffM
6344 posts |
postal said:Worked in exactly the same way as the must not run rule TT. What is the scenario that raised the need for the mutually exclusive rule?The end result is the same; however, the former is a 1:1 relationship and only one direction (X must not run if Y runs; if only one of the two are to run then you also need a Y must not run if X runs rule as well), and the latter allows a list, of which a maximum of one will run (W, X, Y, and Z are mutually exclusive). SimSig Boss Log in to reply |
Rules on trains entering, and not entering. 04/05/2010 at 12:43 #8956 | |
postal
5216 posts |
1) Geoff - thanks. Didn't spot the XOR button and wondered how you set a list of mutually exclusives up from the New Rule button - doh! 2) Simon - I haven't yet had time to run through the full TT (it will take a while to get to the possible entry of the SWT or XC trains). However, I've looked at the TT entries for 6Z99 and 6B12 - in neither case is the "runs as required" check box ticked although the parameter is set to 30% / 50% respectively which means that both trains will run every time. In your Test TT you have 0Z002 set to 50% probability and checked the box. Added to the 0Z001 / 0Z002 rule this then gives the 50 / 50 chance of either train running and this is what happens when the TT is run. If the TT which has been giving you grief is as per the TT you posted, the both 6B12 and 6Z99 will automatically run and none of the "extra" trains will enter. Before I run through, I'll check the boxes and report back as to how things work but it is likely to be late this evening or tomorrow before I get that far. JG “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 |
Rules on trains entering, and not entering. 04/05/2010 at 14:02 #8958 | |
DrPepperExpress
44 posts |
It will take a while for results to be seen Posty i know. No worries regarding time though, i'm in need of the break! I notice in my original opening post i said, 'I have completed a timetable......' This should have read, 'I have ALMOST completed......'. Clearly it's not completed, as it doesn't work as intended....... Yet. There are also still various other bits and bobs which i need to add in/re-time during day time hours. There will eventually be an '05:00 Start' version, if this issue gets sorted out and things work the way they are intended, which looks likely. Furthermore, you commented on the fact that 6Z99 and 6B12 both do not have the runs as required box's checked. Of those one is correct and one is a mistake, as, for testing purposes, i'd intended for both triggers to run, so that i could test the TT in full scale chaos, having already tested 90% of everything else. Thence, if you set 6B12 to run 0% of the time, and 6Z99 to run 100% of the time, you should get all diversions enter. For now, i'll leave it in your capable, and more understanding hands. Log in to reply |