Pierwsze Kroki

Witaj w dokumentacji systemu skryptów silnika NaguzWare. System oparty jest na interpreterze Lua 5.4, pozwalając na dynamiczne modyfikowanie ustawień cheata, wywoływanie funkcji sieciowych oraz budowanie niestandardowych algorytmów ruchu.

Wszystkie skrypty należy umieszczać w folderze: Dokumenty\NaguzWare\Scripts\. Skrypty można ładować i wyładowywać bezpośrednio z zakładki CONFIG w menu ImGui.

Struktura Skryptu

Zalecanym podejściem do pisania stabilnych skryptów jest używanie menedżera zdarzeń client.register_callback. Rejestracja funkcji chroni pamięć gry przed crashami i zapewnia współbieżność z klatkami obrazu oraz sieciowymi tickami gry.

-- Prosty szablon działania
naguz.log("Skrypt gotowy do dzialania!")

local function on_render()
    local local_player = sdk.get_local_player()
    if local_player then
        -- Sprawdzanie czy klawisz 'C' (0x43) jest wciśnięty
        if client.is_key_down(0x43) then
            globals.AAJaw = 90.0
        end
    end
end

client.register_callback("on_paint", on_render)

Moduł: naguz

Zapewnia podstawowe funkcje narzędziowe i systemowe komunikacji z konsolą cheata.

Metoda Argumenty Zwraca Opis
naguz.log(text) string void Wypisuje sformatowaną wiadomość w oknie konsoli developerskiej cheata.

Moduł: client

Obsługuje system rejestracji zdarzeń oraz natywną komunikację z peryferiami systemu Windows.

Metoda Argumenty Zwraca Opis
client.register_callback(event, func) string, function void Rejestruje funkcję zwrotną pod dany event systemowy (np. "on_paint").
client.is_key_down(vk_code) integer boolean Sprawdza stan klawisza za pomocą Windows API. Zwraca true jeśli klawisz jest wciśnięty.

Moduł: globals

Umożliwia bezpośredni odczyt i dynamiczny zapis (w locie) do wszystkich zmiennych konfiguracyjnych interfejsu cheata.

Pole (Key) Typ Kategoria Opis
globals.autopeekbooleanRage / AAWłącza / wyłącza funkcję Auto Peek.
globals.antiaim_enabledbooleanRage / AAGłówny przełącznik systemu Anti-Aim.
globals.antiaim_pitch_typeintegerRage / AATyp pochylenia głowy (np. AntiaimPitch.PITCH_DOWN).
globals.antiaim_yaw_typeintegerRage / AATyp przesunięcia osi Yaw.
globals.AAJawnumber (float)Rage / AARęczna wartość przesunięcia osi Yaw (Manual AA).
globals.AAPitchnumber (float)Rage / AARęczna wartość przesunięcia osi Pitch.
globals.boxbooleanVisualsWłącza ramki ESP Box 2D wokół graczy.
globals.healthbarbooleanVisualsPokazuje paski zdrowia przy graczach.
globals.nameespbooleanVisualsWyświetla nazwy (nicknames) graczy.
globals.glowbooleanVisualsWłącza efekt obrysowania Glow ESP.
globals.watermarkbooleanVisualsPokazuje logo i parametry cheata w rogu ekranu.
globals.thirdpersonbooleanVisualsPrzełącza widok z trzeciej osoby.
globals.thirdperson_distnumber (float)VisualsDystans kamery w widoku Thirdperson.
globals.remove_scope_overlaybooleanRemovalsUsuwa czarne linie celownika snajperskiego.
globals.remove_flashbooleanRemovalsCałkowicie usuwa efekt oślepienia granatem błyskowym.
globals.remove_smokebooleanRemovalsSprawia, że granaty dymne stają się przezroczyste.
globals.bhopbooleanMovementWłącza automatyczny BunnyHop (automatyczny skok).
globals.autostrafebooleanMovementAutomatyczne sterowanie w powietrzu zwiększające prędkość.
globals.jumpbugbooleanMovementUmożliwia lądowanie bez otrzymywania obrażeń od upadku.
globals.customModelChangerbooleanChangerWłącza podmienianie modeli broni i noży.
globals.agentChangerbooleanChangerWłącza podmienianie skinów agentów postaci.
globals.selectedAgentintegerChangerIndeks wybranego agenta z bazy danych.
globals.fakeVACbanbooleanLobbyWyświetla fałszywy czerwony komunikat o banie w czacie głównym menu.
globals.fake_rankbooleanLobbyModyfikuje wizualną ikonę rangi profilu.
globals.elointegerLobbyNadpisuje wartość punktów ratingu (ELO) w trybie Premier.

Moduł: sdk

Eksponuje natywne funkcje silnika Source 2 przeznaczone do pobierania struktur i obiektów z pamięci gry.

Metoda Argumenty Zwraca Opis
sdk.get_local_player() brak C_BaseEntity Zwraca obiekt żywego gracza (Pawn) lokalnego użytkownika.
sdk.get_local_controller() brak C_BaseEntity Zwraca obiekt kontrolera lokalnego sieciowego gracza.
sdk.get_entity_by_index(idx) integer C_BaseEntity Pobiera encję (gracza lub obiekt) po jej indeksie z globalnej listy encji.

Obiekt klasy: C_BaseEntity

Wszystkie obiekty przekazywane z metod sdk są typu obiektowego (UserData) i wymagają wywoływania metod za pomocą operatora dwukropka :.

Metoda obiektu Zwraca Opis
entity:get_health() integer Pobiera aktualną ilość punktów zdrowia (HP).
entity:get_team() integer Zwraca numer drużyny (np. 2 = Terroryści, 3 = Antyterroryści).
entity:is_alive() boolean Zwraca status określający, czy encja żyje.
entity:get_origin() table {x, y, z} Zwraca trójwymiarową tablicę asocjacyjną z pozycją geometryczną encji w świecie.

Zarejestrowane Enumy globalne

Słowniki zapobiegające stosowaniu "magicznych liczb" w kodzie. Zwiększają czytelność i stabilność skryptów:

-- Słownik typów pochylenia Anti-Aima (AntiaimPitch)
AntiaimPitch = {
    PITCH_UP = 0,
    PITCH_DOWN = 1,
    PITCH_ZERO = 2,
    PITCH_JITTER = 3
}

Przykład użycia w skrypcie:

if globals.antiaim_enabled then
    -- Ustawia głowę postaci prosto w dół przy użyciu enuma
    globals.antiaim_pitch_type = AntiaimPitch.PITCH_DOWN
end