AUTOHOTKEY SEDERHANA
Apa itu autohotkey?auto=otomatis dan hotkey=tombol cepat, Aplikasi ini lumayan berguna bagi mereka yang sering maen Game,atau bagi mereka yang kreatif bisa saja dikembangkan untuk membuat aplikasi sederhana dengan cara mengkombinasi dengan beberapa aplikasi lainya sekaligus.
Anda harus ingat walau Autohotkey sangat sederhana namun bisa di andalkan dan bisa sangat berguna,Anda jangan takut untuk belajar, karena anda takan menemukan kode-kode pemprograman yang rumit seperti bahasa program VB,delphi,java dsb..mari kita coba..
Langkah pertama buka aplikasi autohotkey biasa juga disebut dengan AHK.
kemudian klik file>edit script
hapus semua text yang ada di scipt bawaan.
kemudian tulislah text berikut..
^F1: :
Run C:\Program Files\Microsoft Office\Office12\excel.exe
sleep 3000
return
sekarang close>save.
pada tab autohotkey klik kembali file>reload script.
coba pada keyboard anda tekan ctrl-F1
Jika berhasil sekarang anda dapat membuka aplikasi Microsoft Excel hanya dengan menekan tombol ctrl dan F1 secara bersamaan.Jika belum coba cek kembali baris perintah berikut:
Run C:\Program Files\Microsoft Office\Office12\excel.exe
Pastikan untuk menuju excel.exe kita telah melalui jalur-jalur folder yang benar (jalur dapat berbeda sesuai pengaturan sistem masing-masing komputer)
a.memahami baris code
Sekarang kita akan coba memahami setiap baris code yang telah kita buat.
pertama kita menemukan ^F1: : ialah merupakan code input,mengapa disebut code input?
karena di akhiri oleh simbol : : (titik dua 2x),maka setiap baris code yang di akhiri tanda tersebut merupakan input perintah.sedangkan tanda ^ adalah simbol yang digunakan untuk mengantikan tombol Ctrl pada keyboard,seperti halnya Alt akan diganti dengan tanda ! pada suatu baris code (info) ,kemudian code F1 adalah untuk mengantikan tombol F1 pada keyboard. maka bisa kita cacah sebagai berikut.
^F1: : adalah penjabaran dari Ctrl dan F1 ditekan bersama.
Sekarang kita menuju baris perintah ke-2,yaitu:
Run C:\Program Files\Microsoft Office\Office12\excel.exe
Run adalah suatu kata dalam AutoHotKey (AHK) yang berfungsi untuk membuka suatu aplikasi,
untuk dapat menjalankan tugasnya dengan benar,perintah Run haruslah kita tunjukan jalanya menuju aplikasi yang akan ia buka,dalam contoh di atas C:\Program Files\Microsoft Office\Office12\ adalah jalur (jalan) yang harus di lalui Run untuk sampai pada aplikasi yang dituju yaitu Microsoft Excel (excel.exe).
cobalah anda ganti aplikasi yang ingin anda buka misal Mozilla,Ms.word dsb,Namun anda harus tetap memberikan jalur path yang benar pada Run untuk setiap aplikasi-aplikasi tersebut.
Selain Run anda akan mengenal code perintah lain yaitu Send,Click,mouseMove,Rightclick..dll
selanjutnya kita bahas tentang baris code ketiga yaitu Sleep,sebenarnya sleep tak mesti selalu di sertakan dalam setiap baris code,fungsinya sendiri adalah untuk memberi waktu (jeda) pada setiap baris code yang akan di eksekusi satu persatu agar lebih lambat dan meminimalisir kesalahan eksekusi.
Sleep sendiri menggunakan satuan milidetik,jadi angka 3000 yang anda lihat diatas artinya 3000 milidetik atau setara 3 detik.
terakhir adalah code Return.ia wajib digunakan pada tiap akhir penulisan baris code,fungsinya adalah menghentikan segala aktivitas eksekusi.
b.Send,Click,Mousemove
1.Send
Apabila Run digunakan untuk membuka suatu aplikasi pada sistem maka lain lagi dengan perintah Send,ia digunakan untuk menekan tombol pada keyboard melalui AHK.cobalah baris code berikut agar anda lebih memahaminya.
buka AHK file>edit script kemudian ketik :
^F2: :
Send saya{space}belajar{space}AHK
sleep 3000
return
sekarang close>save.
pada tab autohotkey klik kembali file>reload script.
sekarang bukalah notepad kemudian coba tekan tombol Ctrl-F2
jika berhasil anda akan mendapatkan tulisan Saya belajar AHK yang terketik otomatis pada notepad.
berbagai variasi tombol Send
Send ^a artinya Ctrl - A (biasa digunakan untuk menyorot keseluruhan text)
Send ^c artinya Ctrl - C ( Copy )
Send ^x artinya Ctrl - X ( Cut )
Send ^!{Tab} artinya Ctrl - Alt - Tab
2.Click
Click digunakan untuk meng-klik layaknya kita menggunakan sebuah mouse,perbedaanya adalah disini kita harus memberikan posisi pasti dimana mouse tersebut harus meng-klik,dengan memberikanya posisi koordinat x,y.
contoh baris code click
^F3: :
Click 350,500
sleep 3000
return
maka dapat kita pahami bahwa 350 adalah posisi x dan 500 adalah posisi y,Sedangkan angka angka posisi tersebut dapat kita peroleh dengan menggunakan "windows spy" yang ada fitur AHK ataupun hanya dengan menerkanya saja sembari dicatat.
3.MouseMove & Mouseclick,R
Sama seperti fungsi Click sebenarnya yang membedakanya hanyalah apabila pada MouseMove ia hanya akan memindahkan cursor tanpa meng-klik koordinat posisi,sedangkan pada mouseclick,R ia akan meng-klik koordinat dengan fungsi klik kanan seperti pada mouse.
c.Contoh kode
Code AHK dapat saja kita buat pendek atau panjang sesuai kebutuhan,tak ada batasan khusus dalam pembuatan baris-baris code,didalam code anda juga dapat menambahkan sebuah komentar dengan terlebih dahulu menambahkan simbol ; (titik koma) di ikuti komentar.sebuah komentar tak akan ikut tereksekusi bersama baris perintah code lain. Lihat contoh di bawah ini..
!g::
run C:\Program Files\Option\GlobeTrotter Connect\GlobeTrotter Connect.exe
WinWait GlobeTrotter
send {tab}{tab}
click 34,240
sleep 1250
send {enter}
sleep 1000
send {down}
sleep 1250
; ini adalah contoh komentar,ia takan tereksekusi
send {enter}
sleep 1250
send {tab}
click 255,65
sleep 300
; fungsi komentar hanya untuk menandai, jikalau suatu saat kita perlu melakukan koreksi kesalahan pada baris code
send {left}
sleep 1250
return
untuk pengembangan selanjutnya anda dapat membuka situs http://www.autohotkey.com/docs/Tutorial.htm
untuk download AHK coba klik disini
tentunya anda juga bisa sharing pengalaman anda di blog ini. Selamat Berkarya.
This comment has been removed by the author.
ReplyDeleteowh, klo buat game biasanya autohunt tuch bisa pake fitur searchpixel.. ya betul jadi klo ada pixel tertentu muncul dilayar ,AHK bisa langsung menjalankan programnya (misal : Shot, Reload,runduk dll)..
ReplyDeletejd sangat membantu gamer buat nyari target yang sembunyi atau yang tiba-tiba muncul.
This comment has been removed by the author.
ReplyDeleteThis comment has been removed by the author.
ReplyDeleteyup, di window spy color adalah pixel, nah jadi pas suatu warna muncul pada koordinat yang telah ditentukan, baru pake fungsi IF.
Deletemisalkan yang kita cari adalah warna merah pada sudut/area tertentu dilayar,nah ketika warna itu muncul maka perintah apakah yang akan dikerjakan oleh AHK, dan mekanismenya tentu saja memakai kata kunci IF.
This comment has been removed by the author.
ReplyDeletecontoh kode AHK tentang pixelsearch:
Delete^F1::
PixelSearch, Px, Py, 8, 110, 24, 121, 0x170FCB, 3, Fast
if ErrorLevel
{
sleep 500
return
}
else
{
mousemove Px,Py
}
return
;nah kalo dijabarkan Px dan Py adalah posisi persis koordinat warna yang kita cari berada,dan angka angka 8, 110, 24, 121 adalah area segi empat yang dibentuk oleh X1,Y1,X2,Y2, trus 'if errorlevel' adalah fungsi IF yang dikerjakan bila pixel ga ditemukan di area tersebut,dan kata ELSE adalah sebaliknya (fungsi yang dikerjakan bila pixel ditemukan)
This comment has been removed by the author.
DeleteThis comment has been removed by the author.
Deletenah untuk bisa membuat char jalan berulang,maka tinggal menambahkan kata kunci LOOP dan BREAK ,dimana LOOP untuk melakukan perulangan dan BREAK untuk menghentikan perulangan.
Deletecontoh:
$a::
LOOP
{
PixelSearch, Px, Py, 45, 117, 250, 391, 0xAA8844, 3, Fast
if ErrorLevel
{
send {right}
send {a}
}
else
{
send {8}{q}
BREAK
}
}
return
;nah klo pixel ditemukan maka char jg terhenti karena ada kata kunci BREAK di fungsi else.
;kata kunci LOOP jg bisa ditambah menjadi LOOP 2 atau LOOP 12 dst.. yg artinya LOOP dibatasi hanya 2x atau LOOP hanya 12x,jika tidak ditambahkan maka LOOP bersifat Unlimit (terus-menerus).
This comment has been removed by the author.
Deletedi WindowSpy ada 2 jenis posisi mouse: OnScreen dan 'in active window' ,nah yang kebanyakan dipake biasanya "in active window"
Delete;jgn samakan x1,y1,x2,y2 dengan posisi onscreen dan inActivWindow yg digabung , yg benar adalah posisi x1,y1 adalah sudut kanan atas segi empat (abstrak) dan x2,y2 adalah sudut kiri bawahnya.jadi misal kita ingin mencari pixel diseluruh permukaan layar,maka x1,y1,x2,y2 bisa kita buat 0,0,1078,1078
maka di peroleh 0,0 adalah sudut kanan atas paling ujung dari layar monitor. dan 1078,1078 adalah sudut kiri bawah paling ujung dari layar monitor.
This comment has been removed by the author.
Deleteyup benar..
DeleteRusty: 085774343344
This comment has been removed by the author.
Delete-coba cek lagi posisi x1,y1,x2,y2 nya
Delete;ane ralat pos ane sblmnya dmana x1,y1 adalah sudut kanan atas,yg benar adalah sudut kiri atas dan x2,y2 yg benar adalah sudut kanan bawah.
-coba cek lg komposisi pixelnya jg.
sleep hanya untuk memperlambat eksekusi baris code (bukan menghentikan)
pastikan posisi sudah benar dan pixel bisa ditemukan.
This comment has been removed by the author.
DeleteThis comment has been removed by the author.
ReplyDeletenah dalam koding ada istilah "banyak jalan menuju roma" haha.. namun jalan mana yg paling Efektif&Efisien tu tergantung yg bikin.
Deleteuntuk script lanjutan bisa pake pixelsearch didalam pixelsearc misal;
LOOP
{
PixelSearch, Px, Py, 21, 47, 198, 223, 0xE1B796, 1, Fast
if ErrorLevel
{
send {right}
PixelSearch, Px, Py, 21, 47, 198, 223, 0xE45006, 1, Fast
if ErrorLevel
{
;perintah
}
else
{
;perintah
}
else
{
sleep 2000
}
}
return
atau;
buat baris kode lain di char yang saling berhubungan
misal;
;-----------------------------------------------------------
^f1::
LOOP
{
PixelSearch, Px, Py, 21, 47, 198, 223, 0xE1B796, 1, Fast
if ErrorLevel
{
send {right}
}
else
{
send ^f2
}
}
return
;---------------------
^f2::
Loop
{
PixelSearch, Px, Py, 21, 47, 198, 223, 0xE45006, 1, Fast
if ErrorLevel
{
;perintah
}
else
{
;perintah
}
}
return
dan masih banyak lagi caranya,
siiip kak,,otak q mulai berkerja,,
Deletentr q test,,klo q bingung,,ntr q tnya2 lg ya kak,,hehe trimakasih bnyk master :)
This comment has been removed by the author.
Deleteklo seperti itu kayaknya ga akan jalan..IF biasanya di kombinasi dengan OR dan AND, klo mau bikin data sperti itu lebih baik menggunakan Variable terlebih dahulu.
Deletemisal ;
i = 5
IF i <5 AND 1>3
{
msgbox, Angka Empat
}
else
{
sleep 3000
}
return
;contoh diatas 'i' adalah variable data.
Px,Py bukanlah Area ia adalah "posisi-persis" pixel yang kita cari dan telah ditemukan.data Px,Py berguna bila kita ingin mengunakan posisi tersebut untuk kepentingan lebih lanjut..klo tidak abaikan saja.
ReplyDeletenah pixelsearch hanya akan mencari di area x1,y1,x2,y2 saja. diluar area tersebut walau pixel yang kita cari muncul akan diabaikan (errorlevel)
siiipp udh bisa kak,,mantaf,,
ReplyDeleteyup, klo ada yg perlu ditanyakan.. sharing aja disini..
ReplyDeletekak, q punya pertanyaan trakhir ni
Deletegini,,
q kn OL 2 char sekaligus n duaduany pake apps yg sama yaitu kemulator
nah,,kedua char ini tempat ny berbeda..lalu q mw autokan masing2 char itu di masing2 tempatny yg berbeda.. q udh buat script n script ny udh q convert jdi .exe n bsa di buka keduaduany sekaligus,,nah,,wktu q mw autokn kedua char tersebut dgn script yg berbeda tu cara ny gmn ya kak??
soalny AHK ny bakalan work ke window kemulator yg aktif, sedangkan char satu ny yg gk actv window ny gk mw bergerak n diem doang,,jdi gmn ya kak cara ny suapaya bisa pake dua AHK dgn script berbeda pada 2 program yg sama?? trimakasih :)
bisa ngk ya kak misalnya script AHK a untuk apps yg a,,script AHK b untuk program b
Deletetpi AHK ny beda script , and apps yg di pake itu sama, n semua ny di lalukan di wktu yg sama..gmn ya kak??
ato gini, bisa ngk 1 AHK untuk 2 apps yg sama n work di kedua apps di wktu bersamaan? q binung bgt,,baca petunjuk yg ifwinactiv,,tpi gk paham2,,cz ny pake b,ing...ada jg yg di suruh buat master script untuk jalan kn 2 AHK sekaligus,,tpi q bingung,,nhsa ingris q jelek ee
mohon bntuanya kak,,trimksh
bisa saja , namun akan rumit. biasanya hal tersebut dilakukan dengan kata kunci ' Control ' (cari aja referensinya di situs AHK)
Deletemisal ;
^F1::
ControlSend, , abcefghijkl, Untitled - Notepad
Return
nah dengan kata kunci Control walau windows yg dituju tidak aktif (sudah dibuka namun dalam kondisi minimize/background) tulisan 'abcefghijkl' akan tetap tertulis pada Notepad, karena AHK telah terkontrol untuk melakukan eksekusi hanya pada wintitle 'Untitled - Notepad'. Gunakan WindowsSpy untuk mengetahui wintitle suatu app.
gmna klo note [ad ny yg di buka 2 buah kak n dlm wktu bersamaan..nah klo kyk gtu wintitle ny gmn kak? klo wintitle ny sama ntr script ny malah jalan di kedua notepad dong? hadeh,,bngung aq...
DeleteThis comment has been removed by a blog administrator.
Deletemksh bnyk kak,, maaf comment punya q,,aq hapus,,cz tkut di liat temen2,,hunt otomatis di larang di game ny,,tkut ktwan ntr char q di laporkn trus di banned sama GM,,maaf ya kak,,tpi mksh bntuanya
ReplyDeletekak,,bisa share tentang commend "imagesearch" ngk?? thnks
ReplyDeleteweh gan bisa mintak tolong
ReplyDeleteapa yg bisa saya bantu gan???
Deletehalo pak.. gw mau mnta tolong donkk.
DeleteKalo bkin ketika di layar game itu menangkap ada nya suatu kata tertentu gimana?
misalny:
waktu hunt bareng di group, trus ada anggota grup yang bilang "Heal"
trs otomatis nya kita tekan tmbol2 trtentu gitu..
bisa ga ya?
bisa kalo pake commend imagesearch,
DeleteBro kasih contoh donk script bot game online yg 1 script buat 1 windows game.
ReplyDeleteJadi misal ane dual login.
Scipt nya bisa jalan di 1 layar, namun layar lainnya tidak terpengaruh bot.
Atau 2 windows game jalan dengan 2 script yg berbeda.
Makasih.
pake IfWinActive bisa ,,agar script hanya jalan di satu program tanpa menggaggu program lain,,tpi jdika menggunakan 2 program yg sama namun dgn script yg berbeda,,ane kgak ngrti,,mungkin admin ny tw,,
Deleteadmin ga ngerti banyak soal game, yg tau silahkan aja duet. hhehehe..
ReplyDeleteselain ctrl bisa gak?
ReplyDeletebisa,
DeleteAlt = !
Shift = +
PageUp = pgup
Pagedown = pgdown
insert = insert
lengkapnya liat disini http://www.autohotkey.com/docs/Hotkeys.htm#AltGr
min gimana kalo pengen ngerubah shortcut key default windows, misal shortcut default untuk "search" kan pke tomol Win + S, nah ane pengen ngerubah jdi yg laen misal Win+G dsb, langkahnya gimana ya??
ReplyDeletebales lewat email ya min achitsu96@gmail.com ,
plisss, ditunggu replay nya, Thanks.
sepengetahuan saya untuk search di windows mengunakan CTRL+F bukan
Deletewin+S, kodenya bisa seperti ini
#G::
send #S ;(jika fitur search yang ente maksud win+s)
return
atau
#G::
send ^F ;(search windows biasanya ctrl+f)
return
boss bisa bikinin ahk buat game perfect world gk??
Deletemas kalo buat perintah mengulang gmana ya ?
ReplyDeletecontoh auto klik numped1-0 , nah nati ngulang lagi 1-0
maaf kalo ngebingungin :D
pake commend LOOP supaya ada pengulangannya
Deletekagak bisa di buka knpa mas? windows 8 gua enter kagak muncul pin taksbar
ReplyDeleteMas minta scriptnya dong misal kita ketik 4 digit angka acak (5497) maka akan jadi angka urut dari kecil ke besar (4579)
ReplyDeletemakasih.
Mas, gimana cara menangkap ketikanato kiriman chat kontak yang muncul di yahoo messenger lalu disimpan di notepad atau excel ato word
ReplyDeleteTerima kasih
Mas, gimana cara menangkap ketikanato kiriman chat kontak yang muncul di yahoo messenger lalu disimpan di notepad atau excel ato word
ReplyDeleteTerima kasih
Mas, gimana script cara menangkap ketikan ato kiriman chat kontak yang muncul di yahoo messenger lalu disimpan di notepad atau excel ato word
ReplyDeleteTerima kasih
Mas, gimana script cara menangkap ketikan ato kiriman chat kontak yang muncul di yahoo messenger lalu disimpan di notepad atau excel ato word
ReplyDeleteTerima kasih
bagaimana jika 1 command sleep 35000 (35detik)
ReplyDeletesebelum 35 detik itu berakhir masih bisa eksekusi perintah berikutnya??
bagaimana jika ingin membuat menekan tombol secara otomatis, tetapi secara bersamaan tidak ada delay,, terima kasih kak
ReplyDeleteMisal dalam hal ini tombol enter
DeleteEnter::
Setkeydelay,-1
Sendlevel,1
Sendevent {enter}
Return
Permisi gan ane newbie masalah ginian, ane kurang ngerti masalah loop. Bagaimana Kalo mau menekan 1 tombol terus menerus selama windowsnya aktif? Pake loop juga kah?
ReplyDeleteIfwinactive Notepad
Delete{
Loop
{
Send 1
}
}
Else
{
Break
}
Return
fungsi ! apa gan?
ReplyDeleteAlt klo.ga salah gann..
Deletemisi gan mau tanya, ini artinya apa ya tau gak...
ReplyDeleteDllCall("mouse_event",int,1,int,x,int,y,uint,0,uint,0)
tiap kolomnya itu
pengen ngerubah int,x dan int,y jadi float atau double tapi gabisa, pointer malah jauh bener gesernya
Delete