Surveyor Trials and Tribulations

BillDinAZ

Old Fart
I began developing a Session for a clone of the PhilSkene route IndustRail2010,. I assumed changes would be made only on the Session Layer. I am very familiar with the concept of layers from Photoshop. I began to notice that some changes to my session, like adding or changing Rules, resulted in being prompted to overwrite only the session file. When other changes were made, especially adding or moving a trigger and certain other changes, I was prompted to overwrite both the route and session files. At some point, I began to think about publishing the session and realized it needed to run on the default installation of the IndustRail2010 route. I knew I would have to search for any changes to the route layer and change them to be on the session layer or design a workaround. I changed a few triggers from the Route Layer, where they had been put by default, to the Session Layer before deciding to complete the entire session and then determine what needed to be changed.

I had set up several HTML messages to display using a trigger and the rule Message Popup and they were working okay displaying text directly from an HTML file as opposed to text contained in a String Table. I like this because when the HTML file is displayed, as opposed to a String Table entry, messages will Pop when a train enters the radius of a trigger and automatically disappear when it exits the radius. The length of time the message is displayed can be adjusted by changing the radius of the trigger. There are no buttons visible in the message box and none needed. I find this very useful for display of some types of messages. The other advantage, I feel, is that I can format the message using HTML code.

I had three or four places on the route where I used the Message Popup rule in this way. Over a period of about a week, I continued to develop the session and, every time I tested it the Message Popup rules would work as expected. That is until one day when something happened to one instance of the Message Popup rule. It no longer popped when I entered the trigger radius! I think, but don't know for sure, that this was one of the triggers that had originally been placed on the Route Layer and that I later changed to the Session Layer. I didn't note whether it stopped working immediately after this or not. I tried moving it back to the Route Layer, moving it to a different place along the track, deleting and recreating it, and changing the popup message to one of my other HTML files that I knew worked with this rule. Nothing worked!

I went back to square one. Thinking now that the layer I was on at any given time might affect how the Message Popup rule was executed (although I don't understand why it would), I verified that the Route Layer was locked and that the Session Layer was active. I created a brand new trigger just a few hundred feet from where my loco started. I placed a Message Popup as a child under it that displayed an HTML file. The file I used had references to entries in the String Table but was not the option to display a String Table entry directly. The message popped when the loco entered the trigger. I then changed the references to the String Table entries to text contained in the HTML file. (BTW, I have significant experience working with HTML code.)

When this change worked as expected, I decided to start moving the new trigger further along the track. Every time I came back to Surveyor after testing the new position of the trigger I (1) verified that the Route Layer was locked and that I was working on the Session Layer, (2) moved the trigger a distance between 30 to 200 feet using the ruler to measure the distance and (3) saved the change before using QuickDrive to go into Driver and test the change. Even though I knew that the Route Layer was locked and assumed that it couldn't be changed, upon every iteration, I was prompted to overwrite both the Route and Session and could not save just the Session. Oh, something that may or may not be significant. Two or three times out of approximately 30 times that I went through this process, I got a message saying that it could not save the route because it was locked! Duh! I knew that. When this message came up, I would cancel it and use Ctrl-S to initiate a new save. Voila, it would save the file(s)!

I conducted over 30 moves of the trigger. Most of the time my message would pop just as it should. On a few of the trials nothing happened when my loco entered the trigger. When this happened, on the next iteration I would return the trigger to where it had been on the previous iteration when it had worked and verified that it still worked there. Then I would move it a shorter distance than I had when it didn't work. Here is an example of what I mean. If the trigger was placed at point A and the Message Popup message popped as expected, I then moved the trigger some distance to point B. If nothing happened when my loco entered the radius for the trigger at point B, I moved the trigger back to point A and verified that it still worked before moving the trigger to point C, which was between points A and B, and, in every case, the Message Popup would work again. I could continue moving it further along after one of these little hiccups and generally have it work.

Eventually I was able to move the trigger almost 3600 feet (over a half mile) AND had it positioned just short of where the original trigger that led to all of this had been. I saved my work one final time before I was going to begin tweaking the HTML file itself so that it displayed the message I actually wanted to display. Alas! When I made this last save, a mishap of some sort resulted in the loss of the entire session, although its title is still listed as a session for the route but it is exactly the same as a newly created session!

I'm about at my wit's end. I was looking forward to developing and posting challenging Sessions but I can't take the frustration of not being able to figure out why the rules don't execute as described and/or designed and especially can't understand why I lost all my work as I did. Must every change in surveyor be backed up to another drive EVERY TIME a change is made?

If you have made it this far, thank you for reading this. Please provide suggestions and/or criticism, words of wisdom, anything that will help me understand whats happening and restore my faith in Trainz.

Thanks,
BillD:(:'(
 
Interesting story I understood it very well damn laters have been frustrating
and it seems to happen as I noticed creating a new each time a save made with rolling stock etc on track but eventually dissapear or creates a save file in CMP ive found also.........
kindda strange doin this in compatability mode (no layers) ya right still happens ya end up losing stuff........
merging layers makes a mess also but i did find lookin in CMP the saved files and added sessions which I was able to find the main one and deleted the rest but then somehow that corrupted the main down the line also?

Dave
 
Alas! When I made this last save, a mishap of some sort resulted in the loss of the entire session, although its title is still listed as a session for the route but it is exactly the same as a newly created session!
Thanks,
BillD:(:'(

Hi Bill - Sometimes I also find that the sessions disappear from my routes. When this happens the route kuid number has been changed by saving the route.

In CM, look for the route and view it's config file. Write down the name and kuid number of the route.

Then look for your session name. If it has a yellow puzzle piece then it is probably has the wrong route kuid. To be safe, clone the session as a backup.

Open the original session for Edit in Explorer and, in the config.txt file, change the map-kuid line to match the route number you wrote down. Also change the matching entry in the kuid-table in the same way (usually the first entry).

Save the session file and commit. If you get a message saying that the asset is not found, open it for Edit in CCP and close it again. It will re-apear.

Commit the session. If all is well, save the fixed session to a CDP. Once that is secure, delete the other copies of the session.

Hope this helps - Trevor

Edit: Added underlined text.
 
Last edited:
Thanks guys for the encouragement. I'll implement your suggestion about the kuid number, Trevor, but my biggest concern is about how to get the HTML files to reliably display.

Bill
 
I have found that if my computer is not connected to the internet, I have the same problems saving a modified session. If I am connected to the internet, I always get the screen that gives me the option of saving only the session.

If you move anything original to a route including which way a switch is set, it will cause a need to save the route. Keep the route layer locked at all times and never, never, never unlock it. If a trigger is in the wrong place, ignore it and put a new one where you want it. Making sessions for existing routes can be a real pain. Hopefully, in the future, Route creators will not place any triggers or track marks on the route layer. This would make session creation for existing routes much easier.

I have developed a session for one of Philskene's routes, the Downtown Traction Company. I had no problems with it but it involved only the player's train and no others.

I then started one for his Harbor Master route with multiple trains, but found that my computer would lock-up when a particular train would reach a certain point on the route. It was such a complicated route and very time consuming to test. I was told that there was no problem with the route because no one else had reported such a problem, so I just abandoned the project. There are plenty of other routes without hidden bugs, (I hope).
 
Last edited:
Thanks, Dap.

I learned the hard way. I started completely over with development of this session on a new clone of the IndustRail TS2010 route and THIS TIME I took your advice and locked the route layer. So far, I have not been prompted to overwrite the route even after setting up several industries for production or consumption of products.

BillDinAZ
 
Back
Top