Trainz - Россия

[Новости][Статьи]


начало

Часто задаваемые вопросы по Trainz
и Trainz Railroad Simulator 2004.

Часть 2


- Как настроить доступ к DLS для Trainz и TrainzHelper?

Внутренние механизмы фирмы Auran , которые используются в программах TrainzHelper, Trainz и TRS 2004, работают через протокол FTP. Поэтому перед их использованием необходимо сделать некоторые настройки.
Нужно запустить игру и когда появится начальное окно с меню, вместо привычного “запустить игру” выбрать в нём “конфигурация”. Откроется окно с настройками программы:

При этом первой страничкой будет как раз нужная нам “Planet Auran”, где мы должны ввести наше имя пользователя и основной пароль доступа к Planet Auran. Если вы используете доступ через прокси-сервер, то его параметры желательно указать в соответствующих полях, предварительно установив галочку “Использовать прокси”. Только не забудьте проверить, чтобы ваш прокси-сервер поддерживал работу через FTP протокол, а если где-то стоит FireWall, то необходимо, чтобы для вашей машнны был открыт 21 порт, через который работает FTP. Если же у вас стоит персональная программа защиты непосредственно на вашем компьютере, то не забудьте прописать там программы TrainzHelper.exe и Trainz.exe (во многих программах это делается при первой попытке доступа к сети из программ TrainzHelper.exe или Trainz.exe).
Если включить галочку “всегда в сети”, то после завершения закачек программы не будут разрывать соединение с интернетом, если оно установлено с помощью модема. Если этой галочки нет, то как только все объекты закачаны, соединение разрывается.
Ну и последняя кнопка “Присоединится к Planet Auran” просто переходит по соответствующей ссылке на сайте, открывая окно сервиса “Planet Auran”.
Сразу хочется обратить внимание на то, что если вы по каким-то причинам изменили свой основной пароль, то автоматически будет сгенерирован и новый длинный пароль для доступа к FTP. В этом случае не забудьте его тоже поменять в настройках своих программ.


- Как закачать файлы с DLS с помощью других программ?

В принципе, закачать файл с DLS можно практически любой программой, которая умеет работать с FTP сервером, в том числе через стандартный интернет-браузер, типа MS Internet Explorer, Opera, Netscape и т.п. Правда, придётся немного поработать руками, потому что полных ссылок на DLS нет и их нужно собрать из нескольких частей, либо скопировать из дополнительного всплывающего окна.
Обычно это бывает нужно в тех случаях, когда сам Trainz стоит на одной машине, а доступ к интернету на другой, где ни Trainz, ни TrainzHelper нет.
Во-первых, в персональной панели управления системы Planet Auran необходимо посмотреть свой пароль к FTP серверу. Для этого на самой первой странице "Admin" нужно нажать на ссылку FTP. В результате откроется окно с параметрами для настройки FTP сервиса:

На данной странице нам интересен в первую очередь пароль к FTP-серверу, который отличается от пароля, что вы задали для своей учётной записи, когда регистрировались на сайте Auran. Остальные настройки в общем-то стандартные.
Если посмотреть на полную запись о любом объекте на DLS, то там можно увидеть строчку FTP Location: (for FTP users ), под которой написана усечённая ссылка, типа

/Restricted/trainz/TRAINZ01/buildingsstructures/kuid2_33404_502080_2.cdp

Это последняя часть пути к файлу. А первая это имя FTP сервера FTP://files.auran.com
Правда, если просто их объединить в одну строку, то для доступа к файлу нужно ещё будет вводить пароль, причём не все программы его корректно обрабатывают. Но это тоже обходится путём добавления логина и пароля в саму строку. И в итоге мы получаем полную строку, типа:

FTP://<Login>:<Password>@files.auran.com/Restricted/trainz/TRAINZ01/buildingsstructures/kuid2_33404_502080_2.cdp

Естественно, что вместо <>Login > и <Password > нужно указать своё имя и пароль со странички FTP.
Но на практике вручную эту операцию можно не делать. Если под картинкой нажать на ссылку Download Page, то в новом окне откроется страница с подробной информацией о данном объекте, а также обо всех дополнительных объектах, от которых он зависит.

Первая ссылка с жёлтой надписью Download запускает TrainzHelper для закачки этого объекта, а вот вторая, где имеется маленькая добавочка FTP, содержит полную ссылку для закачки объекта через FTP, включая полный login и пароль пользователя! То есть, либо просто жмём на эту ссылку, и запускаем закачку с помощью браузера, либо копируем её в буфер через всплывающее меню, щёлкая правой кнопкой мыши по этой ссылке (в IE нужно выбрать пункт “копировать ярлык”), после чего добавляем её в список закачиваемых файлов прогарммы-качалки. Кстати, тот же Download Master умеет сам брать ссылки из буфера обмена, что ещё больше упрощает процесс.


- Что такое KUID?

Прежде чем рассказывать о том, как искать те или иные объекты на DLS и почему скачанные дополнения не всегда работают, нужно рассказать о том, что такое KUID и зачем он нужен в Trainz.
Все объекты, которые используются в игре, будь то карта, сценарий, локомотив, вагон, дом, светофор и т.д. имеют свой уникальный код, который и называется KUID. Именно по этому коду объект ищется в библиотеке объектов, когда игре требуется его отобразить на экране. Данный код состоит из нескольких частей и бывает двух видов: KUID:XXXX:XXXX или KUID2:XXXX:XXXX:X. В первых версиях никакого KUID не было вообще, и поиск шёл по имени объекта, но очень быстро выяснилось, что это неудобно и замедляет игру. Появился KUID первой версии, у которого на месте XXXX записаны два длинных целых числа. Первое – персональный код разработчика, который присваивается каждому зарегистрированному пользователю Planet Auran, и о чём я уже писал выше. Второе число – внутренний код объекта данного разработчика. Уникальным должно быть полный KIUD, то есть, комбинация первого и второго числа. Это означает, что у разных разработчиков вполне могут быть разные объекты, которые имеют одно и тоже второе число.
Во второй версии KUID 2 добавилось ещё одно третье число, которое указывает на номер версии объекта.
Удобство KUID ещё и в том, что зная этот номер, объект достаточно легко найти на DLS. Да и сам Trainz использует этот механизм для поиска и закачки необходимых объектов c DLS.


- Я установил новый объект (локомотив, вагон, сценарий), а он не виден в игре?

В Trainz многие объекты являются составными, то есть, на самом деле состоят из нескольких разных объектов, каждый из которых будет иметь собственный KUID. В частности, многие вагоны используют одни и те же тележки, которые являются отдельным объектом. Локомотивы используют общие кабины, электровозы используют общие пантографы (токосъёмники), и т.д. Все карты используют большое количество разных объектов, а все сценарии содержат в себе ссылку на карту и на подвижной состав, который используется в сценарии.
Но чтобы объект правильно отображался в игре, а сценарий правильно выполнялся, необходимо, чтобы все составные объекты были установлены вместе со всеми своими частями. Вот с последним, установкой частей, часто и бывают проблемы. На той же DLS все объекты хранятся по отдельности, даже если автор закачивал их одним общим пакетом. Если использовать TrainzHelper, то он умеет сам находить и загружать все необходимые части, но если вы используете другие способы загрузки объектов, то наличие дополнительных объектов придётся отслеживать вручную, для чего либо просматривать уже упомянутую страничку Download Page, либо изучать файл config.txt соответствующего объекта.
Если в каком либо объекте используется другой объект, то он должен быть обязательно указан в разделе config.txt файла объекта, который называется kuid-table и выглядит примерно так:

kuid-table {
   0   <kuid:-1:6270>
   1   <kuid:32127:21001>
   2   <kuid:32127:21009>
   3   <kuid:32127:21002>
   4   <kuid:2300:21074>
}

Если вы загляните в config.txt файл карты, которую сами создали с помощью редактора карт, то в этой таблице увидите полный перечень всех объектов, которые были использованы при создании карты (этот список для карты Trainz генерирует сам).
Аналогичная таблица будет и в config.txt файле любого сценария, локомотива или вагона.
Так что первое, в чём нужно убедится, если объект не появился в игре, так это в наличии всех необходимых дополнительных объектов.
Естественно, что делать это в ручную слишком долго и нудно. Я сам обычно для этих целей использую программу TrainzObject, которая распространяется бесплатно.
Найти её можно тут:

http://www.tafweb.force9.co.uk/trainz/s3tosetup_frame.html

или тут:

http://www.auran.com/TRS2004/downloads/3rdparty/TrainzObjectz.exe

Если какой-то из объектов отсутствует, то его нужно найти на DLS или у автора и установить.
Но мне довольно часто приходилось сталкиваться с ситуацией, когда нужный объект TrainzObject в базе находит, но в игре он не показывается, либо при попытке запустить сценарий, он начинает загружаться и выполняться, но потом завершается с ошибкой. Обычно это означает, что в объекте содержится какая-то ошибка. Увы, даже загрузка объекта с DLS ещё не означает, что в нём нет ошибок. Auran при помещении объекта в базу DLS проверяет далеко не все параметры. Что-то можно исправить самому путём корректировки файла config.txt, но есть и такие ошибки, которые связаны с внутренней структурой моделей или отсутствием необходимых файлов. В последнем случае единственный способ что-то исправить – связаться с разработчиком. Что же касается первого случая, то описание того, что и как нужно править в config.txt выходит за рамки данной статьи. Так что либо разберитесь сами с Content Creation Guide, либо придётся подождать, когда у меня появится время написать FAQ для разработчиков. :)
Да, чтобы узнать что и в каких объектах не понравилось Trainz, можно посмотреть файл с журналом ошибок, который находится в Cache\Logs\log0.html. Пользователи русской версии игры от фирмы Акелла не забудьте переключить кодировку на UTF 8, чтобы увидеть нормальный русский текст.
Кстати, ещё одна ошибка, из-за которой объект может быть не виден в игре, состоит в том, неправильно сформирован индексный файл объектов, который ускоряет загрузку игры. Обычно при первой загрузке после установки новых объектов игра грузится достаточно долго, а все последующие запуски происходят заметно быстрее. Это происходит потому, что в первом случае формируется специальный файл со списком дополнительных объектов, во время которого сканируется содержимое папки World\Dispatcher\Download, а при последующих запусках загружается только этот файл. Но если при его формировании происходит сбой, либо объект устанавливается в обход стандартны механизмов Trainz, то индекс будет нарушен. В этом случае рекомендуется просто удалить всё содержимое папки Cache, и при следующей загрузке Trainz сформирует все необходимые файлы заново.


Продолжение следует...

Дмитрий Мыльников
19 декабря 2004 года


[Новости][Статьи]


Хостинг от uCoz
Хостинг от uCoz