По поводу замкнутости железнодорожных сетей...

Поговорим о транспортной стратегии от JoWood

Модераторы: celt, Группа модераторов

По поводу замкнутости железнодорожных сетей...

Сообщение Alexey » Ср дек 08, 2004 19:07

Всем привет!
Вот столкнулся с проблемой.

Не помню точно: то ли в мануале, то ли еще где-нить в инете на кракерских сайтах игрушек - вычитал, что можно обойти проблему замкнутости железнодорожных сетей двумя путями.
( Под замкнутостью я подразумеваю, что уже раз начав строить
ж/д пути в одном месте на карте, нельзя просто так начать строить
другую сеть в ином месте - вся система должна быть связяна.
Я думаю с этой проблемой сталкивались новички! )

Способ первый:
Если необходимо построить совершенно другую ж/д ветку, никак не относящуюся к уже существующим ,- то можно от какой-либо уже существующей станции достроить рельсы на предполагаемое новое место строительства, там поставить станцию (таким образом система останется целостной); а после обрубать эти ненужне рельсы, и начинать пясать от полученной новой станции.

Способ второй:
Я случайно заметил, что когда только-только ставишь станцию (кликаешь мышкой, когда на кончике ее курсора висит зеленый ее образ!), то в долю секунды кнопка "ОК" активна ,- и только после несколький итреаций программа понимает, что либо станция оторвана от всех остальных, либо денег на строительство не хватает (чем я кстати зачастую и пользуюсь!!!). Этот эффект особенно заметен если оперативки на компьютере мало, а игрушка ведь ее требует достаточно много. Так вот, клавиша Enter в любом из меню игры подтверждает совершение какой-либо оперции, в частности и подтверждения установки ж/д станции. Попробуйте, как только кликнув мышей, тут же нажать Enter - я не ручаюсь, что у вас сразу получиться, но раза с пятого вполне. Определите приблизительный пероид, когда кнопка ОК становится активной ,- тогда и дерзайте! :) Это в качестве совета.
Но я думаю и этот способ многим известен.

Так вот, в чем собственно у меня проблема в процессе игры возникла. Я долго думал, в чем же дело.
В начале расскажу симптомы: Начинаю я иргать всегда с самого раннего периода - 1850 год. где-то к году 1910-му, когда система моя приобретает вполне определенный и солидный вид - игра виснет, причем не спонтанно. Подвисает капитально (даже в Windows не выходит), когда на одной из последних рельсовых ветвей, которые я построил, я на нажимаю мышей на железнодорожный состав, дабы узнать график его передвижения, или из списка графиков движения (я думаю объяснять не надо). В это врямя над курсором мыши еще успевает всплыть посказка со свойствами данного локомотива. И в этот прекрастный момент игрушка зависает! Даже после перезагрузки компьютера - все повторяется с тем же успехом!
Причем при загрузке предыдущих сохранений, когда эта ветка еще не построена, или только-только начала функционировать, т.е. по ней пошел этот злополучный состав ,- все в порядке! - прекрастно можно просмотреть график движения, и подкорректировать при желании.
Долго думал - в чем проблема, пока не начал мыслить в русле программирования. И догадка моя состоит в следующем:

Почему же разработчики не смогли сделать так, чтобы система (причем только железнодороджая) могла быть разорвана, состоять из отдельный, несвыязных частей? Ведь игра так пристально пытается навязать соответствие с реальной жизнью, транспортных систем в реальной жизни. Почему все рельсы должны быть замкнуты (об этом даже в мануале написали с извинениями)? Неужели это так затруднительно организовать на уровне программирования? И скорее всего это так!

(// дальнейшие рассуждения будут понятны всем, кто хоть как-то шарит в программировании и высшей математике. Иным - можно следующий абзац пропустить)
Я думаю, что ж/д система разработчиками схематически представляется в виде графа - а этот граф обязан быть замкнутым, поскольку программа ищет кратчайшие пути передвижения, обычные маршруты в этом графе. В разорваном же графе это проделать невозможно простейшим алгоритмом. А как известно эти самые графы в программировании легко представляются в виде матриц - массивов, простыми словами. Да и вообще, наверняка там создан всего лишь один массив для хранения системы рельс, их пересечения и семафоров. Для разорванных систем потребовалось бы каждый раз создавать такие динамические массивы. Судя по всему разработчики решили не парить себе мозги.

Проще и короче говоря, программисты так решили - так и сделали, создав для меня проблему, хотя может кто-то еще с ней сталкивался.
Подчиняясь этим рассуждениям, я решил, что программа еще как-то справляется, когда я мельком нажимаю клавишу Enter, и что-то как-то там с трудом обрабатывает, когда моя ж/д система состоит из разорванных клочков, не соединенных друг с другом. Но где-то на восьмом таком "клочке" (программисты, я думаю, поймут почему именно на восьмом) - алгоритм сдыхает, ругается видимо про себя и тихонько так, отказывается работать! Причем строить такие отдельные ветки программа резрешеат сколько угодно, но вот как только ты решишь пустить по одной из них поезд - тут начнутся проблемы. Первые несколько ходок этото состав будет верно приносить тебе прибыль, и можно будет без проблем вызывать и изменять график его движения, количество загрузки товаров и т.д. Но по истечении определенного времени, в очередной раз замыслив изменить график, или просто при необходимости заменить локомотив на более новый ,- программа, как я уже говорил, подвисает.

Вот собственно у меня вопрос: может такое быть? Верны ли мои размышления? И вообще - кто-либо с таким еще сталкивался??? Или я один в поле воин! :)
// Хвала тому, кто дочитал мои трактаты до конца - я сам не ожидал, что это так много займет! Пишите - буду рад услышать ваши комментарии! :)
Аватара пользователя
Alexey
Шпалоукладчик
Шпалоукладчик
 
Сообщения: 20
Зарегистрирован: Пт сен 03, 2004 18:56
Откуда: Киев

Сообщение Oleg » Чт дек 09, 2004 00:55

Вау. Это сильно. Я не программист, но сейчас как раз столкнулся с необходимостью писать программу нахождения пути (об этом в другой раз) - так что примерно представляю, о чём речь.
Помню, такая же хитрость применялась в Railroad Tycoon - строили кусок пути потом отрезали.

Мне не совсем понятно, что такого страшного, чтобы соединять все пути? Представь, в реале, начём ты будешь возить, скажем, ВЛ10 :) к начальной точке маршрута от вагоностроительного завода? По-моему все пути в реале как-то между собой соединяются.

Насчёт же самой такой проблемы, то я ещё такого не встречал. В любом случае, это похоже на баг, который может быть (?) исправлен в патче, которого нам с русской версией не видать вовек.

П.С. зачем создавать динамические массивы? просто если поиск пути завершился безрезультатно, значит, такого пути нет и всё.
8-)
С уважением,
Администратор сайта Transport Tycoon навсегда!
Аватара пользователя
Oleg
Администратор
Администратор
 
Сообщения: 2336
Зарегистрирован: Чт сен 02, 2004 11:49
Откуда: Москва

Сообщение AgRiG » Чт дек 09, 2004 13:16

Я тоже не программист, хотя в школе меня программированием вместе с теорией графов грузили на обязательных факультативах :( .
Мысль твою, Alexey, понимаю. С точки зрения теории(а я жуткий теоретик 8) ) так оно скорее всего и обстоит. Что не есть хорошо, поскольку тогда решить проблему обязательности связанности ж/д практически невозможно без глубокопания :) в коде игры, на что разработчики вряд ли пойдут. А без переделки основы в виде массива графов проблему вылетов не решить. Указанный тобой "обходной путь" за счет использования багов в коде еще ни в одной сложносочиненной игре не доводил до добра.
AgRiG
Президент
Президент
 
Сообщения: 545
Зарегистрирован: Вс сен 19, 2004 12:29

Сообщение Alexey » Чт дек 09, 2004 22:11

Спасибо, ребята, что отвечаете!

Вы обо мне не будьте столь высокого мнения ,- я ж тож цыцняюсь!!! :))) То, что я сказал о графах, массивах, связности, поиску оптимальных маршрутов - это все только мои гипотезы. Но я так понимаю, что они верны. В этих теоретических делах я разбираюсь - обожал в свое время дискретную математику...

Кстати, Олег, могу если что помочь тебе с алгоритмами нахождения оптимальных путей. (Тебя нужно немного просветить в этих делах: если поиск пути завершился безрезультатно, то это совсем не значит, что такого пути нету!)

Вы правы, что это скорее похоже на баг, но легче мне от этого не становиться.

Еще хочется сказать, что что за эти пару дней, после внесения сей темы на обсуждение, я продолжал решать проблему ,- и вот что скажу.
Была у меня еще неопубликованная гипотеза, что возможно программа неправильно также обрабатывает большое количество ж/д составов, когда в их главе стоят одни и те же локомотивы. Просто, когда появляется хороший тягачь, использование которого вполне рентабельно, по сравнению с предидущими - то я сразу веду лавину глобальных замен сих локомотивов всех составов. И после замены последнего - проблема проявляется в своей полной "красоте".

Так вот я загрузился с предидущих сохранений, достроил новые ветки, ведя их от уже существующей системы, и во главе составов поставил иные паровозы, нежели везде. После этого игругшка не зависала больше! Продолжаю играть ,- пока все впорядке, уже пару десятков лет прошло. Но я боюсь опять сэксперементировать - и заново поставить все поезда одинаковыми, или начать новую сеть, разделенной от всех остальных.
Вот так!

Я продолжаю ждать ваших гипотез и рассуждений.
Заранее благодарен.

//кстати, может save`ами обменяемся?! :)
Аватара пользователя
Alexey
Шпалоукладчик
Шпалоукладчик
 
Сообщения: 20
Зарегистрирован: Пт сен 03, 2004 18:56
Откуда: Киев

Сообщение celt » Чт дек 16, 2004 22:07

Я что-то не понял, что вы хотите сделать, но скажу одно, что станций в версий 1.1 можно было строить, где угодно и сколько угодно не было такова геморроя как сейчас, это изменения внесли в версию 1.2 вот!
может я и не в тему сказал!
Аватара пользователя
celt
Диспетчер
Диспетчер
 
Сообщения: 217
Зарегистрирован: Чт сен 02, 2004 15:49
Откуда: Москва

Сообщение Alexey » Вт дек 21, 2004 19:50

celt писал(а):Я что-то не понял, что вы хотите сделать, но скажу одно, что станций в версий 1.1 можно было строить, где угодно и сколько угодно не было такова геморроя как сейчас, это изменения внесли в версию 1.2 вот!
может я и не в тему сказал!


Это возможно ты говоришь про оригинальную английскую версию - а мы беседу ведем про русскую. Тут дела несколько посложнее
Аватара пользователя
Alexey
Шпалоукладчик
Шпалоукладчик
 
Сообщения: 20
Зарегистрирован: Пт сен 03, 2004 18:56
Откуда: Киев

Сообщение celt » Ср дек 22, 2004 00:22

Нет - нет про Русскую версию от "Акеллы"
Я на одном форуме читал, там люди говорили, что хренова станций больше стоить нельзя, где попало!
Аватара пользователя
celt
Диспетчер
Диспетчер
 
Сообщения: 217
Зарегистрирован: Чт сен 02, 2004 15:49
Откуда: Москва

Сообщение L-Zet (pstudio) » Чт дек 23, 2004 12:50

Вот правда интересно, в чем сложность? Неужели нельзя если существуют 2, 3, 4... 10 разделенных систем выделять их в отдельные графы.
Это опять же теоретствуя...
Владимир Лагутин
Да не будет ангельская пыль вам прахом...
Аватара пользователя
L-Zet (pstudio)
Администратор
Администратор
 
Сообщения: 141
Зарегистрирован: Пт сен 03, 2004 09:55
Откуда: Москва

Сообщение Alexey » Ср мар 02, 2005 22:22

L-Zet (pstudio) писал(а):Вот правда интересно, в чем сложность? Неужели нельзя если существуют 2, 3, 4... 10 разделенных систем выделять их в отдельные графы.


Видимо разработчики решили, что нельзя :(
Игра то собственно сырая еще.
Аватара пользователя
Alexey
Шпалоукладчик
Шпалоукладчик
 
Сообщения: 20
Зарегистрирован: Пт сен 03, 2004 18:56
Откуда: Киев

Re: По поводу замкнутости железнодорожных сетей...

Сообщение FreakOut » Сб авг 15, 2009 18:27

Автор конечно молодец, что всё так расписал, но на самом деле всё намного проще. При постройке станции не надо ловить эту долю секунды, чтобы успеть поставить станцию. Все гораздо проще. Выбираете станцию, зажимаете enter и кликом мышки ставите её куда надо!
FreakOut
Шпалоукладчик
Шпалоукладчик
 
Сообщения: 5
Зарегистрирован: Сб авг 15, 2009 11:34

Re: По поводу замкнутости железнодорожных сетей...

Сообщение ARATHORN » Чт апр 04, 2013 17:45

Вот оно! Помню, что где-то читал... На счёт этого бага с ентером и строительством станции, отделённой от основной сети.

В Европейской мисси, где надо построить тоннель под Ла Маншем 1990-2010 (что странно, когда его открыли в 1994! :) ), я решил поэкспериментировать с первоначальной веткой, и начать не от Парижа, (как это предлагается игрой), а из Лондона. Воспользовавшись описанным багом, и построив ветку на земле бритов, я начал возить молоко на фабрику, а от туда сыр в Лондон. От одного рейса с молоком поезд принёс более 800 000 И каково же было моё удивление, когда после отгрузки сыра в Лондоне, я получил сообщение, что миссия пройдена! :o

То есть в задании написано "Маршрут до города Лондон - Цель (2010) - 1. Но не указано, от куда маршрут-то! :lol:

Вот вам 10 простых шагов для достижения победы в этой миссии:
Вложения
Tunnel la Manche_how to win quick_1_новый размер.png
Париж, начало миссии...
Tunnel la Manche_how to win quick_2_новый размер.png
Британия, город Портсмут - строим станцию
Tunnel la Manche_how to win quick_3_новый размер.png
... Построили станцию, зажав Ентер.
Tunnel la Manche_how to win quick_4_новый размер.png
Строим путь до Лондона.
Tunnel la Manche_how to win quick_5_новый размер.png
Построили путь и станцию в Лондоне.
Аватара пользователя
ARATHORN
Начальник станции
Начальник станции
 
Сообщения: 95
Зарегистрирован: Вт июн 17, 2008 10:59
Откуда: Алматы, KZ

Re: По поводу замкнутости железнодорожных сетей...

Сообщение ARATHORN » Чт апр 04, 2013 17:50

Как выиграть мисию с Ла Маншем за 10 шагов... продолжение :D
Вложения
Tunnel la Manche_how to win quick_6_новый размер.png
Приобретаем локомотив. Можно и TGV, только пути не скоростные.
Tunnel la Manche_how to win quick_7_новый размер.png
Создаем маршрут до Лондона.
Tunnel la Manche_how to win quick_8_новый размер.png
Зааапускаем маршрут...
Tunnel la Manche_how to win quick_9_новый размер.png
... Ждёёём пока доедет...
Tunnel la Manche_how to win quick_10_новый размер.png
... И Вуа ля! Миссия пройдена! А парижане кушают круасаны... God save the Queen! :)
Аватара пользователя
ARATHORN
Начальник станции
Начальник станции
 
Сообщения: 95
Зарегистрирован: Вт июн 17, 2008 10:59
Откуда: Алматы, KZ


Вернуться в Transport Giant aka Транспортный Олигарх

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2