this hack is for
AssaultCube v1.0.2

if you dont have the game you can get it there it is only 40mb
AssaultCube - Media - Download
it is a really easy game to hack so if you want to start hacking games i suggest you start on this game i included full source code to this hack it was made in vb 2008
hacks in it
Code:
1.teleport hack
2.teleport both flags to you
3.fly mode
others have made but havent put in
Code:
4.No Recoil
5.unlimited Amo#
6.pick up range increased
7.teleport to any player
8.invisible/can't die bobo
9.player Size increased
10.kill everyone on map at once :eek:
11.Knife range increased kinda like shooting a Knife
12.Rapid! Fire Knife & guns
13.no team hack
14.unlimited voting
15.no kick
ADD a module and paste this into it
Code:
Module Module1
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Integer, ByVal bInheritHandle As Integer, ByVal dwProcessId As Integer) As Integer
Private Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
Private Declare Function WriteFloatMemory Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Single, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
Private Declare Function ReadFloat Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As IntPtr, ByRef buffer As Single, ByVal size As Int32, ByRef lpNumberOfBytesRead As Int32) As Boolean
Private Declare Function ReadProcessMemory Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Integer, ByVal lpBaseAddress As Integer, ByRef lpBuffer As Integer, ByVal nSize As Integer, ByRef lpNumberOfBytesWritten As Integer) As Integer
Private Declare Function CloseHandle Lib "kernel32" (ByVal hObject As Integer) As Integer
Public Declare Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Public RBuff As Long
Public RBuff2 As Single
Public RBuff3 As Integer
Public Function Writememory(ByVal Address As Integer, ByVal Value As Long, ByVal Bytes As Integer)
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
WriteProcessMemory(processHandle, Address, Value, Bytes, Nothing)
CloseHandle(processHandle)
End Function
Public Function ReadFloat(ByVal Address As Single)
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
ReadProcessMemory(processHandle, Address, RBuff, 4, Nothing)
CloseHandle(processHandle)
Return RBuff
End Function
Public Function WriteFloat(ByVal Address As Integer, ByVal Value As Single)
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
WriteFloatMemory(processHandle, Address, Value, 4, Nothing)
CloseHandle(processHandle)
End Function
Public Function ReadLong(ByVal Address As Integer)
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
ReadProcessMemory(processHandle, Address, RBuff, 4, Nothing)
CloseHandle(processHandle)
Return RBuff
End Function
Public Function ReadFloatPointer(ByVal Base As Integer, ByVal Offset As Short)
Dim fullAddress As Long
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
ReadProcessMemory(processHandle, Base, RBuff, 4, Nothing)
fullAddress = RBuff + Offset
ReadFloat(processHandle, fullAddress, RBuff2, 4, Nothing)
Return RBuff2
CloseHandle(processHandle)
End Function
Public Function ReadLongPointer(ByVal Base As Integer, ByVal Offset As Short, ByVal Bytes As Integer)
Dim fullAddress As Long
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
ReadProcessMemory(processHandle, Base, RBuff, 4, Nothing)
fullAddress = RBuff + Offset
ReadProcessMemory(processHandle, fullAddress, RBuff3, Bytes, Nothing)
Return RBuff3
CloseHandle(processHandle)
End Function
Public Function WriteFloatPointer(ByVal Base As Integer, ByVal Offset As Short, ByVal Value As Single)
Dim fullAddress As Long
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
ReadProcessMemory(processHandle, Base, RBuff, 4, Nothing)
fullAddress = RBuff + Offset
WriteFloatMemory(processHandle, fullAddress, Value, 4, Nothing)
CloseHandle(processHandle)
End Function
Public Function WriteLongPointer(ByVal Base As Integer, ByVal Offset As Short, ByVal Offset1 As Short, ByVal Value As Long, ByVal Bytes As Integer)
Dim fullAddress As Long
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
ReadProcessMemory(processHandle, Base, RBuff, 4, Nothing)
fullAddress = RBuff + Offset + Offset1 ' make more offsets for more pointers
WriteProcessMemory(processHandle, fullAddress, Value, Bytes, Nothing)
CloseHandle(processHandle)
End Function
Public Function NOP(ByVal Address As Integer, ByVal value As Integer)
Dim ac_clientLookUp As Process() = Process.GetProcessesByName("ac_client")
If ac_clientLookUp.Length = 0 Then
End
End If
Dim processHandle As IntPtr = OpenProcess(&H1F0FFF, 0, ac_clientLookUp(0).Id)
WriteProcessMemory(processHandle, Address, value, 1, Nothing)
CloseHandle(processHandle)
End Function
End Module
add another module and put this into it
Code:
Module Memory
Public Const PROCESS_VM_READ = &H10
Public Const PROCESS_VM_WRITE = (&H20)
Public Const PROCESS_VM_OPERATION = (&H8)
Public Const PROCESS_QUERY_INFORMATION = (&H400)
Public Const PROCESS_READ_WRITE_QUERY = PROCESS_VM_READ + PROCESS_VM_WRITE + PROCESS_VM_OPERATION + PROCESS_QUERY_INFORMATION
Public Const PROCESS_ALL_ACCESS = &H1F0FFF
Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As Int32, ByRef lpBuffer As Int32, ByVal nSize As Int32, ByVal lpNumberOfBytesWritten As Int32) As Long
Public Declare Function ReadProcessMemory Lib "kernel32" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As Int32, ByRef lpBuffer As Byte(), ByVal nSize As Int32, ByVal lpNumberOfBytesWritten As Int32) As Long
Public Declare Function WriteProcessMemory Lib "kernel32" (ByVal hProcess As IntPtr, ByVal lpBaseAddress As Int32, ByVal lpBuffer() As Byte, ByVal nSize As Int32, ByVal lpNumberOfBytesWritten As Int32) As Long
Public Declare Function OpenProcess Lib "kernel32.dll" (ByVal dwDesiredAccess As UInteger, ByVal bInheritHandle As Integer, ByVal dwProcessId As UInteger) As IntPtr
Public Declare Function CloseHandle Lib "kernel32.dll" (ByVal hHandle As IntPtr) As Boolean
Public Function Game_Hwnd() As Int32
Dim i As Int32 : Dim foundit As Boolean = False
For Each p As Process In Process.GetProcessesByName("ac_client") ' Replace that with the games window text
i = p.Id
foundit = True : Exit For
Next
If foundit = True Then
Return i
Else
MsgBox("Couldn't find Name Of Game")
Return 0
End If
End Function
#Region "Memory reading/Writing"
Public Sub WriteMemory(ByVal Address As Integer, ByVal Value As Integer, ByVal Size As Integer)
Try
Dim GameReadWrite As Integer
Dim PID As Integer = Game_Hwnd()
GameReadWrite = OpenProcess(PROCESS_READ_WRITE_QUERY, False, PID)
Dim bytArray() As Byte
bytArray = BitConverter.GetBytes(Value)
WriteProcessMemory(GameReadWrite, Address, bytArray, Size, 0)
CloseHandle(GameReadWrite)
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub WriteMemory(ByVal Address As Integer, ByVal Value() As Byte)
Try
Dim GameReadWrite As Integer
Dim PID As Integer = Game_Hwnd()
GameReadWrite = OpenProcess(PROCESS_READ_WRITE_QUERY, False, PID)
WriteProcessMemory(GameReadWrite, Address, Value, Value.Length, 0)
CloseHandle(GameReadWrite)
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub WriteMemory(ByVal Address As Integer, ByVal Value() As Byte, ByVal Offset As Integer, ByVal Length As Integer)
Try
Dim Count1 As Integer
For Count1 = 0 To Length - 1
WriteMemory(Address + Count1, Value(Count1 + Offset), 1)
Next
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub WriteMemory(ByVal Address As Integer, ByVal Value As String)
Try
Dim Length As Integer = Value.Length
For I As Integer = 0 To Length - 1
WriteMemory(Address + I, Asc(Value.Chars(I)), 1)
Next
WriteMemory(Address + Length, 0, 1)
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub WriteMemory(ByVal Address As Integer, ByVal Value As Double)
Try
Dim Buffer(0 To 7) As Byte
Buffer = BitConverter.GetBytes(Value)
For I As Integer = 0 To 7
WriteMemory(Address + I, CInt(Buffer(I)), 1)
Next
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
'Read Memory
Public Sub ReadMemory(ByVal Address As Integer, ByRef Value As Double)
Try
Dim Buffer(7) As Byte
Dim Temp As Integer
For I As Integer = 0 To 7
ReadMemory(Address + I, Temp, 1)
Buffer(I) = CByte(Temp)
Next
Value = BitConverter.ToDouble(Buffer, 0)
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub ReadMemory(ByVal Address As Integer, ByRef Value As Integer, ByVal Size As Integer)
Try
Dim mValue As Integer
Dim GameReadWrite As Integer
Dim PID As Integer = Game_Hwnd()
GameReadWrite = OpenProcess(PROCESS_READ_WRITE_QUERY, False, PID)
ReadProcessMemory(GameReadWrite, Address, mValue, Size, 0)
Value = mValue
CloseHandle(GameReadWrite)
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub ReadMemory(ByVal Address As Integer, ByRef Value() As Byte, ByVal Length As Integer)
Try
Dim bytArray() As Byte
Dim Count1 As Integer
Dim tempInteger As Integer
ReDim bytArray(Length - 1)
For Count1 = 0 To Length - 1
ReadMemory(Address + Count1, tempInteger, 1)
bytArray(Count1) = CByte(tempInteger)
Next
Value = bytArray
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub ReadMemory(ByVal Address As Integer, ByRef Value As String)
Try
Dim intChar As Integer
Dim Count1 As Integer
Dim strTemp As String
strTemp = String.Empty
Count1 = 0
Do
ReadMemory(Address + Count1, intChar, 1)
If intChar <> 0 Then strTemp = strTemp & Chr(intChar)
Count1 += 1
Loop Until intChar = 0
Value = strTemp
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
Public Sub ReadMemory(ByVal Address As Integer, ByRef Value As String, ByVal Length As Integer)
Try
Dim intChar As Integer
Dim Count1 As Integer
Dim strTemp As String
strTemp = String.Empty
For Count1 = 0 To Length - 1
ReadMemory(Address + Count1, intChar, 1)
strTemp = strTemp & Chr(intChar)
Next
Value = strTemp
Catch Ex As Exception
'ShowError(Ex)
End Try
End Sub
#End Region
Function ReadInt(ByVal Address As Int32)
Dim i As Int32
ReadMemory(Address, i, 4)
Return i
End Function
Sub WriteInt(ByVal Address As Int32, ByVal Value As Int32)
WriteMemory(Address, Value, 4) ' We'll write a 4 bit to the address
End Sub
End Module
[/code]
source to form1
Code:
Public Class Form1
Private Declare Function RegisterHotKey Lib "user32" (ByVal hwnd As IntPtr, ByVal id As Integer, ByVal fsModifiers As Integer, ByVal vk As Integer) As Integer
Private Declare Function UnregisterHotKey Lib "user32" (ByVal hwnd As IntPtr, ByVal id As Integer) As Integer
Private Const WM_HOTKEY As Integer = &H312
Private Const MOD_ALT As Integer = &H1
Private Const MOD_CONTROL As Integer = &H2
Private Const MOD_SHIFT As Integer = &H4
Private modifiers As Integer = 0
Private keycode As Integer = 0
Private _modifiers As Integer = 0
Private _keycode As Integer = 0
Dim BaseAddress As Integer
Dim MyProcess As Process() = Process.GetProcessesByName("ac_client")
Dim H2VBaseAddress As Integer
Dim bytesReadSize As Integer
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing
UnregisterHotKey(Me.Handle, 0)
End Sub
Private Declare Function GetAsyncKeyState Lib "user32" (ByVal vkey As Integer) As Integer
Private Sub teleport_players_to_saved_postion()
WriteFloatPointer(&H4BB878, &H28, sxpos.Text)
WriteFloatPointer(&H4BB878, &H2C, sypos.Text)
WriteFloatPointer(&H4BB878, &H30, szpos.Text)
End Sub
Private Sub custom_teleport()
WriteFloatPointer(&H4BB878, &H28, xt.Text)
WriteFloatPointer(&H4BB878, &H2C, yt.Text)
WriteFloatPointer(&H4BB878, &H30, zt.Text)
End Sub
Private Sub teleport_flag()
'Blue Flag
WriteFloat((BaseAddress + 716932), xpos.Text)
WriteFloat((BaseAddress + 716936), ypos.Text)
WriteFloat((BaseAddress + 716940), zpos.Text)
'Red Flag
WriteFloat((BaseAddress + 716932), zpos.Text)
WriteFloat((BaseAddress + 716900), ypos.Text)
WriteFloat((BaseAddress + 716896), xpos.Text)
End Sub
Private Sub fly_on()
WriteFloatPointer(&H4BB878, &H3A0, 7.00649232162409E-45)
End Sub
Private Sub fly_off()
WriteFloatPointer(&H4BB878, &H3A0, 0)
End Sub
Private Sub save_player_postion()
sxpos.Text = xpos.Text
sypos.Text = ypos.Text
szpos.Text = zpos.Text
End Sub
Private Sub hotkeys_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles hotkeys.Tick
Dim flymodeon As Boolean
Dim flymodeoff As Boolean
flymodeon = GetAsyncKeyState(Keys.D1)
flymodeoff = GetAsyncKeyState(Keys.D2)
Dim saveplayerpos As Boolean
Dim teletosavedpos As Boolean
Dim customtele As Boolean
Dim teleportflag As Boolean
saveplayerpos = GetAsyncKeyState(Keys.F2)
teletosavedpos = GetAsyncKeyState(Keys.F3)
customtele = GetAsyncKeyState(Keys.F4)
teleportflag = GetAsyncKeyState(Keys.F5)
If saveplayerpos = True Then
save_player_postion()
End If
If teletosavedpos = True Then
If sxpos.Text = ("") Then
Else
teleport_players_to_saved_postion()
End If
End If
If customtele = True Then
custom_teleport()
End If
If teleportflag = True Then
teleport_flag()
End If
If flymodeon = True Then
fly_on()
End If
If flymodeoff = True Then
fly_off()
End If
End Sub
Private Sub playerpos_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles playerpos.Tick
XPOS.Text = ReadFloatPointer(&H4BB878, &H28)
YPOS.Text = ReadFloatPointer(&H4BB878, &H2C)
ZPOS.Text = ReadFloatPointer(&H4BB878, &H30)
End Sub
Private Sub wait(ByVal interval As Integer)
Dim sw As New Stopwatch
sw.Start()
Do While sw.ElapsedMilliseconds <> interval
' Allows UI to remain responsive
Application.DoEvents()
Loop
sw.Stop()
End Sub
End Class
the modules i posted where not made by me i used public modules instead of my own press the thanks button if this helped you