Istnieje krytyczny błąd w funkcji obsługującej przenoszenie przedmiotów w ekwipunku. W pewnych specyficznych sytuacjach umożliwia on duplikację przedmiotów. Problem pojawia się, gdy gracz rozdziela przedmiot na mniejsze ilości i następnie próbuje umieścić nowo utworzony przedmiot z powrotem na pierwotnym miejscu w ekwipunku. Chociaż przedmiot staje się niewidoczny w interfejsie klienta, w rzeczywistości nadal istnieje w bazie danych. To prowadzi do sytuacji, gdzie po przeniesieniu się na inny kanał lub ponownym zalogowaniu, gracz może sklonować przedmiot.
Co więcej, ten błąd może powodować niewielkie wycieki pamięci na serwerze, co stanowi zagrożenie dla jego stabilności. Wykorzystanie tej luki wymaga zaawansowanej wiedzy i odpowiednich narzędzi. Niemniej jednak istnieją pewne systemy, takie jak system zmiany kanałów, które mogą ułatwić graczom wykorzystanie tego błędu.
Sposób naprawy
Rozwiązanie tego problemu polega na dokładnym sprawdzeniu, czy źródło i docelowe miejsce przedmiotu w funkcji "MoveItem" są takie same.
Jest to błąd wymagający natychmiastowej naprawy!
Udało mi się znaleźć przedstawienie tego błędu:
W tym przypadku został użył użyty specjalny skrypt wykonujący powyżej opisaną akcję.
Cześć,
Wprowadzenie
Istnieje krytyczny błąd w funkcji obsługującej przenoszenie przedmiotów w ekwipunku. W pewnych specyficznych sytuacjach umożliwia on duplikację przedmiotów. Problem pojawia się, gdy gracz rozdziela przedmiot na mniejsze ilości i następnie próbuje umieścić nowo utworzony przedmiot z powrotem na pierwotnym miejscu w ekwipunku. Chociaż przedmiot staje się niewidoczny w interfejsie klienta, w rzeczywistości nadal istnieje w bazie danych. To prowadzi do sytuacji, gdzie po przeniesieniu się na inny kanał lub ponownym zalogowaniu, gracz może sklonować przedmiot.
Co więcej, ten błąd może powodować niewielkie wycieki pamięci na serwerze, co stanowi zagrożenie dla jego stabilności. Wykorzystanie tej luki wymaga zaawansowanej wiedzy i odpowiednich narzędzi. Niemniej jednak istnieją pewne systemy, takie jak system zmiany kanałów, które mogą ułatwić graczom wykorzystanie tego błędu.
Sposób naprawy
Rozwiązanie tego problemu polega na dokładnym sprawdzeniu, czy źródło i docelowe miejsce przedmiotu w funkcji "MoveItem" są takie same.
Jest to błąd wymagający natychmiastowej naprawy!
Udało mi się znaleźć przedstawienie tego błędu:
W tym przypadku został użył użyty specjalny skrypt wykonujący powyżej opisaną akcję.
Implementacja:
📁 Lokalizacja pliku: 'common -> length.h'
🔍 Szukaj
➕ Dodaj
🗒️Podgląd implementacji:
📁 Lokalizacja pliku: 'game -> char_item.cpp'
🔍 Szukaj
➕ Dodaj
📁 Lokalizacja pliku: 'game -> safebox.cpp'
🔍 Szukaj
➕ Dodaj