Koxp Kodları
Vb 6.0 Koxp Yapimi :
ADIM 1:
Gerekli Bileşenler : http://rapidshare.com/files/122674112/AutoItX3.dll.html
Linkdeki dll'yi indirip Yerel Disk (C:) ' e atioruz..
Başlat > Çaliştir > Cmd > regsvr32 C:/AutoItx3.dll ' yazip Enter'a basioruz ve karşiniza bu mesaj
çıkacak: DllRegisterServer / D:AutoItX3.dll başaryıla gerçekleştirildi
Daha sonra , vb 6.0 çaliştirip Gelen Pencereden Standart Exe ' yi seçip aç dioruz.
Daha sonra Project sekmesinden References bölümüne gelip AutoItx3 1.0 Type Library ' i işaretleyip
Ok butonuna basiniz..
Forma 1 Adet Timer 2 Adet Button Ekleyip Sağ tıklayarak ' Wiew Code ' diyip aşşağidaki Kodlari
yapiştirin.
ADIM 1:
Gerekli Bileşenler : http://rapidshare.com/files/122674112/AutoItX3.dll.html
Linkdeki dll'yi indirip Yerel Disk (C:) ' e atioruz..
Başlat > Çaliştir > Cmd > regsvr32 C:/AutoItx3.dll ' yazip Enter'a basioruz ve karşiniza bu mesaj
çıkacak: DllRegisterServer / D:AutoItX3.dll başaryıla gerçekleştirildi
Daha sonra , vb 6.0 çaliştirip Gelen Pencereden Standart Exe ' yi seçip aç dioruz.
Daha sonra Project sekmesinden References bölümüne gelip AutoItx3 1.0 Type Library ' i işaretleyip
Ok butonuna basiniz..
Forma 1 Adet Timer 2 Adet Button Ekleyip Sağ tıklayarak ' Wiew Code ' diyip aşşağidaki Kodlari
yapiştirin.
CODE
Dim Komut As New AutoItX3Lib.AutoItX3
Private Sub From_Load()
Timer1.Interval = 100
Form1.BorderStyle = 4
End Sub
Private Sub Command1_Click()
Timer1.Enabled = True
End Sub
Private Sub Command2_Click()
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
Komut.Send ("Z") ' Z Yaratik Seç
Komut.Send ("3") ' 3 Skill Slot Siz Kaç İsterseniz Onu yapin.
End Sub
Private Sub From_Load()
Timer1.Interval = 100
Form1.BorderStyle = 4
End Sub
Private Sub Command1_Click()
Timer1.Enabled = True
End Sub
Private Sub Command2_Click()
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
Komut.Send ("Z") ' Z Yaratik Seç
Komut.Send ("3") ' 3 Skill Slot Siz Kaç İsterseniz Onu yapin.
End Sub


Ders 2 : Auto Hp / Mp Pot :
Form'a 1 Adet Module Ekleyiniz. Project > Add Module
sekmesinden . Karşiniza tertmemiz bir sayfa cikaracak

CODE
Option Explicit
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hWnd As Long, lpdwProcessId As Long) As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function ReadProcessMem Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Private Declare Function WriteProcessMem Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Private Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const PROCESS_ALL_ACCESS As Long = &H1F0FFF
Private Const CHR_PTR As Long = 11976428 '&HB6BEEC
Public Const SWIFT_OFS As Long = 1582 '&H62E
Public Const HP_OFS As Long = 1428 '&H594
Public Const MAXHP_OFS As Long = 1424 '&H590
Public Const MP_OFS As Long = 2364 '&H93C
Public Const MAXMP_OFS As Long = 2360 '&H938
Public CHR_ADR As Long
Private KOHandle As Long
Public Function CheckKO() As Boolean
Dim KOpID As Long, tmpL As Long
On Error GoTo ErrHandle
GetWindowThreadProcessId FindWindow(vbNullString, "Knight OnLine Client"), KOpID
KOHandle = OpenProcess(PROCESS_ALL_ACCESS, False, KOpID)
If KOHandle = 0 Then GoTo ErrHandle
CHR_ADR = ReadLong(CHR_PTR)
tmpL = ReadLong(CHR_ADR + MAXHP_OFS)
If tmpL = 0 Then GoTo ErrHandle
CheckKO = True
Exit Function
ErrHandle:
CheckKO = False
End Function
Public Function ReadLong(Address As Long) As Long
Dim Value As Long
ReadProcessMem KOHandle, Address, Value, 4, 0&
ReadLong = Value
End Function
Public Function WriteLong(Address As Long, Value As Long)
WriteProcessMem KOHandle, Address, Value, 4, 0&
End Function
Public Sub SetAlwaysOnTop(mForm As Form)
SetWindowPos mForm.hWnd, -1&, 0&, 0&, 0&, 0&, 3&
End Sub
Private Declare Function GetWindowThreadProcessId Lib "user32" (ByVal hWnd As Long, lpdwProcessId As Long) As Long
Private Declare Function OpenProcess Lib "kernel32" (ByVal dwDesiredAccess As Long, ByVal bInheritHandle As Long, ByVal dwProcessId As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Function ReadProcessMem Lib "kernel32" Alias "ReadProcessMemory" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Private Declare Function WriteProcessMem Lib "kernel32" Alias "WriteProcessMemory" (ByVal hProcess As Long, ByVal lpBaseAddress As Any, ByRef lpBuffer As Any, ByVal nSize As Long, lpNumberOfBytesWritten As Long) As Long
Private Declare Function SetWindowPos Lib "user32" (ByVal hWnd As Long, ByVal hWndInsertAfter As Long, ByVal X As Long, ByVal Y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Private Const PROCESS_ALL_ACCESS As Long = &H1F0FFF
Private Const CHR_PTR As Long = 11976428 '&HB6BEEC
Public Const SWIFT_OFS As Long = 1582 '&H62E
Public Const HP_OFS As Long = 1428 '&H594
Public Const MAXHP_OFS As Long = 1424 '&H590
Public Const MP_OFS As Long = 2364 '&H93C
Public Const MAXMP_OFS As Long = 2360 '&H938
Public CHR_ADR As Long
Private KOHandle As Long
Public Function CheckKO() As Boolean
Dim KOpID As Long, tmpL As Long
On Error GoTo ErrHandle
GetWindowThreadProcessId FindWindow(vbNullString, "Knight OnLine Client"), KOpID
KOHandle = OpenProcess(PROCESS_ALL_ACCESS, False, KOpID)
If KOHandle = 0 Then GoTo ErrHandle
CHR_ADR = ReadLong(CHR_PTR)
tmpL = ReadLong(CHR_ADR + MAXHP_OFS)
If tmpL = 0 Then GoTo ErrHandle
CheckKO = True
Exit Function
ErrHandle:
CheckKO = False
End Function
Public Function ReadLong(Address As Long) As Long
Dim Value As Long
ReadProcessMem KOHandle, Address, Value, 4, 0&
ReadLong = Value
End Function
Public Function WriteLong(Address As Long, Value As Long)
WriteProcessMem KOHandle, Address, Value, 4, 0&
End Function
Public Sub SetAlwaysOnTop(mForm As Form)
SetWindowPos mForm.hWnd, -1&, 0&, 0&, 0&, 0&, 3&
End Sub
Kodlarimizi yapiştirdik Form üzerine
8 Adet Label , 1 Adet Check Box , 1 Adet'te Timer Eklioruz..
Adlari " Label1 , Label2 , .. gibi sirayla olsun yeri fark etmez

Daha sonra form'a gelerek ' Sağ Tıklama ile Wiew Codes seçeneğine Kodlari yapiştiriniz.
CODE
Option Explicit
Private Sub Check1_Click()
If Check1.Value = 1 Then
WriteLong CHR_ADR + SWIFT_OFS, 16320 ' normal speed=16256, swift= 16320, lighfeet=16384
Else
WriteLong CHR_ADR + SWIFT_OFS, 16256
End If
End Sub
Private Sub Form_Load()
Dim tmpBol As Boolean
tmpBol = CheckKO
If tmpBol = True Then
PosControls
SetAlwaysOnTop Me
Else
MsgBox "Start the hack when you are IN GAME!!!", vbInformation + vbOKOnly, "Error !!!"
Unload Me
End If
End Sub
Private Sub Timer1_Timer()
Label2.Caption = ReadLong(CHR_ADR + MAXHP_OFS) 'total hp
Label4.Caption = ReadLong(CHR_ADR + HP_OFS) 'current hp
Label6.Caption = ReadLong(CHR_ADR + MAXMP_OFS) 'total mp
Label8.Caption = ReadLong(CHR_ADR + MP_OFS) 'current mp
If Check1.Value = 1 Then
If ReadLong(CHR_ADR + SWIFT_OFS) <> 16320 Then
WriteLong CHR_ADR + SWIFT_OFS, 16320 ' swift
End If
End If
End Sub
'Not necesary, its just for put the controls in right place
Private Sub PosControls()
Label1.Caption = "Total HP ="
Label1.AutoSize = True
Label1.FontBold = True
Label1.Top = 180
Label1.Left = 180
Label2.Caption = ""
Label2.AutoSize = True
Label2.Top = Label1.Top
Label2.Left = Label1.Left + Label1.Width + 50
Label3.Caption = "Current HP ="
Label3.AutoSize = True
Label3.FontBold = True
Label3.Top = Label1.Top
Label3.Left = Label1.Left + Label1.Width + 1100
Label4.Caption = ""
Label4.AutoSize = True
Label4.Top = Label1.Top
Label4.Left = Label3.Left + Label3.Width + 50
Label5.Caption = "Total MP ="
Label5.AutoSize = True
Label5.FontBold = True
Label5.Top = Label1.Top + Label1.Height + 100
Label5.Left = Label1.Left
Label6.Caption = ""
Label6.AutoSize = True
Label6.Top = Label5.Top
Label6.Left = Label2.Left
Label7.Caption = "Current MP ="
Label7.AutoSize = True
Label7.FontBold = True
Label7.Top = Label5.Top
Label7.Left = Label3.Left
Label8.Caption = ""
Label8.AutoSize = True
Label8.Top = Label5.Top
Label8.Left = Label4.Left
Check1.Caption = "Swift"
Check1.Height = Label1.Height
Check1.Width = 640
Check1.Top = Label5.Top + Label5.Height + 200
Check1.Left = Label1.Left
Timer1.Enabled = True
Timer1.Interval = 100
Me.Caption = "İlk Koxp'um ~ forum.exbilgi.com ~ "
Me.Height = 1600
Me.Width = 4400
Me.Top = (Screen.Height - Me.Height) / 2
Me.Left = (Screen.Width - Me.Width) / 2
End Sub
Private Sub Check1_Click()
If Check1.Value = 1 Then
WriteLong CHR_ADR + SWIFT_OFS, 16320 ' normal speed=16256, swift= 16320, lighfeet=16384
Else
WriteLong CHR_ADR + SWIFT_OFS, 16256
End If
End Sub
Private Sub Form_Load()
Dim tmpBol As Boolean
tmpBol = CheckKO
If tmpBol = True Then
PosControls
SetAlwaysOnTop Me
Else
MsgBox "Start the hack when you are IN GAME!!!", vbInformation + vbOKOnly, "Error !!!"
Unload Me
End If
End Sub
Private Sub Timer1_Timer()
Label2.Caption = ReadLong(CHR_ADR + MAXHP_OFS) 'total hp
Label4.Caption = ReadLong(CHR_ADR + HP_OFS) 'current hp
Label6.Caption = ReadLong(CHR_ADR + MAXMP_OFS) 'total mp
Label8.Caption = ReadLong(CHR_ADR + MP_OFS) 'current mp
If Check1.Value = 1 Then
If ReadLong(CHR_ADR + SWIFT_OFS) <> 16320 Then
WriteLong CHR_ADR + SWIFT_OFS, 16320 ' swift
End If
End If
End Sub
'Not necesary, its just for put the controls in right place
Private Sub PosControls()
Label1.Caption = "Total HP ="
Label1.AutoSize = True
Label1.FontBold = True
Label1.Top = 180
Label1.Left = 180
Label2.Caption = ""
Label2.AutoSize = True
Label2.Top = Label1.Top
Label2.Left = Label1.Left + Label1.Width + 50
Label3.Caption = "Current HP ="
Label3.AutoSize = True
Label3.FontBold = True
Label3.Top = Label1.Top
Label3.Left = Label1.Left + Label1.Width + 1100
Label4.Caption = ""
Label4.AutoSize = True
Label4.Top = Label1.Top
Label4.Left = Label3.Left + Label3.Width + 50
Label5.Caption = "Total MP ="
Label5.AutoSize = True
Label5.FontBold = True
Label5.Top = Label1.Top + Label1.Height + 100
Label5.Left = Label1.Left
Label6.Caption = ""
Label6.AutoSize = True
Label6.Top = Label5.Top
Label6.Left = Label2.Left
Label7.Caption = "Current MP ="
Label7.AutoSize = True
Label7.FontBold = True
Label7.Top = Label5.Top
Label7.Left = Label3.Left
Label8.Caption = ""
Label8.AutoSize = True
Label8.Top = Label5.Top
Label8.Left = Label4.Left
Check1.Caption = "Swift"
Check1.Height = Label1.Height
Check1.Width = 640
Check1.Top = Label5.Top + Label5.Height + 200
Check1.Left = Label1.Left
Timer1.Enabled = True
Timer1.Interval = 100
Me.Caption = "İlk Koxp'um ~ forum.exbilgi.com ~ "
Me.Height = 1600
Me.Width = 4400
Me.Top = (Screen.Height - Me.Height) / 2
Me.Left = (Screen.Width - Me.Width) / 2
End Sub
NOT # Oyuna girmeden Programi çaliştiramassiniz , Herşeyi eksiksiz yaparsaniz 3.Adima Geçin. #
Buraya kadar Hp ve Mp değerimizi gösterebildik , yaptiğimiz form'u eksiksiz olarak yapmiş kabul edip Auto Hp pot bölümüne geçioruz..
Forma 2 Adet Text Box 1 Adet Daha Timer Ekleyip Intevral bölümünü 100 yapiniz ( Yapamyanlar
yukaridaki resimde var )..
CODE
Private Sub From_Load()
Timer1.Enabled = True
End Sub
Private Sub Timer2_Timer ()
If Label4.Caption < Text1.Text Then
Komut.Send ("7")
End If
If Label8.Caption < Text2.Text Then
Komut.Send ("8")
End If
End Sub
Timer1.Enabled = True
End Sub
Private Sub Timer2_Timer ()
If Label4.Caption < Text1.Text Then
Komut.Send ("7")
End If
If Label8.Caption < Text2.Text Then
Komut.Send ("8")
End If
End Sub