Правило перевода стрелок в определенное время (работает с правилом UZ Timecheck)

Правило перевода стрелок в определенное время (работает с правилом UZ Timecheck)

Don_Capone, пробовал, но давно, сейчас пока нет времени заходить в ТРС надолго. Есть кое-какие наброски с path Control, надо перепробовать кучу вариантов, в т.ч. и с портальными локами.
Во всяком случае, проблем не было в сцекнарии "Угольный до Бекасово", но они были в дефолтном Early morning service, что от Бад шандау, а также в сценарии RMM по Абхазии ничего не работало после сохранения, там ведь не сессия как таковая, то есть сессия,но весь сценарий сделан скриптом одного правила Custom Script, вроде даже специальной прогой CSC2006, или как-то по другому она называется.
Да, там всё достаточно примитивно. Нет временных условий, нет многоуровневых триггеров. И ещё неизвестно, как порталы с сохранениями будут работать. Хотя вроде xpath ломается после загрузки сохранения.Во всяком случае, проблем не было в сцекнарии "Угольный до Бекасово"
Сейчас проверил временноу условие с помощью команды боту wait. После загрузки оно срабатывает, правда отсчёт идёт не от момента старта сессии, а от момента загрузки, но это уже хоть что-то. Я начинаю понимать стремление Композитора к командному подходу построения сессии
В общем видимо добиться стабильной работы сохранений сейчас можно, но для этого надо организовывать специальные "точки сохранений", сохранение в которых не приведёт к порче сессии. И похоже манипуляции со спрятанным ботом - это единственный выход в данной ситуации.
p.s. Сделал ещё один тест: дал боту команду "wait until minute". После загрузки сохранения она сработала в точно назначенное время. Этого должно хватить для задания временных условий. Ну а от многоуровневых триггеров можно отказаться в некоторых местах.

По идее тип маркера значения не имеет, важно где он расположен. С триггерами то же самое.Заменил дефолтный красный маркер на z7 mrk, ПС его распознал.
Ну вот представь, допустим, у тебя 6 поездов и 6 путей. Если каждый из поездов может попасть на любой путь, то тебе придётся делать минимум 6(поезда)х6(пути)х2(2 правила), и того 64 правила. И это только на 1 станцию.Я не думаю, что здесь будет очень много правил: на каждый путь по одному на направление.

Нет, здесь не так много.
Мы считаем не поезда, а направления, по которым они уходят со станции. На каждый путь, к примеру, по два направления: 6 x 2. Мне главное было реализовать занятие пути ПС с разными вариациями сборки дальнейшего маршрута. Ведь на один триггер можно прописать несколько ПС, которые одинаково проследуют по одному маршруту; и еще один триггер с правилом для другой группы ПС по второму маршруту.
-- Добавлено пользователем в 18:13 -- Предыдущее сообщение было в 18:00 --
Мдя, я забыл, драйвер шедл требует конкретного машиниста для активации правила.
-- Добавлено пользователем в 19:42 -- Предыдущее сообщение было в 18:13 --
Проблему большого количества правил можно решить если поставить один триггер на каждый путь, для каждого триггера прописать по два правила в каждом по одному подправилу с SheduleAtThrackMark: в первом случае, если поезд едит по маршруту №1, а во втором - по маршруту №2. Таким образом, правило SheduleAtThrackMark сработает только для нужного поезда, второй маркер будет проигнорирован.
Теперь правил нужно не 64, а 24,.. что заметно меньше.![]()

Давай-давай, копай в этом направлении. Так хоть тестить проще, что работает, что нет.
В случае моих вот этих задумок
относительно бесконечной сессии без сохранений вообще никак.
Ведь прежде чем "прокукарекают все петухи и залают собаки" должно время пройти, т.е. первое время сессия может быть совсем не интересной, пока не завертится весь механизм в полную силу. В начале сессии большинство локов могут быть в деповских порталах, а составы на территории отстойных парков и сортировок.
Я думал тебе это и надо, чтобы команды задавались только конкретным машинистам.Мдя, я забыл, драйвер шедл требует конкретного машиниста для активации правила.
Ещё обнаружил, что некорректно работает команда wait until minute, если было изменено время(например, правилом time and rate). Пока нет времени тестить. Позже напишу что из этого всего вышло.Давай-давай, копай в этом направлении. Так хоть тестить проще, что работает, что нет.
Ну вот я и подумал, что ты уже что-то делал в этом направлении. Потому и спрашивалотносительно бесконечной сессии без сохранений вообще никак.![]()

Так вместо неё кидай кусочки "Wait", в т.ч. пятисекундные. В скрипте команды можно покопаться и сделать до 1 секунды пунктики.
Пока на все сразу нет времени лишнего в сутках. ))) Были бы команды, заменяющие правила, проще тестить было бы. Наверно, для пробы надо взять не очень большую карту и методично пробовать все, от простого к сложному, выявляя баги и пути их обхода.
Частично для этого (проверка бесконечности) задуман мой метрострой, хотя там пока не планируются порталы.
Сейчас подумал, неплохо бы команду для получения уникального имени локу.
Это помогло бы портальным, им же имен не пропишешь в настройках.
Последний раз редактировалось Kompozitor; 16.01.2011 в 03:22.
Нет, она не для этого нужна. Я уже описывал выше, что с сохранениями команда wait работает некорректно. А мне надо не "ждать определённое время", а "ждать, когда на часах будет ХХ:ХХ". Кстати, команда wait until таки работает, но работает непосредственно в сессии, в редакторе её задать невозможно. Кто додумался сделать такой бред?Так вместо неё кидай кусочки "Wait", в т.ч. пятисекундные. В скрипте команды можно покопаться и сделать до 1 секунды пунктики.
Пока попробую задавать команду wait until minute уже после изменения времени. Кстати, ты где-то говорил, что пытался бороться с глюком исчезания деревьев в 12 часов, путём мгновенной смены времени. Получилось?
Я хотел(и уже начинал) пробовать тестовую версию на фантазии, но увидев жуткую путевуху станции Мосты, забил. А так для небольших тестов(не касающихся сигналки) можно любую дефолтную карту приспособить.Наверно, для пробы надо взять не очень большую карту и методично пробовать все, от простого к сложному, выявляя баги и пути их обхода.
По-моему, пока нет возможности задавать определённые условия для произвольного имени лока(сейчас можно только для уже существующих на карте) толку от такой команды будет не много.Сейчас подумал, неплохо бы команду для получения уникального имени локу.