Upcoming Games

(UTC times)


Full list
Add a game

Upcoming Events

No events to display

DOTW seed train problems

You are here: Home > Forum > General > General questions, comments, and issues > DOTW seed train problems

Page 1 of 1

DOTW seed train problems 05/07/2015 at 21:00 #73933
KymriskaDraken
Avatar
963 posts
I'm testing a couple of timetables that have a seed engine to decide the day of the week. There are five engines, one for each weekday (0A00MO, 0A00TO, 0A00WO, 0A00THO and 0A00FO) and a rule that says "0A00??? are alternatives". However the sims pick one engine at random, but still tries to seed the others, failing saying "Track circuit occupied". This has happened with a new tt, as well as one that has been fully tested with no previous problems.

Screenshot from the West Hampstead tt.






Did something get broken in the last loader update? This is with loader 4.5.1


Kev

Post has attachments. Log in to view them.
Last edited: 05/07/2015 at 21:03 by KymriskaDraken
Reason: Correct screenshot

Log in to reply
DOTW seed train problems 05/07/2015 at 21:12 #73935
Noisynoel
Avatar
989 posts
I think you've just confirmed a bug I found with the core code. It's been raised as an issue
Noisynoel
Log in to reply
DOTW seed train problems 05/07/2015 at 21:19 #73938
KymriskaDraken
Avatar
963 posts
I saw that on mantis and I was wondering if it was the same thing.

Kev

Log in to reply
DOTW seed train problems 08/07/2015 at 19:09 #74036
clive
Avatar
2789 posts
" said:
I'm testing a couple of timetables that have a seed engine to decide the day of the week. There are five engines, one for each weekday (0A00MO, 0A00TO, 0A00WO, 0A00THO and 0A00FO) and a rule that says "0A00??? are alternatives". However the sims pick one engine at random, but still tries to seed the others,
Um, "0A00MO" doesn't match "0A00???" - they aren't the same length. The only one of those trains that matches is 0A00TH0.

You either need to use UIDs or you need to use (say) H rather than TH for Thursday.

Hmm, there ought to be a way to do this. Mantis 13878 raised.

Log in to reply
The following user said thank you: 58050
DOTW seed train problems 09/07/2015 at 09:18 #74052
GoochyB
Avatar
222 posts
Or would changing the rule to "0A00??? and 0A00?? are alternatives" work?
Last edited: 09/07/2015 at 09:19 by GoochyB
Log in to reply
DOTW seed train problems 09/07/2015 at 12:57 #74058
KymriskaDraken
Avatar
963 posts
" said:
" said:
I'm testing a couple of timetables that have a seed engine to decide the day of the week. There are five engines, one for each weekday (0A00MO, 0A00TO, 0A00WO, 0A00THO and 0A00FO) and a rule that says "0A00??? are alternatives". However the sims pick one engine at random, but still tries to seed the others,
Um, "0A00MO" doesn't match "0A00???" - they aren't the same length. The only one of those trains that matches is 0A00TH0.

You either need to use UIDs or you need to use (say) H rather than TH for Thursday.

Hmm, there ought to be a way to do this. Mantis 13878 raised.
UIDs don't behave properly for rules involving seed trains, and 0A00??? has always worked before.


Lev

Log in to reply
DOTW seed train problems 15/07/2015 at 10:11 #74244
postal
Avatar
5265 posts
" said:


UIDs don't behave properly for rules involving seed trains
For the sake of completeness, the UID seeding issue was logged on Mantis in October last year as #11705. As a temporary measure to make things work, the DotW seed can be defined using either UID or TD. However, the seeds which only enter subject to which DotW is called need to be ruled to enter by TD rather than UID. For example, you may have two variants of 1A00 (1A00MWO and 1A00 TTHFO). If they are not seeds you could show them both as TD 1A00 and UIDs 1A00MWO/1A00TTHFO with entry rules based on the UID. However, for them to seed on the correct DotW the TDs need to be differentiated. 1A00A/1A00B would do just as well as the full MWO/TTHFO suffixes as long as the TDs are not identical. The entry rules then need to be written using the TD rather than the UID.

Another variation from the normal is that the "must enter 0 minutes after" rule which would normally be used for a train that only enters on one day of the week does not seem to work with seed trains. Instead there need to be 4 separate "must not run if" rules.

All that is based on trial and error rather than an understanding of the intricacies of the core code so may be outside the design parameters used to write the core code. However, it is proven to work on some quite complex TTs.

Now what would be really nice would be to have the ability to govern a train by more than one choice. You could have the DotW seed entering based on one of five choices in a DotW decision rather than alternatives rules. If you could then write a train TT reading more than one choice within a decision you could write into a MWO train choices "Monday" and "Wednesday" rather than complex lists of rules.

“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
Last edited: 15/07/2015 at 10:14 by postal
Log in to reply
DOTW seed train problems 15/07/2015 at 18:36 #74258
clive
Avatar
2789 posts
" said:
Or would changing the rule to "0A00??? and 0A00?? are alternatives" work?
Yes, it should.

Log in to reply
DOTW seed train problems 15/07/2015 at 18:37 #74259
clive
Avatar
2789 posts
" said:

0A00??? has always worked before.
Sorry, but 0A00??? has never matched 0A00MO - the lengths are different.

Log in to reply
DOTW seed train problems 15/07/2015 at 23:19 #74267
JamesN
Avatar
1608 posts
We have all these immensely complex rule chains to simulate days of the week.... Would it not at some point be simpler to push for DotW to be simulated?

Some of the functionality is already there - In the XML format internally you can set the days the TT applies to.

Have a series of tick boxes in the WTT editor which are the days of the week timetable applies. On start up, sim then chooses from this list one day at random. Mark as entered all trains that don't run that day.

If chained, slave sims inherit DotW from master.

Default case (nothing ticked) means always runs.

Just seems silly expending all this time and effort fixing things so that a bodge - which wasn't the intended purpose of these rules - works when the equivalent amount of effort could go in to making what's wanted actually properly supported.

Log in to reply
The following users said thank you: postal, KymriskaDraken, GoochyB, TimTamToe
DOTW seed train problems 15/07/2015 at 23:29 #74270
postal
Avatar
5265 posts
" said:
Some of the functionality is already there - In the XML format internally you can set the days the TT applies to.
As ever, it is always better to use what is there rather than re-inventing the wheel so thanks to James for the reminder. At one time there was a boilerplate XML editor doing the rounds which allowed the tick-box option. Rather than all these bodges, it would be good if the boilerplate could be worked up to a functional editor. The boilerplate editor also allowed the TT to be edited without having to open up the sim which would also be another helpful option for TT writers.

“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
Last edited: 16/07/2015 at 00:51 by postal
Log in to reply
DOTW seed train problems 16/07/2015 at 09:20 #74276
Meld
Avatar
1111 posts
It would be nice if the core code had an option to select what day you want to run the timetable on, included on the timetable selection page, along with a random day selector option.
Passed the age to be doing 'Spoon Feeding' !!!
Log in to reply
The following users said thank you: TimTamToe, 58050, postal