Jump to content

PeVoo

Member
  • Posts

    478
  • Joined

  • Last visited

  • Days Won

    11

Everything posted by PeVoo

  1. Ja tylko nieśmiało przypomnę o mojej starej sugestii zaimplementowania rolki myszy (w której po pierwsze ręka czuje przeskoki, po drugie można kręcić i szybko i precyzyjnie, po trzecie daje uczucie fizycznego pokrętła przez co zwiększa immersję, a także sprawdza się genialnie w innych grach - patrz Derail Valley). A także o drugiej sugestii oddania przyspieszenia ujemnego pociągu (czyli siły hamowania) przez wychylanie kamery do przodu jak w TSW, która działa cuda w kontekście wyczucia o ile zwiększyła się właśnie siła hamowania po dohamowaniu (a także zwiększa immersję). PS: Nie miałem pojęcia, że są jakieś skróty typu Num1 czy Num6 (sprawdzę), ale jeśli są, to to bardzo dużo mi da. Zwłaszcza jeśli zostaną dodane wspomniane pozycje hamowania pełnego oraz luzowania (uderzeniowego). Ponadto chyba nie do końca prawda, że jeśli wajcha obraca się szybciej niż obniża ciśnienie, to jest ok - co z hamulcem awaryjnym? (Czy ta ostatnia pozycja czasem nie opróżnia ciśnienia dużo szybciej?). Dodam jeszcze, że "przeskoki" od klawiszy "pozycyjnych" można zamaskować poprzez szybki ale płynny ruch dźwigni do danej pozycji, zamiast jej przeskoku na tę pozycję (co rzeczywiście jest nienaturalne i złe). Mógłby być też skrót na hamowanie awaryjne, jeśli nadal nie ma. Przykładowo w TSW poprzez Backspace się uruchamia (oddzielny, niezależny od dźwigni hamulca) przycisk/zawór hamowania awaryjnego. Trochę się już przyzwyczaiłem do nowego działania Num3 i Num9, aczkolwiek nadal uważam, że jest zbyt toporny (nie da się szybko reagować w żadną stronę dźwigni) i zbyt nieprzewidywalny (czasem pukanie klawisza robi przeskok o pozycję, a czasem o ułamek zakresu i nigdy nie wiadomo kiedy nastąpi przeskok, trzymanie z kolei kończy się finałowym przeskokiem o kilka całych pozycji po skończeniu płynnego zakresu i też nigdy nie wiadomo dokąd trzymać zanim to nastąpi).
  2. Oba problemy są zduplikowane? A gdzie są te zgłoszenia? Można linki? Chciałbym się upewnić, że nic nie zostanie przeoczone. Dziękuję. Poza tym dałem tu szeroki opis jak odtworzyć ten pierwszy błąd, więc można by go przynajmniej podlinkować pod tamto (zduplikowane) zgłoszenie, żeby programiści wiedzieli gdzie i jak tego szukać.
  3. OK, ja ten tutorial przeszedłem przed chwilą dopiero (nie zauważyłem, że singla otworzyli!) i jak widzę część wspomnianych wyżej błędów została już naprawiona, więc dodam swoje nie wymienione dotąd spostrzeżenia na dzień dzisiejszy (jeśli ktoś się z którąś moją opinią nie zgadza, to śmiało cytujcie i komentujcie, nie jestem wyrocznią przecież). Zanim zacznę, ponownie chciałbym bardzo pochwalić inteligentny tutorial, który (w przeciwieństwie do takiego z TSW) pozwala zrobić coś źle i odpowiednio reaguje na to mówiąc jak to naprawić i jak wrócić do pożądanego stanu (co zrobić w danej chwili) - genialne, dokładnie tak samo bym to właśnie zrobił (gdybym to ja to projektował). Rzadko się spotyka ludzi, którzy naprawdę wkładają serce w pracy, żeby to co robią było bardziej zajebiste niż musi. Gratuluję! Oto moje spostrzeżenia: Nieklikalny fotel (pozornie). Usłyszałem "Aby usiąść na fotelu kliknij na niego" - próbowałem to robić i nic. Wydaje mi się, że byłem po prostu o 5 centymetrów za daleko od niego. Dobre paręnaście sekund mi zajęło zrozumienie co się dzieje i już myślałem, że jest bug i nie przejdę, w zasadzie to przez przypadek to rozszyfrowałem jak już zacząłem łazić zdesperowany, że nie mogę usiąść. Poprawiłbym to np. zmieniając polecenie na "Aby usiąść na fotelu podejdź do niego i kliknij go". Tak stałem (kiedy nie działało): Ten krok jest bardzo problematyczny (zwłaszcza, że kazano nam to robić na siedząco). Kompletnie nie widać gdzie jest to co mamy przekręcić, musiałem się nagłowić i to w potwornym hałasie: Nie kazałbym tego robić na siedząco. A tak w ogóle to dodałbym taki znacznik jak w TSW, który nawet jak nie ma na ekranie tego co należy nacisnąć, to pokazuje kierunek w którym należy się obrócić żeby to zobaczyć, aż się obrócisz w dobrą stronę i wtedy pokazuje gdzie to jest, nawet jak jest to zasłonięte. Żółtą obwódkę (której generalnie nie lubię - wizualnie tego stylu nie lubię oraz tego, że pokazuje on dokładnie kształt tego co mamy znaleźć i nacisnąć, bo wolałbym sam musieć to znaleźć wśród innych rzeczy oraz sam rozszyfrować gdzie to coś się kończy i jak jest duże, lepiej się zapamiętuje wtedy). Wspomniany wyżej hałas, który jest od czuwaka po włączeniu kluczyka. Nawet jak ktoś wie, że trzeba wcisnąć czuwak, to on nie działa. Jak ktoś nie wie, to jeszcze gorzej, bo ten "alarm" brzmi bardzo groźnie i nie przestaje. W dodatku jeszcze miga coś na czerwono na górze, żeby coś nacisnąć, co tylko potęguje panikę świeżego gracza. Natomiast jednocześnie w tle lecą polecenia, które trzeba w tym hałasie i stresie usłyszeć, zrozumieć i wykonać, żeby przestało wyć. Ja bym uprzedził gracza głosowo, że po przekręceniu kluczyka włączy się alarm, który wyłączy się dopiero po przestawieniu kierunku i wciśnięciu czuwaka, co za chwilę zrobimy. (Btw, w ogóle nie jest wyjaśnione po co jest wajcha do kierunku - może to oczywiste, ale w TSW uczą nawet tego za każdym razem, wystarczy tak jak u nich proste zdanie, że "służy do wyboru kierunku jazdy" i z głowy, całkowicie zieloni nie wiedzą przecież nawet tego). Kiedy już zacznie wyć, zostawić te polecenia co są teraz ("wrzuć kierunek i wciśnij czuwak"), a kiedy już to zostanie wykonane, wtedy na spokojnie poinformować do czego służy reverser, do czego służy czuwak, że się sam włącza co chwilę i że przycisk nie działa kiedy reverser jest na neutralu, bo nawet ja bym się tego nie domyślił po tylu godzinach gry). To co już ktoś wspomniał, jeśli nie wybijesz bezpiecznika, to nie dowiesz się, że to się może stać oraz (przede wszystkim) jak to naprawić. Ja bym chyba wymusił na graczu żeby to zrobił (kazał przekręcić szybko koło w prawo do końca, a jak wybije to wtedy wytłumaczyć), a za drugim razem dopiero tak jak jest teraz, czyli "uważaj żeby nie przekroczyć 600A" (a jak przekroczy to powiedzieć znowu jak naprawić). Za trzecim razem można go zostawić żeby sam się domyślił już (ew. podpowiedzieć po 30 sek. jeśli sam nie naprawi). Wybór kamery zewnętrznej usilnie włącza komunikat "Aby wejść do kabiny naciśnij 1". Odróżniłbym wsiadanie początkowe do lokomotywy z trawnika, od przełączania kamery - i albo bym tylko raz powiedział jak wrócić z kamery zewnętrznej, albo wstawił tylko napis na ekran "Aby wrócić wciśnij 1" i nie przerywał ani nie zmieniał tego co w danej chwili mówi "nauczyciel". Ja chciałem tylko zobaczyć widoczki na chwilę, nie muszę być za każdym razem informowany jak "wsiąść do pociągu" wtedy. Ten problem był od samego początku, już w Prologu. Obsługę kamer też by wypadało objaśnić graczowi tak baj de łej. Nie skarcił mnie za wybitne przekroczenie prędkości i nie wytłumaczył, że to bardzo ważne, żeby trzymać się poniżej dopuszczalnej. Nawet nie kazał wyłączyć mocy kiedy dobijałem do max prędkości, ani nie kazał przyhamować po fakcie. Gdybym nie ćwiczył wcześniej, raczej wrypałbym się w czerwone. Btw, nie sprawdziłem co by się wtedy stało w tutorialu (w TSW np. jest za każde czerwone Game Over i trzeba od nowa wszystko jechać - z jednej strony jest to fajne, że tu NIE trzeba, z drugiej strony sprawia takie podświadome wrażenie, że wrypanie się w czerwone pociągiem to "nic strasznego", a zdaje się w prawdziwym życiu też byłby Game Over za to, prawda? Ale w multiplayer bym zostawił jak jest chyba, bo tam ludzie nieprzewidywalni sterują tym). Przydałaby się podpowiedź jak hamować i objaśnienia jak to działa. Nawet fakt, że pociąg ma hamulce pneumatyczne już jest ciekawą nowością dla większości zwykłych ludzi. Wyjaśnić, że to działa z opóźnieniem i dlaczego oraz dlaczego nie można też odhamować od razu jak przegniesz z hamowaniem. Jeśli ma być full wypas i ciekawie to bym też wspomniał jak działa break pipe (nie wiem jak to się po polsku nazywa), że w razie awarii (rozszczelnienia) hamulce włączą się z automatu, że są w każdym wagonie i że ciśnienie działa odwrotnie niż by się laikowi wydawało, czyli jak go NIE MA, to hamuje, a napełniasz, żeby odpuścić hamulce. To też pozwoli zrozumieć manometry (dlaczego się zmniejsza przy hamowaniu a nie zwiększa! I po co w ogóle jest sprężarka i zbiornik główny!). Zgadzam się, że potrzebne jest dodatkowe przeszkolenie z obsługi radia (procedur) oraz ustawiania świateł zewnętrznych - nie musi być od razu, może być w następnej części tutoriala / misji (po trochu uczyć i dawać przećwiczyć, a nie wszystko na raz). Podoba mi się to, że tutorial jest długi (trasa) i zawiera czerwone światła i stacje po drodze. To najlepszy test, że się gracz nauczył ruszać i hamować. Samo omówienie "Tu gaz, tu hamulec, masz tu certyfikat, wsiadaj jedź" nie wystarczy. Błąd przeskoku z 40km/h na 20km/h na sygnale zastępczym nadal jest. Też miałem niespodziewane grube przekroczenie prędkości przez to. Gdy przejechałem stację hamując nie powiedział mi że (i jak) mam cofnąć. Mogłoby też ew. zawalić mi misję i kazać jechać od nowa lub od ostatniego bezpiecznego checkpointu. W końcu to nauka jazdy, hamować też masz umieć po zaliczeniu tej misji. (Ale lepiej by było nauczyć gracza się cofać - o ile jest to dozwolone.) Jako, że gracz na tym etapie nie zna jeszcze sygnałów świetlnych, ostrzegałbym go poleceniem głosowym w każdym miejscu kiedy musi się za chwilę się zatrzymać (albo nawet zwolnić). Przypomnijcie sobie wasze absolutnie pierwsze hamowanie w tej lokomotywie albo najlepiej w pierwszej jakiej kiedykolwiek jechaliście - czy było to łatwe, czy może trudne i nie wychodziło. Trzeba też wziąć na to poprawkę. Podpowiedzieć coś w stylu "niedługo będziesz musiał się zatrzymać, więc już teraz lekko odkręć hamulec". I żeby nie było: podoba mi się, że ta gra jest wymagająca, tylko po prostu nie od razu, bo się ludzie zniechęcą. Stopniowo. Dlatego takie rzeczy jak światła czy obsługę radia można dorzucić w kolejnej misji a niekoniecznie wcale w tej. Chciałbym zobaczyć tutorial z sygnalizacji, procedur i reszty. Mam wielką nadzieję, że te 3 tutoriale, to nie będzie koniec naszej edukacji. Zaczyna się to bardzo dobrze i nie można zmarnować takiego potencjału. Mogą też ewentualnie być po prostu misje z ciekawymi wstawkami edukacyjnymi (a w następnych konieczność wykazania się wiedzą z poprzednich). PS: Dodałbym na ekranie głównym dział z materiałami edukacyjnymi. Nawet takimi do czytania o zasadzie działania hamulców pneumatycznych, o blokadach liniowych, znakach przy torach, itp itd, ale prosto i ciekawie napisanymi (i nie zbyt rozwlekle i technicznie, tylko po ludzku). To oczywiście nie musi być obowiązkowo zrobione, ani na teraz, ale myślę, że by się przydało. Można to zrobić nawet w formie wbudowanego web browsera, żeby było za darmo. W tym dziale (edukacyjnym) mogłyby też być wszystkie tutoriale, zamiast normalnie w trasach. No bo jaki logiczny sens ma wybieranie trasy Katowice-Warszawa po to żeby wejść w tutorial obsługi EU07? Powinno to być albo w formie "kampanii" (czyli najpierw misje tutorialowe, potem normalne, w których nadal się rozwijasz i uczysz, a na końcu hardkory w których musisz się wykazać wszystkim co umiesz), albo wszystko podzielone na szkołę i praktykę (z czego w szkole wybierasz czego się chcesz nauczyć, a w praktyce na czym i gdzie chcesz praktykować, czyli trasę/dyżurkę właśnie).
  4. A co to jest drugi układ? 😅
  5. Dla mnie to jest zbyt niejasno napisane żebym mógł się z tego nauczyć jak to obsługiwać. Moim cichym marzeniem jest, żeby gra tych różnych zaawansowanych rzeczy uczyła stopniowo poprzez misje (lub ew. tutorial, ale wolałbym misje), w których jest coś objaśniane, pokazane procedury, a potem musisz to samo robić samemu tak żeby sprawdzić czy zrozumiałeś i umiesz - a jeśli nie w tej samej misji, to w którejś następnej, niespodziewanie (i więcej niż raz). Tak żeby wystarczyło grać, żeby się wszystkiego nauczyć, a nie szukać po internetach wiedzy tajemnej, żeby zrozumieć dlaczego coś działa tak jak działa. Wiecie, samo to co który sygnał świetlny znaczy jeszcze łatwo znaleźć lub podpytać kogoś, ale np. jak należy jechać, żeby zawsze zdążyć się zatrzymać przed niespodziewanym czerwonym, to już jest wiedza tajemna (a to przecież nie może być tak trudne/niemożliwe jak się wydaje, muszą być jakieś wskazówki gdzieś). Mnie przykładowo udało się znaleźć jaki znak ostrzega przed tym, że następny semafor jest ręcznie sterowany przez dyżurnego, co już jest solidną wskazówką, że może nie warto pędzić, bo nigdy nie wiesz co on zrobi. Ale skąd np. wiedzieć że wylot będzie zielony lub nie? Obstawiam, że tylko z komunikacji radiowej, która w realu pewnie jest obowiązkowa - ale tylko strzelam, bo nigdzie mi tego nikt nie objaśnił przecież. Skąd wiedzieć do której dyżurki się zgłosić też nie wiem bez HUD-a. Tego typu rzeczy bym chciał mieć objaśnione w grze właśnie - najlepiej w formie zabawy, czyli podczas misji, a nie jakieś żmudne testy, czy tutoriale, które się tylko czyta. Ja wiem, że tutaj "fanatycy kolejowi" są nadreprezentowani statystycznie, ale wierzcie mi, że jak dojdą tu zwykli gracze (a będzie ich przynajmniej 90% względem Was), to takie rzeczy będą bardzo istotne i cenne dla nich. Jeszcze jedna rzecz której mi brakuje do nauki, to możliwość sterowania dwoma dyżurkami na raz, tak żeby móc wypróbować co kiedy jak się potwierdza z drugiej strony i jak to tam wygląda kiedy tu coś robisz. Deweloperzy na bank mają taką możliwość (nawet chyba była wykorzystywana podczas nagrywania kursu video), więc dla nich to jest oczywiste i nie rozumieją / dawno zapomnieli, jak ograniczona jest nauka i zrozumienie, kiedy się tego NIE ma i nie widzi. Takie szkolenia w grze mogłyby być, gdzie by było widać obie strony na 1 ekranie, lub można by było szybko je przełączać. To by dopiero był wypas, takie szkolenia z praktyką! Najpierw coś za rączkę objaśnione, a potem samemu masz obsłużyć kilka podobnych sytuacji. Jak zaliczysz, następna misja i inna sytuacja. Potem jakieś grubsze misje gdzie musisz się wykazać, że umiesz obsłużyć wszystkie poprzednie sytuacje. Ale to by było super!
  6. Problem #1: (Pomijając zasadność tego) wczoraj po nocy (jak było prawie pusto) bawiłem się na wioskowej dyżurce w "wyścigi", czyli w puszczanie gracza równolegle z botem oboma torami jednocześnie do kolejnej stacji. Było to gdzieś w okolicach Psarów. Puściłem ich na ten bardzo długi odcinek, który w dyżurce jest aż zawinięty na tablicy i patrzyłem kto wygrywa. Potem przesiadłem się do dyżurki docelowej, żeby ich odebrać i puścić dalej. W pewnym momencie (nie pamiętam czy w to było w tej czy w następnej), znudziłem się czekaniem i przesiadłem się w tego bota, który "ścigał się" z graczem i zostawił go już w tyle, żeby go zahamować, pozwolić się dogonić i obtrąbić gracza 😉 i ruszyć z nim dalej równolegle. Potem znowu przeskoczyłem do dyżurki docelowej żeby przepuścić oba pociągi dalej równolegle. Czekały tam już 2 pociągi w drugą stronę (boty), które też chciałem odblokować. Ta część poszła ok. Po puszczeniu gracza, a potem bota dalej (nie dało się jednocześnie ze względu na zwrotnice i to gdzie stały boty), przesiadłem się w tego mojego bota żeby dogonić gracza lewym torem znowu. Następną stacją było Zawiercie zdaje się. Oba tory się rozjechały, a potem chyba zjechały z powrotem (i chyba był też peron), a następnie ja dostałem czerwone światło, na którym czekałem zbyt długo żeby potem już dogonić gracza, więc sobie dałem spokój i przesiadłem się do następnej dyżurki, w Łazach zdaje się, gdzie sprawdzałem, czy i kiedy gracz dojedzie (dojechał). Natomiast mojego bota nadal nie było, więc przesiadłem się z powrotem w niego żeby zobaczyć co się dzieje. Okazało się, że stał dalej na tym czerwonym, natomiast ZA tym czerwonym stał drugi pociąg w przeciwną stronę... Czyli tor został zablokowany na dobre kiedy mnie tam nie było. AI nie poradził sobie z tym, że ktoś mu odwrócił kierunek toru i w jakiś sposób udało mu się puścić na niego pociąg (myślałem, że to niemożliwe jest, chyba że na sygnał zastępczy!). Z tego co ja rozumiem, to powinien widzieć, że ma blokadę włączoną w przeciwną stronę i czekać aż coś wyjedzie lub próbować ją anulować i zmienić tak jak powinno być. Wydaje mi się, że to co się stało, to był jakiś zahardkodowany reset skopanych kierunków po wyjściu realnego gracza (mnie), żeby wszystko było "ok" (zamiast AI wciskającego guziki na tablicy żeby to zrobić naprawdę). Owszem, powinno to się zresetować, ale nie jeśli pociąg tam już wjechał. Możliwe, że dyżurny AI ze zażądał zmiany kierunku na wychodzący od niego, a poprzedni dyżurny AI (który wszedł po mnie kiedy ja puściłem tam oba tory i pociągi w tym samym kierunku) ZAAKCEPTOWAŁ TO, ponieważ "nie pamiętał" żeby puszczał tam pociąg (bo to JA to zrobiłem). Jeśli ta teoria jest prawdziwa, to należałoby mu to zabezpieczyć, żeby sprawdzał czy coś jest na torze zanim zezwoli na zmianę kierunku. Nawet jeśli to "oszustwo", to odpowiada to rzeczywistości, bo w rzeczywistości dyżurny by albo pamiętał że coś tam posłał (i nie wymieniłoby mu nagle duszy na inną jak w serialu Travellers), albo by zadzwonił do sąsiada potwierdzić czy może to zrobić i by się dowiedział, że nie. Inną teorię jaką mam, to to, że była tam po drodze dyżurka niedostępna dla gracza, której wcale nie obsługuje AI tylko jest puszczone wszystko na sztywno. Trzecia teoria jaką mam, to to, że dojechałem do dyżurki, w której BYŁ AI, ale nie potrafił przekierować mnie z lewego toru na prawy i po prostu wpuścił mnie na swój lewy semafor wylotowy bez zażądania blokady kierunku od następnej stacji (a tam już coś nadjeżdżało z drugiej strony), żeby puścić pociąg dalej tym samym torem. Może nawet chciał zażądać blokady ale było już za późno, bo już tam coś jechało. Tak czy inaczej, gdzieś w AI jest błąd do poprawy. W tym ostatnim przypadki powinien rozumieć, że coś mu przyjechało lewym torem i że nie ma powodu puszczać tego dalej lewym torem tylko z miejsca przekierować na prawy tor i dalej puścić normalnie. Problem #2: Kiedy jechałem równolegle z graczem, jego pociąg skakał zamiast jechać (teleportował się co ułamek sekundy). Oczywiście można to zwalić na ping 100ms, ale uważam, że gdzie jak gdzie, ale w symulatorze pociągu, to naprawdę można to bardzo łatwo i skutecznie rozwiązać, ponieważ pociągi nie skręcają i są ekstremalnie przewidywalne w swoim ruchu. Zamiast odbierać od peera pakiet z pozycją jego pociągu i go tam rysować, powinien zostać odebrany pakiet z jego pozycją, prędkością i stanem kontrolek sterowania (lub w uproszczeniu: jego przyspieszeniem, dodatnim bądź ujemnym). Na podstawie takich danych można na moim komputerze wysymulować (obliczyć) pozycję innego gracza z niemal 100% dokładnością w czasie rzeczywistym, do czasu otrzymania kolejnego pakietu. Delikatny przeskok nastąpi dopiero w momencie, w którym gracz zmieni kontrolki (wciśnie hamulec lub doda mocy). Ponadto przesyłanie stanu kontrolek byłoby znacznie lepsze niż jednej wartości przyspieszenia, ponieważ, stała pozycja wajchy hamulca również powoduje zmianę wartości przyspieszenia w czasie (bo opróżnia się break pipe i zaciskają coraz mocniej hamulce). Wystarczyłoby generalnie wysyłać tylko zmiany przyrządów (w momencie ich zmiany) + pozycję pociągu na tamten moment + znacznik czasowy kiedy to było - i z matematycznego punktu widzenia powinno się z tego już dać wszystko wyliczyć, a skoki pociągu innego gracza będą zredukowane niemalże do zera, będzie wrażenie pingu 0 jak w GTA 5. PS: Proszę wybaczyć, że 2 różne problemy w 1 poście, ale nie chcę być znowu oskarżony o spamowanie i nabijanie punktów, więc ograniczam ilość postów do minimum.
  7. Tajemnicza osobo, jak to zrobiłaś, że podpięłaś swoją wypowiedź do treści mojego posta powyżej, tak że wygląda jakbym to ja pisał? 😲 Strach się bać normalnie! 😱
  8. Czyli jednak mówisz, że są dwa różne rodzaje blokady? No, to wiele wyjaśnia. Aczkolwiek skoro jeden typ blokady działa na tej zasadzie, którą opisał @inomushis, czyli to jak działa ten drugi typ blokady, że ustawienie przebiegu na blokadę nie włącza jej na czerwono? To co ją włącza w takim razie? (Wiem, że drążę rzeczy techniczne ("niepotrzebne do gry"), ale lubię rozumieć co się dzieje i jestem pewien, że sporo ludzi tutaj (pasjonatów kolei) chciałoby wiedzieć jak to dokładnie działa.)
  9. Bardzo brakuje mi prostej do zrobienia funkcji wyświetlania na ekranie napisów za każdym razem gdy zmianie ulegnie pozycja dowolnej dźwigni, przełącznika lub przycisku. Wystarczą proste napisy pojawiające się gdzieś najlepiej po prawej pod nadchodzącymi ograniczeniami. Coś takiego jest zaimplementowane w TSW2. Na chwilę obecną jeśli nie najedzie się myszą przykładowo na dźwignię hamulca, to po naciśnięciu Num3 lub Num9 nie widać na jaką pozycję wskoczyła dźwignia. Jest to bardzo uciążliwe zwłaszcza w takich lokomotywach, które mają te pozycje tymczasowe, które wracają po puszczeniu. Potrzebuję wiedzieć gdzie jestem, żeby wiedzieć czy naciskać dalej i nie mogę tego zrobić bez najechania myszą na wajchę przed wciskaniem klawiszy (a często po zmianie pozycji mysz przestaje być nad dźwignią i podpowiedź znika). Jeśli chcę grać klawiaturą, to powinno to być mi umożliwione, a bez podpowiedzi nazwy pozycji (co najmniej tej na której znajduje się wajcha) sobie zwyczajnie nie radzę. Gdyby zamiast napisu, po naciśnięciu klawisza +/- czy Num3/Num9 pokazał się na chwilę tooltip od myszy danego drążka, to też bym był bardzo zadowolony (nawet chyba bardziej niż z napisów). Poza tym czasem człowiek coś wciśnie na klawiaturze i nie wie do czego był ten klawisz przypisany, więc taki napis informujący co zostało właśnie wciśnięte/przełączone bardzo pomaga się odnaleźć i naprawić nieumyślny błąd.
  10. Słuchajcie, a może by tak jednak wrócić do starej dobrej sugestii, żeby jednak postarać się uczynić AI na tyle kompetentnym, żeby umiało rozwiązywać wszystkie problemy po niekompetentnych graczach, a także kierować ich za rączkę w razie potrzeby, nauczać i nagradzać punktami jak robią coś dobrze (tak jak ono by zrobiło)? Wydaje mi się, ze wtedy problem niekompetentnych graczy przestanie być tak bolesny dla większości ludzi (bo zawsze jakiś agresor i tak się wszędzie znajdzie).
  11. A tak patrząc na to trzeźwo... W realnym świecie na co masz większą szansę jako dyżurny? Na oglądanie pociągu w kamerce CCTV, czy na oglądanie aktualizującej się w czasie rzeczywistym listy wszystkich pociągów w Twojej okolicy, ich dokładnych prędkości oraz nazw semaforów do których dojeżdżają? 😉 Nie wiem jak z kamerkami "w realu", ale co do tej listy, to mam pewne podejrzenia... 😉
  12. Pewnie masz rację, ale dla mnie samo sterowanie JEST problemem i to najważniejszym. To jak hamują wagony jest dla mnie "fizyką" (czyli elementem stałym, zasadami gry) - nawet jeśli nie jest realistyczne to ja nawet tego nie będę wiedział, bo nie jechałem prawdziwym i nie mam wyczucia. Natomiast to, że nie mogę odpowiednio szybko ustawić drążka hamulca tam gdzie chcę i przez to wjeżdżam w czerwone (bo W OGÓLE nie hamuję), to jest dla mnie już bardzo duży problem.
  13. PS: Ciekawą opcją (do przemyślenia) na kompletnie inny system sterowania z klawiatury (który wydaje mi się, że byłby bardzo skuteczny), byłby taki oto system dwuklawiszowy: Trzymając jeden klawisz wybierasz co chcesz zmienić (przykładowo Shift = prędkość, Ctrl = hamulec, lub jakieś inne litery, każdy mógłby sobie je przedefiniować wg uznania), a następnie wciskasz cyfrę od 1 do 9 (lub do 0 jako 10), która oznacza pozycję danej wajchy (przy "kierownicy" cyfra 8 mogłaby odpowiadać pozycji 28, bo jest ona pod koniec gdzieś na 80% obrotu). Jeśli przykładowo taki zadajnik prędkości ma tylko 6 pozycji, no to działają cyfry od 1 do 6 (jeśli 7 to do 7, a jeśli więcej niż 10, to procentowo). Oczywiście zwykły plus/minus na kierownicy też musi zostać, bo tam 10 pozycji to za mało i szybko wywali bezpiecznik. (Może też być klawisz plus i minus, czyli Shift-Plus zwiększa prędkość o 1, a Shift-Minus zmniejsza o 1). Ale za to hamowanie byłoby idealne, bo gracz mógłby błyskawicznie i bezbłędnie ustawić pożądaną pozycję drążka bez użerania się ani z myszą, ani z losowo działającym podwójnym naciskaniem klawiszy, ani ze zbyt wolną zmianą od trzymania klawisza. W przypadku pozycji chwilowych drążka (takich, które same wracają jak się je puści), taką kombinację (przykładowo Shift+5) można by było trzymać tyle ile chcesz i drążek wróciłby dopiero jak puścisz. Wydaje mi się, że to bardzo dobry system, który rozwiązuje większość obecnych problemów, które na chwilę obecną powodują to, że nie wychodzi ci nie przez to, że nie umiesz obsługiwać pociągu, tylko przez to, że nie umiesz obsługiwać klawiatury / interfejsu gry (odpowiednio szybko). A takie rzeczy są bardzo wkurzające, bo są "niesprawiedliwe" i zwykle kończą się stwierdzeniami typu "Co za ch*** gra!". Bo co innego przegrywać, bo nie umiesz, a co innego przegrywać przez toporne sterowanie. Jak myślicie? Sprawdziłoby się takie sterowanie? (Mogłaby to być jedna z opcji systemu sterowania w ustawieniach gry, żeby każdy znalazł coś dla siebie.)
  14. Może to kwestia przyzwyczajenia, ale ja miałem już odruch, że w sytuacjach awaryjnych (np. czerwone zauważone na styk z drogą hamowania), pukałem PgDn (Numpad-3) tyle razy, aż zaskoczył hamulec (lub bez opamiętania żeby dostać awaryjny, jeśli wiedziałem, że jest bardzo źle). Teraz po prostu ginę (wjeżdżam w czerwone), bo nie działa ani pukanie w klawisz, ani trzymanie go, ani nawet z Shift-em nie przeskakuje do pozycji wcześniejszych skoków. Zanim uceluję ręką w mysz, myszą w wajchę oraz wajchą w pozycję hamowania pełnego, to mija tyle czasu, że już jest dawno po ptokach. Osobiście bardzo mi się nie podoba ta zmiana i nawet przyspieszenie za dużo nie da. Te skoki trzeba przywrócić - choćby z Shiftem lub (w ostateczności) na podwójne puknięcie klawisza lub chociaż dać opcję przywrócenia poprzedniego działania w opcjach gry, tak jak to ktoś sugerował. Na chwilę obecną jest to toporne i nie da się szybko reagować. Wcześniej jak chciałem mieć bardziej precyzyjnie niż tymi skokami od klawisza, to używałem myszy do tego i też było dobrze, a klawiatura była tym bezpiecznikiem, który może grubiańsko, ale za to zawsze działa szybko i skutecznie.
  15. Czytając to wpadł mi do głowy jeszcze jeden super pomysł (chociaż wątpię żeby była szansa na zgodę na to). Kontekst: Kiedyś pisałem taką sugestię odnośnie ekranu wyboru pociągu/dyżurki, żeby rozwiązać problem znikających stanowisk przy dużej ilości chętnych, która polegała na "wstępnej rezerwacji" stanowiska pod kursorem na jakiś czas, dopóki się z nim nie zapoznasz i nie potwierdzisz lub zmienisz na inne (+kolejka ludzi, którzy zaznaczyli to samo, w razie jak Ty zrezygnujesz). Teraz myślę, że super opcją byłaby możliwość wchodzenia w zajęte stanowiska - jako obserwator. W GTA 5 Online można wejść w tryb obserwatora jak w jakiś sposób trafisz na 100% zajętą obsadę (bo ktoś Cię wyprzedzi w dołączaniu). Do pewnej (ograniczonej) liczby ludzi to by było całkiem fajne. Przykładowo jak grasz w dyżurce, ktoś "zdesperowany" żeby na niej grać (lub chcący się jej nauczyć) może Ci się wbić jako gość, chodzić po pokoju, obserwować co robisz i rozmawiać z Tobą (zadawać pytania i uczyć się od Ciebie - może to być nawet znajomy którego zaprosisz żeby mu coś pokazać). Dajmy na to mogą wejść max 3 osoby i wiadomo kto wszedł pierwszy. W momencie jak Ty wyjdziesz z gry, pierwszy obserwator z kolejki dostaje info, że teraz on jest aktywnym dyżurnym i przejmuje kontrolę. Przy okazji od razu jest wtajemniczony co się działo więc nie ma przestoju na orientowanie się co się dzieje po zmianie gracza na nowego. A opcją super-wypas byłoby gdyby dało się wejść z ulicy do dyżurki (z pociągu) i tym sposobem znaleźć się w tej kolejce (lub zająć dyżurkę jeśli jest pusta), jednocześnie zwalniając swój pociąg oczywiście. Może to być też potwierdzane pytaniem po wejściu do dyżurki (czy na pewno chcesz porzucić swój pociąg i przejąć dyżurkę). Jeśli uważacie, że to jest fajna sugestia i chcielibyście mieć taką funkcjonalność w grze, to podbijcie i wrzućcie linka do tego posta gdzieś w sugestie (bo tu jest dział o błędach, a temat z tego wątku jest już i tak odrzucony i zamknięty). Wątpię, żeby mieli na to teraz czas, ale może (jeśli będzie "popyt" na to od Was, to wtedy to po jakimś czasie się ukaże jako update. PS: Pewnie trzeba by było ograniczyć obserwatorów lub uczynić ich niewidzialnymi jeśli jest ich za dużo, a także może potrzebna byłaby opcja wyciszania ich lub wyrzucania jeśli przeszkadzają. Ale to już szczegóły techniczne do dopracowania.
  16. Dziękuję za odpowiedź. Udało mi się metodą prób i błędów rozszyfrować jak przepuścić pociąg na SZ przez blokadę w tym stanie i wróciła ona wtedy do normy (musiałem tylko odkryć, że to wcale nie wymaga włączenia przebiegu). Mam w takim razie jedno pytanie kontrolne: Dlaczego w takim razie dokładnie te same kroki nie działają na wszystkie inne blokady tak samo? Dlaczego jeśli puszczam przebieg na włączoną już blokadę 2B, to nie robi się ona czerwona z automatu? (Ani połowa od razu, ani druga połowa po anulowaniu przebiegu do niej; wszystko jedno czy ze STOP czy bez STOP na semaforze początkowym H2). Wydaje się, że te wszystkie blokady powinny działać (w tym reagować) identycznie na te same kroki. Czy może są różne typy blokad? PS: Przy okazji byłbym wdzięczny za podpowiedź jak wyłączyć blokadę wychodzącą, taką jak ta, żeby była szara (możliwe, że nie jest to do niczego potrzebne, ale chciałbym to zrozumieć): Jeśli dobrze rozumiem, można ją odwołać (być może jedynie) z sąsiedniego posterunku. Jednak ja bym w niektórych sytuacjach chciał to zrobić po to, żeby dać sąsiadowi sygnał, że nie mam już żadnych planów wysyłania nic na ten tor i może tam w pierwszej kolejności kierować pociągi. Przykładowo mógłbym mieć drugą taką włączoną blokadę w tym samym kierunku i wolałbym żeby sąsiad mi jej nie ruszał, bo za chwilę będę tam puszczał pociąg (dlatego chciałbym wyłączyć tę drugą blokadę, żeby sąsiad widział, że tam ma wolny tor). Wiem, że pewnie mam błędne założenia, bo nie znam realnych przepisów i procedur kolejowych na te rzeczy, więc jakby co, to będę wdzięczny za objaśnienie jak to się "załatwia w realu" prawidłowo. Póki co wiem tyle, co z filmów na tym forum i z własnego testowania systemu (bo gra nic nie uczy). Z góry dziękuję.
  17. Zacząłeś mnie publicznie szkalować, to musiałem publicznie się bronić - tyle w temacie. Jak przestaniesz mnie atakować i wywoływać tym do tablicy, to nie będziesz musiał czytać moich odpowiedzi na swoje ataki. Jak dla mnie temat zamknięty i nie wiem o co nadal się rzucasz. Postaram się również filtrować Twoje wpisy, żeby mnie nie korciło odpisywać. Życzę zdrowia. Panowie - odpuście już te personalne wycieczki - nic to kompletnie nie daje. Sam jako programista mogę przyznać rację jednemu i drugiemu jednocześnie, jednak nie będzie to miało wpływu na to, jak AI zostanie zaimplementowane w końcowym produkcie. To forum to nie jest miejsce na dyskusje na temat tego jak wygląda współczesne programowanie, i kto kiedy i od czego zaczynał programować (nie będę pisał, że programowanie zaczynałem od Basica na C64... kurcze jednak to napisałem 😄) Tutaj od programowania jest SimRail - i z tego, co widzę na ich stronie to poszukują developerów - jeśli ktoś ma pomysł i chce usprawnić AI to pewnie się ucieszą z CV, zatrudnią i już możecie uszczęśliwić świat....
  18. Dziś grając po ostatniej aktualizacji wprowadzającej automatyczne AI w przypadku bezczynności gracza napotkałem na wiele problemów, takich jak: Komunikat (ostrzegawczy o bezczynności) pojawiał się podczas normalnego jechania pociągiem, w którym zwyczajnie nie było co robić poza potwierdzaniem czuwaka (pomimo tych potwierdzeń i tak zdążał się wyświetlać) Komunikat wyświetlał się też podczas długiego oglądania komputera w dyżurce (tego czarnego). Komunikat wyświetlał się nawet wtedy kiedy Autopilot nadal działał bo nie został wyłączony (czyli ostrzegał, że AI przejmie AI!) Komunikat zasłaniał inne komunikaty (np "zbliżasz się do stacji") Komunikat nie zamykał się od wciskania niektórych klawiszy, np. zmiany kamery zdaje się. Komunikat (i jego alarm) pojawiał się cyklicznie co jakiś czas nawet jeśli nie było na niego reakcji. Kiedy czekałem 20 minut na czerwonym i zgłaszałem przez ten czas na alt-tabie poprzedniego posta (o blokowaniu torów na amen), mój pociąg ruszył i zabrał mi całą radość z DOCZEKANIA SIĘ na zielone. AI zastępujące mnie w dyżurce wydawało się kompletnie nic nie robić za mnie. Musiałem wyjść i wejść żeby coś się ruszyło samo z siebie (przez ten czas). Sugerowane rozwiązanie: Po pierwsze zwiększyć czas przed komunikatem i dodać zerowanie jego licznika przez WSZYSTKIE klawisze. Po drugie wolałbym głośny alarm i przynajmniej 10 sekund na zareagowanie - i dopiero wtedy (przy braku reakcji lub mojej jawnej zgodzie) żeby AI zaczynał mi mieszać w grze po swojemu. Chciałbym też, żeby ten alarm nie włączał się kiedy popadnie, tylko wtedy kiedy POWINIENEM coś zrobić, a nie robię nic przez ileś minut - np. kiedy mam przed sobą zielone, a ja stoję - a nie kiedy stoję na czerwonym i nie mam nic do roboty lub kiedy jadę na zielonym i nie mam nic do roboty bo trzymam prędkość (i w dodatku potwierdzam czuwak). A generalnie mam bardzo mieszane uczucia co do tej funkcji. Przykładowo w GTA 5 Online gracze są wywalani z sesji po 15 minutach bezczynności, gdzie bezczynność można anulować kompletnie wszystkim (tak jak wygaszacz ekranu). Na Alt-Tabie jest chyba 2 minuty, co uważam za radykalne, bo czasem trzeba choćby zewnętrznym komunikatorem się dogadać z graczem, który wypadł z sesji, albo zrobić coś pilnego. Po wywaleniu i potwierdzeniu komunikatu o tym, gracz trafia do innej sesji, co też jest kijowe. Obstawiam, że w GTA jest to tylko po to, żeby ludzie nie zostawiali gry celowo, bo podczas gry rosną różne rzeczy same, natomiast w SimRailu raczej nie będzie sensu robić tego celowo, bo co najwyżej punkty karne będzie można zarobić za to. Zgadzam się za to, że jak ktoś blokuje dyżurkę przez 5 minut i nie dotyka klawiatury i myszy, to należy go wywalić lub zastąpić AI (bo blokuje wszystkim innym przejazd), ale jednak wcześniej go ostrzec i dać mu szansę kontynuować grę zanim to nastąpi.
  19. To nie jest wcale aż tak skomplikowane jak myślisz. Przecież to czy tor jest zajęty (w drugą stronę, czy nawet w tę samą) nie zmienia zupełnie faktu, że prowadzi on do złej lub dobrej stacji (względem Twojego rozkładu jazdy), prawda? Czyli wszelkie inne pociągi możesz w ogóle pominąć przy sprawdzaniu czy po przejechaniu przez zwrotnicę jesteś nadal na właściwym torze (w sensie, że Bot jest). Sytuacja, w której 2 pociągi lądują przodem do siebie na tym samym semaforze jest oddzielna i podejrzewam, że te pociągi będą się widzieć (co zainicjuje "pretensje" do dyżurki obu maszynistów, a więc problem zostanie rozwiązany, bo dyżurny każe któremuś z nich zawrócić - a jeśli zawrócony pociąg natknie się na następny za nim tak samo, to wracamy do punktu wyjścia i dyżurny zawraca ten kolejny). Ponadto nawet jeśli takie pociągi skierowane na siebie by się nie widziały wzajemnie, to w prawdziwym życiu taki problem również nie zostałby wykryty i dopiero po pewnym czasie któryś z maszynistów by stracił cierpliwość wisząc na czerwonym i skontaktował z dyżurką i jakoś by doszli co się dzieje. AI może robić dokładnie to samo. Moim zdaniem to wszystko da się zaprogramować. (Uwaga, technikalia!) Wystarczą proste funkcje i warunki, takie jak: zwróć odcinek torów na którym jest(em) pociąg X oraz kierunek względem niego, zwróć czy i jaki pociąg znajduje się za danym (następnym dla mnie) semaforem oraz jego kierunek (mogę wtedy porównać czy jest przeciwny do mojego) - jeśli istnieje pociąg i jego kierunek jest przeciwny, no to mamy problem, więc inicjujemy komunikację z dyżurką w celu jego rozwiązania (musi powstać nowe gotowe polecenie do tego). Dyżurka z kolei otrzymując takie zgłoszenie (od innego AI czy od gracza - o ile będzie taka gotowa opcja do wyboru), może zanalizować cały graf torów i sprawdzić kto znalazł się na błędnym torze (czyli kto jest na odcinku nie należącym do swojej trasy) i które pociągi należy wycofać (czyli tego co zabłądził oraz ew. wszystkie puszczone już za nim) do najbliższej stacji wstecz i rozplanować który pociąg na który wolny tor ustawi tymczasowo, aby zwolnić przejazd temu zabłądzonemu do powrotu aż do miejsca, w którym został on źle skierowany (proste operacje na grafach, rekurencja), po czym puścić go na dobry tor i kazać wszystkim zawróconym wcześniej pociągom powrót do dalszej jazdy do przodu, z czym już standardowe obecnie istniejące procedury AI powinny sobie poradzić. To naprawdę nie jest takie trudne, jeśli się operuje dobrymi funkcjami wysokiego poziomu (takimi jak wymieniłem). A one są do napisania, nawet jak ich jeszcze nie ma. Sam bym bardzo chętnie takie rzeczy pisał, bo to czysta przyjemność takie łamigłówki rozwiązywać i potem patrzeć jak to genialnie śmiga prawidłowo samo z siebie! Takie coś może mieć sens (coś jak te serwery "tylko dla maszynistów"). Obawiam się tylko, że to wprowadzi dodatkowy poziom komplikacji dla (nie wtajemniczonego jeszcze) gracza oraz podzieli graczy na "lepszych i gorszych" i nie będą oni mogli grać razem i się od siebie uczyć (tylko będą w całkowicie oddzielnych sesjach). Wolałbym, żeby po prostu komputer podpowiadał jak naprawić sytuację. Jeśli sam będzie na tyle dobry, że będzie umiał naprawiać sytuacje po graczu (który coś skopał), to może również podpowiadać te same ruchy naprawiające graczowi (który właśnie coś skopał i nie wie co dalej). Może to być automatycznie po czasie, a może być na przycisk "HELP!" (wraz z ceną w punktach karnych za to). Ale generalnie idea serwerów "idiotoodpornych" (w których nieprawidłowe ruchy są blokowane graczowi) jest dla mnie również do przyjęcia (mogą być też obie te rzeczy zaimplementowane przecież). Dobra, to żeby nie zaogniać i żeby coś z tego pozytywnego wyniknęło oraz żeby to zakończyć, odpowiem krótko odnośnie tylko tego kluczowego fragmentu (i powstrzymam się od wytknięcia innych rzeczy): > A ty wrzucasz to swoje "ja" gdzie tylko możesz, i wychodzisz na mądrale który tak naprawdę nic nie wie, bo nawet z tego co napisałeś to tylko uczyłeś się BASIC 30 lat temu. Tak jak powiedziałem, wiesz jak pisać. Niby coś tam "udowodniłeś", choćby to było to, że 30 lat temu się BASIC'a uczyłeś. Wydaje mi się, że po prostu źle odbierasz moje intencje. To "wrzucanie swojego ja" odniosłeś do mojego zdania "Ja uważam, że AI powinno obsługiwać procedury wycofywania pociągów ze złych torów (...)". Widzisz, jest wręcz przeciwnie niż Ty to odebrałeś, ponieważ ja tego zdania nie sformułowałem w ten sposób ŻEBY podkreślić swoje jestestwo, czy nawet to, że jestem autorem tej myśli - zrobiłem to właśnie z odwrotnego powodu, żeby podkreślić, że jest to TYLKO MOJA OPINIA, a nie dogmat w który rozkazuję Wam wszystkim uwierzyć - rozumiesz już? Nie wywyższanie się, a wręcz przeciwnie. Nauczyłem się tego z pewnej mądrej książki, ale jak widać nie ma sposobów niezawodnych. Natomiast nie wiem po co się tego BASIC-a uczepiłeś, bo ja go wymieniłem tylko po to, żeby powiedzieć gdzie i jak dawno zaczynałem, a nie gdzie obecnie jestem (aby obalić zarzut o brak kompetencji do wypowiadania się). GW BASIC pod DOS (w którym nie można było nawet zobaczyć całego programu tylko trzeba było w konsoli wylistować jego fragment specjalnym poleceniem, tak żeby jeszcze zmieścił się na ekranie) używałem w podstawówce jako dzieciak i to były moje pierwsze kroki z programowaniem. Nie sądzisz chyba, że na tym poprzestałem od tamtej pory? Pozdrawiam. PS: Nadal piszesz agresywnie. Dobra, nie wytrzymam, jeszcze jedną rzecz muszę sprostować odnośnie tego: W tym skrócie myślowym chodziło mi o to, że w każdym jednym (nie przestarzałym) języku do aplikacji desktopowych znajdziesz te same narzędzia: zmienne, pętle, warunki, klasy, metody, właściwości klas, dziedziczenie, wyjątki - i jedyne co się różni tak naprawdę to składnia, gotowe biblioteki do dyspozycji i czasem jakieś detale techniczne typu Garbage Collector lub jego brak (i ręczne użeranie się ze wskaźnikami). To wszystko nie ma znaczenia na algorytmy. Algorytm możesz napisać nawet w pseudokodzie. W każdym jednym języku podzielisz sobie logikę na warstwy, funkcje/procedury i zbudujesz z nich na końcu swoją własną warstwę wysokiego poziomu, w której będziesz mógł, przykładowo, kazać pociągowi się zatrzymać jedną krótką instrukcją zawierającą tylko wskaźnik lub numer pociągu (a reszta zadzieje się sama). W każdym języku MYŚLI się tak samo. Oczywiście mogą być jakieś systemy skryptowe, które narzucą pewne ograniczenia, ale generalnie logiki to za bardzo nie zmienia i podejścia programistów. A gdyby mnie taki system skryptowy ograniczał zbyt mocno, to ja bym osobiście taki system wywalił z projektu (i ewentualnie swój własny napisał).
  20. PS: Poczekanie na wykrycie bezczynności żeby AI przejęło kontrolę nic nie dało, za to wyjście i wejście w posterunek odblokowało obie blokady, także AI zastępcze nie działa do końca. Jeśli jest to fizycznie możliwe dla gracza, to chciałbym też to umieć zrobić bez wychodzenia z sesji (z dyżurki).
  21. Oto sposób, w jaki udało mi się zablokować oba tory na Sosnowiec Płd. Próbowałem to samo zrobić na Zawodziu i nie zadziałało, więc nie działa to wszędzie. Oto kroki: Włączyć blokadę (jeśli nie jest włączona; patrz P): Zablokować semafor ją poprzedzający poleceniem STOP (patrz N4😞 Puścić przebieg od zablokowanego semafora do blokady: Odwołać blokadę ręczną semafora poleceniem OSTOP (brak widocznych zmian). Odwołać przebieg poleceniami ZW i ZWP: Jak widać P jest zablokowane na amen - po wybraniu P żadne polecenie już nie działa: Nie można też do takiej blokady skierować pociągu: Mogę się mylić, ale wydaje mi się, że blokada w tym stanie (jak i posterunek w Sosnowcu Płd.) czeka na przejechanie pociągu przez blokadę i dopóki to się nie stanie, to nie da się jej odblokować i wyłączyć - podczas gdy przepuścić przez nią pociągu również się nie da. Ponadto czerwony grot strzałki z tego co mi wiadomo oznacza, że pociąg wjechał już na odcinek przed blokadą, co nie miało miejsca. Jeśli to z jakiegoś powodu nie jest błąd, to proszę o objaśnienie dlaczego nie i instrukcje jak taki stan rozwiązać. Dziękuję.
  22. Serio? Na 3 merytoryczne posty z konkretami w odpowiedzi dostaję ataki personalne, obrażanie i insynuacje? Na taki poziom poniżej podłogi chcesz sprowadzić to forum? Prywatnych docinków? Pozwól więc, że (zamiast robić to samo) wyprostuję i doprecyzuję łopatologicznie parę rzeczy: Nie będę tu udowadniał że nie jestem wielbłądem i że nie kłamię (Bo niby jak? Mam zacząć przynudzać wszystkim o tym czym jest polimorfizm, dziedziczenie, operatory, konstruktory statyczne, garbage collector, MVVM, inne wzorce projektowe, metody synchronizacji wielu wątków itp. itd., żebyś łaskawie uwierzył? I o tym jakie to już dla mnie wszystko nudne jest bo zaczynałem od BASIC-a jeszcze prawie 30 lat temu? No chyba nie... Możesz sobie nie wierzyć, ale jak nie masz pewności to wypadałoby chociaż nie obrażać.) Powiem tak: Nie muszę znać wewnętrznej struktury kodu danego projektu żeby wiedzieć pewne rzeczy oraz co jest na pewno możliwe, a z czym może być problem. Programowanie działa zawsze tak samo, w każdym języku i projekcie. I wszyscy (dobrzy) programiści mają pewne wspólne nawyki. Jednym z takich nawyków jest zastanawianie się "co może pójść nie tak" nad KAŻDĄ właśnie napisaną linią swojego kodu. A także nad swoimi założeniami zanim w ogóle zaczną je pisać. Bo w programowaniu jest taka zasada, że "Jeżeli coś gdzieś może stać się złego, to NA PEWNO się to stanie." (Testowane wielokrotnie na własnej D). Wiem też, że jeżeli twórcy gry doszli do takiego etapu kodu, jakiego efekty widzę na ekranie, to nie mogą być kompletnymi idiotami i na pewno mogą operować w swoim kodzie na wysokim poziomie logiki i kształtować ją jak chcą, bez konieczności zaorania całego kodu. (W sensie, że w kodzie można jasno i łatwo sprawdzić np. że dany pociąg jedzie po torze nr X bez porównywania jego współrzędnych ze współrzędnymi wszystkich kawałków torów na mapie itp., i że można łatwo wydać pociągowi AI jedną komendą takie polecenia jak "zahamuj do zera" bez przypisywania mu pozycji hamulca czy ręcznego zmniejszania prędkości w pętli aż się zatrzyma - rozumiecie o co chodzi). Z dwóch powyższych założeń wynika taki oto prosty fakt, że gdyby ktoś powiedział mi (jako deweloperowi tej gry) "Zrobimy w naszej grze tak, że gracze w multiplayer będą mogli przestawiać zwrotnice i semafory w dyżurkach", to z automatu załączyłoby mi się pytanie "Co może pójść nie tak przy takim podejściu?" i pierwsze co bym natychmiast odpowiedział takiej osobie z zespołu to "A co w sytuacji, kiedy gracz skieruje pociąg na zły tor, do innego miasta, albo skieruje pociągi na siebie i zablokuje wszystko?". Dążenie do satysfakcji klienta z mojego produktu natomiast nie pozwoliłoby mi powiedzieć ani przyjąć odpowiedzi "No to trudno, nic z tym nie zrobimy, najwyżej będą czekać godzinami i wyłączą jak się znudzą lub wkurzą. Potem pomyślimy jak będzie czas.". Nie. W takiej sytuacji, przełącza mi się tryb z "wyszukiwania dziur w całym" na "wyszukiwanie rozwiązań" i natychmiast pytam: "Co NALEŻAŁOBY zrobić? Co zrobiliby prawdziwi kolejarze w takiej sytuacji i czy możemy tak zrobić, żeby AI postępowało tak samo?". Jako że wiem, że sterowanie logiką na wysokim poziomie jest dostępne i łatwe do ogarnięcia w kodzie, to odpowiadam od razu "Tak, możemy to zrobić. Wystarczy że pociąg po przejeździe przez zwrotnicę sprawdzi, że tor na którym się znajduje nie prowadzi do żadnego miasta z jego rozkładu jazdy, w szczególności do następnego w kolejce. Wystarczy więc, że w takiej sytuacji wyda mu się (z kodu) polecenie "Zatrzymaj się" i jednocześnie wyśle do najbliższego dyżurnego (lub na czat) komunikat, że stwierdził skierowanie na nieprawidłowy tor. Potem już tylko trzeba ogarnąć żeby pociąg się cofnął na poprzednią stację kiedy dyżurny włączy mu na semaforze zielone na powrót skąd przyjechał (i wystarczy tylko, jeśli DA się to zrobić)". Serio, czy to jest tak trudne do wymyślenia i ogarnięcia? Czy ja jestem aż tak genialny, że nikt inny na to nie wpadł w tym zespole? No chyba nie. Pozostaje więc tylko pytanie jakim cudem zostało to olane do tej pory, no bo przecież nie można wypuścić takiej gry co się blokuje od byle czego i wszyscy nie mogą grać, nie? Pierwsze co zrobi konkurencja to przyjdzie blokować serwery i nagrywać na jutuba filmy "Co za beznadziejna gra! Próbowałem pograć przez godzinę, nie ujechałem nawet metra!". A jako, że to zostało olane aż do teraz, no to stąd właśnie mój głośny apel, że tak zostać nie może + podpowiedzi jak można to dobrze lub łatwo rozwiązać. Mam nadzieję, że teraz to jest już jasne i że zarzut w stylu "Nie jesteś w stanie przewidzieć absolutnie wszystkich możliwości, a tym bardziej w grze gdzie jest parędziesiąt graczy" jest nonsensem. Każdy dobry programista działa jak matematyk przeprowadzający dowód matematyczny lub jak hydraulik łatający przeciek - nie pozostawia żadnej luki, zabezpiecza nawet skrajnie nieprawdopodobne sytuacje brzegowe, na jakie tylko wpadnie - i dopiero wtedy uznaje swoją pracę za skończoną. Nie zostawiasz rury, która cieknie. A TAKIE sytuacje jak skierowanie na zły tor przez nieudolnego gracza, to już jest najprostsze co w ogóle można przewidzieć z tego typu rzeczy. Takie coś, to się przewiduje jeszcze zanim się przyłoży ręce do klawiatury. To mniej więcej tak jakbyś robił stronę do logowania i nie przewidział, że ktoś poda złe hasło albo zostawi puste pole login i by się zawieszało wszystko od tego - ten poziom. Takie coś to student pierwszego roku co najwyżej może popełnić. I wbrew pozorom nie piszę tego żeby dojechać drużynę od SimRaila, tylko żebyś TY zrozumiał jak bardzo się mylisz oraz żeby im POMÓC, do czego odniosę się jeszcze za chwilę. > Ale to nie oznacza że każdy feedback jest pozytywny i z dobrych chęci. Wątpię żeby ktokolwiek lepiej zademonstrował o co mi chodziło. OK... Rozbijmy sobie więc nasze posty na czynniki pierwsze: Moje 3 posty zawierały: apel, że gra nie może sobie nie radzić z sytuacjami DOPUSZCZONYMI W GRZE (czyli apel o zdrowy rozsądek) + argumenty dlaczego opis jak rozwiązać obecne problemy w sposób prawidłowy i najlepszy (za pomocą ulepszenia kodu AI) opis jak rozwiązać te same problemy bezkosztowo (bez pisania kodu, trudnych procedur dla AI) i jaki jest tego warunek konieczny opis algorytmu jak (prawie bezkosztowo) rozwiązać WSZYSTKIE NIEPRZEWIDZIANE PROBLEMY (w tym powyższe) tak aby gracze nigdy nie byli zablokowani na zawsze, nawet jak coś jeszcze o czym dziś nie wiemy wyjdzie w praniu pułapka, w którą można wpaść przy pisaniu algorytmu z poprzedniego punktu oraz pomysł jak ją łatwo rozwiązać sugestia o bardzo pożądanej funkcji: nieryzykownej i szybkiej zmiany stanowiska wewnątrz sesji, której i bez powyższych zmian zawsze mi brakowało. Czego za to nie było? Ataków i obrażania. Twoja odpowiedź zawierała: Sugestię, że się z Tobą kłóciłem jak idiota, mimo że się ze mną zgadzałeś Sugestię, że moje merytoryczne posty były pisane w złej wierze Sugestię, że w ogóle nie mam pojęcia o czym piszę i na niczym się nie znam Twierdzenie, że jak nie znam kodu konkretnego projektu, to nie mam szans nic mądrego powiedzieć Twierdzenie, że nie jestem w stanie przewidzieć pewnych rzeczy, tylko dlatego że Tobie wydaje się to niemożliwe do przewidzenia (zaręczam, że wielowątkowość jest znacznie gorsza od przewidywania zachowania ludzi, a trzeba przewidzieć wszystko, bo inaczej zawsze jest kaplica i program sypie się ordynarnie) Sugestię, że moje posty są bezwartościowe Obrażanie, oskarżenie o kłamstwo, o nie bycie deweloperem i generalnie ataki ad personam. Czego za to nie było? Merytoryki i dyskusji nad rozwiązaniami palących problemów. Także chyba niestety będę się musiał z Tobą zgodzić, że nie wszystkie posty są pisane w dobrej wierze. Tyle tylko, że mam wrażenie, że to nie ja tę tezę właśnie udowodniłem... I żeby była jasność: Kiedy piszę, że coś "nie działa", "źle działa" lub, że jest "na chwilę obecną beznadziejne, bo...", to nie jest to atak wymierzony w twórców, tylko wręcz przeciwnie. To jest ALBO policzek na obudzenie, ALBO znaczące oddolne podbicie priorytetu problemu, o którego istnieniu oni doskonale zdają sobie sprawę, ale póki co "nie mają czasu na pierdoły". Ja wiem jak to jest, kiedy nie ma czasu zrobić wszystko to co by się chciało zrobić. Ale jak się wywoła taki głośny alarm, to wtedy często nagle okazuje się, że budżet czasowy lub finansowy JEDNAK DA się na to zwiększyć, bo to jest jednak bardzo ważne skoro klienci na to tak bardzo narzekają. Rozumiesz? Odróżniasz to od ataku? To jest POMOC. To jest argument dla przełożonych, którzy decydują o priorytetach zadań. To jest tak jakby powiedzieć grubasowi, że "Słuchaj, masz problem, ledwo chodzisz po schodach już, a ciągle te hamburgery wpierdzielasz. Jak nie zmienisz swojego postępowania i diety to za chwilę po prostu umrzesz." - takie coś to jest realna pomoc, a nie stwierdzenie "Wszystko jest ok, nie przejmuj się co mówią inni, będzie dobrze." To drugie (choć miłe) to nie jest pomoc przyjaciela tylko prawie że morderstwo. Za to to pierwsze (choć bolesne) spowoduje, że człowiek się może obudzi i uratujesz mu tym życie. I rozsądny człowiek się o to NIE sfochuje tylko powie "kurde masz rację, muszę coś zmienić". A ja chcę uratować tę grę, bo chcę mieć w co grać po 13-tym i bardzo na nią liczyłem, bo zawsze mi brakowało polskich pociągów w moim zestawie. Natomiast to co widzę mnie osobiście przeraża, bo obawiam się fali krytyki, słabych ocen na Steamie i jutubie i upadku wizerunkowego i finansowego, zanim te wszystkie problemy zostaną naprawione i zanim produkt będzie świetny. Tak jak wspominałem już gdzieś wcześniej, za Cyberpunkiem 2077 do dnia dzisiejszego chodzi smród bugów, które mieli w dniu release'a - i nadal odstrasza to zagranicznych klientów, którzy TYLKO TO pamiętają. Dlatego W DOBREJ WIERZE alarmuję, że to AI, to jednak trzeba naprawić w pierwszej kolejności, żeby ludzie mogli w ogóle GRAĆ. Zwyczajnie mam z autorami wspólny interes: chcę żeby ta gra była zajebista i odniosła sukces (mimo, że z innego powodu niż oni). Dlatego bardzo proszę darować sobie dalsze oszczerstwa w moim kierunku. > I ty się dziwisz że ci posty znikły. Cieszę się, że nie tylko ja myślę, że to usuwanie to była ręczna robótka, a nie jakieś "mechanizmy antyspamerskie" 😉 Dodatkowo mamy tu w reakcji radochę z tego jak ładnie mi (za przeproszeniem) przysrałeś od tej samej osoby, która mnie własnoręcznie blokowała, więc chyba już jasne jest dla wszystkich, że tamte przeprosiny i wyjaśnienia nie były szczere, tylko były PR-ową koniecznością, żeby zachować resztki godności w sytuacji miażdżących dowodów. Ja stwierdziłem, że skoro zachowali pozory i jednak zaczęli stare posty przywracać, to może warto to przełknąć i pomagać dalej, więc zacząłem delikatnie znowu ludziom odpisywać, ale... 😕 Jeśli to będzie dalej schodzić na poziom poniżej podłogi, to chyba jednak odpuszczę, no bo ciężko z dobrym sercem pomagać komuś kto cię zwalcza i cieszy się jak cię obrażają. Od razu mi się przypominają niektóre zapomniane już powody wyjazdu... Człowiek po czasie wymazuje te złe rzeczy z pamięci i mu się przez to potem wydaje, że źle zrobił. Także niechcący też mi pomogliście. 😉 Pozdrawiam i liczę na nieagresywne i merytoryczne dyskusje następnym razem. Bo ja się oczywiście mogę mylić w wielu kwestiach, ale przecież nie trzeba od razu obrażać czy cenzurować, nie? W końcu chyba mamy jeden wspólny cel tutaj.
  23. Również się w większości zgadzam, ale nie do końca. Uczenie się tras na pamięć przykładowo może być zbyt dużym wyzwaniem dla zwykłych graczy (a już zwłaszcza jeden przejazd z kimś innym nic nie da - mi by nie dał, i tak nie zapamiętam z tego nic). Szkolenie tak, certyfikacja tak, może nawet ograniczenia tak - ale tylko do części multiplayer (jeśli w ogóle). W single powinno się dać wsiąść kompletnie zielonym, inaczej większość graczy się zniechęci i zwróci grę ("Kupiłem symulator pociągu i nawet nie mogę pojeździć tylko jakieś chore testy muszę robić! Niech się wypchają! Ja chciałem tylko zobaczyć jak się pociągiem jeździ bo nawet nie wiem czy mi się to spodoba!"). Wymuszone szkolenie przed multiplayer tak, ale takie rzeczy dla ekspertów, to raczej tylko w formie nieobowiązkowej i pozytywnej (osiągnięcia, rankingi punktowe światowe i wśród znajomych za różne trasy itp. a nie "Zaliczysz teorię, albo nie pograsz!"). A w razie czego podpowiadać i wspierać zawsze może komputer.
  24. Ten wykres to nie do końca jest siła hamowania, bo to by było bardziej BC (Break Cylinder). To jest (jak zgaduję) odwrotność ciśnienia w Break Pipe. Czyli to "żądanie" jest najbliżej prawdy, ale samo w sobie jest dziwne i wprowadza nazwę nieznaną w realu (podejrzewam). W TSW2 rozwiązali to tak, że HUD pokazuje małe obrotowe analogowe wskaźniki ciśnienia od każdej z tych rzeczy (BC, BP i MR), co jest bardziej wymagające dla początkujących, ale za to zawiera wszystkie informacje i nic nie przekłamuje:
  25. (BTW, zauważyliście, że w grze tego cykania kompletnie nie słychać?) Takie coś (jak na filmie powyżej) to by była gruba przesada. Człowiek miał zamontowaną kamerę do głowy, ale siedząc w środku i czując przeciążenia nie odbierasz tych wszystkich ruchów tak drastycznie jak oglądając ten film, bo mózg to kompensuje (nie mówiąc o tym, że celowo czasem przechylasz głowę, a na filmie jest to zawsze zaskoczeniem). Tutaj aż się słabo robi jak się patrzy na te wszystkie ruchy, bo ani nie czujesz przeciążeń, ani to nie ty skręcasz głowę szybkim ruchem żeby na coś zerknąć. Powinno to być wypośrodkowane z wyczuciem. Przykładowo w TSW2 jest to całkiem nieźle zrobione, bo im mocniej hamujesz, tym mocniej kamera leci do przodu i trochę "czujesz" dzięki temu o ile mocniej hamujesz przy dociskaniu hamulca. Mi to przynajmniej bardzo pomagało i odbierałem to jako rzeczywiste wrażenie. Nie chodzi (moim zdaniem) o to, żeby bujało całym ekranem jak w ruskim traktorze, tylko kamera powinna trzymać pion i tylko wychylać się delikatnie zgodnie z przeciążeniami, tak aby można było te przeciążenia "poczuć". Poza tym obrót ekranu powodowałby wrażenie "przeciążenia obrotowego" (momentu), czyli że to świat się obraca. "Świat" powinien stać zawsze prosto (co odpowiada temu, że błędnik kompensuje takie rzeczy i czujesz, że świat się wcale nie obraca nawet jak TY się obracasz). Kabina może się bujać na boki (w tym obracać lekko), ale kamera powinna być zawsze prosto (i jedynie odchylać się od zmian prędkości, czyli tak jak jej pochodna).
×
×
  • Create New...

Important Information

Terms of Use Privacy Policy