beh ci sono le guide del C++ che ti fanno capire queste cose, perchè quello che dici alla fine si spiega conoscendo il linguaggio, ma siccome stasera sono in vena di scrivere te lo riporto (velocemente) qui.
Lo scheletro è questo (copiato dalla mia guida e sfoltito) :
C++ Programming
#include <windows.h>
// addresses aggiornati al 2010-04-02
#define ADR_PLAYERPTR 0xC3F068 // questo va controllato e aggiornato
#define ADR_SERVERPTR 0xB3E548 // questo va controllato aggiornato
// variabili
DWORD *in_game= (DWORD*)ADR_PLAYERPTR;
DWORD *out_game= (DWORD*)ADR_SERVERPTR;
DWORD dwPlayerPtr=0;
DWORD dwServerPtr=0;
// da qui in avanti puoi mettere la definizione delle funzioni che realizzano
// la hack vera e propria (stamina, nfd, norecoil, etc)
// ...
//--- fine funzioni
//------------------------------------------------------------------------
// questo è il thread che gira continuamente che chiama la hack
void HackThread()
{
while(true)
{
if (*in_game)
{
//qui vanno le chiamate a funzioni di hack del player
}
if(*out_game)
{
// qui vanno le chiamate a funzioni di hack del server
}
Sleep(50); // fermi per 50ms per non caricare la cpu
}
}
//------------------------------------------------------------------------
// funzione principale della DLL
BOOL WINAPI DllMain(HINSTANCE hModule, DWORD dwReason, LPVOID lpReserved)
{
if(dwReason == DLL_PROCESS_ATTACH)
{
// siamo qui perché la dll è appena stata iniettata
CreateThread(0, 0, (LPTHREAD_START_ROUTINE)HackThread, 0, 0, 0); // creiamo il thread principale
}
return TRUE;
}
In poche parole è la struttura base per creare una DLL, la funzione "DllMain" viene chiamata automaticamente da windows appena la dll viene iniettata nel processo di warrock.
E cosa fa? solo una cosa, crea e starta un thread il cui codice lo trovi nella definizione della funzione di nome HackThread.
E la funzione HackThread appena startata cosa fa? un ciclo infinito ( while(true) ) che controlla se siamo in gioco (in_game) o fuori, nelle schermate prima della partita (out_game) e in base a quello runna le relative funzioni delle hack. Funzioni che dovrai mettere tu nel codice, piu precisamente le dovrai
definire (ovvero scrivere o copincollare il codice vero e proprio di quello che devono fare) nella parte alta del sorgente (vedi i commenti nel sorgente che ho messo), e poi ste funzioni le devi CHIAMARE cioè eseguire all'interno della funzione HackThread, piu precisamente tra la parentesi graffa aperta e chiusa di if (*in_game) se sono funzioni del player (es. NFD, Norecoil, etc) oppure tra le parentesi sotto if (*out_game) se sono funzioni del server (es. Premium, Slot5 etc)
Spero di averti chiarito e non complicato la vita con sta descrizione
Poi per il codice delle funzioni o come metterlo c'è un thread sul forum con tutte le funzioni piu comuni e c'è la mia guida per fare un nomenu dove vedi un esempio di 2 funzioni (non piu funzionanti) per avere un'idea
Per finire, "nomenu" in se non vuol dire niente, li chiamano cosi semplicemente perchè è una hack a cui manca la parte grafica che invece hanno altre hacks piu complesse dove viene messo il menu.