Наборы улучшений Train Simulator

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

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

Света
да, нужно рассинхронизировать управление между движковыми и виртуальными функциями, чтобы движковые выставлялись в ноль и никак не активировались, когда управляем виртуальными. Дальше условие, что если отключим педалью пищалку И переведём ручку тормоза в положение "экстремальный", тогда снова произойдёт синхронизация движковых функций и виртуальных
*Train Simulator 2018*
Изображение
Аватара пользователя
pROssO
Ветеран
Сообщения: 3524
Зарегистрирован: 21 май 2012
Откуда: Минск
Репутация: 4861

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение pROssO »

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

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

pROssO
да там конечный триггер делать не нужно. Можно сделать проще, звучание сигнала по заданному времени, кстати не без math.random, чтобы не было одинакового времени звучания.
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

Значит, я понимаю ситуацию так: мы прохлопали DSD, сработала блокировка, виртуальные контролы остались на старых местах, а реальные сбросились. Поезд остановился. Теперь надо сбросить DSD, и мы упираемся в проблему разного положения контролов. Если я правильно понимаю ситуацию, вопрос - если мы меняем кабину, не происходит ли сброс контролов? И если да, то не не получится ли решить проблему, если при сбросе DSD скрипт симитирует нажатие кнопки "смена кабины", а спустя короткое время "возврат кабины"?
Сильные люди - это не те, у которых всё хорошо, а те, у которых всё хорошо несмотря ни на что.
Аватара пользователя
pROssO
Ветеран
Сообщения: 3524
Зарегистрирован: 21 май 2012
Откуда: Минск
Репутация: 4861

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение pROssO »

Cross, а как насчёт двухтонального тифона (второй тон начинается после окончания первого)? А про рандом, здесь можно совместить приятное с полезным, и оставить второй триггер как конец обязательного фрагмента, а затем AI подолжит "дудеть" ещё некоторое рандомное время.

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

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

Света
проблем с положением контролов нет, там ситуация в том, что поезд остановился из-за срабатывания аварийного тормоза. Это происходит, но управление не блокируется, из-за чего в момент работы сигналки можно спокойно отпустить тормоз и снова ехать. А нужно сделать так, чтобы когда сработало аварийное, то блокировались движковые тяга, тормоз и реверс (забыл о нём). Дальше условие, чтобы разблокировать управление, нам нужно выполнить 3 действия - поставить ручку тормоза в экстренное, выключить педалью DSD и перевести реверс в нейтраль. Всё управление осуществляется виртуальными функциями.
pROssO
давай позже этот момент обсудим, а то говорим обо всём сразу, это сбивает с толку :)
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

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

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

Света
ну естественно мы управляем процессом, значит игрок должен переместить рукоятки в соответствии с особенностями управления. Условие я описал, вот по такому принципу и нужно сделать
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

Cross писал(а):управление не блокируется, из-за чего в момент работы сигналки можно спокойно отпустить тормоз и снова ехать. А нужно сделать так, чтобы когда сработало аварийное, то блокировались движковые тяга, тормоз и реверс
Это ведь уже используется на локомотивах, где надо вставить ключик для разблокировки :) .
Cross писал(а):нам нужно выполнить 3 действия - поставить ручку тормоза в экстренное, выключить педалью DSD и перевести реверс в нейтраль.
Важно отследить очередность выполнения этих операций?

--- добавлено позже в 07 авг 2015, 20:00 ---

Может такой вариант: для блокировки использовать часть начальной установки локомотива с ключиком (например, class 20), только вместо переменной, описывающей, вставлен ключик или нет, использовать переменную, которая примет правильное значение после выполнения всех 3 действий в правильном порядке?
Сильные люди - это не те, у которых всё хорошо, а те, у которых всё хорошо несмотря ни на что.
Аватара пользователя
pROssO
Ветеран
Сообщения: 3524
Зарегистрирован: 21 май 2012
Откуда: Минск
Репутация: 4861

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение pROssO »

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

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

Света
как бы этот процесс получше описать, ходим где-то рядом, осталось правильно донести мыслю =)
В общем можно даже так. Пока работает DSD сигналка, управление тяги, реверса и тормоза заблокировано. Выключаем пищалку педалью, затем в любом порядке проделываем 3 действия с ручкой реверса, тяги и тормоза (они виртуальные функции, помним). И вот когда соблюдены условия, что виртуальная тяга на нуле, виртуальный реверс на Engine Only, виртуальный тормоз на экстренном, вот тогда должна произойти синхронизация виртуальных функций с движковыми, чтобы мы снова могли управлять локомотивом (разгоняться, тормозить, ехать вперёд-назад)
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

Значит, нужно, чтобы при срабатывании DSD устанавливался флаг-переменная, при которой работа ТЭДов запрещена. И этот флаг должен сбрасываться только при выполнении условия "сбросить DSD"; А ПОТОМ "виртуальная тяга на нуле, виртуальный реверс на Engine Only, виртуальный тормоз на экстренном"?
Сильные люди - это не те, у которых всё хорошо, а те, у которых всё хорошо несмотря ни на что.
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

да, как-то так это представляется. А уж ставить ли флаги, или задать функцию проверки там, если DSD == 1 и т.д, тогда управление движковыми функциями рассинхронизируется. Ещё если сделать 3 действия, главное, чтобы 3 были выполнены, то есть через операнд AND их перечислить, тогда вернуть синхронизацию.
Любопытно взглянуть на код, там не должно быть сложно в реализации
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

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

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

Света
сложно, так не нужно делать. И физическое управление не блокируется, блокируются только движковые функции, выставляясь на указанные позиции. Реверс на ноль, тяга на ноль, тормоз на 1 (экстренный). Здесь задача установить базовые контроллы в указанные позиции и отвязать их от виртуальных (чем мы можем действовать на рукоятки), а затем условие, сначала выключить DSD, потом поставить виртуальные в те же положения, что и движковые
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

Задачу можно разделить на две части, верно?

--- добавлено позже в 07 авг 2015, 20:43 ---

"Реверс на ноль, тяга на ноль, тормоз на 1 (экстренный). Здесь задача установить базовые контроллы в указанные позиции и отвязать их от виртуальных" - ведь это происходит при начальной загрузке локомотива? Если в функцию вставить это:
gReverserState = 0
gRegulator = 0
gBrakeState = 0
и пройти этот список 1 раз, это прокатит?
Последний раз редактировалось Света 07 авг 2015, 20:47, всего редактировалось 1 раз.
Сильные люди - это не те, у которых всё хорошо, а те, у которых всё хорошо несмотря ни на что.
Аватара пользователя
Cross
Разработчик
Сообщения: 6330
Зарегистрирован: 14 дек 2011
Откуда: Москва
Репутация: 2985

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

Света
ну как бы изначально виртуальные и движковые функции связаны, иначе бы мы не смогли управлять локомотивом. Там вся задача в том, что сработала DSD, мы ничего не сделали и по истечении таймера происходит экстренное торможение. Так вот с этого условия управление движковыми фунциями блокируется, переведя их в заданные положения. И пока звучит DSD, мы ничего сделать не сможем. Отключаем DSD и после выполняем 3 действия с рукоятками. Я уже не знаю как объяснить всё это
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

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

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Cross »

проблем нет, всё это работает. Просто когда поезд на ходу, тогда работает движковая функция экстренного тормоза, которая так же может быть активирована кнопкой BackSpace. Но вот когда поезд останавливается, тогда тормоз можно сбросить как обычно, а этого не должно происходить, пока не выполним процедуру, описанную выше. Щас управление не блокируется никак.
*Train Simulator 2018*
Изображение
Аватара пользователя
Света
Разработчик
Сообщения: 752
Зарегистрирован: 13 мар 2015
Репутация: 1470

Re: Патчи для ПС, мини правки, замена сценариев на стандарт

Сообщение Света »

Если теперь поставить выковырянный кусок кода из локомотива с ключиком, это подойдет? Там ведь тоже все заблокировано, пока не вставить ключик, можно взять фрагмент, который отвечает именно за этот тормоз. Или нет? Если нет, то почему?
Сильные люди - это не те, у которых всё хорошо, а те, у которых всё хорошо несмотря ни на что.
Ответить