PDA

Просмотр полной версии : jsTRF Path control



antikiller_bm
04.09.2010, 00:49
Здесь я постараюсь в картинках рассказать, как использовать правило Path Control для создания маршрутов движения поездов.
Скачать его можно здесь http://www.js-home.org/trainz/

1. Для начала необходимо добавить само правило Path Control.
Открываем его для редактирования.
http://s004.radikal.ru/i208/1009/2b/8c6bb675439dt.jpg (http://radikal.ru/F/s004.radikal.ru/i208/1009/2b/8c6bb675439d.jpg.html)

Внутри видим кнопочку new yard - это группа маршрутов, задаваемых в пределах одной станции (в имени пишем название станции)
http://i076.radikal.ru/1009/42/5942b3215e3bt.jpg (http://radikal.ru/F/i076.radikal.ru/1009/42/5942b3215e3b.jpg.html)

Создаем нужное количество маршрутов (вариантов прибытия, отправлния и т.п.)
http://s07.radikal.ru/i180/1009/32/0a43496fc104t.jpg (http://radikal.ru/F/s07.radikal.ru/i180/1009/32/0a43496fc104.jpg.html)

Жмем "изменить" и выбираем светофор, с которого начинается мршрут.
http://s54.radikal.ru/i146/1009/ff/96e40f0f5d71t.jpg (http://radikal.ru/F/s54.radikal.ru/i146/1009/ff/96e40f0f5d71.jpg.html)
http://s004.radikal.ru/i208/1009/cf/7e6f46f4ae35t.jpg (http://radikal.ru/F/s004.radikal.ru/i208/1009/cf/7e6f46f4ae35.jpg.html)

Жмем "+" и раскрываем все вкладки до нужного светофора, за кторым маршрут заканчивается.
http://s55.radikal.ru/i148/1009/ef/fc7830e5f5e0t.jpg (http://radikal.ru/F/s55.radikal.ru/i148/1009/ef/fc7830e5f5e0.jpg.html)
В списке стрелки обозначаются J, светофоры S, Триггеры Tr
Выбираем необходимое положение стрелок.
ВНИМАНИЕ! Нажимаем "Save" сверху, и только после этого "ок"
При выходе из списка без изменений, жмем "Cancel"

Для создания нескольких вариантов маршрута при выполнении одной и той же команды (например если нужный путь занят или светофор показывает сигнал, отличный от указанного в настройках маршрута, автоматически выбрать другой) можно объединить несколько маршрутов в группу, которую может выполнить машинист. В этом случае при невозможности сборки маршрута, path control будет перебирать по порядку маршруты, пока не найдется подходящий.

Делается это следующим образом:
Жмем Alias group и создаем группу.
http://s003.radikal.ru/i201/1009/cc/ed91e44bf604t.jpg (http://radikal.ru/F/s003.radikal.ru/i201/1009/cc/ed91e44bf604.jpg.html)

Добавлям в эту группу нужные маршруты.
http://s08.radikal.ru/i181/1009/65/4f54e5b5dc83t.jpg (http://radikal.ru/F/s08.radikal.ru/i181/1009/65/4f54e5b5dc83.jpg.html)

Добавляем машинисту команду Path Control setpath
При выполнении этой команды будет собираться маршрут.
Указываем собирать отдельные маршрты или группу.
http://s48.radikal.ru/i119/1009/73/ff14d2cc452at.jpg (http://radikal.ru/F/s48.radikal.ru/i119/1009/73/ff14d2cc452a.jpg.html)

Надеюсь кому-нибудь пригодится.
Счастливого пути!

Kompozitor
04.09.2010, 01:50
antikiller_bm, все верно, только там два варианта команды. Одна из них - "Path Control setpath(wait)". Маршрут начнет собираться только после освобождения путей, не мешая выполнять команды другому ПС. А если путь свободен, выполнится, как обычно.

UTUBE
04.09.2010, 20:40
Всем добрый вечер.Скиньте пожалуйста рабочие правила что бы они работали в ТРС 2010 сам смысл я понял,но вот Патч Контроль не работает выдаёт ошибку.
http://s59.radikal.ru/i163/1009/93/71ed6f1a3057t.jpg (http://radikal.ru/F/s59.radikal.ru/i163/1009/93/71ed6f1a3057.jpg.html)
Может кто скинет рабочую версию?

Kompozitor
05.09.2010, 02:58
UTUBE, не в "быстром машинисте" прямо из редактора практиковали? Можно было только в ТРС2006 так.

UTUBE
05.09.2010, 08:09
Kompozitor, Да это моя ошибка,проктиковал в быстром редакторе.

SeptimuS
08.09.2010, 16:20
Как заставить состав с ботом двигаться после выполнения команды Pathcontrol? Команды Navigate... или Drive... не выполняются, состав становится как вкопанный (ожидает управления игроком).

Виталий
08.09.2010, 16:45
Как заставить состав с ботом двигаться после выполнения команды Pathcontrol? Команды Navigate... или Drive... не выполняются, состав становится как вкопанный (ожидает управления игроком).

Для этого есть идущая в комплекте с правилом команда Autodtive.

SeptimuS
08.09.2010, 17:47
Для этого есть идущая в комплекте с правилом команда Autodtive.
Как заставить её появиться в списке команд для машиниста? У меня есть только Autopilot.

Виталий
08.09.2010, 18:41
Скачай набор правил отвюда: http://www.trainsim.ru/forum/showpost.php?p=175660&postcount=50

Don_Capone
10.10.2010, 09:44
У меня чего-то не работает это правило:
Создать маршрут можно, но в списке команд машиниста не отображается никаких дополнительных команд. Нельзя добавить правило Path trigger и Timetable, они отображаются красным.
Также КМ пишет вот что:
про jsTRF-Path Trigger
Error: No selection for tag 'category-era' in 'behavior'.
Warning: The tag 'path"' in container 'string-table' is empty.
Warning: The tag 'przebieg"' in container 'string-table-pl' is empty.
Про Autodrive
Error: No selection for tag 'category-era' in 'drivercommand'.
Warning: The tag '"' in container 'string-table' is empty.
Warning: The tag 'platform1"' in container 'string-table-pl' is empty.

У меня TRS 2010 3.2

antikiller_bm
10.10.2010, 15:29
Эти теги удали в конфиге (если коэффициент кривизны рук не позволяет - используй CCP, там они красным выделены)
и закоммить

Don_Capone
10.10.2010, 17:06
Ясно. Я тут с другой проблемой столкнулся: оказывается много чего не работает из-за ошибки правила driver command. Точнее просто не появляются никакие команды, кроме дефолтных. Я так понял, это из-за ошибок в командах во встроенном контенте, но как его починить?

UTUBE
10.10.2010, 19:44
Don_Capone,z7-xPath v0.5 Скачай себе вот это и будет тебе счастье.http://www.trainsim.ru/forum/showthread.php?t=11836&page=24
Вот по этой ссылке пройди и посмотри где то должна быть ссылка на скачивание.Это наш русский патч_контролер.Там всё на русском и всё понятно.

Don_Capone
11.10.2010, 08:11
О, уже 0.5 вышел, а я вчера только 0.4 скачал :) Да, я вчера уже нашёл эту штуку, довольно интересная вещь. Вот только с нерабочим driver command от неё толку тоже не много. Но и это я исправил.

romtrainz
12.08.2011, 09:33
Здравствуйте, у меня не работает Path Control. Проблемы возникают, когда я даю команду Set Path - если сессия запущена через быстрого машиниста, то появляется ошибка
http://img.uz/d/2011/08/4e44c6a9eefda-s.jpg,
стрелки не переводятся, команда остается в списке и потом нельзя ни выполнить дугие команды, ни вернуть управление игроку. А если сначала выйти в меню и запустить сессию отдельно, команда выполнится и уйдет из списка, но стрелки, которые входят в маршрут, начинают постоянно дергаться, причем все одновременно, из начального положения в установленное правилом и обратно. Что делать?

Vova01
18.08.2011, 17:50
А есть ли возможность сделать типа проверки триггера, чтобы поезд активировал триггер, а только после этого срабатывало правило Path control?
Я попытался стандартным правилом "trigger chek" и у меня не вышло, есть другие способы?

Kompozitor
18.08.2011, 18:55
если сессия запущена через быстрого машиниста, то появляется ошибка
Нельзя через редактор, в ТРС 2006 еще можно было, надо выходить в главное меню, затем открывать сессию в режиме "Машинист".

Используй не "Set path", а "Set path (wait)", в таком случае, если маршрут занят другим ПС или собран другой маршрут, то команда не уйдет из списка, пока не разберется маршрут, как только разберется - выполнится.

И еще - маршрут в Path Control считается разобранным, если его проехали в направлении сборки.

Виталий
18.08.2011, 19:01
romtrainz, Vova01, советую пользоваться менее глючным средством маршрутизации - z7-xPath.

Vova01
18.08.2011, 19:15
Здесь проще научиться) Если было б какое-то обучение по x-path которое бы показывало все в подробностях и на примере, то да, а так...

Kompozitor
25.03.2012, 01:09
После долгого перерыва попробовал "JS-TRF Path Control", а именно правило "Path Control" и команду "Set Path (wait)".
В 12-й версии работает так же, как и в предыдущих. То есть, после редактора нужно обязательно возвращаться в главное меню. Напрямую из редактора в режим "Машинист" можно было переходить только в TRS2006. Вот только маршруты к составу собирать можно с применением дополнительных средств. А именно - невидимый маневровый светофор, развернутый "наоборот". Тогда при настройке система посчитает такой светофор окончаниенм маршрута. Без такого светофора окончанием маршрута будет считаться светофор, расположенный за составом. И тогда моршрут не собирается, т.к. изза состава сичтается занятым.

Вопрос лишь в том, что эту систему можно использовать без z7, с любой сигнализацией. И как тогда быть с таким светофором? Пробовал поставить ненастроенный маневровый светофор на карте без z7, но тогда бот его считает поездным и появляется ошибка, не влияющая на общее выполнение команд.

В остальном - система "Path Control" довольно удобна, если не считать настройки положения каждой стрелки.

Вопрос вот в чем. Кто использовал вот такие правила, не знаю, совершеннее они, чем "Path Control" или нет. Интуиция подсказывает, что "Path Control", наверное, самый гибкий и удобный вариант из них.

Есть правило "Multipath v.5" с командой "Route Control", в правиле много разных настроек, даже имена подвижного состава, имеющегося на карте. Также есть дефолтное "Path Rule", в котором можно просто в свойствах выбирать отдельно каждую стрелку и настраивать ее положение, можно даже вообще без своетфоров это все настраивать. Только вот стрелки после сборки маршрута не блокируются и другой бот может собрать другой маршрут для себя, не ожидая, когда освободится первый. Зато к составу без проблем можно собрать маршрут из стрелок.

Кто что пробовал из этого? И какие еще известны иностранные системы маршрутизации, кроме тех, что есть на DLS?

Gottes_tod
11.11.2012, 18:42
Хочу добавить в тему некоторые дополнения к посту antikiller_bm'а о системе JS-Trf Path Control, благодаря которым система становится вполне доступной для использования.

Прежде всего Js-Trf Path Control - это прежде всего система поездной маршрутизации и для маневровой работы она не очень годится.

Создав в игре маршруты как это написано в первом посте, можем обратить внимание, что кроме стрелок - J, светофоров - S, и триггеров - Tr, в списке объектов маршрута отражаются еще и маркеры - Tm.
Почему это важно:
Пример, у нас есть станция 3 пути:
http://frei-club.ru/max/trs/1th.jpg
http://frei-club.ru/max/trs/1.jpg
На каждом пути мы расставляем маркеры перед выходными/маршрутными светофорами, и если необходимо в концах пассажирских платформ (здесь это маркер STARLE-C2_pass).
И как было сказано выше, эти маркеры отражаются в списке объектов маршрутов которые мы делаем для этой станции.

Вот пример маршрута на вход на второй путь:
http://frei-club.ru/max/trs/2th.jpg
http://frei-club.ru/max/trs/2.jpg
http://frei-club.ru/max/trs/3th.jpg
http://frei-club.ru/max/trs/3.jpg

Все это относится непосредственно к правилу Js-Trf Path Control.
А теперь добавим правило Js-Trf Path Trigger.
Прежде чем мы перейдем к настройке триггеров нам надо их расставить, триггеры расставляем перед входными светофорами (если есть проходные то лучше это делать за 3 проходных светофора до входного).
В нашем примере я назвал триггеры STARLE-C-Vh и STARLE-N-Vh - с четной и нечетной стороны соответственно. В принципе, можно не менять названия триггеров, а просто их запомнить, но с названиями проще потому что следующим этапом, мы идем в наше добавленное правило Js-Trf Path Trigger и видим вот такую картинку:
http://frei-club.ru/max/trs/4th.jpg
http://frei-club.ru/max/trs/4.jpg
В строке Trigger Name Pattern мы задаем шаблон именования расставленных нами триггеров на вход и в данном случае это *Vh (что означает, что будут отбираться только триггеры, которые имеют буквы "Vh" в конце своего имени), это позволит отделить необходимые нам триггеры от сотни-другой использующихся на карте.
Далее мы тыкаем мышкой в "Yards" и видим полный список уже сформированных нами станций. Мы находим необходимую нам станцию, в моем примере это станция Stariy Les и тыкаем в нее, попадая во вкладку с триггерами. Собственно, нажимает add trigger, выбираем из списка нужный нам триггер, и после его появления в первой колонке таблицы, мы нажимаем Add... во второй колонке и выбираем один из сформированных нами маршрутов, после чего в третьей колонке (она появится только после добавления маршрута) мы добавляем маркеры соответствующие этому маршруту.
Для приведенной в пример станции "Старый Лес" эта картина выглядит так:
http://frei-club.ru/max/trs/5th.jpg
http://frei-club.ru/max/trs/5.jpg

Дальше все просто, мы берем любой автопилот умеющий ездить к маркеру но не дергающий стрелки и отправляем его к необходимому маркеру (например STARLE-C2_pass) и когда поезд наезжает на маркер правило Js-Trf Path Trigger выстраивает ему маршрут к целевому маркеру по аналогии с командой Set Path (Queue).

Что отличает это правило от системы БОК. То, что оно задается в не зависимости от типа подвижного состава и его количества не надо плодить несметное количество правил Trigger Check.
И самое главное: При наезде на триггер в задания состава никаких изменений не вносится, т.е. никакие дополнительные команды не добавляются, и это сильно упрощает создание, например, сессии с электричкой, которая должно пройти по 20 станциям.

Js-Trf Path Trigger работает с любым автомашинистом кроме Бото-машиниста Эрендира.

В целом, система Js-Trf Path Control отлично подходит для организации поездной работы на длинных картах. Однако исключает элемент случайности, т.е. необходимо четко указывать на какой путь придет тот или иной состав, и требует четкой проработки сессии (т.е. кто, во сколько, откуда, куда) что, правда, позволяет организовать достаточно плотный график движения и быть уверенным, что по ходу сессии не придется разруливать все руками.

Kompozitor
12.11.2012, 01:02
Интересно попробовать это на примере простейшей настроенной сессии, просто на двух-трех тайлах со встроенными локомотивами.

во сколько
Ну это уже принципиально. :) Например, в ходе бесконечной сессии необязательно, чтоб утренний поезд из пункта "А" всегда прибывал в пункт "Б", как вечерний. Лично мне просто удобно дать команду "Set Path (wait)", например, от выходного до первого проходного, т.к. чтоб команда не выполнялась, пока не освободится маршрут, иначе, если задать маршрут на весь перегон, то на этом перегоне останавливаются другие поезда.

Что отличает это правило от системы БОК. То, что оно задается в не зависимости от типа подвижного состава
Ну так система "БОК" тоже примерно таким удобна. Едет поезд, локомотиву которого нужно отцепиться, а в это время ожидающий локомотив (например, из портала) ждет активации библиотеки без указания имени локомотива. И машинисту прибывающего поезда не нужно знать, какой локомотив его сменяет.

А что касается маневров - я уже писал про маневровые светофоры сигналок "z6" или "z7", повернутые "наоборот", чтоб маршрут к составу собирался именно к ним, но это совершенно нереалистично и лично мне уже неинтересно, хотя пробовал и экспериментировал.

элемент случайности
В теме на трейнсиме говорится об alias-ах для этого.

Эрендир
12.11.2012, 13:21
Gottes_tod, сразу видно, что с БОК ты не знаком :)

Gottes_tod
13.11.2012, 08:22
просто удобно дать команду "Set Path (wait)", например, от выходного до первого проходного
Конечно, на выход так и делается. Я же делал упор по сборке маршрута на вход при наезде на триггер, в зависимости от целевого маркера.


необязательно, чтоб утренний поезд из пункта "А" всегда прибывал в пункт "Б", как вечерний
Не обязательно, но в случае с Js-Trf все зависит от команд данных составу. Речь о том, что если стоит задание, что утренний приходит на второй путь, то он придет на второй, а не на третий, четвертый или какой еще другой.

т.е. необходимо четко указывать на какой путь придет тот или иной состав, и требует четкой проработки сессии (т.е. кто, во сколько, откуда, куда)
Я написал это к тому, что в Js-Trf недостаточно просто дать составу команду двигаться из пункта А в пункт F, а на промежуточных станциях (B, C, D, E) пути для прохода будут выбраны случайным образом. Нет, нужно четко понимать, что если ты посылаешь состав, например, на 2-ой путь станции D, то, посылать туда встречный состав не надо :)


Gottes_tod, сразу видно, что с БОК ты не знаком
Не спорю, мое знакомство с БОК очень поверхностное, и я уже понял, что был не прав, и что нужно пристальнее присмотреться к ней.
В свою защиту скажу лишь, что в основном упоминается везде БОК в связке с z7-xPATH, а так получилось, что мне она не очень подходит.
Но спасибо! :)

Kompozitor
13.11.2012, 14:19
z7-xPATH, а так получилось, что мне она не очень подходит
А можно подробнее, интересно? И насчет однопутных перегонов - не знаю другого способа их автоматизации, кроме как с z7 xPath или zxPath. Речь даже не о выключении проходных в обратном направлении, а о способе узнать боту, встречными или попутными поездами занят перегон.

Kompozitor
08.12.2013, 18:36
Кто нибудь пробовал эту штуку в самом новом билде?

Напоминаю, что после редактора нужно вернуться в главное меню.

К администрации форума. Может, перенести эту тему в раздел сценариев?

Михаил (FanTrans)
11.11.2017, 23:47
Сорри, что поднимаю эту "некротему". Изучать всё нужно от простого к сложному. Описываемая система мне видится более простой, чем популярная нынче zxPath (и которую я не изучал, пока на это времени нет, да и карта, с которой я в данный момент вожусь, содержит упрощённую сигналку UZ, заменять которую на что-то более совершенное также нет времени, да и пока прям-таки острого желания). Но соглашусь, что в JS-TRF PathControl много ручного труда. Может быть, за то время, пока я насоздавал сотню маршрутов, можно было вдоль и поперёк изучить zxPath и заменить светофоры (автор карты не будет против). Но что сделано - то сделано. Маршруты созданы. Есть более-менее успешная попытка организовать достаточно живой трафик по этой карте (электрички с интервалом 10 минут). Есть планы по совершенствованию. Так вот, вопрос к "старожилам". Как лучше делать маршруты - отдельно для входа на станцию и отдельно для выхода, или лучше сквозной? Дело в том, что маршрут на вход не зажигает зелёным выходной светофор (вернее, светофор, стоящий у остановки локомотива). Т.е. его показание в общем случае рандомно и даже не зависит от ручного переключения стрелок за ним. И если он красный - поезд следует к станции на сильно сниженной скорости за много километров (в Трейнз ведь четырехзначная сигналка, даже если выглядит как трехзначная - и если между светофорами 1 км, то сброс скорости в 2 раза происходит примерно за 2,5 км до красного, что выглядит как ползание черепахи). И еще вопрос насчёт разницы в командах "Set Path queue" и "Set Path Wait". Понятно, что во втором случае поезд не поедет, пока не появится возможность собрать маршрут. А как ведёт себя первый случай? Вот поезд попробовал собрать себе маршрут. А он не собирается, т.к. занят. Что дальше? Значок исчезает и больше поезд вообще не сдвинется с места? Тогда зачем нужна такая команда, которая может потенциально сбить весь график?

Kompozitor
12.11.2017, 01:53
И еще вопрос насчёт разницы в командах "Set Path queue" и "Set Path Wait"

Если выбрать "Wait", пока не соберётся маршрут, команда остаётся в списке и это как-то нагляднее. А еще особенность этой системы - любой бот может задавать маршруты не только себе, а по всей карте. Это удобно для поезда игрока.

А вообще, эта система - не единственная, работающая по таким же принципам. Есть встроенное в игру "Path Rule", есть всевозможные правила с DLS, наподобие "Multi-Path Control" разных версий, старых и новых, у всех из них могут быть свои отличия.

Имей в виду, что в версиях игры выше 2006 Js-TRF Path Control нормально работает только при выходе из редактора в главное меню игры перед запуском сессии.

Вот еще интересная тема

http://trainsim.ru/forum/showthread.php?t=2492

Михаил (FanTrans)
12.11.2017, 02:07
Есть встроенное в игру "Path Rule", есть всевозможные правила с DLS, наподобие "Multi-Path Control" разных версий, старых и новых, у всех из них могут быть свои отличия.

"Path Rule" не годится для станций с большим количеством стрелок. Чтобы им пользоваться, нужно иметь схему станции на бумаге перед глазами, понимать, какая стрелка за что отвечает и т.п. В случае настройки движения на чужой карте практически не применимо. обсуждаемый же тут JS-TRF PathControl автоматически находит цепочку стрелок от светофора до светофора, что довольно удобно


Имей в виду, что в версиях игры выше 2006 Js-TRF Path Control нормально работает только при выходе из редактора в главное меню игры перед запуском сессии.

Знаю. Для нетяжёлых карт некритично. А на тяжёлых обычно всё настроено так, что должно работать zxPath


Вот еще интересная тема
http://trainsim.ru/forum/showthread.php?t=2492
Спасибо!



New