Reply to Thread
Results 1 to 5 of 5

Thread: Dzielimy się pomysłami poprawiania stabilności gry...

  1. #1

    Join Date
    Sep 2014
    Posts
    30
    Server
    CLA01

    Lightbulb Dzielimy się pomysłami poprawiania stabilności gry...

    Trochę różnych metod mam i uznałem, że swoimi się podzielę może ktoś zna jakieś inne.

    Klienta ze Steama nie sprawdzałem. Używam Linuxa i część metod jest na Linuxie bazujących ale daje się przenosić na Windows w ten czy inny sposób acz nie sprawdzałem czy cokolwiek dadzą wtedy.

    Problemy jakie ja zaobserwowałem to:
    * przywieszanie się gry (najczęściej w trakcie walki lub po teleporcie) co często albo jest totalne kończące się brakiem synchronizacji.
    Najprostszym remedium, które często działa są: zmiana jakości w ustawieniach i powrót do gry/czasem nawet można tylko udać zmianę lub po prostu wejść do ustawień i po wyjściu rusza. Podobnie działa również zmiana wielkości okna/pełen ekran (F11 w chrome)

    * mulenie, degradacja w czasie
    oraz
    * gubienie poleceń/zmiana kolejności podczas walki

    Tutaj po pierwsze zauważyłem, że często jest to skorelowane z włączonym proxy w przeglądarce oraz problemami z chatem po stronie serwera lub zblokowaniem czatu po mojej stronie.

    Kiedyś po zblokowaniu czatu gra działała stabilniej i szybciej. Teraz też tyle, że do kompletu mam efekty gubienia się gry podczas walki. Czyli pewnikiem Ubi "naprawił" czat według siebie...

    ale za to mam trochę alternatywnych rozwiązań poprawiających stabilność rozgrywki.

    Po pierwsze nie tyko w Heroesach zauważyłem, że wymuszenie działania procesów odpowiedzialnych za grę do konkretnych fizycznych procesorów/korów pomaga.
    Pod Linuxem cpuset i system przeniosłem na cpu0, a tylko thread odpowiedzialny za obsługę gry oraz audio mam na cpu1 (mam tylko 2 kory).
    Minimum, które pomaga to wymuszenie renderowania na gpu na jednym korze, a obsługę gry na innym.

    Jak przypisywać zadania do procesorów do znalezienia w sieci.

    A obecnie trochę poszukałem o tym co można w chrome poustawiać i mam póki co taką propozycję, która rownież u mnie nieco na oko pomaga:

    /usr/bin/google-chrome-beta --disk-cache-size=2073741824 --app="http://cla.heroes-online.com" --no-proxy-server --disable-gpu-vsync --disable-gpu-watchdog --disable-sync --enable-zero-copy --start-fullscreen --disable-gpu-program-cache

    odpowiednio:
    chrome-beta bo używam tej wersji tylko do grania w heroes
    --disk-cache-size ma zminimalizować doczytywanie danych z sieci. Domyślnie jest 256MB, a minimum na moje oko to 512MB bo tyle mniej więcej mi gra w tej chwili zajmuje.
    -app i --start-fullscreen, żeby uzyskać wygodny tryb pełnego ekranu. Obecna wersja chrome nie śmieci mi już napisami gdy myszką po bokach ekranu jeżdżę. Kiedyś sprawdzałem --kiosk w tym samym celu ale --app wydaje się być lepsze.

    --no-proxy-server - po ich poprawkach włączenie proxy u mnie prowadzi do problemów.

    --disable-gpu-vsync --disable-gpu-watchdog, raczej nic nie daje ale teoretycznie odrobinę przyspiesza co u mnie nie prowadzi do żadnych nieładnych efektów graficznych i raczej nikt nie zauważy użycia.

    --disable-sync,-nie synchronizuje tego okna przeglądarki z kontem googla co powinno pomóc acz ja mam w tej chwili i tak praktycznie odłączone

    --enable-zero-copy, nawet nie wiem jak jest domyślnie i czy cokolwiek daje ale może pomagać, a nie powinno zaszkodzić.

    --disable-gpu-program-cache, póki co testuję od wczoraj bo to moje nowe znalezisko i muszę znaleźć domyślne ustqawienie ilości cache dla programu gpu.
    Sprawdzałem wyłączne oraz 16 i 128MB. Mam wrażenie, ze przy wyłączonym i 128MB gra działa lepiej ale może to być tylko moje wrażenie lub akurat przypadek gdy serwer gry płynniej działą.

    Ten ostatni switch tak naprawdę jest powodem tego wątku powstania.
    [Edit]
    Jest jeszcze --disable-gpu-memory-buffer-compositor-resources.
    Osobiście mam wrażenie, ze problemy gry wynikają z błedów w destruktorach klas i błedów tzw. races condition pomiędzy threadami. Nie chcę całość zrzucać na Ubi czy Blue Byte bo podobnie jest w The Last Stand czyli możliwe, że to albo jakieś niedociągnięcie we fleshu albo problem z dokumentacją metod czy inaczej mówiąc ogólnym brakiem wiedzy jak pisać kod. Podobno przy takiej wielkości kodu trudno się nim we Flash zarządza. Faktem jednak jest, że od mojego startu około 2 lata temu część błędów była i nadal jest.
    Blue Byte wydaje się nie testować zupełnie gry na komputerach z dolnych wymagań i z siecią może i 20mb/s ale daleko od nich i ze zmieniającymi się pingami/możliwością zmiany kolejności przychodzących danych. Stos sieciowy w grze też wydaje się mieć jakieś problemy ale ogólnie wygląda to na "race condition"
    [/Edit]

    Jeśli ktoś z czytających miałby jakieś własne obserwacje z tym oraz z --gpu-program-cache-size=xxx to zapraszam do podzielenia się.
    Listę dostępnych przełączników dla chrome mam z:
    http://peter.sh/experiments/chromium...line-switches/

    P.S. Kiedyś zablokowanie w proxy chatu gry u mnie dawało mniejsze zwisy ale niestety od około pół roku "poprawili" coś i teraz mi pozwala jedynie płynniej poruszać się po mapie ale walk nie daje się prowadzić. Może to tylko u mnie ale wątpię.
    Last edited by ArchieIl; 08.02.16 at 16:43. Reason: dodany switch.

  2. #2
    Maniek123404's Avatar
    Join Date
    Oct 2014
    Location
    Wielkopolska
    Posts
    597
    Server
    CLA01
    Też to zauważyłem bez czatu szybciej gra działa
    Update by się przydało sie porządne...
    Rok gram gra się nie rozwija wcale :\

  3. #3

    Join Date
    Sep 2014
    Posts
    30
    Server
    CLA01
    Nie jestem pewien dokładnego funkcjonowania tego przełącznika w chrome:

    --aggressive-cache-discard


    ale jeśli dotyczy to cache trzymanego w pamięci przegladarki to możliwe, że też może być interesujący.

    Od jakiegoś czasu mam dodany do polecenia uruchamiającego Heroes Online ale pewności nie mam na ile, które ustawienia pomagają bo i tak zdarza mi się, że muszę zrobić szybki reload bo gra mi zgubiła polecenie wydane wojsku.

    Myślę, że jeszcze u siebie różne metody będę próbować bo co prawda da się grać i nawet całkiem w tej chwili jest to akceptowalne ale mogłoby być lepiej.

  4. #4
    Maniek123404's Avatar
    Join Date
    Oct 2014
    Location
    Wielkopolska
    Posts
    597
    Server
    CLA01
    Quote Originally Posted by ArchieIl View Post
    Nie jestem pewien dokładnego funkcjonowania tego przełącznika w chrome:

    --aggressive-cache-discard


    ale jeśli dotyczy to cache trzymanego w pamięci przegladarki to możliwe, że też może być interesujący.

    Od jakiegoś czasu mam dodany do polecenia uruchamiającego Heroes Online ale pewności nie mam na ile, które ustawienia pomagają bo i tak zdarza mi się, że muszę zrobić szybki reload bo gra mi zgubiła polecenie wydane wojsku.

    Myślę, że jeszcze u siebie różne metody będę próbować bo co prawda da się grać i nawet całkiem w tej chwili jest to akceptowalne ale mogłoby być lepiej.
    Tu jest pokazane jak gra funkcjonuje
    http://www.makinggames.biz/news/inno...lash,5110.html

  5. #5

    Join Date
    Sep 2014
    Posts
    30
    Server
    CLA01
    Quote Originally Posted by Maniek123404 View Post
    Tu jest pokazane jak gra funkcjonuje
    http://www.makinggames.biz/news/inno...lash,5110.html
    [Edit: Skasowane bzdety nie dla dzieci]

    P.S. Inna sprawa, że ja mam wrażenie, że ten przełącznik kasujący efekty specjalne raz na jakiś czas jest w kodzie ignorowany.
    [Edit: skasowane]

    P.S.2 A oprócz tego miałem oczywiście na myśli, że przełącznik dla chrome nie wiem jak działa dokładnie bo nie doszukałem się jego opisu. Ogólnie gra ma problemy gdy z jakiegoś powodu rzeczywistość wytyka jej brak użytych semaforów do szeregowania zdarzeń inaczej niż jak teoretycznie powinno się to zdarzyć gdyby czytać dane z dysku, a render robić bez zakłóceń cięższymi wątkami z innych zadań. Czyli np. jeśli komuś tak jak mi momentami zjada 100% danego kora. Acz gdyby nie te braki "stabilności" byłaby lukrem w serii HoMM... Póki co ktoś pomylił sól z cukrem.

    [Edit: Dodane]
    P.S.3 Grając w 1920x1080 w chromium z korektami mam wystarczająco stabilną grę, a czas pokaże co dalej z tym będzie. Ze względu na możliwość wymiany istot z gildi nawet jestem skłonny zaakceptować, że we własnej gildi nie mogę mieć kilku swoich bohaterów. :-).
    Last edited by ArchieIl; 28.03.16 at 23:25. Reason: korekta po testach kuracji HO odstresowującej...

Reply to Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Ubisoft uses cookies to ensure that you get the best experience on our websites. By continuing to use this site you agree to accept these cookies. More info on our privacy.