Driving to a Trackmark

(Note: All this work has been done in T:ANE Build 78667)

Ok, I guess I have no idea whatsoever how the AI Driver works. I’ve been having problems with an AI Driver not correctly driving to a trackmark when the path to that trackmark is clear. The AI Driver will invariably attempt to take a path obstructed by a consist or a different path not blocked by a consist but not a direct path to the trackmark whatsoever.

I then decided to experiment with a path or routing rule (setting the junctions to the correct path) to see if I could get the AI Driver to go directly to the trackmark. No matter which rule I used, there was the same result; the AI Driver took control of the final junction to the trackmark, which the rule had set to the correct path, and switched it to a blocked or other incorrect path.

With those failures, I decided to set up a series of test session. I had noticed that there may have been problems with the AI and consists on the adjacent tracks. I had no idea why this may be but decided to test it. I shortened up the drive lengths and put a special trackmark on the correct track near the critical junction so the whole process would be shortened somewhat to speed up the testing.

I first tested the process with no consists on any of the adjacent tracks. Here’s a screenshot with the critical junction pointed out by the black line. The AI Driver chose the correct path and drove to the trackmark.

34h0ac.jpg


Here’s a screenshot a few seconds later with the engines entering the correct track headed to the trackmark:

OhtpCI.jpg


Next, I added a consist on an adjacent track to see the result. Note that I changed nothing in the sessions but the route changed with the addition of a consist on an adjacent track to where the AI Driver is programmed to travel. Also, I removed all the path or route rules for this specific set of tests so that the only controlling command was one simple “Navigate To” command for the train to the specific trackmark.

Here’s a screenshot of the critical junction switched to the correct position by the AI some distance away from the critical junction. (The switch is pointed out by the black line.) :

OE4yZH.jpg


A few seconds later, the AI switched the junction to the right and off the correct path to the trackmark as shown by this screenshot:

aNMP08.jpg


This situation happened every time a consist was placed on an adjacent track. I tested with a consist one track to the right and a consist two tracks to the right (as shown above) of the correct path track with similar results. As stated above, I also tried using both the path and route rules to set the junction correctly, with consists on adjacent tracks, and every time the rule(s) moved the critical junction to the correct state but when the train got to the point in the above screenshot, the AI reset the junction to the incorrect state. Invariably. I also tried the path and route rules without consists on adjacent tracks with success so it doesn’t seem that those rules have much to do with what’s going on. With the AI correctly sending the train down the correct track with no "interferring" consists, something like bad track work, track laid in the "wrong" direction, etc. don't seem to be the problem(s).

Ok, what am I doing wrong? Is there some simple solution to this; like a simple command (or rule) to straighten things out? Note tha this isn't the only point on the route where I have this type of problem so, again, it isn't just this set of track work.

Yeah, yeah, I know I can just leave consists off the adjacent tracks. But that really isn’t very realistic and will limit any session to a very simple one load and spot. After all, what yard has no consists in it when the AI Driver wants to go to a specific track?

Anyway, thanks in advance. I do appreciate all the help you guys give me.
 
I had a thought that the problem may be the total lack of signals in this part of the route so I put signals (invisible) in every possible position around this part of the route. While running the test this “fix” seemed to have done the trick. Ah, not so fast. Here is a screenshot of the engines nearing the critical junction before the AI aligned it correctly (to the left) to reach the trackmark:
ny3V0M.jpg



Here is a sceenshot right after the AI aligned the junction to the left to reach the trackmark.

gW16Nf.jpg


Here’s the lead engine entering the correct track headed for the trackmark. Note the symbol over the junction indicting that the AI has control of the junction. So far, so good.
u6NM2A.jpg


Right when I was thinking, Aha!, it works!; this happened. The AI has switched the junction underneath the trailing engine (which, of course, caused a derailment). Note that the symbol for AI control is still shown over the junction.

1sbpCT.jpg


So, yeah, I don’t have a clue what the AI is doing now.

Suggestions?

Thanks,
 
If you are happy with using path-setting rules then instead of using "Navigate ... " or "Drive ...", use Autodrive <kuid2:192081:4:4>. This command makes no attempt to switch junctions and never reverses the train. In order to drive in the reverse direction use "Change train direction" <kuid2:70791:9001:1> or an alternative.

Unfortunately, the Path rule by mutton does not work in TANE and, because the script is encrypted, cannot be fixed.

Regards

Trevor
 
Hi

As Trevor says you can't use the Navigate/Drive to/via commands with the path rules as the path rule locks the path and Navigate/ Drive will keep trying to change that path while the AI works out a route to the trackmark. I use the path rule by brummfondel, "jsTRF-Path Control" kuid2:192081:16:2 and driver commands "PathControl setpath" kuid2:192081:6:2 and "Autodrive" kuid2:192081:4:4.

Create the path in the rule and then use the driver commands PathControl setpath followed by the command Autopilot using either the option to drive to or drive through the trackmark. Note that this path rule requires all signals along the path to be named. If the path that you wish to use is unsignalled then place an invisible signal at the start of the path and give that a name. Anything will do such as S1 but this will allow the path rule to find the path.

The rule does work in T:ANE but a route with too many junctions may cause the rule to timeout and not populate the list box. It's just trial and error to see if it works with your route.

Regards

Brian
 
Trevor and Brian,

Thanks much! You've given me lots to work with here. I knew the "Trainz community" would be able to help.

Thanks again and take care,
 
Back
Top