Skocz do zawartości

Witamy w Nieoficjalnym polskim support'cie AMX Mod X

Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
  • Rozpoczynaj nowe tematy i odpowiedaj na inne
  • Zapisz się do tematów i for, aby otrzymywać automatyczne uaktualnienia
  • Dodawaj wydarzenia do kalendarza społecznościowego
  • Stwórz swój własny profil i zdobywaj nowych znajomych
  • Zdobywaj nowe doświadczenia

Dołączona grafika Dołączona grafika

Guest Message by DevFuse
 

Zdjęcie

Segmentation fault ustalenie miejsca problemu


  • Nie możesz napisać tematu
  • Zaloguj się, aby dodać odpowiedź
7 odpowiedzi w tym temacie

#1 DarkGL

    Nie oddam ciasteczka !

  • Administrator

Reputacja: 6 553
Godlike

  • Postów:11 976
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 30.11.2018 02:29

*
Popularny

Krótki poradnik jak znaleźć winowajce problemu Segmentation fault.

Dlaczego Segmentation fault występuje ?

Błędy typu Segmentation fault mogą wystąpić z kilku powodów
  • Poprzez przeciążenie serwera hlds/rehlds pluginami i innego rodzaju dodatkami.
  • Nieprzypisanie odpowiednich zasobów do poprawnego działania serwera.
  • Pisania po pamięci przez wirtualną maszynę amxx'a niedostępną dla niej lub pluginu.
Co zrobić jeśli Segmentation fault występuje ?
  • Upewnij się że korzystasz z najnowszej wersji:
    • HLDS/ReHLDS
    • Metamoda i jego dodatków
    • AMXX i jego modułów
  • Upewnij się że pluginy na serwerze są skompilowane tą samą wersją kompilatora amxx którego używasz na serwerze.
  • Wyłącz zbędne pluginy których nie używasz a mimo to są ładowane jako działające pluginy.
  • Wyłączaj po kolei pluginy w celu ustalenia który powoduje problemy na serwerze. Polecam wyłączać pluginy sposobem 1/2  (wyłączasz połowę, włączasz serwer. Problem występuje -> zmniejszasz o kolejną połowę. Problem ustał -> zawęziłeś okres poszukiwań o 50% w jednym resecie). Zazwyczaj w modach takich jak Zombie, Jailbreak, CSGO czy pokrewnych winowajcą są główne silniki.
  • Dopisz debug na liście pluginów który powoduje problem. Jeśli chcesz debugować wszystkie pluginy zamiast jednego ustaw cvar amx_debug 2.
    // Plugin Debug mode
    // 0 - No debugging (garbage line numbers)
    // 1 - Plugins with "debug" option in plugins.ini are put into debug mode
    // 2 - All plugins are put in debug mode
    // Note - debug mode will affect JIT performance
    //
    // Default value: 1
    amx_debug 2
  • Sprawdź logi serwera i amxx ( znajdziesz je w cstrike/addons/amxmodx/logs ) w celu ustalenia miejsca występowania problemu w pluginie ( konkretne miejsce nigdy nie będzie podane ale możesz znaleźć tam inne błędy które też mogą wpływać na działanie serwera ).
  • Sprawdź kod sma pluginu w celu ustalenia miejsca i naprawy problemu jeśli umiesz to zrobić sam.
  • Jeśli nie umiesz programować załóż odpowiedni temat na forum podając:
    • Używane wersje hlds , metamoda i amxx
    • Logi serwera oraz logi amxx ( znajdziesz je w cstrike/addons/amxmodx/logs )
    • Pełen kod pluginu jako załącznik

  • +
  • -
  • 12

#2 Robiin

    Godlike

  • Support Team

Reputacja: 1 103
Super Hero

  • Postów:2 043
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 30.11.2018 03:12


Nie przypisanie odpowiednich zasobów do poprawnego działania serwera.

Nieprzypisane*

 

 

 


Pisania po pamięci przez wirtualną maszynę amxx'a nie dostępną dla niej lub pluginu.

 

Niedostępną*

 

 

 


Lgi serwera oraz logi amxx

Lgi -> Logi

 

Polecam także (zakładając, że połowa [minimum] osób czytających ten temat nie będzie wiedziała jak wydajnie wyłączać pluginy) wyłączać pluginy sposobem 1/2  (wyłaczasz połowę, włączasz serwer. Problem występuje -> zmniejszasz o kolejną połowę. Problem ustał -> zawęziłeś okres poszukiwań o 50% w jednym resecie). Zazwyczaj w modach takich jak Zombie, Jailbreak, CSGO czy pokrewnych winowajcą są główne silniki. To od nich należy zacząć poszukiwania.

 

 

Warto też dodać, że logi amxxa znajdują się w cstrike/addons/amxmodx/logs, ale osoby korzystające z poradnika powinny już to wiedzieć, jeśli zainteresowane są tematem in the first place.

 

Co do debugowania - należy pamiętać, że jest taka opcja jak 

// Plugin Debug mode
// 0 - No debugging (garbage line numbers)
// 1 - Plugins with "debug" option in plugins.ini are put into debug mode
// 2 - All plugins are put in debug mode
// Note - debug mode will affect JIT performance
//
// Default value: 1
amx_debug 2

znajdująca się w amxx.cfg - należy skorzystać z opcji nr. 2, jeśli ktoś nie rozumie.


Użytkownik aSiorr edytował ten post 30.11.2018 03:13

  • +
  • -
  • 3

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#3 DarkGL

    Nie oddam ciasteczka !

  • Autor tematu
  • Administrator

Reputacja: 6 553
Godlike

  • Postów:11 976
  • GG:
  • Steam:steam
  • Imię:Rafał
  • Lokalizacja:Warszawa
Offline

Napisano 30.11.2018 03:27

Literówki poprawione , dodane dodatkowe wskazówki


  • +
  • -
  • 0

#4 Robiin

    Godlike

  • Support Team

Reputacja: 1 103
Super Hero

  • Postów:2 043
  • Imię:Robert
  • Lokalizacja:Wrocław
Offline

Napisano 30.11.2018 03:29

Good job, here's the reward: :cycki:


  • +
  • -
  • 2

Nie dołączam do żadnej sieci, nie pomagam z tworzeniem paczek, nie napisze pluginów za zero.


#5 tytusek

    Czempion

  • Power User

Reputacja: 229
Wszechwidzący

  • Postów:822
Offline

Napisano 30.11.2018 12:50

Dodam od siebie, ze wina moga byc tez mapy, wiec warto czasami zamiast  wylaczania pluginów sprawdzic na jakiej mapie byl ten blad.


  • +
  • -
  • 4

#6 Rivit

    Godlike

  • Support Team

Reputacja: 1 319
Godlike

  • Postów:4 380
Offline

Napisano 01.12.2018 01:58

W końcu po tylu latach ktoś to zrobił :D

 

Anyway, było kiedyś AMXX'owe FAQ. Ono upadło czy co się z nim stało?


  • +
  • -
  • 0

#7 tytusek

    Czempion

  • Power User

Reputacja: 229
Wszechwidzący

  • Postów:822
Offline

Napisano 04.12.2018 22:52

protip [wiem ze to wejdzie w punkt amxmodx / dodatki ] - pluginy oparte o mysql, siądzie baza danych np sklepusms przy zmianie mapy --> crash, siadzie strona na ktorej socket w pluginie wysyla i pobiera jakies zadania --> crash


  • +
  • -
  • 0

#8 _McHappy

    Wszechwiedzący

  • Support Team

Reputacja: 243
Wszechwidzący

  • Postów:501
  • GG:
  • Imię:Radek
  • Lokalizacja:Tak
Offline

Napisano 05.12.2018 01:09

Czasem dobrze jest zacząć od wyłączania modułów-pluginów metamod'a - w tym samego amxx'a. Pozwala to wykluczyć problemy związane z

  • błędną konfiguracją startową serwera
  • funkcjonowaniem silnika (re)HLDS / metamoda
  • mapami i wszelkimi domyślnie ładowanymi zasobami (modele, sprite'y)

  • +
  • -
  • 1




Użytkownicy przeglądający ten temat: 0

0 użytkowników, 0 gości, 0 anonimowych