Sechelt & North Coast Railway Traffic Generator

Discussion about RailWorks scenario creation.

Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Tue Mar 03, 2026 7:30 pm

Good Day All,

Today we are going to look at the Traffic Generator I have been developing almost as long my Sechelt & North Coast Railway route as it reaches functionality and what the goals are for this program and how it will hopefully work with Train Simulator Classic as it evolves further. To be honest this program is just as important to me as the route as a railroad needs to have operation which is fun and well thought out to keep it interesting. I have almost spent as much time developing it as I have route building and as a result I have created a way to generate approximately 7300 random different scenarios (A entire 365 Day year) for my route randomly which I will explain further and would keep anyone from becoming bored when operating the route. The post will grow in the future as I release more details and time permits.

First a little history first. This generator was initially started as part of a model railroad project about 15 years ago for a home layout I was starting to build and ceased due to an unexpected house move. The program then became part of my Sechelt & North Coast Railway route posts you see every now and then after ceasing to be a Model Railroader. The development of my program started years before Protrak which after reading and reviewing with others, felt would fit my bill of needs for operations with Railworks at the time, provided I had the appropriate information to enter for customers, rolling stock and details on my route which my own program already had. If any of you are model railroaders, you have likely heard of Protrak created by the late Jim Moir. It was a very elaborate and expensive piece of software which was featured in many Model Railroad magazine’s, used by many clubs and many of North America’s best modelers. It had a reputation for being the most prototypical piece of operational software available. Someone actually wrote a review of it and said the only downside is it was too prototypical. Jim was a Professional Engineer (not the railroad type) who developed his software for several decades and built the software purely on how real railroads operate often going to the real railroads for insight. I would still be using Protrak if Jim hadn’t passed and his program ceased functioning as Windows evolved over the last decade. Prior to Jim’s unexpected passing, he had actually looked at the Excel program I created as he wanted to get an idea of what I was looking to accomplish as he had not dealt with anyone wanting to use his program for Railworks (2014) and was keen to know how his program would be used. Jim reviewed it very thoroughly and actually provided me with a custom database to experiment with and I recreated my route within his program and it worked very well. As he knew, there was no way to import this information into Railworks at that time, so I built my scenarios manually and posted my results in the forum on his website and soon there were other users of Railworks and Trainz using his program as well.

After Jim’s passing and functionality disappearing with his software several years later due to Windows evolving, I went back to work on my own program taking what I had learned from his program and applying it to my own. I have essentially created an Excel inspired version of the program with custom features I wanted specifically for Train Simulator Classic but also doing many things that Protrak was not designed to do.
I could write for days on each component of my program which contains more than 650,000 formulas and lines of code however I have actually simplified my whole program into a 30 second quick setup to use by default so people do not fall sleep having to read a 400 page manual which I could easily write and honestly don’t have the time for. You simply click a date on the main screen after the quick setup and every piece of paper work is available including map display for the day you selected allowing you to start building your scenario manually. The goal of my program has always been able to assist with scenario building and real railroad paper work based off the CN prototype library Jim had posted on his Protrak site. As time has gone on, I have somewhat accidentally found a way to actually import this data into Train Simulator Classic and create scenarios automatically and that is now my end goal for this program as time permits.

Goals of this program in priority and completion status in order of priority and available time.

1. Generate prototypical traffic flows on a 140 mile shortline railway for an entire year using AAR data, competition formulas, government reports for carloads carried by real shortlines in the Pacific Northwest to calculate diversion to trucks, ships and economy for the year of 2022. Railway customer traffic is sourced from real world and proposed local industry and is only based on government or private reports for actual volumes supplied. Simply put if there was a real world railway here, this is what it would likely transport along with carload volumes. (100% complete)
2. Generate prototypical paper work for any given day of the year for any train, yard track or customer. Locomotive and car tracking functionality. (75% complete)
3. Produce a CTC like display overview to show the position of all freight cars at the start of any given day. (Map display 95% complete, displaying cars on 20% of entire route at this time)
4. Not initially planned as one of the original goals but likely doable after preliminary experimentation. Import daily information into Train Simulator Classic to generate custom scenarios for any day of the year. This is done by creating a dummy scenario template where the shortest length car used (invisible dummy) is generated on every customer track, yard track and siding creating a unique ID which can be swapped out by the generator. Unused cars, spaces are then deleted. (Railcar database 100%, implementation of car swapping 5%, experimental only but appears doable and requires a lot of time to finish. TS Tools does this, I am just going to use Excel to do it on a much larger scale in a very different way. Weather and other elements can be added as well based on historical data for the year the railroad is set in)
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby wacampbell » Tue Mar 03, 2026 7:39 pm

This sounds very interesting. Having some automated traffic generation should really help keep interest up once the route is done.

Wayne
Wayne Campbell
wacampbell
 
Posts: 516
Joined: Tue Sep 27, 2011 12:45 pm
Location: BC, Canada

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Tue Mar 03, 2026 7:49 pm

Starting off, we look at an overview of the top section of Setup & Instruction screen.

A. In the top left his the quick setup option which you can do in less than 30 seconds to allow almost instant functionality of the program to start building a scenario. This is where you can pick the day you want of your scenario (365 days available, for the entire 2022 year) along with various other details of the railroad including historical weather forecasts for the date used.
B. I am using the Gravel Unit Train Scenario setup in this image which is default for the program.
C. Competition settings, based on formulas I incorporated into calculations for carloads provided by each customer based government research and AAR data. Competition comes from trucks and ships with some commodities losing more than 50% of their traffic to trucks and ships. AAR data is also applied to competition and affects monthly carloadings based on ups and downs in the economy based on demand. In January the railroad may move only 250 carloads of paper, in July it may transport over 400 carloads and then in December it may only do a 175. Each commodity is different depending on the AAR data entered and customers are categorized into one of the 10 available commodities.
D. Actual Carloads is generated randomly and really important as it is the health of the railroad. Max Target Carloads is what the railroad should be carrying. This is based on an a averaged proportional calculation based on the 20 best performing shortlines in the Pacific Northwest and is calculated by mileage, carloads and customers per mile. A database of 34 railroads built from more recent Government data is available for this calculation. Basically a successful shortline railroad in the Pacific Northwest should be carrying the numbers averaged by this calculation. Other traffic scenarios in point B (not fully completed) look at only what average railroads carry along with the bottom 20 railroads which are having a hard time making a go of it.
E. Carload summary. 9549 carloads are interchanged, 13613 carloads never leave the railroad being online traffic consisting of gravel, woodchips and logs for the most part.
F. Distributed Power Calculator. Is based on Transport Canada recommendations for nearby operations on the former BC Rail mainline (now CN) and have been recalculated based on SC Rail line parameters which has steeper grades than BC Rail at 2.7% and mirror those run by local prototype railway Southern Railway of BC (Owned my owners of Montana Rail Link, same colors as well). BC Rail used to run really short trains with DPUs at times due to the curvature (16 degrees on a mainline!) and 2.2% grades. This again is a proportional calculation.
G. Optional Switching for customers, paper mills which the railroad can do for revenue and operational interest to the end user or it is left to the mills to switch their cars with their own power if no is selected.
You do not have the required permissions to view the files attached to this post.
Last edited by ENR3005 on Tue Mar 03, 2026 8:22 pm, edited 3 times in total.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby harryadkins » Tue Mar 03, 2026 8:02 pm

This looks great! I use a freeware Excel spreadsheet called Switchlist Generator to operate my routes. It is good but lacks a lot of the features you mentioned. Thank you for sharing.

Harry
User avatar
harryadkins
 
Posts: 3160
Joined: Sun Aug 23, 2009 8:01 am
Location: South Carolina, USA

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Tue Mar 03, 2026 8:41 pm

Further down the Setup & Instruction screen we have the Regional Carloads & Tonnage statistics along with the same for passenger operations. There is 8 trains operated by the railway not including yard switchers which there are four yards where crews are assigned. Freight trains operate three times a week. Locals operate once to three times a week depending on traffic needs. Scheduling is based on actual BC Rail operations with proportional traffic. Important to understand items.

A. Shortest / longest train length, max tonnage for east and west bound. What the shortest train will be for the year and what the longest will be including tonnage.
B. Regional Carloads is the carloads handled by a train over a section of line. It is important to note that a single carload may be handled by two or more trains depending on it's final destination.
C. Yard Crew at terminals. If "No" is selected, Freight trains will by default switch cars at the yards and build their own trains. This is meant for a under performing railroad scenario where a yard crew is not warranted.
D. Summary of Regional Passengers summarizes the number of passengers on Eastbound and Westbound trains.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 9:54 am

Looking further down the Setup & Instructions screen, we get to an overall roster of the railroad which is the Section Two setup and is completely optional to do so. This section by default is preset and automatically adjusts based on carload volumes between the scenarios with the ability to customize the roster entirely. The roster can then be entered on a train by train basis in the following tables below for those who wish to do so along with a unit number. By default this automatically setup however the end user can adjust as they wish to their own needs.

If one is going enter their own roster of engines (done in a separate table elsewhere), they need to ensure enough locomotives are entered into the table to handle the tonnage of heaviest expected train of the year as noted in the previous post in the Regional Carloads And Tonnage Per Year Summary section. Looking at the first section of the table were freights A670 (Going West) /A671 (Returning East) are located, the table shows a list of six SD70M-2s and SD40-3s which will be used for the train capable of moving up to 7,300 tons which will look after the largest projected train of the year at 6,610.02 tons heading eastbound. Locomotives are staggered in the manner in accordance with Timetable restrictions (an earlier post for those interested) for the bridges which limits maximum track loading to 268,000 lbs and requires the heavier SD70M-2 units to be separated by a smaller SD40-3 unit to limit shock to the many bridges along the line which do “not yet” meet modern axle loading requirements.

The purpose of this table is for calculations in other tables within the program. In the case of trains A670/A671, locomotives will be automatically assigned as tonnage warrants with up to three units on the head end and DPUs being assigned to longer and heavier trains starting with a 2x1x0, 2x2x0, 2x2x1 or lastly a 2x2x2 configuration. Only two 2 trains will ever be assigned DPUs, tri-weekly freight A670/A671 and a tri-weekly gravel unit train U650/U651 which is the heaviest train the railroad operates at a consistent 7,644 tons and 64 cars, requiring 7 locomotives to be run in a 2x3x2 configuration and is again self-calculating.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 9:56 am

Looking down almost at the bottom of the Setup & Instructions screen we get to the Section Three setup which involves track classes. Like Section Two, this area is completely optional for tweaking. Changing track class type will affect calculations in other tables within the program, mainly axle loadings for freight cars which can be changed between 263,000 lbs, 268,000 lbs and eventually 286,000 to certain sections of the line but not for the initial release of the route. Basically, as your axle loading goes up your tonnage gets heavier and the required number of freight cars declines to move the same amount of freight which is self-calculating for each customer the railway serves. Maintenance costs are also reflected which affect the annual operating budget for the railroad and are totaled into summary section of the railroad which shows how profitable the railroad is depending on the scenario used for those who are interested and a topic for a later post. Average trains a year / day is how often each section of rail line will see a train in either direction.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 9:57 am

Here we move onto Freight Traffic West & East Tables which are identical which calculate the traffic moved West and East on the railroad for each train. This table is where car numbers car weights and car cycle time is all calculated from these tables.

Looking at the left side of this image, we see a customer listing for 66 mile long Coast Subdivision, along with the traffic type moved by the railroad. The entire week of July 18 to July 24 is shown in a table extension with carloads moved for each service day provided by the railroad. The entire year, January 1, to December 31 is also completely viewable by scrolling in the exact same format. Service is provided by three different trains with a tri weekly local L676 / L677 servicing several small industries between Williamsons Landing and Sechelt. The north end of the line is serviced by tri-weekly freight A672/A673 which will deliver and pickup cars at the railroads most northern yard at Ambrose east of Earls Cove who know the real world area. Tri-weekly gravel unit train U650/U651 which originates on the McNab Creek Subdivision and terminates at Sechelt, exchanging loads for empties returning to McNab Creek.

None of the information in the table is editable and is automatically generated based on customer output calculations, along with competition formulas and AAR data affecting the calculation of actual carloads carried. The information calculated within the Freight Traffic West & East Tables are used in further sections of the program but is useful to look at particularly if you wanted to create a particular type of scenario with certain criteria, such as when a particular industry was being serviced which may be seasonal, or when some of the busier or quieter periods were for particular customers.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 9:59 am

Continuing to look at the Freight Traffic West & East Tables, we have scrolled down to the 44 Mile Inlet Subdivision which branches off the Coast Subdivision at Sechelt The format of the table is exactly the same as the previous post and not editable and only for reference.

The Subdivision is serviced by tri-weekly freight A670/A671 which delivers and pickups cars at the isolated town of Clowhom Falls. Clowhom Falls is the terminus for 3 locals servicing various industries. Twice weekly L678 / L679 runs Clowhom Falls to Nine Mile Point , twice weekly L680 / L681 which runs Clowhom Falls to Phantom Falls , once weekly L682 / L683 runs Clowhoms Falls to Misery Bay.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 11:51 am

Now we take a closer look at what all the previous information to this point builds up to with a Train List for freight A670 which is useful for scenario building. The format of this list is based on prototype lists that were available off Jim’s old Protrak website and was available for comparable reference to his program which were graciously provided to him by various railroads. My format is a combination of several different formats for what would work for the purpose of Train Simulator Classic. This list can be generated for any day of the year (provided it is a service date for the train) simply by returning to the Setup & Instructions screen and selecting a different operating date. important information for the train is provided, including engines assigned, car type, weight, length, destination (station code), contents of car and final destination (spur or interchange track number for loading / unloading). Summary of loads, empties, total cars, weight and length complete the list.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 11:52 am

Next up is an actual switch list for tri weekly local L676 / L677 which services several small industries between Williamsons Landing and Sechelt. As noted in the previous post the format of this list is a combination of several different formats for what would work for the purpose of Train Simulator Classic. Industries are listed in order from Williamsons Landing To Sechelt. Important to note items that differ from the previous list is cars under the “Place At” are cars to be delivered and cars listed under Actual Location are cars that were previously spotted and ready to be picked up. Using the first customer as an example FLP Adhesives, lines 1,2 are cars to be spotted. Lines 3,4 are cars to be picked up.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 11:53 am

Up next is the Westbound and Eastbound Train Lists for local L676 / L677 noted in the post above. Departing West from Williamsons Landing, the train will leave with 7 cars and later return East with 13 cars. Cars returning to Williamson Landing Yard are spotted at a very specific track which can then be switched out be the yard crew between interchange traffic going to the mainland and online only traffic continuing onto other destinations such as the four loaded woodchip cars on lines 2 to 5 which will be sent down the McNab Creek branch to the massive pulp Mill at Port Mellon on local L674/L675 the following day. The rest of the cars will be destined for Langdale ferry slip just a few miles East of Williamsons Landing yard.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 11:54 am

Now onto something different. The image shows a somewhat scaled line drawing of Langdale and the adjoining Ferry Slip with a loaded ferry waiting to be unloaded which is automatically populated from an Inbound Car list which is read from the Freight Traffic West & East Tables in previous posts. The purpose of this overview is show where the position of a car would be at the “Beginning of a day” for any day of the year and useful to scenario building rather than reading through previous days train and switch lists to figure out what got delivered and picked up. The drawing is scaled proportionally to the smallest car used, 40ft for programing purposes which sets the maximum number of cars each track will hold. Using the ferry as an example the ferry can hold 22 forty foot cars however longer cars take up more room which is calculated on the Freight Traffic West & East Tables. Given the lengths of the inbound cars the tracks combined, the ferry in the example above can only hold 16 cars all of different lengths and he program automatically places. This feature requires considerable work to complete however it is inching along to eventual completion.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 11:55 am

Here we see a partial overview of Williamsons Landing Yard populated with cars. The drawing is scaled proportionally the same way as Langdale which is consistent for all locations where cars would be located on the railroad. The cars for local L676 / L677 which had it’s train list and switch list shown are present in WL-11 at the bottom lefthand side of the image, waiting for departure. Cars in WL-12, WL-13 are cars bound for Ambrose Yard the following day. The cars present in track WL-04 are bound for Clowhom Falls yard. Only part of the inbound cars have been programmed to this area which will eventually have inbound, outbound, along with any locomotives and passenger equipment.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Re: Sechelt & North Coast Railway Traffic Generator

Unread postby ENR3005 » Wed Mar 04, 2026 11:57 am

Here we see an overview of Gibsons, again with cars that local L676 / L677 will be picking up. Customers are noted in bold white lettering in their respective tracks along with the commodity be delivered (yellow) or shipped out (green). Spurs that are no longer in service are noted as out of service.

I will post further images of work as it progresses in the future.
You do not have the required permissions to view the files attached to this post.
ENR3005
 
Posts: 261
Joined: Fri Mar 19, 2010 11:50 pm

Next

Return to Scenario Creation

Who is online

Users browsing this forum: No registered users and 4 guests