Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

[Pytanie] No Spread, No recoil D3D tutorial


Rekomendowane odpowiedzi

Opublikowano

Witam.

Mój Następny Tutorial będzie o tym, jak zrobić Hacka z opcją No Recoil i No spread, według mnie przydatne opcje.

 

Zaczynamy?

 

Przyjmując ,że macie już załączone projekty , przechodzimy , do zrobienia menu.

Jednak zanim to zrobimy, zadeklarujmy adresy. Będą nam potrzebne adresy ? No Spread- - Player Pointer- i 3 offsety No recoil. /*offset to taki krótki adres, który wymaga dodatowo Player Pointera. */

 

Defines

*********************

#define player_pointer 0x10E78F0

#define nospread 0xB720CC /* zadeklarujemy tu offsety, jednak zwykle robi się to w kodzie hacka. */

#define recoil1 0x2F4

#define recoil2 0x2F8

#define recoil3 0x2FC

*********************

Teraz możemy przejść do głównych opcji menu.

Myślę ,że wiecie, gdzie je wkleić.

 

Bool

 

*********************

CH_Norecoil = false;

CH_Nospread = false;

 

*********************

 

Następnie musimy koniecznie zmienić odpowiednie int higlight.

Podam przykład z 2 opcjami, aby nie było żadnego problemu.

 

Int highlight

 

*********************

int highlight[2] = {1,0);

*********************

 

Kolejną rzeczą, którą musimy zrobić, aby nasz hack działał, są chary.

 

Char

*********************

char norecoil[20] = {NULL};

char nospread[20] = {NULL};

*********************

 

Przechodzimy do najważniejszej części hacka ? głównego kodu. Różne hacki wymagają róznych funkcji, może to być NOP lub tym podobne?

 

Opcja No Recoil

*********************

 

{

if (CH_Norecoil)

{

DWORD dwPlayerPtr = *(DWORD*)player_pointer; // to jest nasz player pointer.

if(dwPlayerPtr != 0)

{

*(float*)(dwPlayerPtr+recoil1) = 0;

*(float*)(dwPlayerPtr+recoil2) = 0;

*(float*)(dwPlayerPtr+recoil3) = 0; // ?recoil3? 2 i 1to offsety opcji , te adresy zmieniają sie rzadko.

}

}

*********************

 

Opcja No Spread

 

*********************

 

{

if (CH_Nospread)

{

long t=0;

unsigned long Protection;

VirtualProtect((void*)nospread, sizeof(t), PAGE_READWRITE, &Protection);

memcpy((void*)nospread, &t , sizeof(t));

VirtualProtect((void*)nospread, sizeof(t), Protection, 0); // ? nospread? ? adres opcji.

}

 

Koniec funkcji. Najczęstszą przyczyną errorów jest brak " } " przy zdaniu

//Add anouther } with every hack! , a więc dodajemy ten nawias przy każdej nowej opcji, teraz musimy dodać dwa razy " } " .

Następną częścia sprawnego menu jest dodanie "sprintf".

 

 

 

Sprintf

*******************

 

sprintf(norecoil, "%s", (CH_Norecoil ? " [1.0]" : " [0.0]")); /* zamiast [1.0] może być On, albo coś podobnego, jak kto woli? tak samo przy [0.0] (Off). */

sprintf(nospread, "%s", (CH_Nospread ? " [1.0]" : " [0.0]"));

 

*******************

Jedziemy dalej, kolej na funkcje, która określa miejsce kazdej opcji na ekranie. ( Tzn Kordy)

 

 

If(hightlight[x]==1)

 

*******************

if(highlight[1]==1)

m_pFont_INFO->DrawText(20.0f, 120.0f, textBlue, norecoil);

else

m_pFont_INFO->DrawText(20.0f,120.0f, textWhite, norecoil);

 

 

if(highlight[2]==1) // tylko dodajemy +1 z każdą opcją ?

m_pFont_INFO->DrawText(20.0f, 120.0f, textBlue, nospread); /* tutaj zmieniamy kolor czcionki jednak wczesniej deklarujemy ją nad defines. Bardziej szczegółowo opisze trochę dalej. */

else

m_pFont_INFO->DrawText(20.0f,120.0f, textWhite, nospread); /* liczba 20 to zmienna x, czyli jak daleko jest napis opcji od lewej strony. Z kolei 120 to zmienna y, która określa miejscu napisu opcji od góry. */

 

****************

Kiedy skończymy z tym, czas na funkcje, która pozwoli nam przemieszczać się klawiszami po menu. Chodzi tu o dodawanie specyficznych liczb, look?

 

menu variable

****************************

if(GetAsyncKeyState(VK_UP)&1)

{

//ADD +1 to were the 3 is so if its a new hack the 3 will be 4

for(int i=0; i < 3; i++) // ta liczba wynosi zawsze o 1 więcej niż mamy opcji.

{

if (highlight == 1)

{

int a = i-1;

 

if(a < 1)

break;

 

else

{

highlight[a]=1;

highlight=0;

break;

}

}

}

}

 

if(GetAsyncKeyState(VK_DOWN)&1)

{

for(int i=0; i < 3 ; i++) // tutaj ta sama sytuacja ? zawsze o 1 więcej niż jest opcji w hacku.

{

if (highlight == 1)

{

int a = i+1;

 

if(a > 2 ) // ta liczba jest równa ilości opcji w naszym D3D.

break;

 

else

{

highlight[a]=1;

highlight=0;

break;

}

}

}

}

 

***********************

 

Nadszedł czas na ostatnią funkcje, która jest odpowiedzialna za włączenie i wyłączenie naszych opcji.

Oto ona?

 

Activate On/Off function

 

**********************

 

 

if(highlight[1] == 1 && (GetAsyncKeyState(VK_RIGHT)&1)) // dodajemy tylko +1 ?

CH_Stamina = !CH_Stamina;

 

 

if(highlight[2] == 1 && (GetAsyncKeyState(VK_RIGHT)&1)) /* ?VK_RIGHT? to jest funkcja, po której hack nam sie włączy na on. */

CH_Super = !CH_Super; // to jest właśnie to co deklarowaliśmy w bool.

 

**********************

Jesczę jedna rzecz - kolory czcionek, aby dodac inne kolory musimy zrobić pewną rzecz. Na samej górze pod tymi linijkami

" HANDLE phandle;

HANDLE Wrrk;

 

CD3DFont* m_pFont_new = NULL;//one for menu

CD3DFont* m_pFont_INFO = NULL;////one for other text (such as a header)

", dodajemy jedną z tych lini w zależności od koloru..

const D3DCOLOR txtOrange = D3DCOLOR_ARGB(255, 255, 140, 0);

const D3DCOLOR txtRed = D3DCOLOR_ARGB(255, 255, 0, 0);

const D3DCOLOR txtGreen = D3DCOLOR_ARGB(255,0,255,0);

const D3DCOLOR txtWhite = D3DCOLOR_ARGB(255,255,255,255);

const D3DCOLOR txtBlue = D3DCOLOR_ARGB(255,0,0,255);

const D3DCOLOR txtYellow = D3DCOLOR_ARGB(255,255,255,0);

const D3DCOLOR txtPink = D3DCOLOR_ARGB(255,255,192,203);

const D3DCOLOR txtBlack = D3DCOLOR_ARGB(255,0,0,0);

const D3DCOLOR txtPurple = D3DCOLOR_ARGB(255,160,32,240);

 

Myślę, że to już koniec? Mam jednak złą informację, hacki w D3D nie wyświetlają się, w skutek czego ich nie zobaczysz. To robota HS, ale kiedy będzie nowy sposób, usune ta wiadomość.

 

TUTORIAL ZROBIONY PRZEZ N1GHTMARE, I TYLKO DLA MPCFORUM.PL, ZABRANIAM KOPIOWAĆ GO, CZY W JAKIKOLWIEK INNY SPOSÓB ROZPOWSZECHNIAĆ GO BEZ MOJEJ ZGODY.

szczególnie tyczy się to forum ?bo.pl

 

 

tyle odemnie, pozdro.

  • 1 miesiąc temu...
  • 3 tygodnie później...
Gość mlody22pl
Opublikowano

jakim programem to robic .Sry , że pytam ale jestem zielony ;P

  • 4 miesiące temu...
Opublikowano

troche nie dokladny ten tut:/

 

 

Przyjmując ,że macie już załączone projekty , przechodzimy , do zrobienia menu.

Teraz możemy przejść do głównych opcji menu.

Myślę ,że wiecie, gdzie je wkleić.

 

a jak ktos nie wie?:/

18706.png

 

Linkinparkfan.jpg

 

29902.jpeg

 

29966.gif

 

Moje super elo pro sygny:)

 

@down

 

avbf.gif

 

afas.gif

 

Opublikowano

tut bardzo dokladny ale juz nie dziala xD sproboj zrobic wg. tego nowego co napisal nasz kozsmar :D

 

 

  • 3 tygodnie później...
Opublikowano

Ludzie... Zamiast zadawać całkiem głupie pytania to poszukajcie. google nie boli wręcz powszechnym przekonaniom :P

D3D pff pierwszy linka na google mam wikipedie. Tak, jeszcze pytaj w jakim programie. Chociaż troche wiedzy ludzie, poszukajcie. Nie rozumiem kogu bo nie lubie D3D i też nie wiem gdzie wklejać, ale nie dre paszczy na prawo i lewo. W poprzednich tutorialach jest to opisane.

Jeżeli szukasz pomocy, piszesz poprawnie po polsku, a rozwiązaniem twojego problemu nie jest pierwszy link w google - prawdopodobnie pomogę.

Jeżeli chcesz gotowca, to najpierw podaj cenę. Cenę w pln, bo za plusy pracują lamusy :)

Opublikowano

jak zwykle n1 dobra robota ;) tylko przecież dokładnie te same opcje można zrobić z pomocą tuta wcześniejszego ;) ale jak dla całkowicie zielonych to dość dobre ;)

Historia stworzenia Mańka


27.08.2009 Moderator War Rock


08.01.2011 Global Moderator


03.05.2012 Administrator


 


Now Elita

Opublikowano

jak zwykle n1 dobra robota ;) tylko przecież dokładnie te same opcje można zrobić z pomocą tuta wcześniejszego ;) ale jak dla całkowicie zielonych to dość dobre ;)

Historia stworzenia Mańka


27.08.2009 Moderator War Rock


08.01.2011 Global Moderator


03.05.2012 Administrator


 


Now Elita

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...