Help - Search - Members - Calendar
Full Version: Too Many Sidings?
Skyline User's Forum > > Activity Generator
tjbuege
Hi,

While creating a template for a large route, I ran into a problem with MSTS Activity Editor. It started to silently crash when opening my template I was working on. After digging around and experimenting, I believe I have found a limitation in AE to the number of sidings that can be referred to with a Pickup Cars action. It seems you can not refer to more than 90 different siding. Has anyone else run into this problem? Are there any workarounds? How are templates created for large routes with more than 90 sidings?

Thanks,
Tim
xpdingo
QUOTE(tjbuege @ Mar 16 2009, 10:12 AM) *
Hi,

While creating a template for a large route, I ran into a problem with MSTS Activity Editor. It started to silently crash when opening my template I was working on. After digging around and experimenting, I believe I have found a limitation in AE to the number of sidings that can be referred to with a Pickup Cars action. It seems you can not refer to more than 90 different siding. Has anyone else run into this problem? Are there any workarounds? How are templates created for large routes with more than 90 sidings?

Thanks,
Tim



I believe the limit is 75 Pickup events, after that it will crash. Stop your pickup events before this and create your SWLACT file. Go to the activities folder for this route and move the file you just created to a temp folder and rename it SWLACT2. Keep doing this untill you have all the pickups for the template, always moving and rename them 2,3,4 or as many as you need. When done copy and paste all the folders into one with the correct name.

Pete















swlact file
nbeveridge
QUOTE(xpdingo @ Mar 16 2009, 10:25 AM) *
I believe the limit is 75 Pickup events, after that it will crash. Stop your pickup events before this and create your SWLACT file. Go to the activities folder for this route and move the file you just created to a temp folder and rename it SWLACT2. Keep doing this untill you have all the pickups for the template, always moving and rename them 2,3,4 or as many as you need. When done copy and paste all the folders into one with the correct name.

Pete
swlact file


An excellent response, Pete. This is a trick that experienced template creators employ routinely, and it is not obvious to others.
tjbuege
QUOTE(nbeveridge @ Mar 16 2009, 12:18 PM) *
An excellent response, Pete. This is a trick that experienced template creators employ routinely, and it is not obvious to others.


It's definitely breaking at 91, so I'm seeing a limit of 90. Not sure why others see it at 75. Could it be because I run train.exe with the -mem:2048 parameter?

As an aside, I combine multiple sidings/pickups into a single Pickup Cars event, where it makes sense. For example, all sidings at a town get picked up as one event. This keeps the number of pickup action events down, and helps me locate specific sidings if I need to change something.

Anyhow, it sounds like I'm dealing with this the correct way, by doing things in stages. So let me ask this question...is the actual *.act file needed once the two *.csv files are generated? I believe the answer is "yes", because that is where the player paths are picked up from?

Thanks for the responses.

Tim
nbeveridge
QUOTE(tjbuege @ Mar 16 2009, 12:18 PM) *
It's definitely breaking at 91, so I'm seeing a limit of 90. Not sure why others see it at 75. Could it be because I run train.exe with the -mem:2048 parameter?

As an aside, I combine multiple sidings/pickups into a single Pickup Cars event, where it makes sense. For example, all sidings at a town get picked up as one event. This keeps the number of pickup action events down, and helps me locate specific sidings if I need to change something.

Anyhow, it sounds like I'm dealing with this the correct way, by doing things in stages. So let me ask this question...is the actual *.act file needed once the two *.csv files are generated? I believe the answer is "yes", because that is where the player paths are picked up from?

Thanks for the responses.

Tim


I do not know why you are seeing 90 as the limit. I always stop at or before 70, because 70 is always safe. Too much work to lose to take a chance on more than that.

Combining multiple sidings into one event never helped the situation, from my experience. I tried it and it failed. I.e. if I put 10 into one event, then MSTS would lock up around 66 (65 + 10 = 75). Again, too much work to lose to take a chance on more than that.

The actual .act file is needed, which file must includie the placement of ALL rail cars for ALL pick up events. This is required so that MSTS can know where and what cars are to be placed. AND the cars in the activity must correspond EXACTLY to the combined SWLACT .csv file, or else you will get unexpected (and undesired) results.






tjbuege
QUOTE(nbeveridge @ Mar 17 2009, 11:06 AM) *
I do not know why you are seeing 90 as the limit. I always stop at or before 70, because 70 is always safe. Too much work to lose to take a chance on more than that.

Combining multiple sidings into one event never helped the situation, from my experience. I tried it and it failed. I.e. if I put 10 into one event, then MSTS would lock up around 66 (65 + 10 = 75). Again, too much work to lose to take a chance on more than that.

The actual .act file is needed, which file must includie the placement of ALL rail cars for ALL pick up events. This is required so that MSTS can know where and what cars are to be placed. AND the cars in the activity must correspond EXACTLY to the combined SWLACT .csv file, or else you will get unexpected (and undesired) results.


I think you misunderstood my reasons for combining multiple sidings into one pickup event. I don't do it to get around the siding limit...I do it to make it easier for me to manage the activity. I'd much rather scroll through a list of a dozen events, than scroll through a list of 70 (or 90) pickup events.

Regardless, thanks for the clarification on the .ACT file. If I would have thought about it a bit longer, I would have come to the same answer.

Tim
jrmeindl
QUOTE(tjbuege @ Mar 17 2009, 10:14 AM) *
I think you misunderstood my reasons for combining multiple sidings into one pickup event. I don't do it to get around the siding limit...I do it to make it easier for me to manage the activity. I'd much rather scroll through a list of a dozen events, than scroll through a list of 70 (or 90) pickup events.

Regardless, thanks for the clarification on the .ACT file. If I would have thought about it a bit longer, I would have come to the same answer.

Tim



I agree with the grouping. I've done that as well in all of my templates. Most I have done by keeping yards and sidings in a region together. I can also add a little more about the number of events you can have in an activity. Yes, the number that Train Simulator can handle is somewhere between 70 and 90, but that is only the case if you plan to run or edit the activity. AG doesn't really care how many pickup events you have in the activity when generating your CSV files. I believe I had about 250+ events while creating the Cajon Templates. The key was to not exit the activity editor or that activity during my session. It will continue to work fine even as you save the activity. When I do close the activity, I then create the CSV files. Using an editor, such as WordPad, I then edit out all but one of the pickup events. This will allow you to again open the activity and use it for AG. Of course, do save the original. This might seem a bit more technical, but it can be done.

To add a bit more about creating templates: I usually use one car to place on all the sidings. Norm, I think you have done this as well. I normally use one of the boxcars that came with TS to place on all the sidings. Using a trick from work with the # sign, I create a consist such as #_boxcar. This will force the consist to the top of the group. This makes it easy to select. I then set up a few feeder tracks in one of the yards. That is where I put all my cars that I plan to used in the template. It makes it a whole lot easier if I want to switch out or more cars. No more searching the route for that car you don't want to use!

Jim
nbeveridge
QUOTE(jrmeindl @ Mar 17 2009, 04:19 PM) *
To add a bit more about creating templates: I usually use one car to place on all the sidings. Norm, I think you have done this as well. I normally use one of the boxcars that came with TS to place on all the sidings. Using a trick from work with the # sign, I create a consist such as #_boxcar. This will force the consist to the top of the group. This makes it easy to select. I then set up a few feeder tracks in one of the yards. That is where I put all my cars that I plan to used in the template. It makes it a whole lot easier if I want to switch out or more cars. No more searching the route for that car you don't want to use!

Jim


Jim,

That is exactly how I do the templates, and exactly the reason. By using that one car in ALL locations, and then putting strings of the cars in the yards that I want in the activities, with a pick up event for each of these yard strings, it is very easy to change out cars if need be. Without the pick up event and an update to the SWLACT .csv file, changing out a car will have unexpected results.
xpdingo
QUOTE(tjbuege @ Mar 17 2009, 10:14 AM) *
I think you misunderstood my reasons for combining multiple sidings into one pickup event. I don't do it to get around the siding limit...I do it to make it easier for me to manage the activity. I'd much rather scroll through a list of a dozen events, than scroll through a list of 70 (or 90) pickup events.

Regardless, thanks for the clarification on the .ACT file. If I would have thought about it a bit longer, I would have come to the same answer.

Tim



Tim:

What route are you making a template for. If you intend to post it it would be good to know so others are not working on the same route.

Pete
tjbuege
QUOTE(xpdingo @ Mar 18 2009, 01:00 PM) *
Tim:

What route are you making a template for. If you intend to post it it would be good to know so others are not working on the same route.

Pete


It's not something I intend to post. I'm playing around with the Niagara Corridor route. I'm toying with the idea of developing multiple templates to allow more flexibility. I want to simulate specific jobs on the railroad, so I'll be customizing the traffic for each. I also might change the designation of certain tracks from one template to the next. For example, a track might be Industry in one template, or Unit in another, or Eye Candy. I would likely do this with yard tracks, so I can try and simulate classification jobs. I haven't worked through all the details yet.

As an aside, I'm working on figuring out how to determine a siding from car coordinates, to eliminate the need for pickup actions. It *should* be simple math, to determine the closest point to a segment of track. There's the whole matter of Qauternions used by MSTS to represent rotation. I've already tackled that. There is a spreadsheet already out there that can be used to convert Quats to typical Euler rotations, but it's buggy. I think the rotations were done in the wrong order. Anyhow, I hope to be able to figure this out. I've already written a program to identify gaps or breaks in the rail that might cause the cars to jerk suddenly. You plugin a threshold (in meters), and the program identifies the node in the track where the misalignment is. I did this to attempt fixing rough track. Problem is, it's not trivial to adjust the track. But that's another story.

If I do figure out how to identify sidings from car coordinates in the ACT file, I'll probably share it with Steve so he can update Activity Generator. But don't hold your breath...I'm pretty busy with other things.

Tim
nbeveridge
QUOTE(tjbuege @ Mar 18 2009, 01:44 PM) *
As an aside, I'm working on figuring out how to determine a siding from car coordinates, to eliminate the need for pickup actions. It *should* be simple math, to determine the closest point to a segment of track. There's the whole matter of Qauternions used by MSTS to represent rotation.

If I do figure out how to identify sidings from car coordinates in the ACT file, I'll probably share it with Steve so he can update Activity Generator. But don't hold your breath...I'm pretty busy with other things.

Tim


I worked with Quats when I was a mission controller at NASA's Johnson Space Center. This IS rocket science, since as you say it must be done in the correct order, and most people, even engineers and scientists, are not disciplined enough to learn how to do it.

And I guarantee that Steve will want to know your solution for the car location. If we could get rid of the pick up events, template creation would be much quicker and easier.
tjbuege
QUOTE(nbeveridge @ Mar 19 2009, 11:21 AM) *
I worked with Quats when I was a mission controller at NASA's Johnson Space Center. This IS rocket science, since as you say it must be done in the correct order, and most people, even engineers and scientists, are not disciplined enough to learn how to do it.

And I guarantee that Steve will want to know your solution for the car location. If we could get rid of the pick up events, template creation would be much quicker and easier.


It took me several weeks of late nights to figure out the correct order of rotation. I'm not knowledgable enough to know this stuff off the top of my head (like you said--rocket science), so it took a LOT of reading (i.e., google) and trial and error. Part of the problem was MSTS does things backwards. They have their own quirky way of doing it. So I couldn't just take what I was reading and directly apply it. I had to understand the "why" behind the math, and make appropriate adjustments. Once I figured it out, I tested a whole lot, with consistant results. I'm pretty confident I have it correct.

Last night I was finally able to take the track database and plot the route graphically in a window, using Perl. I was pretty happy about that breakthrough. One step closer to possibly a GUI interface to analying routes (or graphically creating templates??) I'm just plotting straight lines between the nodes at this point. Next step is to determine the arcs needed for curved sections. But that will take some time yet. Perl may not be the best tool, but it's what I know best. And the Tk module for GUI is pretty handy. Perl does have one thing going for it...it's very efficient at crunching text and files.

If you can't tell, I like to dig into the guts of things. smile.gif

Tim
nbeveridge
QUOTE(tjbuege @ Mar 19 2009, 10:36 AM) *
Once I figured it out, I tested a whole lot, with consistant results. I'm pretty confident I have it correct.

Last night I was finally able to take the track database and plot the route graphically in a window, using Perl. I was pretty happy about that breakthrough. One step closer to possibly a GUI interface to analying routes (or graphically creating templates??) I'm just plotting straight lines between the nodes at this point. Next step is to determine the arcs needed for curved sections. But that will take some time yet. Perl may not be the best tool, but it's what I know best. And the Tk module for GUI is pretty handy. Perl does have one thing going for it...it's very efficient at crunching text and files.

If you can't tell, I like to dig into the guts of things. smile.gif

Tim


As I said before, I guarantee that Steve will be interested. And so will all the template developers!
sgdavis
QUOTE(nbeveridge @ Mar 17 2009, 11:06 AM) *
I do not know why you are seeing 90 as the limit. I always stop at or before 70, because 70 is always safe. Too much work to lose to take a chance on more than that.

Combining multiple sidings into one event never helped the situation, from my experience. I tried it and it failed. I.e. if I put 10 into one event, then MSTS would lock up around 66 (65 + 10 = 75). Again, too much work to lose to take a chance on more than that.

The actual .act file is needed, which file must includie the placement of ALL rail cars for ALL pick up events. This is required so that MSTS can know where and what cars are to be placed. AND the cars in the activity must correspond EXACTLY to the combined SWLACT .csv file, or else you will get unexpected (and undesired) results.


Yes the .act file is needed. to clarify though the pickup events are discarded so you don't need them all in the .act file. Primarily the .act file is used to mark where to place railcars and to control the AI traffic, among other things.

Thanks,

Steve
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2024 Invision Power Services, Inc.