QD. Делаем, изменяем, наслаждаемся.

Обсуждение вопросов и решение проблем, связанных с внутриигровым редактором, а также процессом разработки самостоятельных дополнений или игровых модификаций.
Аватара пользователя
PseudoStalker
Ветеран
Сообщения: 3235
Зарегистрирован: 09 авг 2012
Репутация: 1810

QD. Делаем, изменяем, наслаждаемся.

Сообщение PseudoStalker »

Сейчас я попытаюсь рассказать как прописать готовый поезд к маршруту(как создать поезд для QD я описывал ранее в теме по RW_Tools).
Итак, для начала нам потребуется RW_Tools. Можно конвертировать и при помощи serz, но это займет слишком много времени.

1. Открываем утилиту, жмем Ctrl+O. Идем по адресу Assets/Аффтар/Аддон/PreLoad. Для примера я возьму Метроном: Assets\RSC\ClassME146Pack01\Preload.

2. Открываем файл поезда(файлы metadata и fragment нас не интересуют). Приписка R означает развернутый поезд(с толкачом).

3. Перематываем открытый файл в самый низ. И видим следующий код:

Код: Выделить всё

<ValidBuildAndDriveRoutes>
				<cConsistValidRoute d:id="57051952">
					<RouteGUID d:type="cDeltaString">00000037-0000-0000-0000-000000002013</RouteGUID>
				</cConsistValidRoute>
			</ValidBuildAndDriveRoutes>
Нас интересует

Код: Выделить всё

<RouteGUID d:type="cDeltaString">00000037-0000-0000-0000-000000002013</RouteGUID>
это имя маршрута в папке Content. То есть наш поезд может появиться на Гамбург - Ганновер. И только на нем.

4. Мы можем изменить маршрут, либо прописать новый.

4а. Для изменения, понятное дело, мы вписываем имя маршрута из Content вместо 00000037-0000-0000-0000-000000002013. Это на случай, если QD прописан к маршруту, которого у нас нет, либо на нем нет QD.

4б. Для добавления еще одного(или нескольких маршрутов) мы берем кусок кода

Код: Выделить всё

<cConsistValidRoute d:id="57051952">
					<RouteGUID d:type="cDeltaString">00000037-0000-0000-0000-000000002013</RouteGUID>
				</cConsistValidRoute>
копируем и вставляем его следом.
Получается так:

Код: Выделить всё

<ValidBuildAndDriveRoutes>
				<cConsistValidRoute d:id="57051952">
					<RouteGUID d:type="cDeltaString">00000037-0000-0000-0000-000000002013</RouteGUID>
		</cConsistValidRoute>
            <cConsistValidRoute d:id="57051952">
					<RouteGUID d:type="cDeltaString">00000037-0000-0000-0000-000000002013</RouteGUID>
				</cConsistValidRoute>
			</ValidBuildAndDriveRoutes>
Теперь в добавленном куске меняем id(во избежание конфликтов), то есть вместо id="57051952, пишем, к примеру, id="67051951(я изменил первую и последнюю цифры).
Далее вместо 00000037-0000-0000-0000-000000002013 прописываем необходимый маршрут.
Я возьму Берлин - Виттенберг, то есть f8b64803-ddb6-47bd-9ee8-69e3ceba1bf3(имя в Content).
Получившийся код выглядит так:

Код: Выделить всё

<ValidBuildAndDriveRoutes>
				<cConsistValidRoute d:id="57051952">
					<RouteGUID d:type="cDeltaString">00000037-0000-0000-0000-000000002013</RouteGUID>
				</cConsistValidRoute>
            <cConsistValidRoute d:id="67051951">
					<RouteGUID d:type="cDeltaString">f8b64803-ddb6-47bd-9ee8-69e3ceba1bf3</RouteGUID>
				</cConsistValidRoute>
			</ValidBuildAndDriveRoutes>
Жмем Ctrl+S. Готово. Теперь Метроном будет приписан и к Гамбургу и к Берлину.

5. Если у готового поезда не прописаны маршруты.
Берем для примера Class 142. У него есть поддержка QD, но он нигде не появится, ибо не приписан к маршрутам.
Его код выглядит так:

Код: Выделить всё

<ValidBuildAndDriveRoutes/>
И больше ничего.

Копируем код с маршрутом из любого готового QD.
Пример:
Я иду в Assets\RSC\GEML\PreLoad. Открываю файл QD для Class 360. Копирую из него код:

Код: Выделить всё

<ValidBuildAndDriveRoutes>
				<cConsistValidRoute d:id="56015656">
					<RouteGUID d:type="cDeltaString">00000038-0000-0000-0000-000000002013</RouteGUID>
				</cConsistValidRoute>
			</ValidBuildAndDriveRoutes>
и вставляю вместо <ValidBuildAndDriveRoutes/>.
Сохраняю. Готово. Теперь одна из раскрасок Class 142(я выбрал Arriva Unbranded) готова появиться на GEML в качестве трафика.
Добавляем новые(или изменяем существующий маршрут) по аналогии из пункта 4.

6. Заодно можете записать или запомнить информацию из этой строчки(находится под списком маршрутов)

Код: Выделить всё

<ConsistType d:type="cDeltaString">eConsistTypePassengerRegional</ConsistType>
Это то чем является наш поезд. Данные знания помогут нам в выставлении маркеров сценария.

--- добавлено позже в 12 ноя 2013, 15:01 ---

Теперь идем в игру. Запускам сценарий QD через редактор.
Начинаем пролет камеры от начала и до конца маршрута. Наша цель:
Изображение
Не путайте с кубиками(к тому же они выше).
Это маркер спауна. Спауна чего? Логичный вопрос. Данный маркер бывает трех видов:
1. Поезд игрока:
Изображение
2. Статический ПС:
Изображение
3. Боты. Вот на нем мы и остановимся подробно.
Изображение
На Page 1 данного маркера задается пункт назначения для ботов(во избежание аварии это всегда должен быть портал). Так же здесь задается тип питания(по умолчанию все на дизельной и паровой тяге): можно поставить галочку на "молнию"(провода) или третий рельс, можно даже на 4-й рельс... но не будем о загадочном.
Предположим, что мы меняем наполнение готового QD.
Итак, для этих целей мы переходим на Page 2(как на скриншоте выше).
Consist Type - тип поезда, его мы знаем из строчки кода

Код: Выделить всё

<ConsistType d:type="cDeltaString">eConsistTypePassengerRegional</ConsistType>
в бинарнике QD.
Теперь, основываясь на месте маркера и его пункте назначения, мы выставляем вероятность процентного появления данного типа*.
* Custom n - поезд, который приписали авторы маршрута, его можно найти в папке PreLoad к маршруту и не ломать себе голову - что же это за зверь то такой.

Для этого мы кликаем на его название и прописываем цифры от 0.000 до 1.000(то есть от 0% до 100%).
Общая сумма всех чисел не должна превышать 1.000(об этом нам напоминает цифра в нижнем правом углу).


Заполняйте маркеры как пожелаете. Но помните, если сработает спаун типа, который у вас не приписан к маршруту, то на маркере вообще не появится поезд.

По окончании процедуры жмите F2. Сценарий будет изменен**.
** Сценарии от RSC почему-то не всегда хотят сохраняться, пишут, что нет изменений. Вылечить это можно просто поставив на рельсы вагон, затем удалив его - игра согласится, что что-то изменилось.
Аватара пользователя
role
Мастер
Мастер
Сообщения: 439
Зарегистрирован: 10 апр 2012
Репутация: 164

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение role »

Так вот и прекрасный мануальчик, пару ньюансов (как начать создавать сценарий) и готово :)
Последний раз редактировалось role 13 ноя 2013, 20:54, всего редактировалось 1 раз.
intel 2117U / 4 gb ram / nvidia gt740m
intel T4400 / 3 gb ram / nvidia g210m
Аватара пользователя
PseudoStalker
Ветеран
Сообщения: 3235
Зарегистрирован: 09 авг 2012
Репутация: 1810

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение PseudoStalker »

Теперь предположим, что у нас есть маршрут с поддержкой QD, но на нем нет ботов. Мы знаем как изменить наполнение живых маршрутов. Но что же делать с мертвыми?
Все очень просто.
Открываем сценарий QD через редактор. В левом центральном меню нажимаем на значок семафора и выбираем "Marker AI Spawn Point".
Изображение

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

Итак, у нас готов маркер бота. Мы знаем как прописать в него тип поезда. Но как задать направление?
Все элементарно просто.
Изображение
Элемент с плюсиком, корзинкой и стрелочками - это инструменты для задания маршрута. Нижний пункт указывает точку назначения(на которой бот прекратит движение), как я уже ранее говорил, это должен быть портал. Все пункты, которые указаны выше него(если таковые необходимы) - это точки, через которые бот должен проследовать по пути к порталу.
Как их добавить? Жмем на плюсик, открываем 2d-карту(9) и кликаем по маркеру(платформа, путь, портал, что угодно).
Если добавили что-то лишнее - удаляем корзиной. Если перепутали последовательность - меняем ее стрелочками.
Наш бот готов появиться и поехать в нужном направлении.
Но прежде чем закончить, я опишу остальные элементы(они вам обязательно пригодятся):
No Stop - если галочка установлена, то бот не будет совершать остановки на пути следования.
OH(провод), 3rd(третий рельс) - какие источники электрификации может использовать поезд. Если галочки не установлены, то у вас будут исключительно дизеля/паровозы. Ставьте в случае, если на всем пути следования есть конкретный тип электрификации, иначе чревато ошибками сценария.
150 - максимально допустимая длина поезда. Можете изменять, а можете и не трогать. Исходите из того, что поезд может не влезть на платформу и загородить дорогу остальным, что может привести к аварии.
Front - какая часть поезда появится на маркере. На скриншоте выставлено Front(голова), так же есть значения Back(хвост) и Center. Я не знаю зачем был задуман данный параметр, ведь всегда проще, если на маркере окажется голова поезда. Её и советую выставлять.

Важно! Старайтесь выставлять маркеры перед светофорами - это поможет избежать столкновений. Дистанция между маркерами должна составлять 2 и более блок-участков, иначе возможна ситуация, когда кровь-кишки, игра огорчается.
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение Cross »

Вот теперь стало более понятно, как делается квик драйв для маршрута. Осталось понять зависимости от спав маркеров для игрока, ведь именно они определяют общий список станций на маршруте и куда следовать. То есть эти маркеры нужно как-то связывать между собой?
*Train Simulator 2018*
Изображение
Аватара пользователя
selihoff
Мастер
Мастер
Сообщения: 389
Зарегистрирован: 13 фев 2012
Откуда: Питер
Репутация: 247

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение selihoff »

PseudoStalker писал(а):Я не знаю зачем был задуман данный параметр, ведь всегда проще, если на маркере окажется голова поезда.
Для старта ИИ с тупиковых путей?
Аватара пользователя
PseudoStalker
Ветеран
Сообщения: 3235
Зарегистрирован: 09 авг 2012
Репутация: 1810

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение PseudoStalker »

selihoff, в точку! Каюсь, не додумался. :oops:
Остается только вопрос зачем нужен Center?

--- добавлено позже в 13 ноя 2013, 16:26 ---

Cross,
Ставить маркеры игрока на каждой платформе(или другом маркере) откуда он может отправиться, перечисляя в них все маркеры(речь о маркерах платформ и путей) где игрок может завершить сценарий(перечисление идет строго в порядке движения, иначе баги). Не забывать про галочку Via(проходящий).
Пример: Ньюкасл - Йорк.
Я ставлю маркер для игрока в Ньюкасле и указываю в нем(в строгом порядке): Дарем, Дарлингтон, блин, я позабывал названия станций, Йорк.
Следующий маркер я ставлю в Дарем и указываю в нем(в строгом порядке):Дарлингтон, блин, так и не вспомнил названия станций, Йорк.
И так далее. То есть игрок сможет начать с любой из этих станций и закончить на любой из имеющихся на пути в Йорк(включая сам Йорк).
В Йорке, само собой, никаких маркеров игрока ставить не надо, т.к. езда из Йорка в Йорк - это не наш метод создания QD.
Аватара пользователя
role
Мастер
Мастер
Сообщения: 439
Зарегистрирован: 10 апр 2012
Репутация: 164

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение role »

PseudoStalker спасибо, я почищу свой первый пост, чтобы не сорить.

Центр нужен время от времени, например у меня был длинный блок-участок который одним концом заходил за угол, а другим был на подъеме. Средняя же часть участка была более менее пологой, соответственно маркер я ставил посередине участка и позиционировал состав относительно маркера по центру.

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

Уже имеется небольшой опыт по одноколейным путям:
нет разъездов - нет встречного трафика, только попутный
есть разъезды - есть трафик, но смотрите, что бы самый длинный бот, смог пройти самый короткий разъезд
intel 2117U / 4 gb ram / nvidia gt740m
intel T4400 / 3 gb ram / nvidia g210m
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение Cross »

Короче, дабы понять всю эту ахинею с маркерами (у простого человека мозг уже погорел) =) нужно сначала изучить свойства маркеров, а потом действовать логически. Зная правила, следовать строго куда-то, в каком направлении и прочие мелочи. После этого станет легче ориентироваться в расстановке и настройке
*Train Simulator 2018*
Изображение
Аватара пользователя
PseudoStalker
Ветеран
Сообщения: 3235
Зарегистрирован: 09 авг 2012
Репутация: 1810

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение PseudoStalker »

Cross, если есть опыт создания стандартных сценариев - разобраться будет совсем несложно. К тому же всегда можно заглянуть в готовый сценарий и оценить как там это реализовано. С первого захода оценить, а со второго даже и поправить/доделать/переделать.
Очень увлекательный процесс. Времени забирает конечно, но это не стандартный сценарий, который проедешь раз и хватит. Здесь такая маленькая песочница, которую приятно создавать и наблюдать за жизнью внутри нее.
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение Cross »

в создании стандартных сценариев тоже есть своя изюминка и так же есть множество различных вариантов, как сделать интересно. Просто не каждый захочет возиться в редакторе. У меня есть интерес, но нету терпения, это то всё и портит :)
*Train Simulator 2018*
Изображение
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение Cross »

PseudoStalker
Я никак не могу въехать на счёт галочки Via, которая якобы должна указывать на то, что игрок проезжает через данный пункт, но он не указывается в меню быстрой игры, как пункт остановки.
Пробовал и ставить и снимать, всё равно точка, направляющая поезд на нужный путь указывается, как пункт остановки. Что же делаю не так?
*Train Simulator 2018*
Изображение
Аватара пользователя
PseudoStalker
Ветеран
Сообщения: 3235
Зарегистрирован: 09 авг 2012
Репутация: 1810

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение PseudoStalker »

Cross, просто не вводи friendly name. Оно, зараза такая, автоматически прописывается.
Там где ты добавляешь пункт следования есть 2 поля:
1. Имя маркера(пути, платформы и т.д.), оно вводится в обязательном порядке, обычно методом кликанья по маркеру на 2D-карте.
2. Имя, которое видит игрок при выборе пункта отправки/назначения в QD. Если это поле пустое, то данный пункт просто не отобразится при выборе. Что тебе и нужно.
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение Cross »

Во, получилось. Я просто не заметил сразу, что можно редактировать 2 строчки. Думал, зачем они дублируются... Теперь понятно.
Я создал 2 сценария в разных направлениях. Щас от Йорка иду к Ньюкастлу, попутно буду создавать маркеры статичных ПС и ботов, идущих навстречу и в одну сторону с игроком, благо место для этого есть. А пока прорабатываю путь следования, чтобы внезапно не налететь на стрелку.
Плохо, что не отображается красной линией по карте весь путь следования, как это можно видеть, когда создаёшь стандартный сценарий. Приходится в слепую указывать маркеры следования, чтобы только на нужном пути быть между станциями
*Train Simulator 2018*
Изображение
Аватара пользователя
PseudoStalker
Ветеран
Сообщения: 3235
Зарегистрирован: 09 авг 2012
Репутация: 1810

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение PseudoStalker »

Кстати, еще совет. Максимальная длина поезда - это важно. А я еще думаю с какого перепугу у меня на месте Интерсити сплошные Вояджеры. Потому что они коротенькие и влезают в лимит, в отличии от остальных... Так что увеличивать без раздумий. Кроме мест, где важно не выйти за пределы маркера.
Кстати, так можно спаунить Class 66 без вагонов, которые RSC почему-то прописали как контейнерные. Ставим маркер, даем ограничение 100 м, прописываем контейнерный - вуаля, Class 66!

--- добавлено позже в 16 ноя 2013, 16:31 ---
Cross писал(а): Плохо, что не отображается красной линией по карте весь путь следования, как это можно видеть, когда создаёшь стандартный сценарий.
Полностью согласен. Оживить окрестности крупного вокзала, скажем Паддингтона, - сущее наказание, т.к. непонятно как поедет игрок.
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение Cross »

PseudoStalker
а разве регулировка максимальной длины состава сможет повлиять на тот факт, что на путь встанет не целый состав, а только один локомотив? Ведь в QD прописываются сам локомотив, далее идут вагоны или указываются фрагменты состава, в которых отдельно прописываются вагоны. То есть в случае с Class 66 выходит, что если состав не умещается на пути в указанную длину, тот обрезается, оставляя один локомотив?
У меня есть и ещё один важный вопрос, я его задавал, но никто не обратил внимания. Ветка, над которой я щас тружусь, какие операторы её обслуживают щас и в прошлом, а так же какие локомотивы там ездят?
*Train Simulator 2018*
Изображение
Аватара пользователя
role
Мастер
Мастер
Сообщения: 439
Зарегистрирован: 10 апр 2012
Репутация: 164

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение role »

Держи
У вас нет необходимых прав для просмотра вложений в этом сообщении.
intel 2117U / 4 gb ram / nvidia gt740m
intel T4400 / 3 gb ram / nvidia g210m
Аватара пользователя
PseudoStalker
Ветеран
Сообщения: 3235
Зарегистрирован: 09 авг 2012
Репутация: 1810

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение PseudoStalker »

Cross, в игре есть разные составы, включая одинокие локомотивы без вагонов. Их кто как прописывает(обычно региональным, а в случае с Class 66 - контейнерным). Никакие вагоны от локомотива отрезаться не будут. А вот при задании верного типа поезда и маленькой максимальной длины - у игры не останется выбора и она поставит на маркер единственное, что на него влезет - одинокий локомотив.
LiNe
Магистр
Магистр
Сообщения: 821
Зарегистрирован: 06 сен 2012
Репутация: 205

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение LiNe »

Cross писал(а):Я никак не могу въехать на счёт галочки Via, которая якобы должна указывать на то, что игрок проезжает через данный пункт, но он не указывается в меню быстрой игры, как пункт остановки.
Via - так же обеспечивает автоматический перевод ручной, впереди лежавшей, стрелки, если заданное направление не совпадает положению по умолчанию.
А при указании короткой длинны, состав не уменьшится, просто не появится и все. Во сяком случае, еще тогда пробовал по NEC - не появлялся пока не поставить правильную длину или с запасом.
Последний раз редактировалось LiNe 16 ноя 2013, 19:23, всего редактировалось 2 раза.
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение Cross »

role
хорошо, с операторами ясно, а какие классы обслуживают линию?
*Train Simulator 2018*
Изображение
Аватара пользователя
role
Мастер
Мастер
Сообщения: 439
Зарегистрирован: 10 апр 2012
Репутация: 164

Re: QD. Делаем, изменяем, наслаждаемся.

Сообщение role »

этого не знаю :)
intel 2117U / 4 gb ram / nvidia gt740m
intel T4400 / 3 gb ram / nvidia g210m
Ответить