Этот пользователь сказал Спасибо vicente за это полезное сообщение: |
![]() |
![]() |
![]() |
#421 |
Разработчик
Регистрация: 05.04.2011
Адрес: Малыгинская эстакада
Сообщений: 4,078
Вы сказали Спасибо: 8,769
Поблагодарили 2,569 раз(а) в 1,171 сообщениях
![]() |
![]()
Вот если бы это было в МСТС - победили бы "вечный красный" в сценариях.
Последний раз редактировалось КЕ; 19.04.2020 в 15:44. |
![]() |
![]() |
![]() |
|
Яndex
Спонсор
Регистрация: 01.01.2007
Сообщения: 500
Реклама показывается изредка по случайному принципу |
![]() |
![]() |
#422 |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
"Вечный красный" в сценариях нужно "побеждать" стартом сервиса за SNCA. Если ты "врезаешь" сервис в уже подготовленный маршрут - конечно - кто-то становится "призраком" и сценарий начинает глючить. Стартовать перед сигналом - тоже "чревато". Я на "Заборе" когда-то для Сергей1969 выводил. Кажется, между сигналом и поездом должно быть место удвоенной длины этого состава (или что-то в этом роде, не помню точно). С Игорем много лет назад мы разбирали МСТС, пытаясь "подогнать" сигналку под наше видение создания сценариев. А вывод мой был совершенно противоположным - если правильно стартовать сервисы игрока и трафиков - всё будет работать.
|
![]() |
![]() |
Этот пользователь сказал Спасибо vicente за это полезное сообщение: |
![]() |
#423 |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
Жаль, у Игоря Заборина на форуме все картинки потерялись. Там в первых двух темах мы на тестовом участке строили автоблокировку однопутную. Так вот, на "чистом" тестовом маршруте, при правильном старте обоих сервисов в противоположных направлениях МСТС прекрасно блокировал стрелку "скрещения" через светофоры, которые были ещё !enabled ! Да-да. За пределами SNCA. В дефолтных маршрутах обрати внимание как "издалека" стартует трафик. На старте игрока НИКОГДА трафики не пересекают Path игрока. Если и есть трафик на старте сценария, он всегда идёт по параллельному, не имеющему общих точек с игроком пути.
|
![]() |
![]() |
Этот пользователь сказал Спасибо vicente за это полезное сообщение: |
![]() |
#424 |
Разработчик
Регистрация: 05.04.2011
Адрес: Малыгинская эстакада
Сообщений: 4,078
Вы сказали Спасибо: 8,769
Поблагодарили 2,569 раз(а) в 1,171 сообщениях
![]() |
![]() |
![]() |
![]() |
![]() |
#425 |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
Маршрут сим прокладывает на SNCA, но "агрит" сигнал перед ближайшей "совместной" точкой (стрелкой) за SNCA+1. То есть, кто первый "агрит" один из въездов на "совместное" звено пути, тот "получает" его. Будь то стрелка или перегон. В случае с перегоном количество блок-участков значения не имело. Да, Игорь говорил о расстояниях, но я не проверял как длина полигона меняет суть работы автодиспетчера. Моё мнение - работает всё-таки от светофора к светофору.
|
![]() |
![]() |
Этот пользователь сказал Спасибо vicente за это полезное сообщение: |
![]() |
#426 |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
Пока что, уже долгое время, "конфликтные" ситуации, которые у меня время от времени возникают, не связаны с самим симулятором. Разработчики Open Rails очень рьяно работают над исключением ситуации, когда два поезда в противоположных направлениях на одном маршруте не станут друг проив друга на "вечный красный". Например, совсем недавно я по ошибке задал пригородным один и тот же PATH. Разными были только путь приёма и путь отправления на станции, на которой стартовал (хронологически) второй сервис. Так вот, этот "второй" стоял пол-часа и ждал первого. Несмотря на расстояние в почти 30 километров, три станции и с два десятка блок-участков между ними. То есть, блокировки работают по "узлам" (стрелкам, то бишь) пути сервиса - PATH.
С другой стороны, светофоры несомненно учитываются! Поэтому, если скрипт светофора позволяет пропуск на участок, на котором в противоположном направлении другой сервис - бон-войяж. Вчера бился с этой ситуацией на маневровом у себя. На станции в 5 путей из-за того, что режим Timetable Mode и мне не хотелось "прерывать" сервис, при смене локомотива у трафика оба локомотива должны двигаться в противоположных направленияз по одному пути станции. Маневровый сигнал открывает белый на занятый путь, вернее, на "не свободный" поэтому что "несвободность" в Open Rails, как и в MSTS, бывает двух типов: BLOCK_OCCUPIED и BLOCK_JN_OBSTRUCTED. В наших сигнализациях мы привыкли не уточнять эту "незанятость" определением отрицания свободности (block_state() !=# BLOCK_CLEAR). Так оно и определено у меня в скрипте маневрового. И отцепленный лок по белому заходил на путь, по которому на встречу ему двигался сменный. Справедливости ради, следует отметить, что на тот момент, когда я разрабатывал сигнализацию, этого различия между BLOCK_OCCUPIED и BLOCK_JN_OBSTRUCTED в Open Rails не было. В смысле, не было вообще такого параметра BLOCK_OCCUPIED у функции block_state(). Программа сигнализации в Open Rails писалась "с нуля", так как разработчик не верил в Кужувскую сигнализацию и утверждает, что не было никакой документации на неё (мы знаем, что это не так и все функции расписаны кужувцами в своё время в отдельном документе, не все, правда, работают, но это - другая тема) и в первые годы функция так и работала "да"-"нет". Более того, определение BLOCK_OCCUPIED просто не читалось. С обновлением логики это определение ввели - надо было решать проблему со следованием сервисов, включая трафики на занятые пути, тем не менее, всё, что работало до сих пор, работает и поныне - светофор, который !enabled выдаёт BLOCK_JN_OBSTRUCTED независимо от состояния блока за ним. Этих тонкостей мы не прочувствовали из-за формы определения зависимости свободности трека block_state() !=# BLOCK_CLEAR, при которой всё, что не BLOCK_CLEAR "подпадает" под определение FALSE. Но, на данный момент, есть большая разница между BLOCK_OCCUPIED и BLOCK_JN_OBSTRUCTED - работа этих параметров приведена, можно так выразиться, в соответствием с документацией самого MSTS: BLOCK_OCCUPIED - сервис, стоящий неподвижно либо движущийся в том же направлении, что и сервис, для которого "проверяется" светофор. BLOCK_JN_OBSTRUCTED - положение стрелок не по PATH, то есть сервис не может перевести себе стрелку из-за того, что она заблокирована другим сервисом, а также в случае если в противоположном направлении по тому же PATH движется другой сервис Последний раз редактировалось vicente; 24.04.2020 в 17:06. |
![]() |
![]() |
![]() |
#427 |
Разработчик
Регистрация: 05.04.2011
Адрес: Малыгинская эстакада
Сообщений: 4,078
Вы сказали Спасибо: 8,769
Поблагодарили 2,569 раз(а) в 1,171 сообщениях
![]() |
![]()
То есть теперь можно записать, например:
if (block_state() = # BLOCK_OCCUPIED) state = STOP_AND_PROCEED; |
![]() |
![]() |
![]() |
#428 | |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
Именно.
У меня было Цитата:
Добавлено через 46 минут Как я уже описал, симулятор учитывает программы светофоров. Сервисы в моей ситуации имеют общий путь (Path по одним и тем же секциям пути) от маневрового, через входные стрелки, путь на станции, и расходятся в горловине с другой стороны на двухпутный перегон. После посановки этого маневрового в запрещающий аспект (0) программно, он (OR) заблокировал сигнал для идущего навстречу сервиса там где пути обоих сервисов расходятся. Т.е. входной на станцию с противоположной стороны. Добавлено через 12 минут Таким образом функция block_state () выдаст BLOCK_CLEAR не только если "блок" (участок до следующей "сигнальной точки" - светофора или тупика) свободен от сервисов или статики, но ещё и никакой другой сервис не проложил маршрут через этот самый "блок". |
|
![]() |
![]() |
Этот пользователь сказал Спасибо vicente за это полезное сообщение: |
![]() |
#429 |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
Господа! Кто-нибудь имел счастье в этой или прошлой жизни получить хоть что-то от этих функций?
|
![]() |
![]() |
![]() |
#430 |
Разработчик
Регистрация: 05.04.2011
Адрес: Малыгинская эстакада
Сообщений: 4,078
Вы сказали Спасибо: 8,769
Поблагодарили 2,569 раз(а) в 1,171 сообщениях
![]() |
![]()
Олег, я на днях тестил проходной с условным "Т" - на определенном расстоянии от него (типа тяжелый поезд - длинный поезд
![]() |
![]() |
![]() |
Этот пользователь сказал Спасибо КЕ за это полезное сообщение: |
![]() |
#431 |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
Вот и я - о том же. На NORMAL-ах ночью бился с ними всю ночь - не ловит. Его только на DISTANCE можно поймать?
Добавлено через 1 час 51 минуту Буржуи тоже об этом говорят. Странно. В магуале "от Кужу" написано SigFn_Type. Ладно. Как говаривал Дедушка Ленин в школьных легендах, "Мы пойдём другим путём!" |
![]() |
![]() |
Этот пользователь сказал Спасибо vicente за это полезное сообщение: |
![]() |
#432 |
Разработчик
Регистрация: 05.04.2011
Адрес: Малыгинская эстакада
Сообщений: 4,078
Вы сказали Спасибо: 8,769
Поблагодарили 2,569 раз(а) в 1,171 сообщениях
![]() |
![]()
Блин, забыл сказать - это в МСТС было. Вот ещё про МСТС, но может, пригодится для чего-то...
Маневровый режим сигнализации обычно "завязан" на аспекты STOP и RESTRICTING. Но при попытке использовать это для манёвров в горловине станций наталкиваемся на неудачу - при выезде за входную стрелку проходной светофор "где-то там на перегоне" переходит из !enabled в enabled, меняет свой аспект из STOP на CLEAR. Точнее, енейблятся все проходные (до входного другой станции - тот остаётся закрытым). В моём случае это не давало бело-синему маневровому у входной стрелки (направленому на перегон) перейти в SIGASP_RESTRICTING и дать белый при считывании аспекта проходного по opp_sig_lr (у меня этот бело-синий маневовый - типа DISTANCE). Если же на пути между горловиной и первым проходным будет нулевая стрелка - то проходной остаётся !enabled (потому что стоит за "узлом"), и маневровый сигнал срабатывает как надо. Таким способом отмеряем нужное расстояние для манёвров, и МСТС теперь "знает" границу станции. ![]() Сейчас погонял пробные сценарии в чётную и в нечётную сторону - да, первый проходной за нулевой стрелкой не энейблится. Надо теперь в OR попробовать... Последний раз редактировалось КЕ; 26.04.2020 в 20:56. |
![]() |
![]() |
![]() |
#433 | |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
MSTS при постановке точки разворота "энейблит" сигнал вне маршрута сервиса? Ты уверен, что он это делает через enabled () ? У меня проходные от этой функции не завися вообще - автоблокировка же. Только на первый проходной ставлю флаг и он, в случае !enabled выдаёт RESTRICTING , чтобы по нему выходной давал тоже RESTRICTING. Вроде, работало это. Много времени прошло уже. Кроме указанного тобой случая "по удалению", когда RESTRICTING невозможно было дать из-за того, что MSTS "энейблит" два светофора после проследования сервиса. В Open Rails сфетофор становится !enabled сразу после проследования, и если нет маршрута по удалению - остаётся таковым.
В Open Rails проблем с белыми RES на выходных у меня проблем не было вообще. Единственная, можно сказать, "смазка" была - в окне диспетчера этот первый проходной был красным (в симуляции я это "подправил" постановкой draw_state в зависимости от занятости пергона и состояния следующих сигналов). "Нулевая" стрелка, которая нормально "смотрит" в сторону? Да, это решает. Вот скрипт проходного Цитата:
|
|
![]() |
![]() |
![]() |
#434 | |
Разработчик
Регистрация: 05.04.2011
Адрес: Малыгинская эстакада
Сообщений: 4,078
Вы сказали Спасибо: 8,769
Поблагодарили 2,569 раз(а) в 1,171 сообщениях
![]() |
![]() Цитата:
Про остальное еще подумаю, сразу не соображу... _____ В OR пока не могу проверить, на работе древний ноут - OR не установится, там WINXP. Если только старые версии, но в них сигналка работает через ж... В скрипте "SCRIPT KRN23_YGR_3" каждый draw_state что означает? draw_state = 0; /// Кр draw_state = 1; /// Ж draw_state = 2; /// Зел draw_state = 4; /// Жмиг draw_state = 5; /// Змиг - так? |
|
![]() |
![]() |
![]() |
#435 | |
Заблокирован
Регистрация: 06.10.2007
Сообщений: 1,764
Вы сказали Спасибо: 899
Поблагодарили 1,214 раз(а) в 730 сообщениях
![]() |
![]()
Так точно
В Open Rails, как я уже упомянул сигнал становится «отключенным» (!enabled) после того, как поезд передает сигнал! Таким образом, после прохождения поезда для функции всегда установлено значение FALSE. Добавлено через 3 минуты Под number_plate - "флаг", который устанавливается на первом проходном. Только он даёт RESTRICTING-аспект. Остальные показывают обычные аспекты по скрипту. Добавлено через 27 минут Цитата:
![]() Лови рабочий скрипт выходного "нового поколения" с белым независимо от состояния первого проходного: Скрытый текст:
Маневровый белый этого светофора вообще не зависит от аспекта следующего. |
|
![]() |
![]() |
Этот пользователь сказал Спасибо vicente за это полезное сообщение: |
![]() |
Здесь присутствуют: 2 (пользователей: 0 , гостей: 2) | |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Скрипты Вл | ~sejo~ | TrainZ - Подвижной состав | 2 | 25.09.2010 18:11 |
Как эта конфигурация ? | vita | IT, компьютеры, электроника | 9 | 02.06.2009 00:26 |
Заказы на скрипты | TRam_ | TrainZ — Об игре | 5 | 03.04.2009 16:25 |
MSTS-конфигурация компьютера | GeneZone | MSTS - Об игре | 6 | 03.03.2008 21:03 |
Trainz 2006 SP1 Конфигурация PC | vita | TrainZ — Об игре | 18 | 11.02.2008 00:11 |
|
![]() Что это? |