Автор: | StrVL [ 14.08.2010, 19:05 ] |
Тема блога: | Многофункциональные невидимые пассажирские станции для Trainz |
Думаю, не имеет смысла изображая из себя мистера Бина говорить банальности о том, что такое невидимая пассажирская станция и зачем она нужна. Много их вшито в стандартный набор объектов Trainz, и, наверное, ещё больше можно разыскать на просторах сети. Функциональность подавляющей их части оставляет желать лучшего из-за того, что построены они на стандартном шаблонном скрипте GenericPassengerStation, написанным аурановцами ещё во времена Trainz 2004 (и насколько я понимаю, с тех пор забытым (забитым?)). Знаете, что меня всегда не устраивало в этом скрипте? То, что этот скрипт больше подходит для моделирования остановки трамвая, ну, может быть, междугороднего автобуса, но уж никак не пассажирской станции. Час пик утром, час пик вечером… Что значит час пик? Что значит утром? Не знаю, как пассажирские поезда ходят там «за бугром», но у нас они ходят по расписанию. И пассажиры, как правило, появляются на станции согласно этому расписанию, а не подобно тому, как это происходит на остановке городского общественного транспорта. Четыре градации пассажиропотока. Причем, судя по нему, эти градации более свойственны опять же остановке трамвая. По крайней мере, у меня всегда возникали трудности при моделировании некоторого остановочного пункта в глуши, на котором должны появляться пассажиры максимум с десяток в сутки (хотелось сделать «остановку по заявкам пассажиров»). И наконец, самое главное. На вышесказанное ещё можно как-то закрывать глаза, не обращать внимания, другое же дело, когда разработка маршрута упирается в принципиальную невозможность реализовать задуманное традиционными методами, не прибегая к извращениям. Речь о том, что ну нельзя в Trainz создать нормальную невидимую многопутную пассажирскую станцию. Казнить того особо одаренного вундеркинда из Auran, автора … впрочем, не будем говорить кого… Скажем, что благодаря нему каждый путь, каждая пассажирская платформа независима и уникальна (до сих пор не могу до конца оценить гениальность этой божественной мысли ). Подходит поезд на главный путь, сажает-высаживает пассажиров, отправляется, следующий поезд также прибывает на главный путь. А на остальных платформах тем временем накапливается народ. Через два часа на платформе заросшего пятого пути скопившаяся толпа пассажиров требует, чтобы очередной ЭД9М наконец-таки взялся за расчистку кустарника с пути и полировку рельсов до былого блеска. В то же время первая платформа все время почти пустая, а поезда возят воздух. Все это больше напоминает остановку пригородного автобуса, состоящую из нескольких пунктов, от каждого из которых должны отправляться разные маршруты. ______________________________________________________________________________________________ Впрочем, можно сколько угодно тыкать пальцами в несовершенство скрипта GenericPassengerStation, ничего это не изменит. Ещё полгода назад я собирался заняться разработкой невидимых станций для Trainz, обладающих обозначенной выше недостающей функциональностью. Однако все это время не хватало либо времени, либо мощи очередного всплеска энтузиазма для преодоления сил инерции лени. Всплески эти возникали каждый раз при виде пассажиров с того самого пятого пути, требующих привести путевое хозяйство в порядок и подать электропоезд на этот многострадальный пятый путь. И вот, наконец, удалось пересилить лень, заняться работой и, похоже даже, завершить её. Итак, представляю вашему вниманию скромный (кстати, первый более-менее стоящий) продукт своей шарашкиной конторы – пакет IPS (расшифровывается как Invisible Passenger Station). Скачивать здесь: http://ifolder.ru/18894143. Сразу хочу сказать, что версия свежесостряпанная (Release Candidate, так сказать) и, возможно, глючная, так как обстоятельное «боевое крещение» мной пока ещё не производилось. Хотя тестирование на Trainz 2009 вроде бы прошло с успехом. Скриншоты, наверное, нет смысла выкладывать: ведь какие могут быть скриншоты у невидимой станции? Куча пассажиров, разве что… Так что лучше перечислю возможности пакета:
Все объекты управляются станционным контроллером, к которому они присоединены. В частности, он распределяет пассажиров по платформам. Кстати, распределяются они таким образом, чтобы количество свободных мест по платформам стремилось к одинаковому значению. Общая очередь пассажиров принадлежит контроллеру. Обращаю внимание, что объект IPS Station Lite подключать к контроллеру не нужно (да и не получится это сделать). Контроллер у него встроенный, и управляется он сам. Подключать другие объекты к этому объекту нельзя. Как настраивать Для настройки контроллера и платформ нужно открыть окно свойств объекта (выбираем вопросительный знак внизу в окне списка scenery-объектов и щелкаем по объекту на карте). Далее, собственно, устанавливаем значения нужных свойств. Для присоединения объектов IPS Platform, IPS Platform without path и IPS Path without platform к станционному контроллеру нужно в окне свойств объекта (не контроллера) в самом низу выбрать Select Station (выбрать станцию) и выбрать в списке нужный контроллер. Если контроллера, который вы только что разместили на карте в списке не появилось, то нужно закрыть активное окно свойств объекта и открыть окно свойств этого контроллера (скрипт срабатывает при открытии окна), после чего вернуться обратно и повторить операцию с Select Station. Назначение большей части свойств объектов, я думаю, понятна и без объяснения, лишь прокомментирую некоторые не очень очевидные свойства.
P. S. теперь у меня есть свой author id! |
Автор: | demvens [ 14.08.2010, 20:25 ] |
Привет! Прежде чем попробывать твою станцию, у меня один важный вопрос: какая скорость прибытия состава на станцию? Вариант ответа 1. Как и на другие невидимые (видимые) станции в игре, по которой он плетется еле-еле и мне пришлось снести все станции, иначе график движения летел к черту. И 2. Как торможение у маркера. Точнее при команде машинисту следовать к определенному маркеру. В этом случае скорость остановки совсем другая. |
Автор: | StrVL [ 14.08.2010, 20:55 ] |
А если поставить около платформы trackmark и заставить автомашиниста следовать до неё, а не до станции (я обычно всегда так делаю, потому что автомашинист доезжает только до края платформы)? По поводу вопроса – не знаю. Только что попробовал заставить автомашиниста на ЭР9М проследовать до стандартной Invisible Station, до trackmark и до своей платформы – никакой разницы в темпе торможения не заметил . |
Автор: | demvens [ 14.08.2010, 21:10 ] |
Там ситуация такая: когда указываешь поезду ехать до станции, то дается две команды: 1.Ехать к ... и 2. Погрузка и выгрузка. Вот и получается, машинист сначала тормозит у начала платформы, а потом выполняется вторая команда и поезд плетется еле еле на станцию. Что меня совсем не устраивает. Я поэтому и спрашивал как это происходит на твоей станции. Я так понял ты trackmark ставишь в конце пассажирской платформы и даешь команду следовать к нему не используя команды погрузки разгрузки? |
Автор: | StrVL [ 15.08.2010, 07:05 ] |
Именно так. Более того, тут ситуация следующая. В Trainz никаким способом нельзя сделать настраиваемую конфигурацию рельсового пути (длина, угол поворота), поэтому пришлось оставить очень маленький прямой статичный кусочек пути прямо посередине платформы (платформу относительно него можно смещать вперед-назад с помощью параметра смещение (offset)) (кстати, подобным образом проблема обходится в AJS Stations, но там путь намного длиннее). В связи с этим, «плестись», конечно, поезд не будет, поскольку путь короткий и плестись не куда. НО первый вагон будет останавливаться посередине на этого кусочка пути . Чтобы этого не было, все равно придется ставить trackmark. Кстати, посадка-высадка в поезд на невидимой станции происходит ВСЕГДА при остановке на ней, если в нем есть пассажирские вагоны (не зависимо от того, назначена команда Load/Unload или нет). |
Автор: | Fancom [ 31.08.2010, 13:37 ] |
Весьма удобная и полезная вещь!!! Но,к сожалению,в Trainz 2010(43434) обнаружены следующие неприятности: 1.Для объектов "Red Pyramid" и "Passengers mesh" КМ выдаёт предупреждение:"У этого элемента отсутствует меш, который будет видимым по умолчанию". 2.При перемещении камеры пропадают(мерцают) пассажиры. 3.У объекта IPS Platform without path трудно найти точку чтобы переместить или удалить его. 4.Если просадишь платформу или не доедешь до неё,и повторной остановке на ней,не закрываются двери в электре. 5.После остановки на скриптованной ЭР в ней заглючивает звук(постоянно шипят двери и говорит). 6.При установке пути в начале платформы и применении функции"смещение" пассажиры появляются впереди платформы,а двери открываются только у первой половины состава. Пожелания: 1.У объекта IPS Station Lite сделать функцию "Максимум пассажиров на платформе". 2.Сделать значок для панели команд машинисту. 3.Чтобы в режиме машиниста платформа(путь) реагировала на "Ctrl+Пр.кнопка". |
Автор: | StrVL [ 31.08.2010, 20:49 ] |
Это нормально.
Странно... Это только в редакторе 2010-ого или в машинисте тоже?
По бокам, вдоль обоих краев платформы, должны быть высокие "белые" пирамидки, видимые только в редакторе, (в п. 1 он ругается на их невидимость по умолчанию) - за них-то и надо таскать.
Это как? Может не открываются?
Это давно известный глюк с soundscript'ами, насколько мне известно, никак не исправимый в trainz. Могу добавить в платформы режим, чтобы двери открывались, но звук открытия/закрытия дверей не проигрывался вообще. И ещё. Vold давным-давно делал, на мой взгляд, лучшую реализацию ЭР-9П: www.trainzup.com/forums/showthread.php?t=327 (вредоносная ссылка - это t r a i n z u p (без пробелов), не знаю с каких это пор она стала вредоносной...) (ссылки в теме уже давно битые, но я через поиск по nigma.ru нашел на одном файлообменнике; к сожалению не могу выложить, так как боюсь за ® попадет ). Так вот я её немного подредактировал - там двери открываются только вручную кнопкой из кабины и загрузка пассажиров идет только при открытых дверях (если двери закрыты загрузка не происходит). Так вот там со звуками все нормально... Если найдешь могу подсказать что в скрипте подправить...
В смысле чтобы их отображалось мало, или чтобы было ограничение именно числа пассажиров?
Попробую сделать... Просто рисовать нормально не умею
В смысле, чтобы "детали" с количеством отображались? Опять же странно, у меня ведь они отображаются... В общем, попробую скачать 2010-ую версию и посмотреть. |
Автор: | Fancom [ 01.09.2010, 16:01 ] |
Да,я понимаю,что это не критично,просто думал может из-за этого и пропадают люди.
И в машинисте тоже.Например,двигаешь камеру вдоль платформы и в какой-то точке они пропадают,двинешь чуть дальше-появляются.Поезда в это время на платформе нет.
Кликал по всей платформе(и по пирамидкам тоже) и только на -цатый раз попадаешь.
Нет,именно не закрываются!В общем,дело происходит так:останавливаюсь на середине платформы,первым вагоном на рабочий кусочек пути(типа перетормозил),всё нормально-двери открылись и закрылись(естественно в той части состава,которая в пределах платформы),далее протягиваю состав до начала платформы-двери открываются(во всём составе) и всё,больше не закрываются.Я имею ввиду автоматические двери.Закрыть можно только правилом дверей.А на AJS хоть по одному вагоны протягивай,всё открывается-закрывается.
Только что прочитал про это на другом форуме, все жалуются,но это и впрямь не исправимо.
Лучше так и сделать.
А я и на ней тоже испытывал,только у меня автоматически двери открывались.Если подскажешь что в скрипте подправить,будет здорово!
Чтобы их мало отображалось.Просто в "IPS Platform" такая фитча есть,а в готовой станции с контроллером нет.
Так,наверно,и рисовать не надо,просто вставить фотку вокзала какого-нибудь или платформы,Если это возможно конечно,а то я то в этом не шарю.
Да,чтобы "детали" отображались.Я всё истыкал,не какой реакции. А при применении "смещения" возможно чтобы двери открывались по всей длине платформы?А то очень удобная функция,чтобы избавиться от trackmark-ов. |
Автор: | vulf911 [ 13.06.2013, 04:36 ] |
Тема актуальна? Единственное пожалуй полезное в игре... И то старое (( |
Автор: | skrest [ 01.01.2015, 21:44 ] |
вообщето очень актуальна, если конечно автор еще здесь, тохотелосьб ответы и доделки по предпоследнему сообщению. чтобы пользоватся offsetom триггера, и не заморачиватся отдельными маркерами. |
Часовой пояс: UTC + 4 часа | |
Powered by phpBB © 2002, 2006 phpBB Group www.phpbb.com |
Blogs powered by User Blog Mod © EXreaction www.lithiumstudios.org |