Форум Trainsim  

Вернуться   Форум Trainsim > Microsoft Train Simulator > MSTS - Об игре

Ответ
 
Опции темы Опции просмотра
Старый 11.10.2008, 12:14   #1
DeBUG
Опытный
 
Регистрация: 11.10.2008
Сообщений: 201
Вы сказали Спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
DeBUG стоит на развилке (репутация по умолчанию)
Сообщение Мультиплеер. Разработка сетевого блока.

Для приближения к нормальной сетевой игре пишу код сетевого блока. Если есть информация по данной теме предлагаю ее опубликовать, также можно высказывать свои пожелания и предположения по работе сетевого модуля. Разбирающиеся люди могут предлагать структуру и модель приложения. Любые толковые идеи всегда выслушаю.

Краткое ТЗ:

1.Клиент-серверное приложение.
2.Модульность приложений.
3.Открытая архитектура.
4.Взаимодействие по интерфейсам.

Основная работа идет в направлении таких этапов:

Этапы разработки.

1.Модуль управления стрелками. Выполнен, тестирование.
2.Модуль построения схемы пути.
3.Модуль сигнализации.
4.Модуль управления занятости пути.
5.Модуль визуализации ПС других игроков.


Любой желающий может разрабатывать код любого модуля, потом проведем объединение и компиляцию. Если нет желания раскрывать свои исходники можно будет создать dll с последующим ее подключением к основной программе.

Предположительная дата первых тестирований всего приложения конец декабря.
DeBUG вне форума   Ответить с цитированием
Старый 01.01.2007, 12:00  
Яndex
Спонсор
 
 
Регистрация: 01.01.2007
Сообщения: 500


Реклама показывается изредка по случайному принципу
По умолчанию РЕКЛАМА

 
Старый 11.10.2008, 12:43   #2
Colonel_Abel
Заслуженный машинист форума
 
Аватар для Colonel_Abel
 
Регистрация: 18.06.2007
Адрес: Щербинка ИЦ ЖТ АО ВНИИЖТ Помощник машиниста электровоза
Сообщений: 9,464
Вы сказали Спасибо: 15,556
Поблагодарили 8,842 раз(а) в 3,118 сообщениях
Colonel_Abel стоит на развилке (репутация по умолчанию)
По умолчанию

Могу сказать только одно. Если получится, то все любители МСТС тебе и той команде, что будет с тобой работать памятник при жизни поставят. Я серьезно.
__________________
Россия была, есть и будет Империей. И не важно как обращаются к Императору, Ваше Величество или товарищ Генеральный Секретарь.
Colonel_Abel вне форума   Ответить с цитированием
Старый 11.10.2008, 12:48   #3
art-trans
Матёрый пользователь
 
Регистрация: 28.11.2007
Сообщений: 1,771
Вы сказали Спасибо: 1,439
Поблагодарили 1,526 раз(а) в 459 сообщениях
art-trans стоит на развилке (репутация по умолчанию)
По умолчанию

Очень полезная вещь, но с трудом верится что настолько быстро всё удастся выполнить.

Касаемо построения схемы пути - то для диспетчерского пульта можно взять одно из приложений симуляции диспетчерского пульта - Train Director, Train Dispatcher и т.д. Также желательно чтобы Модуль построения пути был выполнен этаким редактором с детальной привязкой к координатам MSTS, и с возможностью передачи информации о скорости движения состава и некоторых дополнительных элементов, при использовании приложения в качестве диспетчерского пульта при мультиплеерах.

Кроме того я догадываюсь, что могут возникнуть проблемы именно с третьим - модуль сигнализации. Ввиду того, что сейчас уже имеется целых 3 версии, и причём все разные, и ещё и четвёртая готовится, то настроить модуль под все будет довольно сложно, особенно с учётом того, что каждый из вариантов рано или поздно обновляется. Но с учётом возможности задать конкретный закрытый светофор дальше сигнализация может сработать уже самостоятельно.

Что же касается последнего пункта - его рекомендуется выполнить в двух вариантах
1. Модуль, при котором передаётся только информация о местоположении состава другого игрока, и сама составность, а вагоны и локомотивы будут загружаться из компьютера самого игрока - при этом экономия трафа и т.д.
2. Модуль при котором от игрока будет передавать вся информация вместе с файлами вагонов и локомотивов, при этом нужно иметь очень высокоскоростной интернет.

Если оба варианта выполнять, то думаю достаточно сделать в настройках клиента или ещё лучше - сервера - опцию с отметкой того или иного варианта.

Последний раз редактировалось art-trans; 11.10.2008 в 12:56.
art-trans вне форума   Ответить с цитированием
Старый 11.10.2008, 14:11   #4
DeBUG
Опытный
 
Регистрация: 11.10.2008
Сообщений: 201
Вы сказали Спасибо: 0
Поблагодарили 2 раз(а) в 2 сообщениях
DeBUG стоит на развилке (репутация по умолчанию)
По умолчанию

Кратко.
Лучше постамент!

Схему пути будем строить по файлу "ИМЯ_РОУТА.tdb" + что-то. Там по всей видимости бинарное дерево. Я еще не изучал досконально. Думаю что сделаю только алгоритм, а там выставлю на общее усмотрение, может кто поможет с внедрением данных в пульт.

Сигналицазия будет работать из расчета положения стрелок + занятости блок-участков. Сама игра будет делать все за нашу программу. Я буду говорить игре какое положение стрелок + что считать блокированным.

Для визуализации думаю кубиков хватит, а там буду думать, что делать дальше.

Вот и все что есть на сегодня. Пока изучаю алгоритмы файлов маршрутов. Если кто разбираеться в структуре пишите в данной теме. Быстрей будет дело двигаться.
DeBUG вне форума   Ответить с цитированием
Старый 11.10.2008, 15:04   #5
jawa634
Матёрый пользователь
 
Аватар для jawa634
 
Регистрация: 23.02.2008
Адрес: Эстония, Таллинн
Сообщений: 314
Вы сказали Спасибо: 17
Поблагодарили 10 раз(а) в 7 сообщениях
jawa634 стоит на развилке (репутация по умолчанию)
Отправить сообщение для jawa634 с помощью MSN
По умолчанию

Вот немного: http://www.climbatized.narod.ru/folderstructure.html
Ну и здесь: http://www.trainsim.ru/forum/showthr...EF%E0%EF%EE%EA

Последний раз редактировалось jawa634; 11.10.2008 в 15:07.
jawa634 вне форума   Ответить с цитированием
Старый 11.10.2008, 21:09   #6
dj.dan.mc
Матёрый пользователь
 
Аватар для dj.dan.mc
 
Регистрация: 19.11.2007
Сообщений: 1,693
Вы сказали Спасибо: 4
Поблагодарили 584 раз(а) в 170 сообщениях
dj.dan.mc стоит на развилке (репутация по умолчанию)
По умолчанию

Ну, что-ж если сделают MSTS: MP., (также как, например SA:MP) то будет действительно круто.
__________________
Grebnev contra mundum.
dj.dan.mc вне форума   Ответить с цитированием
Старый 11.10.2008, 21:36   #7
APK-LVDZ
Разработчик
 
Аватар для APK-LVDZ
 
Регистрация: 11.05.2007
Адрес: Рига, Латвия
Сообщений: 1,324
Вы сказали Спасибо: 612
Поблагодарили 2,167 раз(а) в 629 сообщениях
APK-LVDZ стоит на развилке (репутация по умолчанию)
По умолчанию

Сам я в программировании такого уровня не шарю, но если нужно - могу помочь в оформлении программы, может и новыми идеями. Уж очень хочется, чтобы такая программа вышла. Обращайтесь в ЛС если что, приблизительно знаю схему управления пультом ДСП (сам готовил несколько маршрутов для поездов).
APK-LVDZ вне форума   Ответить с цитированием
Старый 11.10.2008, 22:28   #8
Dump
Пользователь
 
Регистрация: 03.06.2007
Адрес: Санкт-Петербург
Сообщений: 31
Вы сказали Спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Dump стоит на развилке (репутация по умолчанию)
По умолчанию

Сам третью неделю занимаюсь этим делом, в частности вторым пунктом т.е. Модуль построения схемы пути. Впринципе успехи есть, написан парсер tdb файла, уже есть алгоритм построения карты маршрута, вот только думаю как рисовать карту маршрута, как это сделано в диспетчерских или же как это сделано в AE, склоняюсь к альтернативному варианту, т.е. рисовать без кривых, просто от VectorNode до VectorNode и т.д. Во первых это будет быстрее, во вторых ПС отображать легче будет (на кривых расчётов больше)

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

Общение между игрокам пока возлагал на тимспик..

DeBUG, про управление стрелками поподробнее, если не сложно, я честно говоря пока даже не представляю как это можно реализовать, хотя и не копался с этой проблемой!
Dump вне форума   Ответить с цитированием
Старый 11.10.2008, 23:49   #9
art-trans
Матёрый пользователь
 
Регистрация: 28.11.2007
Сообщений: 1,771
Вы сказали Спасибо: 1,439
Поблагодарили 1,526 раз(а) в 459 сообщениях
art-trans стоит на развилке (репутация по умолчанию)
По умолчанию

Я б вообще делал этакими блок участками, чтобы на них могла помещаться картинка поезда, двух максимум.
art-trans вне форума   Ответить с цитированием
Старый 12.10.2008, 02:03   #10
Dump
Пользователь
 
Регистрация: 03.06.2007
Адрес: Санкт-Петербург
Сообщений: 31
Вы сказали Спасибо: 0
Поблагодарили 1 раз в 1 сообщении
Dump стоит на развилке (репутация по умолчанию)
По умолчанию

art-trans Ну сколько поездов поместиться на экране, это уже будет зависеть , я думаю, от зума...


Посидел я так подумал и все таки понял, что полноценный мультиплеер в MSTS сделать нельзя, не получится, dj.dan.mc, помахать рукой встречному, к сожалению. Единственно, что можно сделать, это написать нормальный диспетчерский пульт конкретно для MSTS, и соответственно нормальная сетевая игра будет реализована только для диспетчера, а машинисты по-прежнему будут представлять себе встречные и воображать . Хотя у меня были такие идиотские мысли типа создания "динамического сценария" и т.д. но это бред... не будем об этом
Поэтому предлагаю сосредоточиться на диспетчере и действовать по плану DeBUG'a. Первый этап уже готов, на сколько я понял, второй этап готов ~65% (у меня пока что), оставшиеся 35% это собственно код отображения карты по данным из файла (проблема там в координатной системе, но выход уже нашел...). 5 этап по сути является частью второго, т.к. отображать это надо наверно все вместе...

А вот 3 и 4 этап я немного не пойму. Чего в сигнализации такого? Файл sigcfg.dat, в нем все есть, что нужно. Да и потом можно отображать только зеленый и красный (открыт\закрыт), или диспетчеру нужно четко знать, что там щас творится на светофоре?

И сразу же тогда вопрос про стрелки: диспетчер должен сам переводить стрелки игроку? Или игрок переводит эти стрелки по указанию диспетчера.
Dump вне форума   Ответить с цитированием
Старый 12.10.2008, 04:08   #11
rs-basique
Опытный
 
Аватар для rs-basique
 
Регистрация: 13.07.2007
Адрес: Курск, Москва
Сообщений: 100
Вы сказали Спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
rs-basique стоит на развилке (репутация по умолчанию)
По умолчанию

Готовить маршрут и открывать сигнал должен диспетчер. При этом у стрелок бывают только 2 положения: "+" и "-", а у сигналов только 2 варианта: "Открыт" или "Закрыт".

И ещё. Очень хотелось бы оставить проходные светофоры на автодействии, так как в реале управлять проходными светофорами невозможно вручную, они работают только автоматически.

То есть на пульт передаётся показание светофора ("открыт"/"закрыт"), и это показание транслируется другим игрокам, но диспетчер не может вручную перекрыть сигнал, по дефолту он должен быть открыт.

P.S. Это уже мелочи "притирки".
rs-basique вне форума   Ответить с цитированием
Старый 12.10.2008, 13:42   #12
Aleks
Матёрый пользователь
 
Регистрация: 25.07.2007
Адрес: г. Москва
Сообщений: 573
Вы сказали Спасибо: 1
Поблагодарили 11 раз(а) в 10 сообщениях
Aleks стоит на развилке (репутация по умолчанию)
Отправить сообщение для Aleks с помощью ICQ
По умолчанию

Цитата:
Сообщение от rs-basique Посмотреть сообщение
И ещё. Очень хотелось бы оставить проходные светофоры на автодействии, так как в реале управлять проходными светофорами невозможно вручную, они работают только автоматически.
Не совсем. Если делать двустороннюю АБ, то нужно как-то гасить светофоры противоположного установленному направления.
ИМНО, лучше всего, воздействовать на переменную enabled светофора. Устанавливаем ей значение TRUE и светофор открывается, после проезда поезда сбрасываем значение в FALSE.
Aleks вне форума   Ответить с цитированием
Старый 12.10.2008, 15:14   #13
art-trans
Матёрый пользователь
 
Регистрация: 28.11.2007
Сообщений: 1,771
Вы сказали Спасибо: 1,439
Поблагодарили 1,526 раз(а) в 459 сообщениях
art-trans стоит на развилке (репутация по умолчанию)
По умолчанию

Лучше всего чтобы после проезда поезда сигнал сам менялся на красный, и чтобы была опция автоматического задания открытого сигнала где это возможно для проходных светофоров, как это выполненно в Train Director'е. Если не понятно - могу добавить иллюстрированное пояснение.
art-trans вне форума   Ответить с цитированием
Старый 12.10.2008, 16:13   #14
Aleks
Матёрый пользователь
 
Регистрация: 25.07.2007
Адрес: г. Москва
Сообщений: 573
Вы сказали Спасибо: 1
Поблагодарили 11 раз(а) в 10 сообщениях
Aleks стоит на развилке (репутация по умолчанию)
Отправить сообщение для Aleks с помощью ICQ
По умолчанию

Цитата:
Сообщение от art-trans Посмотреть сообщение
Лучше всего чтобы после проезда поезда сигнал сам менялся на красный, и чтобы была опция автоматического задания открытого сигнала где это возможно для проходных светофоров, как это выполненно в Train Director'е.
А так и будет. Переменная enabled просто разрешает светофору открываться, при выполнении определенных условий (свободность блок-участка, показание след. светофора и т.д.). Условия задаются в файле sigscr.dat.
Aleks вне форума   Ответить с цитированием
Старый 12.10.2008, 16:26   #15
ВIGMAN
Заблокирован
 
Регистрация: 15.06.2008
Адрес: 117452 г. Москва, дальше спросить у первого встречного...
Сообщений: 1,748
Вы сказали Спасибо: 2,282
Поблагодарили 1,913 раз(а) в 594 сообщениях
ВIGMAN стоит на развилке (репутация по умолчанию)
По умолчанию

ИМХО Сколько не мутузили эти программы для мультиплеера всё стремиться к нулю!
ВIGMAN вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 22:49. Часовой пояс GMT +4.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
© 2001-2019, Администраторы и разработчики Клуба Trainsim
TopList Нажми для появления дома Trainsim на карте Intermap
Что это?