Losowe kicki graczy - serwer gry mmorpg
Ostatnio zmodyfikowano wczoraj o godz. 16:06
dunno Temat założony przez niniejszego użytkownika |
Losowe kicki graczy - serwer gry mmorpg » 2025-10-24 15:57:40 Kilka razy byliście w stanie nakierować mnie na rozwiązanie problemu, w związku z tym i tym razem zwracam się o pomoc. Posiadam skompilowany na Debian 11 silnik gry mmorpg. Dzięki wam serwera już nie wywala - nie ma losowych crashy. Natomiast pojawił się inny problem - kicki graczy. I tutaj nie jestem pewny czy winić silnik gry czy hosting. Potrafi wyrzucić różnych graczy np. drużyne z niemiec, albo losowo kicka polaków. Co ciekawe nie wygląda to na problemy sieciowe - jeżeli gracz jest zalogowany na różnych postaciach dostaje kicka tylko na niektóre z nich, czasami na wszystkie, a czasami tylko na jedną postać. Zauważyłem, że problem często pojawia się przy walce graczy. W czasie kicków gracz wykonywał nawet badanie winmtr, nic nie wykazalo jakichkolwiek problemów z siecią. Silnik serwera gry na podstawie: https://github.com/divinity76/YurOTS/tree/master/ots/source. - nie jest to dokładnie to samo źródło ale zbliżone, w razxie potrzeby mogę udostępnić poszczególne elementy. Moje pytanie brzmi - czy locki w game.cpp mogą mieć jakikolwiek wpływ na kicki poszczegolnych graczy? Co takiego może na to wpływać? Kiedyś bardzo mnie nakierowaliście z crashami + użycie valgrinda rozwiązało sprawe i potwierdziły się wasze słowa. To trochę takie wróżenie z fusów, bo nawet nie mogę zebrać logów jak w przypadku crasha. Tutaj z kickami chyba nie ma narzędzia które pomoże. W jaki sposób mógłbym odnotować co było powodem kicka gracza? |
|
DejaVu |
» 2025-10-24 16:06:39 Dodaj logowanie w miejscach, które uważasz, że mogą mieć potencjalny związek z kickami. Przykładowo: jeżeli kicki są często w trakcie walki, to dodaj logi w tej okolicy, aby mieć co diagnozować. Możesz też popatrzeć czy da się rozszerzyć moment w którym następuje 'kick' tj. aby dodać 'kick reason' - czy wystąpił timeout sieciowy, czy wystąpiła jakaś akcja, która zapętliła coś, przez co pakiety sieciowe przestają być wysyłane itd. Możesz dodać logi po stronie serwera i po stronie klienta (o ile masz użytkowników, którzy są w stanie wysłać Ci logi gdy nastąpił kick). |
|
| « 1 » |