Autor Wątek:  Serwer ruchu - pociągi towarowe  (Przeczytany 18238 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6306
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 336
Serwer ruchu - pociągi towarowe
« dnia: 19 Kwietnia 2008, 09:46:55 »
Zastanawiam się właśnie nad działaniem serwera ruchu. (Serwer ruchu ma pamiętać bieżący stan scenerii i synchronizować zdarzenia pomiędzy użytkownikami.) O ile samo przesuwanie pociągów po torach i przesyłanie danych jest dosyć proste, to zatrzymałem nad powodem, dla którego pociągi mają jeździć.

Otóż większego problemu nie ma z pociągami osobowymi - mamy rozkład jazdy z podanymi godzinami i budową składu. O ile nie trzeba rozformowywać składów i pożyczać wagonów do innych składów, wydaje się to być proste do zrobienia. Wystarczy tabela odjazdów, przystanków, prędkości szlakowych i będzie śmigać.

Problem zaczyna się w przypadku pociągów towarowych. Można je puszczać wg rozkładu jak osobowe i bez większych problemów będą kursować między kopalnią a elektrownią. Ale np. jak zrobić misję, w której trzeba zostawić po jednym wagonie z węglem na każdej stacji, a potem zebrać puste? Albo jak wozić węgiel między kopalnią a elektrownią i hutą w sposób nie planowy? (Tzn. węglarki i lokomotywy są przydzielane dynamicznie tam, gdzie jest większa potrzeba.) Albo jak wozić drewno z tartaku do miejsc, gdzie jest potrzebne? Jak zaprogramować, że po wjechaniu ze składem na bocznicę, ma z tartaku wyjechać SM03 i zabierając po 2 wagony na raz rozformować skład, po czym również po 2-3 wagony sformować inny? (I to nie ma być jednorazowo, tylko powtarzać się co jakiś czas.)

Pierwszy mój pomysł polegał na tym, żeby przypisać do wagonu miejsce załadunku i rozładunku. No tak, ale to jest skutek, a nie przyczyna. Przyczyną jest potrzeba przewiezienia ładunku z jednego punktu do innego. Znając typ ładunku (sypki, gabarytowy, kontener) i jego ilość, trzeba by poszukać odpowiednich wagonów, a następnie lokomotywy... Zebrać wagony w odpowiednim miejscu, za pomocą lokomotywy manewrowej załadować, a następnie wysłać w drogę i rozładować.

Z drugiej strony, zarządzanie wagonami i lokomotywami wydaje się być zbyt skomplikowane, jak na zadania prostego serwera ruchu, który nawet nie ma informacji o współrzędnych torów w terenie (jedynie o ich połączeniach i długości).

Drugi pomysł nazwałem roboczo MovLoader. Jest to taki tor, który umie załadować lub rozładować postawiony na nim wagon. Również, w zależności od typu wagonu oraz stanu jego załadowania, potrafi zmienić punkt docelowy umieszczenia wagonu (wskazać inny MovLoader).


Piszę o tym tutaj z nadzieją, że może ktoś zna sytuację lepiej niż ja i może podsunąć jakieś rozwiązania. Obecnie mamy misje manewrowe ograniczające się do podłączenia się pod stojący skład, zmianę czoła, zmianę składu oraz odjechania od składu na końcu trasy. (Może coś pominąłem, ale nie ma to większego znaczenia. Eaosy w Dejawach nie ładują się węglem w sposób przydatny dla misji i nie da wozić węgla do Skwarek przez całą dobę.)

Żeby serwer ruchu mógł prowadzić towarowe pociągi AI oraz sterować lokomotywami manewrowymi, musi być dokładnie poinformowany, co ma gdzie przemieścić. Ponadto ma działać przez całą dobę i dowolnie długi czas, więc ustawienie eventów na jednorazową akcję odpada.
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline DiDok

  • Wiadomości: 114
  • Precz z dynamic.dat! Niech żyje STV!
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #1 dnia: 19 Kwietnia 2008, 10:57:12 »
W Train Simulatorze są BARDZO skomplikowane misje manewrowe - przetacza się mnóstwo towaru, często wyciąga się 2-3 wagony ze środka 40-wagonowego składu, itp. Nie wiem, jak dokładnie wygląda system kontroli, ale wiem tylko, że w TS każdy wagon ma przydzielony swój własny numer - może dałoby się to jakoś wykorzystać (np. wagon 1-64483 stoi na torze elektr1, mamy go zabrać i włączyć w środek składu 3-54428;1-48859;1-85942;4-91142 stojącego na torze elewyj2 - skrypt/serwer sprawdzi, czy na torze elewyj2 stoją wagony w kolejności 3-54428;1-48859;1-64483;1-85942;4-91142 i uruchamia semafor lub robi cokolwiek innego, potem śle info, że wagony 1-48859;1-64483;1-85942;4-91142 mają się znaleźć na torze kopaln1 itd. itp.). Nie wiem, czy jest to wykonalne, ale może pomoże...

http://www.dzyszla.aplus.pl/download-35.html
^ Tu znajdziesz bardzo loader do MaSzyny ^

Offline Dolmio89

  • Wiadomości: 1185
    • Zobacz profil
  • Otrzymane polubienia: 9
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #2 dnia: 19 Kwietnia 2008, 11:19:01 »
Stworzenie takiego serwera ruchu i prowadzenie ruchu 24h/d wymaga moim zdaniem pewnych zmian w istniejących sceneriach. Po pierwsze stacje początkowe i końcowe powinny mieć lokomotywownie i odpowiednią liczbe torów postojowych. Po przyjechaniu do stacji docelowej należy odstawić skład na wyznaczony tor a loka do szopy, później ktoś inny zaczyna misje z szopy, zabiera skład i rusza w droge. Tak powinno to wyglądać dla pociągów osobowych, z towarowymi jest problem, manewry raczej nie wchodzą w gre, bo AI nie potrafi podpiąć się do wagonów i ma problemy ze zmianą kiedynku jazdy, a nie wiem czy znajdzie się ktoś chętny do obsługi SM'ki na każdej większej stacji. Lepiej będzie zrezygnować ze zbyt skomplikowanych manewrów. Pozostaje problem co z ładunkiem, bo wożenie węgla tam i z powrotem jest troche dziwne. Czytając secenry.doc widziałem, że istnieje możliwość dopisania do torów eventów ładowania i rozładowywania wagonów. Można więc napisać misje gdzie prowadzimy pociagi na trasach kopalnia-elektrownia itd. W tym wypadku pociągi towarowe będą musiały być zestawione z tych samych typów wagonów. Można też po prostu wstawić na trasie jakieś magazyny, bocznice i przeciągać wagony między tymi punktami, w końcu w gagsach albo kontenerach i tak nie widać żadnego ładunku.

To tyle co do pomysłów. Mam jeszcze pytanie jak planujesz rozwiązać problem gdy nastąpi zerwanie połączenia z serwerem, lub gdy ktoś po prostu wyłączy symka gdy jego pociąg będzie na szlaku? Taka sytuacja może doprowadzic do paraliżu ruchu na całej scneri, przejęcie sterowania przez AI nie do końca pomoże, bo jak już mówiłem AI nie jest zdolne do wykonywania skomplikowanych manewrów i utknie na stacji przy Ms2.

Offline Grzegorz KK

  • Wiadomości: 672
    • Zobacz profil
  • Otrzymane polubienia: 1
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #3 dnia: 19 Kwietnia 2008, 11:26:30 »
Nie wiem czy dobrze dedukuje ale TS był od razu przygotowywany na takie działania(od samego początku programiści planowali to) a tutaj zrobić to od podstaw wszystko, więc zadanie troche trudniejsze.
RA: Pisałem do ciebie na priv rozumiem że serwer będzie odebierał wszystkie dane wysyłane przez położenia loka przemieszczenia przyśpieszenie itd. Pomysł wydaje się być przedni,podpisuje się pod tym.

Mam jeszcze pytanie jak planujesz rozwiązać problem gdy nastąpi zerwanie połączenia z serwerem, lub gdy ktoś po prostu wyłączy symka gdy jego pociąg będzie na szlaku? Taka sytuacja może doprowadzic do paraliżu ruchu na całej sceneri.
Jeśli nie przejęcia przez AI to chyba najbardziej bolesnym aczkolwiek najprostszym sposobem jest zniknięcie obiektu ze sceneri !.Ale myśle jeżeli serwer będzie w miare dobrze rozwinięty to zauważy zniknięcie obiektu ze sceneri:],i nie będzie potrzeby przejmowania prowadzenia przez AI.
Tyle z mojej strony.
Pozdrawiam.
« Ostatnia zmiana: 19 Kwietnia 2008, 11:33:13 wysłana przez Grzegorz KK »
Nikon D60+18-55 II
PMR Twintalker 5710 X2 (Niezawodna łączność na szlaku i w terenie)
Sony Full HD HDR-CX-115 (uzupełnienie siatki jakością FUll HD)

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6306
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 336
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #4 dnia: 19 Kwietnia 2008, 11:38:49 »
Wagony będą numerowane i każdy będzie miał własny "tor docelowy", gdzie będzie mógł być zmieniony ładunek i określony nowy "tor docelowy".

Scenerie na pewno będą przerobione, pisałem o tym częściowo tutaj (link). Włączanie się do jazdy będzie następowało z aktualnej pozycji składu. Żeby wystartować z szopy, trzeba się będzie zalogować  do serwera ruchu, zanim jazda się rozpocznie (będzie wiadomo, o której godzinie).

Nie będzie działać obecne AI, bo rolę AI przejmie serwer ruchu.

Po zerwaniu połączenia serwer ruchu włączy AI. Jeśli połączenie zostanie w miarę szybko przywrócone, a różnice będą niezbyt duże, będzie można się ponownie zsynchronizować pozycję. Składy nie będą znikać. W skrajnym przypadku serwer ruchu przestawi składy, które pojechały w nieodpowiednią stronę na właściwe dla nich tory (wg rozkładu).

Serwer ruchu ma prowadzić ruch zgodnie z rozkładem jazdy, w którym jest określone, na który tor mają być przemieszczone składy. Jeśli tor ma być czasowo zamknięty, trzeba zmienić rozkład. Jeśli ruch nie będzie mógł być wykonany zgodnie z rozkładem, serwer ruchu będzie zgłaszał alarmy - nie przewiduję, żeby wykazywał się inteligencją wystarczającą do zmodyfikowania rozkładu.

Ograniczenia prędkości będą miały wpływ na AI. Serwer ruchu nie będzie optymalizował czasu przejazdu. Jeśli coś mu nie zagra, zgłosi alarm.
« Ostatnia zmiana: 19 Kwietnia 2008, 12:05:21 wysłana przez Ra »
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline uetam

  • Zasłużony dla Symulatora
  • Wiadomości: 2641
    • Zobacz profil
  • Otrzymane polubienia: 6
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #5 dnia: 19 Kwietnia 2008, 11:51:34 »
A czasowe zamkniecia torow, ograniczenia predkosci? To wszystko ma przeciez wplyw na czas przejazdu. Co z wtedy?

Offline Wilu

  • Wiadomości: 343
    • Zobacz profil
  • Otrzymane polubienia: 4
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #6 dnia: 22 Kwietnia 2008, 16:17:57 »
Ja również uważam, że to genialny pomysł.

Offline El Mecánico

  • Wiadomości: 1067
  • Dawniej El Driver
    • Zobacz profil
    • Stowarzyszenie POLARIS - OPP
  • Otrzymane polubienia: 2
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #7 dnia: 22 Kwietnia 2008, 16:38:26 »
Jeszcze jedna sprawa: wypadki i wykolejenia. Albo robimy uproszczenie, że wypadek/wykolejenie nie jest możliwe, albo algorytm będzie wymagał maszyny klasy mainframe do liczenia na bieżąco.

Iwan
« Ostatnia zmiana: 24 Kwietnia 2008, 08:49:52 wysłana przez iwan »
www.polaris.org.pl
www.ciemneniebo.pl
MaSzyna_LD w trakcie tworzenia...

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6306
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 336
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #8 dnia: 22 Kwietnia 2008, 16:45:54 »
Serwer ruchu na razie nie będzie obsługiwał wykolejeń. Powód jest prosty - ma działać non-stop, więc w przypadku wykolejenia, ktoś by musiał przyjechać dźwigiem i posprzątać. Może kiedyś...
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline DiDok

  • Wiadomości: 114
  • Precz z dynamic.dat! Niech żyje STV!
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #9 dnia: 22 Kwietnia 2008, 18:25:33 »
Myślę, że na razie nie ma po co sie rozpędzać - najpierw stabilne działanie bez lagów, dopiero potem dokładanie kolejnych elementów, budowa scenerii, misji, etc. =]

http://www.dzyszla.aplus.pl/download-35.html
^ Tu znajdziesz bardzo loader do MaSzyny ^

Offline El Mecánico

  • Wiadomości: 1067
  • Dawniej El Driver
    • Zobacz profil
    • Stowarzyszenie POLARIS - OPP
  • Otrzymane polubienia: 2
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #10 dnia: 22 Kwietnia 2008, 18:55:46 »
@Ra, masz już maszynę i łączę na którym to wszystko będzie wisiało? I oprogramowania serwera nie robisz chyba na platformę M$??
www.polaris.org.pl
www.ciemneniebo.pl
MaSzyna_LD w trakcie tworzenia...

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6306
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 336
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #11 dnia: 22 Kwietnia 2008, 19:17:05 »
Nie mam w zasadzie nic. Do zrobienia jest wszystko, jedynie scenerii nie muszę robić. Na razie będzie na M$. I będzie działało w oparciu o komponenty @Paula.

A co do współpracy z MaSzyną to nie wiem, proszę się na razie nie napalać. Będę wdzięczny za pomoc w katalogowaniu i opisywaniu paczek. Serwer ruchu przy współpracy z MaSzyną będzie wymagał zainstalowania określonych plików i potrzebny jest mechanizm ich wyszukiwania, pobierania i instalowania.

Po zalogowaniu do serwera ruchu i wybraniu pojazdu bądź nastawni, poda on listę plików, które należy mieć, by móc się zsynchronizować. Potrzebny będzie teren, przez który się będzie jechać (sama sceneria może być dużo większa) oraz cały aktualnie używany na scenerii serwera tabor. Nie bardzo sobie wyobrażam pobieranie za każdym razem 200MB, więc trzeba to zrobić inaczej. Do tego jest mi potrzebny katalog paczek i skrypty instalacyjne do nich.
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline acze

  • Wiadomości: 8
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #12 dnia: 26 Kwietnia 2008, 17:45:26 »
Serwer ruchu steruje ruchem, czyli podejrzewam, że zakłada pewną wbudowaną sztuczną inteligencję.
Sztuczna inteligencja mialaby dwa zadania:
- sterowanie ruchem
- sterowanie pociągami w czasie problemów.

Czy sterowanie ruchem musi być elementem sztucznej inteligencji? Nie może tego robić jakiś... dyżurny?
Później można ewentualnie byłoby dopisać automatycznego dyżurnego.

"Podejżewam?" Toz to oczy bola jak sie taki nie-wyraz czyta... Iwan
« Ostatnia zmiana: 27 Kwietnia 2008, 09:29:05 wysłana przez iwan »
http://openrail.net - algorytmika kolejowa:).

Offline uetam

  • Zasłużony dla Symulatora
  • Wiadomości: 2641
    • Zobacz profil
  • Otrzymane polubienia: 6
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #13 dnia: 26 Kwietnia 2008, 18:02:36 »
Czy sterowanie ruchem musi być elementem sztucznej inteligencji? Nie może tego robić jakiś... dyżurny?
Później można ewentualnie byłoby dopisać automatycznego dyżurnego.
Jeden dyżurny na całą scenerię ?:) I siedzący przy kompie 24h/dzien?

Offline acze

  • Wiadomości: 8
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #14 dnia: 26 Kwietnia 2008, 18:06:51 »
Jeden dyżurny na całą scenerię ?:) I siedzący przy kompie 24h/dzien?

Racja, może bardziej dyspozytor.
http://openrail.net - algorytmika kolejowa:).

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6306
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 336
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #15 dnia: 26 Kwietnia 2008, 18:11:05 »
Serwer ruchu nie steruje ruchem, a może raczej niezupełnie steruje. Serwer ruchu pamięta aktualny stan scenerii i prowadzi ruch zgodnie z rozkładem, który mu jakaś nie-sztuczna inteligencja wprowadziła. Nie przewiduję, by serwer ruchu miał sztuczną inteligencję. W razie problemów sobie nie poradzi, jedynie będzie zgłaszał alarmy.
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline youBy

  • Deweloper
  • Wiadomości: 6163
  • Co tam?
    • Zobacz profil
    • Automat Weryfikujący Regulację i Lambdę
  • Otrzymane polubienia: 865
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #16 dnia: 26 Kwietnia 2008, 18:33:12 »
Hmm, czyli prowadząc pociągi będzie to robił ze stałymi (sztywnymi) parametrami?

Swoją drogą jest to dosyć ciekawe rozwiązanie, gdyż z zewnątrz nie będzie widać różnicy (no gorzej, jak ktoś będzie na popychu albo w podsyle siedzieć)
Xoov
Powyższy post wyraża jedynie opinię autora w chwili publikacji. Autor zastrzega sobie prawo do zmiany poglądów bez podawania przyczyny, jak również informowania o tym.

Offline acze

  • Wiadomości: 8
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #17 dnia: 26 Kwietnia 2008, 18:35:42 »
Co to znaczy w takim razie prowadzi ruch?

Mówi co, skąd, dokąd?
Jak rozwiązany byłby problem którędy?

Czyli jazda manewrowa formalnie też może być uwzględniona w rozkładzie; Wtedy to dokąd jedzie dany wagon nie jest właściwością wagonu, a rozkładu.
http://openrail.net - algorytmika kolejowa:).

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6306
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 336
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #18 dnia: 26 Kwietnia 2008, 18:59:06 »
Myślę, że rozkłady będą w pewnym stopniu elastyczne. Tzn. jeśli jakiś zapisany w rozkładzie przebieg nie będzie mógł być utwierdzony, to pociągi będą na to oczekiwać (a po upływie zadanego czasu zgłaszać alarm).

Na obecną chwilę w rozkładzie przewiduję:
 - godzinę odjazdu (lub -1 oznaczające: wykonać, gdy się da),
 - maksymalny czas wykonania (po tym czasie zgłasza alarm),
 - tryb jazdy: manewrowy/pociągowy,
 - tor docelowy (do ustawienia przebiegu),
 - czy ma dojechać do wagonów (zmienić połączenia),
 - oczekiwanie na określony stan toru przeładunkowego.

Tor przeładunkowy jest to taki tor, na którym mogą być zmieniane ładunki wagonów oraz może być zmieniane ich miejsce docelowe jazdy. Tor przeładunkowy może również zliczać wagony określonych typów (tzn. sprawdzać, czy skład jest odpowiednio sformowany).


Prowadzi ruch tzn. ustawia przebiegi zgodnie z rozkładem i aktualnymi możliwościami oraz przesuwa pociągi wzdłuż ustawionych przebiegów, zgodnie z rozkładem. Dla mnie sterowanie oznacza takie kontrolowanie czegoś, by uzyskać określony cel. Tymczasem serwer ruchu nie będzie miał celu, do którego będzie dążył, tylko będzie wykonywać ruchy zgodnie z rozkładem.

Serwer ruchu nie będzie określał co, skąd i dokąd - to będzie zapisane w rozkładzie. Również którędy jest zapisane w rozkładzie.

Jazda manewrowa też ma być uwzględniona w rozkładzie. Być może w sposób dynamiczny, tzn. po znalezieniu lokomotywy wg jakiś kryteriów (moc), zostanie jej przydzielony rozkład do pracy manewrowej. Powinny być dostępne rozkłady określające drogi przejazdu pomiędzy różnymi torami przeładunkowymi.


Zastanawiam się nad czymś takim: przy kopalni będzie tor przeładunkowy węgla, któremu będzie narastać w czasie ilość dostępnego węgla do załadunku (szybkość narastania może się zmieniać w czasie). W momencie przekroczenia pewnej ilości tor przeładunkowy będzie się domagał dostarczenia wagonów określonego typu (węglarek), aby nadmiar surowca zabrać. Z drugiej strony będzie np. elektrownia i huta, które będą zgłaszać zapotrzebowanie na węgiel. W efekcie powinny być wyszukane wolne wagony i dostarczone na tor załadunkowy, gdzie po napełnieniu dostały by przydział (rozkład) z jazdą do miejsca rozładunku. (Tylko nie jestem pewien, czy poszukiwaniem wagonów powinien się też zajmować serwer ruchu.)

Zacząłem ten wątek, żeby zebrać opinie i pomysły w tym zakresie...
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline acze

  • Wiadomości: 8
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #19 dnia: 26 Kwietnia 2008, 19:14:07 »
W efekcie powinny być wyszukane wolne wagony i dostarczone na tor załadunkowy, gdzie po napełnieniu dostały by przydział (rozkład) z jazdą do miejsca rozładunku. (Tylko nie jestem pewien, czy poszukiwaniem wagonów powinien się też zajmować serwer ruchu.)

Czyli wykonuje pracę kilkudziesięciu ludzi, w kwestiach występujących w świecie rzeczywistym i problemów występujących jedynie w świecie wirtualnym:
- przebiegi - dyżurni ruchu na różnych nastawniach
- tworzenie rozkładu (wyszukiwanie wagonów) - dyspozytorzy
- pamiętanie stanu świata - tylko w świecie wirtualnym (w świecie rzeczywistym zczytuje z torów na bieżąco)

Wydaje mi się, że jeśli serwer ruchu podzielony byłby na moduły, realizujące osobno wymienione przez Ciebie funkcje, to jak najbardziej może to robić. Ewentualnie wtedy serwer ruchu będzie się rozumieć nieco bardziej abstrakcyjnie. Wystarczy podzielić go na moduły funkcjonalne.
http://openrail.net - algorytmika kolejowa:).

Offline MichałŁ

  • Wiadomości: 1179
    • Zobacz profil
  • Otrzymane polubienia: 37
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #20 dnia: 26 Kwietnia 2008, 19:26:44 »
A może by zrobić tak żeby to ludzie a nie program sterował by tym wszystkim powiedzmy jeden dyspozytor i paru dyżurnych ruchu którzy by kierowali manewrami i przebiegiem pociągów jak na prawdziwej kolei.

Na tym forum poprawne pisanie wyrazu "kolej" oraz jego poprawna deklinacja to podstawa... Iwan
« Ostatnia zmiana: 27 Kwietnia 2008, 09:34:22 wysłana przez iwan »

Offline AtapiCl

  • Zasłużony dla Symulatora
  • Wiadomości: 4426
    • Zobacz profil
    • O warszawskiej części linii kolejowej nr 7 Warszawa – Lublin i nie tylko ;)
  • Otrzymane polubienia: 212
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #21 dnia: 26 Kwietnia 2008, 19:34:38 »
A może by zrobić tak żeby to ludzie a nie program sterował by tym wszystkim powiedzmy jeden dyspozytor i pare dyżurnych ruchu którzy by kierowali manewrami i przebiegiem pociągów jak na prawdziwej koleji.

Czytaj cały wątek... Było napisane, że nie da rady tak zrobić, bo nikt nie będzie siedział 24h/24h przez 7 dni w tygodniu...

Offline MichałŁ

  • Wiadomości: 1179
    • Zobacz profil
  • Otrzymane polubienia: 37
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #22 dnia: 26 Kwietnia 2008, 20:07:06 »
Rozumiem to że nikt nie będzie siedział przez 24h/ na dobę. Może prowizorycznie taki serwer będzie działał w określone godziny i dni. Np. dyspozytor wykona plan pociągów włączy serwer a kiedy je się wykona to go wyłączy i tak powiedzmy raz albo dwa razy w tygodniu.

Offline Dolmio89

  • Wiadomości: 1185
    • Zobacz profil
  • Otrzymane polubienia: 9
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #23 dnia: 26 Kwietnia 2008, 20:12:55 »
Cytuj
Rozumiem to że nikt nie będzie siedział przez 24h/ na dobę. Może prowizorycznie taki serwer będzie działał w określone godziny i dni. Np. dyspozytor wykona plan pociągów włączy serwer a kiedy je się wykona to go wyłączy i tak powiedzmy raz albo dwa razy w tygodniu.

I jaki to niby ma sens? Założeniem tego projektu jest stworzyć serwer działający 24h/d. Kiedy masz ochote odpalasz maszynę i jedziesz. Serwer może udostępniać człowiekowi możliwość sterowania ruchem (powiedzmy każda większa stacja może mieć swojego dyżurnego) ale musi też samodzielnie działać, bo nie zawsze będzie ktoś chętny do tego.

Offline Ra

  • Zasłużony dla Symulatora
  • Wiadomości: 6306
  • Ostatni gasi światło...
    • Zobacz profil
    • Instalator+Starter+Edytor
  • Otrzymane polubienia: 336
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #24 dnia: 26 Kwietnia 2008, 20:26:50 »
Przebiegi mam zamiar zrobić w postaci instrukcji, co trzeba jak ustawić, żeby był przebieg z toru x na tor y danej stacji (również między stacjami). Alternatywy ani awarii nie będzie. (Chyba że podłączy się żywy użytkownik do nastawni.) Ustawienie przebiegu będzie uruchamiane zapisem w rozkładzie dla pojazdu znajdującego się na określonym torze.

Rozkład, o ile w ogóle będzie modyfikowany, będzie składany z cegiełek obejmujących przemieszczanie wagonu(-ów) określonego typu między torami przeładunkowymi (w tym postojowymi - tory postojowe będą szczególnym przypadkiem torów przeładunkowych - będą jedynie zmieniały miejsce przeznaczenia wagonu).

Co do dzielenia na moduły, to na razie nie widzę potrzeby. Pierwsza wersja będzie prawie na pewno działać według stałego rozkładu. Serwer ruchu ma być aplikacją samodzielną, to znaczy ma działać przez dowolnie długi czas. W związku z tym sam musi przesuwać pociągi oraz ustawiać przebiegi zgodnie z rozkładem. Formalnie można to rozdzielić w programie, ale fizycznie to raczej nie.

Sterowanie ręczne, czyli podłączanie użytkowników przejmujących składy i nastawnie, będzie opcją dla serwera ruchu. Nie może być tak, że jak urwie się połączenie, to pociąg stanie na szlaku, a stacja przestanie funkcjonować.
¯\_( ͡° ͜ʖ ͡°)_/¯ Ra

Polecam: kręgarz Wojciech Walczak, projekt masarni

Offline DiDok

  • Wiadomości: 114
  • Precz z dynamic.dat! Niech żyje STV!
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #25 dnia: 27 Kwietnia 2008, 11:06:31 »
Czy ten serwer ruchu to jest z założenia taki wstęp do multiplayera? Jak widzisz dalszą przyszłość tego projektu i jego maksymalne możliwości? (mam kilka pomysłów, np. przydzielanie mechom uprawnień na konkretne lokomotywy - żeby nowicjusz nie dorwał sie od razu do Epoki, po paru kilometrach wykoleił składu i przyblokował ruchu)

http://www.dzyszla.aplus.pl/download-35.html
^ Tu znajdziesz bardzo loader do MaSzyny ^

Offline acze

  • Wiadomości: 8
    • Zobacz profil
  • Otrzymane polubienia: 0
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #26 dnia: 27 Kwietnia 2008, 12:17:06 »
I będą egzaminy na mechów, a jak ktoś przerżnie S1, to symulator woźnego ;).
http://openrail.net - algorytmika kolejowa:).

Offline Wilu

  • Wiadomości: 343
    • Zobacz profil
  • Otrzymane polubienia: 4
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #27 dnia: 27 Kwietnia 2008, 12:40:04 »
Czy ten serwer ruchu to jest z założenia taki wstęp do multiplayera? Jak widzisz dalszą przyszłość tego projektu i jego maksymalne możliwości? (mam kilka pomysłów, np. przydzielanie mechom uprawnień na konkretne lokomotywy - żeby nowicjusz nie dorwał sie od razu do Epoki, po paru kilometrach wykoleił składu i przyblokował ruchu)

Tak to jest taki wstęp jakby, ale nie ma co się napalać, bo nic jeszcze nie powstało.

Offline firleju

  • Zasłużony dla Symulatora
  • Wiadomości: 1588
  • bawię się (w) exe...
    • Zobacz profil
  • Otrzymane polubienia: 121
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #28 dnia: 29 Kwietnia 2008, 08:15:17 »
Ja bym to zrobił tak:
- serwer prowadzący ruch oddziałuje tylko na infrastrukturę fizyczną i Ai pojazdów.
- budujemy drugi serwer komunikaujący się z nim a posiadający funkcje AI dyspozytora komunikujący się z pierwszym

Gdy powstaje nowa wersja AI nie trzeba wtedy restartować całej scenerii, ale wystarczy zrestartować jednen program.
W czasie kiedy serwery nie mają połączenia serwer ruchu doprowadza wszystkie rozpoczęte czynnosci do końca i czeka na uruchomienie serwera AI.
Uważam, że takie rozdzielenie pomoże usunąć na etapie projektu masę błędów na etapie tworzenia. Pozwala też elastyczniej wprowadzać nowe funkcje do istniejącego oprogramowania.
Użytkownik łączyłby się z serwerem AI, który przydzielałby mu odpowiednie zadania i przełączał poszczególne elementy w tryb manualny lub automatyczny. Następnie parametry fizyczne pobierane byłyby bezpośrednio z serwera ruchu (stan semaforów itd).

To takie moje małe wypociny :)
Skrypty do Blendera dostępne tutaj
W miarę aktualne wiki EXE wiki.eu07.es

Monczan_SP32

  • Gość
Odp: Serwer ruchu - pociągi towarowe
« Odpowiedź #29 dnia: 29 Kwietnia 2008, 12:04:28 »
Ponieważ Ra pisał, że założył ten wątek, aby zebrać pomysły, to po przeczytaniu nasuwają mi się takie:
1) Poruszony został problem, jak komuś się zerwie połączenie z serwerem, i co wtedy - nie dało by się zrobić tak, że serwer "trzymałby" stan pociągu, jaki był podczas ostatniej sekundy komunikacji serwer-klient? To jest, pociąg by jechał dalej tak, jakby ktoś tam był, działał by cały czas czuwak i SHP, który zatrzymałby skład. Jeżeli przez, załóżmy, 5 minut po zatrzymaniu nie bedzie aktywności, to skład znika. Chodzi o to, żeby, gdy się komuś komputer zawiesi, nie tracił taki przez złośliwość losu parudziesięciu minut symulacji. Przez 5 minut zwykle można zdążyć puścić reset i odpalić kompa i potem symulator ponownie. Z drugiej strony, gdyby ktoś np. przypomniał sobie o spotkaniu z dziewczyną/poszedł do WC na dłużej/żona mu zaczęła rodzić/itp. itd. I taki MUSIAŁ wcisnąć F10 i papa, to nie było by przeszkody, że ruch na serwerze przestaje być płynny - najwyżej dla innych maszynistów byłby dodatkowy quest ;-) po odblokowaniu toru - nadrobić spóźnienie.
Tak samo, jak komuś by się zdarzyło wykoleić - niechże sobie skład zniknie, trudno, stało się... Można by zablokować danemu userowi za karę dostęp do serwa na godzinę xD Albo zdarzenie wykolejenia wyzwalało by event wypuszczenia z najbliższej większej stacji pociągu ratunkowego do usuwania szkód. Dajmy sobie przecież spokój z animacją podnoszenia wagonów dzwigami - ale zawsze byłby to jakiś lepszy stopień realizmu niż zniknięcie na bezczel.
2)Nastawnie - sterowałby tym serwer, chyba, że znalazłby się żywy chętny, wtedy przejmowałby robotę. W momencie zejścia usera wracałaby kontrola serwera.

ps. gfirlejczyk zrobił małe wypociny, ja większe... No cóż, ja nie mam umysłu ścisłego, nie zajmuję się programowaniem, jestem bardziej architektem-wizjonerem. Jeżeli moje pomysły mogłyby się na coś przydać, ktoś jest w stanie zrobić coś z tego co powiedziałem, nawet po przekształceniu, no to cieszę się, że się przydałem. Bierzcie i (być może) wymyślcie coś z tego wszyscy.