Hacking Requirements - Hack Information

Posts 1–15 of 114 · Page 1 of 8
Hacking Requirements - Hack Information
This tutorial will cover some of the most common things seen in Public bases.
I'll also provide some useful links to get you started.


•What do i need to learn in order to be able to code hacks?
- C++ (It sure covers a huge part in coding hacks so by learning this you're closer to achieving making your own hacks)
- Assembly (Will help you understand Pointers and Offsets better
- How to use IDA Pro & Olly Debug (These are the most common used debuggers in order to unpack cshell or search functions for the game)
- Direct X (DirectX will be useful to you if you are planning to make a menu hack or functions like Wallhack / Chamms )


♦I want to get started but i dont know from where to start!
-Since you are a beginner , and dont know how to make your own base and stuff you can learn much from Bases that are public released.
Although , most of them (Or better all of them since they are all basically the same (@Swiftdude 's base) will be patched or are already patched)
In that case , you must understand the way the whole thing is working so that you can make your own one.


Useful Links to get you started

♦ C++ :
- LearnCpp
- Cplusplus
- C++ Tutorials
- C , C++ Books & Resources

• Assembly
- Windows Assembly Tutorial
- Art of Assembly Language

♦Direct X
- Coming Soon

Useful Things & Information

•Unpacking CShell.dll (Directory : C:/Program Files / Z8Games / Crossfire)
- In cshell.dll you can find many useful things. Some of them are Pointers & Offsets for the functions that you will use in your hack.

♦What do you need?
- Olly Debugger ( Will be uploaded )
- LoadLibrary.exe ( Will be uploaded )
•Steps on unpacking it
:
1)Put Loadlib.exe in Crossfire's Directory
2)Open Loadlib.exe (You will see a meesage that says "Library has been loaded!")
3)Open Olly Debugger
4)Click on File > Attach (And find the Loadlib.exe process)
5)After that , wait for Olly to load it
6)Right Click > View > Module Cshell.dll ( or Module Cshell)
7)Right Click > Search For > All referrenced text strings
8)Then a new window will open
9)Right Click > Search for text
10) Your Done! Now all you have to do is to search for the functions you want to find (Will provide some names & use bellow)


Public Base to learn frrom


♦This base is detected , but you can learn from it in many ways.You can try making it undetected on your own

Code:
#include<windows.h>
       
       

#define WeaponMgr       0xA0F338 // Weapon Pointer , Outdated
#define NoReload        0x2420 // Our No Reload function offset
       
   
       
DWORD WINAPI Hacks(LPVOID)
{
bool reload = false; // Make it true; if you want it to be auto on
       
while(1)
{
DWORD CShell     = (DWORD)GetModuleHandleA("CShell.dll"); 
DWORD pWeaponMgr = *(DWORD*)(CShell + WeaponMgr); 
       
       
       
if(reload)
{
if (pWeaponMgr)
{
for(int i=0; i<445; i++) // Weapon Loop. 445 = the number of the weapons
{
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i))) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i))) + NoReload) = 100; // 100 is the value for no reload
}
}
}
       
Sleep(100); 
}
}
       
bool Ready2Hook() 
{
if(GetModuleHandleA("CShell.dll")   != NULL
&& GetModuleHandleA("ClientFx.fxd") != NULL)
return 1;
return 0;
}
       
DWORD WINAPI Wait(LPVOID)
{
while(!Ready2Hook()) Sleep(200);
CreateThread(NULL, NULL, (LPTHREAD_START_ROUTINE)Hacks, NULL, NULL, NULL);
return 0;
}
 
BOOL WINAPI DllMain ( HMODULE hDll, DWORD dwReason, LPVOID lpReserved )
{
DisableThreadLibraryCalls(hDll);
         
if ( dwReason == DLL_PROCESS_ATTACH )
{
//================================== OPTIONAL =========================================\\
MessageBoxA(0, "Message Test","Message Title", 0); 
system("start www.mpgh.net")
\\====================================================================================//      
CreateThread(0,0,(LPTHREAD_START_ROUTINE)Wait,0,0,0);
}
   return 1;
}
String names of the most common functions


Code:
ReloadAnimRatio - Weapon Reload (No Reload)
ChangeWeaponAnimRatio - Weapon change delay (No weapon change delay)
AmmoDamage - Weapon Damage (One hit kill)
LowerAnimRate - Weapon Recoil (Less Recoil not full No Recoil)
CharacterHiddenAlpha - See Ghost
CharacterHiddenWalkAlpha - See Ghost
CharacterHiddenRunAlpha - See Ghost
MovementHiddenRate - See Ghost
C4PlantTime - Obviously C4 Plant time
C4DefuseTime - Obviously C4 Defuse time
MaxCanDefuseDistance - Distance that you can defuse the bomb
Range -Weapon Range
ShotsPerAmmo - Shotgun Spread
EdgeShotEnabled - Shoot Through Wall
WallShotEnabled - Shoot Through Wall
PerfectWallShotEnabled - Shoot Through Wall

More coming soon ...

Useful Stuff / Base Tutorial

•How to make your own base ?
- Thanks to @Brimir you can learn from his tutorial so that it will be easier to start with making your own base.
(It maybe is detected or patched , i dont know but still its a great tutorial to learn from)

-How to make a base
NOTE : Things you have to know before reading his tutorial (To understand it easier)
- How to use Classes
- What Classes are


Making some of the Common features

♦Making No Reload

Code:
/* First define No Reload's Offset & Weapon Pointer */

#define WeaponPointer 0x000000 (You have to find the Pointer)
#define NoReload 0x0000 (You have to find the Offset)

/*If you want to make your hack Auto On put this before it */

bool noreload = true; // Dont make it the same name with the defined one.

/* Then add these */
 
DWORD CShell     = (DWORD)GetModuleHandleA("CShell.dll"); // When CShell word will be used , it will understand it is CShell.dll
DWORD pWeaponMgr = *(DWORD*)(CShell + WeaponPointer); // Wehn pWeaponMgr word will be used , it will understand that it is CShell with Weapon Pointer

/* Then add this */

if(noreload)
{
if (pWeaponMgr) // Look above if you dont remember what it is ;p
{
for(int i=0; i<445; i++) // Weapon Loop. 445 = the number of the weapons
{
if((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i))) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+WeaponMgr))+(4*i))) + NoReload) = 100; // 100 is the value for no reload
}
}
}

/* You are done. Add this to your base or you can simply make it on your own way */
•Making No Weapon change delay

Code:
/* First define No Weapon Change Delay's Offset & Weapon Pointer */

#define WeaponPointer 0x000000 (You have to find the Pointer)
#define WeaponChangeDelay 0x0000 (You have to find the Offset)

/*If you want to make your hack Auto On put this before it */

bool nochange = true; // Dont make it the same name with the defined one.

/* Then add these */
 
DWORD CShell     = (DWORD)GetModuleHandleA("CShell.dll"); // When CShell word will be used , it will understand it is CShell.dll
DWORD pWeaponMgr = *(DWORD*)(CShell + WeaponPointer); // Wehn pWeaponMgr word will be used , it will understand that it is CShell with Weapon Pointer

/* Then add this */       

if(nochange)
{
if (pWeaponMgr) // You already know what this is
{
for(int i=0; i<445; i++) // You already know what this is
{
if((*(DWORD*)((*(DWORD*)(CShell+pWeaponMgr))+(4*i))) != NULL)
*(float*)((*(DWORD*)((*(DWORD*)(CShell+pWeaponMgr))+(4*i))) + WeaponChangeDelay) = 100; // You already know what this is
}
}
}

/* You are done. Add this to your base or you can simply make it on your own way */
♦This is the end of the tutorial , i didnt have much time making it better ( Still , i think its good ).If you follow this tutorial , im sure that you will become a great Coder ( General )

More Coming soon ..


♦Credits :
- @Brimir
- @Swiftdude
- @~FALLEN~
- Will complete the list later , since i dont have much time. Thanks.
Very useful thread. Stickied.
Nice Bro told you this get stickied
Thanks @Hero i'll try to update it from time to time , adding more things.
Thanks @Royku this is my first ever tutorial / stickied tutorial !! Im excited!
Quote Originally Posted by Fly3r View Post
Thanks @Hero i'll try to update it from time to time , adding more things.
Thanks @Royku this is my first ever tutorial / stickied tutorial !! Im excited!
I felt the same when mine got stickied ...have to admit...looks like mine though..
Dont wanna seem offensive but yours isnt organised at all. Which makes it hard to read.
Quote Originally Posted by Fly3r View Post
Dont wanna seem offensive but yours isnt organised at all. Which makes it hard to read.
ya i know mine isnt organised...but it was posted 2 weeks ago...and just got stickied now so i cant edit ...@Hero said he was going to do it for me ..
Mine got stickied after like 2mins. i was like wtf?
Still i'll add more things but not now
This is just awesome
Quote Originally Posted by Assassin's Creed:5706513
Quote Originally Posted by Fly3r View Post
Dont wanna seem offensive but yours isnt organised at all. Which makes it hard to read.
ya i know mine isnt organised...but it was posted 2 weeks ago...and just got stickied now so i cant edit ...@Hero said he was going to do it for me ..
The thread is done...

Also very nice thread, once again, Fly3r.
Nice tutorial

The base/codes have comments to understand more.

Thanks for this, Nice job!! I hope I can make my own hack this time
thx
good u but comments in the code cuz iam biggener in c++
I've already put comments in the base ..
Read the Thread more carefully
man i Need The perfect norecoil name in cshell ( i want search it after unpacking CSHell
Posts 1–15 of 114 · Page 1 of 8

Post a Reply

Similar Threads

Tags for this Thread

None

Need help?