1. Tải bản cài đặt AutoIT mới nhất

    Chào Khách. Nếu bạn mới tham gia và chưa cài đặt AutoIT.
    Vui lòng vào topic trên để tải bản AutoIT mới nhất nhé
    Dismiss Notice
  2. Quy định và nội quy

    Chào Khách. Vui lòng đọc kỹ nội quy và quy định của diễn đàn
    Để tránh bị ban một cách đáng tiếc nhé!
    Dismiss Notice
  3. Hướng dẫn chèn mã AutoIT trong diễn đàn

    Chào Khách. Vui lòng xem qua bài viết này
    Để biết cách chèn mã AutoIT trong diễn đàn bạn nhé :)
    Dismiss Notice

AutoHotKey Hướng dẫn tạo một autoBOT cho game bất kỳ

Thảo luận trong 'AutoHotkey' bắt đầu bởi ledachai, 29/5/20.

  1. ledachai

    ledachai Thành viên
    • 8/11

    Tham gia ngày:
    17/5/20
    Bài viết:
    40
    Đã được thích:
    16
    Gdip_ImageSearch.ahk dòng (89) gọi hàm không xác định: Gdip_GetImageDimensions
    Hàm này đúng ra nằm ở thư viện Gdip.ahk. Bạn tải về Gdip.ahk mới nhất mình update ở bài 1 nhé
     
  2. nguyenducloi89

    nguyenducloi89 Thành viên mới
    • 1/6

    Tham gia ngày:
    9/5/20
    Bài viết:
    8
    Đã được thích:
    0
    cho mình hỏi mình đang dùng auto bằng ahk, auto dựng vào màu, giờ làm sao sử dụng getcolor nhỉ, bạn khác viết cho mình nhưng mình ko biết thêm màu vào để auto. Bạn có thể giúp mình đc ko ạ
     
  3. Theendsd

    Theendsd Thành viên mới
    • 1/6

    Tham gia ngày:
    7/6/20
    Bài viết:
    8
    Đã được thích:
    0
    send mã ngườn lên cần sữa gì mấy pro ở đây mới bek
     
  4. nguyenducloi89

    nguyenducloi89 Thành viên mới
    • 1/6

    Tham gia ngày:
    9/5/20
    Bài viết:
    8
    Đã được thích:
    0
    nghĩa là khi auto nó dùng getcolor và vị trí pixel để ấn các phím các skill. Giờ dùng auto sang máy khác thì không được có thể do VGA khác nhau và độ phân giải màn hình cũng khác.
     
  5. ledachai

    ledachai Thành viên
    • 8/11

    Tham gia ngày:
    17/5/20
    Bài viết:
    40
    Đã được thích:
    16
    ĐIỀU KHIỂN ĐA LUỒNG:
    Nhiều khi mình muốn chạy nhiều luồng khác nhau, và từ luồng thứ 2 mình muốn thay đổi các control của luồng thứ nhất. Ban đầu mình khá lúng túng, nhưng khi phát hiện mỗi luồng đều có 1 ID thì nó đã trở nên đơn giản hơn
    Ví dụ mình tạo 1 gui mẹ. Từ 1 nút, mình gọi ra 1 gui con, và khi thao tác trên gui con để thay đổi control của gui mẹ
    Mã (Text):
    Gui, Add, Button, w80 vautoPT gautoPT, AutoParty: ON
    ...
    Return
    autoPT:
    Gui, 2:New , , Auto Party
    ...
     
    Trên luồng con autoPT mình sẽ gọi lệnh thay đổi control của gui mẹ
    Mã (Text):
    GuiControl, Text, autoPT , AutoParty: OFF   ;false
    Lệnh trên sẽ k0 có kết quả mặc dù mình đã chỉ thẳng đến ID Control của nút là autoPT, nhưng auto sẽ đặt lệnh hướng vào luồng hiện tại là luồng 2, và trên luồng 2 không có control nào là autoPT. Phải chỉ cụ thể luồng muốn hướng tới:
    Mã (Text):
    GuiControl, 1:Text, autoPT , AutoParty: OFF
    ;gui ban đầu nếu không được đặt thì mặc định ID là 1
    Cũng tương tự khi tạo các SplashImage. Tạo nhiều SplashImage sau đó tắt
    Mã (Text):
    SplashImage , off
    sẽ chỉ tắt luồng mặc định là SplashImage đầu tiên.
    Ví dụ sau sẽ hiện tiêu điểm tại các vị trí (trainposX1,trainposY1), (trainposX2,trainposY2)... đã được trích ra từ 1 bảng toạ độ, sau đó tắt chúng:
    Mã (Text):
    Loop % LV_GetCount() ;LV_GetCount() là số dòng trên bảng toạ độ
    {
        trainposX:=trainposX%A_Index%+WinPosX-25 ;WinPos là toạ độ cửa sổ trên màn hình
        trainposY:=trainposY%A_Index%+WinPosY-25 ;WinPos là toạ độ cửa sổ trên màn hình
        SplashImage , %A_Index%:icon\tieudiem.png,x%trainposX% y%trainposY% b ,,, SplashImage
        WinSet , TransColor, 000000 , SplashImage   ; trong suốt màu đen
        Sleep 500
    }
    Sleep 2000
    Loop % LV_GetCount()
    {
        SplashImage , %A_Index%:off
    }
    Sử dụng A_Gui để biết luồng Gui hiện tại, A_GuiControl để biết control nào đang khởi chạy luồng hiện tại...
     
    Chỉnh sửa cuối: 17/7/20
    JunGo thích bài này.
  6. JunGo

    JunGo Thành viên mới
    • 1/6

    Tham gia ngày:
    17/7/20
    Bài viết:
    3
    Đã được thích:
    0
    Hello bác,
    Có cách nào để em mời bác bữa cafe rồi hỏi bác linh tinh tí được không bác :3
     
  7. DuyMinh

    DuyMinh Thành viên năng động
    • 28/34

    Tham gia ngày:
    14/3/17
    Bài viết:
    175
    Đã được thích:
    92
    Ở đà nẵng thì cafe giao lưu tí bác ơi
     
    JunGo thích bài này.
  8. ledachai

    ledachai Thành viên
    • 8/11

    Tham gia ngày:
    17/5/20
    Bài viết:
    40
    Đã được thích:
    16
    Ha, nếu chơi cùng game thì AE ngồi chém gió vui vẻ. Chứ auto mình dùng lệnh nào mình biết lênh đó thôi vấn đề của người khác mình không giải quyết đc. Mình ngoài hà nội
     
  9. JunGo

    JunGo Thành viên mới
    • 1/6

    Tham gia ngày:
    17/7/20
    Bài viết:
    3
    Đã được thích:
    0
    Thực ra em chỉ cần mấy cái lệnh này thôi bác.

    Sử dụng các công cụ đơn giản:
    - Tìm kiếm hình ảnh (gdip_imagesearch)
    - Click chuột (ControlClick)
    - Nếu…. Thì…. (If…. Else…)
    - Lặp lại …. Cho đến khi….. (Loop…. Until…..)

    Em học c++ nhưng chỉ mới qua cơ bản.

    Trước có tìm hiểu qua để chơi dota2 qua autohotkey nhưng chỉ là mấy cái cơ bản của bàn phím.
    Giờ có chút tò mò và muốn làm một cái cho game mobile riêng giả lập trên pc nên thấy bài của bác.

    Hiện tại muốn tập làm quen trc với mảng mobile,
    Giờ vẫn còn đang đi học và đi làm, còn học thêm nên nhiều khi thời gian gấp gáp ko chơi đc game mà bỏ thì k theo kịp bạn.
    Em tính làm con bot AHK chạy daily quest thôi.

    Em có tìm hiểu qua trên youtube, kiểu tìm ảnh tìm điểm ảnh, nhưng hầu hết toàn ngta show kết quả nên k có học theo đc gì.
    Em rất mong đc bác giúp đỡ nếu bác có thời gian rảnh, em ở xa nhưng vẫn sẽ tìm cách mời bác cafe*.
     
  10. ledachai

    ledachai Thành viên
    • 8/11

    Tham gia ngày:
    17/5/20
    Bài viết:
    40
    Đã được thích:
    16
    Hẳn cafe* à :-j . Trước mình cũng chỉ dùng auto click thôi. NoxPlayer nó có sẵn. Từ lúc biết dùng AHK thì giống như mở mắt cho Auto ấy, hiệu suất tăng lên đáng kể. Cái lõi của auto là hàm tìm kiếm thôi. Biết dùng hàm tìm kiếm rồi thì chỉ cần đưa vào if để xử lý. Dùng lệnh nào nó đều có cú pháp, giải thích, ví dụ nên cũng dễ học
     
  11. JunGo

    JunGo Thành viên mới
    • 1/6

    Tham gia ngày:
    17/7/20
    Bài viết:
    3
    Đã được thích:
    0
    Haha giúp em với được không, em sẽ hậu tạ mà.
    Tại kiểu tìm auto thì thấy bài a đúng những lệnh em cần.

    Cái game hiện tại tốn quá nhiều thời gian mà bỏ thì phí quá , có mỗi nó để giải trí sau những ngày đi làm đi học mệt mỏi.

    auto qua macro thì em cũng có làm rồi nhưng nhiều cái nó phụ thuộc vào thời gian mạng, hay vòng lặp không trùng thì dễ hỏng chưa kể có những cái còn random.
    Thế nên tìm ảnh hay tìm điểm ảnh rồi click là quá ngon rồi.
     
    Chỉnh sửa cuối: 19/7/20
  12. Hoàng Tình

    Hoàng Tình Thành viên mới
    • 1/6

    Tham gia ngày:
    26/7/20
    Bài viết:
    1
    Đã được thích:
    0
    thank
     
  13. ledachai

    ledachai Thành viên
    • 8/11

    Tham gia ngày:
    17/5/20
    Bài viết:
    40
    Đã được thích:
    16
    Lệnh chọn cửa sổ mà dùng "MouseGetPos,px,py,vHWND" không hợp lý các bạn ạ. Đôi khi thao tác nhanh quá, mình di chuột ra ngoài cửa sổ đích dẫn đến MouseGetPos nhận sai cửa sổ.
    Mình sẽ dùng WinExist("A") để lấy hwnd cửa sổ Active. Đồng thời thay đổi cách chọn cửa sổ đích từ Hotkey sang chờ phát hành phím (chỉ cần dấn 1 lần khi khởi động, còn hotkey sẽ khoá chức năng phím đó trên window trong suốt thời gian chạy)
    Mã (Text):
    ; đã tạo gui và show gui ở trên
    ; chờ ấn F2 mới chạy tiếp phần phía sau
    KeyWait, F2 ,D
    WinGetActiveTitle , wTitle
    vHWND := WinExist("A")
    ; ............
    Return
     
  14. huynhvantam123

    huynhvantam123 Thành viên mới
    • 3/6

    Tham gia ngày:
    25/8/16
    Bài viết:
    9
    Đã được thích:
    3
    bạn ơi cho hỏi là những thư viện khi mình tải về mình để ở trong thư mục lib của folder cài đặt autohotkey hay là nằm chung folder với file auto mình đang tạo ?
     
  15. huynhvantam123

    huynhvantam123 Thành viên mới
    • 3/6

    Tham gia ngày:
    25/8/16
    Bài viết:
    9
    Đã được thích:
    3
    copy ví dụ của bạn vào và chạy thì nó báo lỗi:

    >"C:\Program Files\AutoHotkey\SciTE\..\AutoHotkey.exe" /ErrorStdOut "C:\Users\Admin\Desktop\autohotkey\test autohotkey.ahk"
    C:\Program Files\AutoHotkey\Lib\Gdip_ImageSearch.ahk (146) : ==> This line does not contain a recognized action.
    Specifically: data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/MasterFocus/Auto...nctions/Gdip_ImageSearch/Gdip_ImageSearch.ahk","user_id":null}}" data-hydro-click-hmac="c46fa1f4cf1277de8bd92f141ad57e05b83a74b7dada165d55ce5ca5376559fc"

    Đã tải Gdip_ImageSearch.ahk từ link bạn đưa. Để cả trong lib gốc cài đặt và trong folder chung với file tạo auto
    Cái này là bị gì vậy ạ?
     
  16. huynhvantam123

    huynhvantam123 Thành viên mới
    • 3/6

    Tham gia ngày:
    25/8/16
    Bài viết:
    9
    Đã được thích:
    3
    >"C:\Program Files\AutoHotkey\SciTE\..\AutoHotkey.exe" /ErrorStdOut "C:\Users\Admin\Desktop\autohotkey\test autohotkey.ahk"
    C:\Users\Admin\Desktop\autohotkey\Lib\Gdip.ahk (146) : ==> This line does not contain a recognized action.
    Specifically: data-hydro-click="{"event_type":"authentication.click","payload":{"location_in_page":"site header","repository_id":null,"auth_type":"SIGN_UP","originating_url":"https://github.com/tariqporter/Gdip/blob/master/Gdip.ahk","user_id":null}}" data-hydro-click-hmac="e824827bcc00f09456945d08c79975f42a44743c0dd49e36eb9e2d20ad384bfc"

    cả đây nữa ạ. Xoá cái ví dụ thì đoạn code ở trên chạy ok. Chèn cái ví dụ TH1 vào thì nó báo lỗi chỗ thư viện.
     
  17. ledachai

    ledachai Thành viên
    • 8/11

    Tham gia ngày:
    17/5/20
    Bài viết:
    40
    Đã được thích:
    16
    Chắc bạn đang cài 1 phiên bản AHK cũ hơn, bạn thử cài bản của kakanet update đầy đủ, được ghim bên ngoài nhé
     
  18. huynhvantam123

    huynhvantam123 Thành viên mới
    • 3/6

    Tham gia ngày:
    25/8/16
    Bài viết:
    9
    Đã được thích:
    3
    ít tài liệu dành cho autohotkey quá nhỉ. Vẫn cứ quay về autoit đã :(
     
  19. ledachai

    ledachai Thành viên
    • 8/11

    Tham gia ngày:
    17/5/20
    Bài viết:
    40
    Đã được thích:
    16
    Phương pháp chấp nhận dung sai cho 1 phiên Image_Search?
    Tìm thấy ảnh mẫu và chính xác, vẫn là vấn đề cốt yếu nhất. Mình có thể thay đổi độ nhạy màu để chấp nhận dung sai về màu. Nhưng vẫn có lúc, trên màn hình xuất hiện icon giống hệt ảnh mẫu needle nhưng vẫn không tìm thấy đc? Mình lưu lại ảnh chụp màn hình khi đó, dùng Paint phóng to lên 600% để nhìn rõ từng pixel thì phát hiện: cùng 1 đối tượng lúc thì thể hiện trên 2 pixel, lúc thì trên 3 pixel. Điều đó làm những pixel khác hoàn toàn pixel mẫu (nếu ảnh mẫu có độ tương phản cao).
    - Ban đầu, mình chồng 2 ảnh mẫu lên nhau và xoá trong suốt đi những pixel khác biệt để đồng nhất 2 ảnh mẫu. Nhưng càng ngày những icon như vậy càng nhiều, làm cách này rất mất thời gian.
    - Sau đó mình tìm cách để chấp nhận dung sai về pixel, kiểu như là "9 bỏ làm 10" vậy. Chỉ đơn giảm là co hình (cả ảnh chụp màn hình và ảnh mẫu) về kích thước nhỏ hơn (theo đó độ phân giải giảm, làm ảnh bị mờ đi, những chi tiết trước nằm trong 2 pixel giờ bị co về 1 pixel...). Mình test thấy khá Ok. Thậm chí không cần chỉnh dung sai màu ở trên vẫn có thể tìm thấy được. Tuy nhiên, cũng giống như độ nhạy màu, chấp nhận dung sai về pixel càng lớn thì độ tin cậy của kết quả càng giảm. (Mình đang test ở mức co về 90%)
    Cách làm thì mình biết mình đang đi đường vòng nên k0 post . Nhân tiện xin ý kiến Pro nào có phương hướng tối ưu chỉ dẫn mình vụ này với nhé
    Mã (Text):
        ;tạo bitmap ảnh chụp màn hình
    bmpHaystack := Gdip_BitmapFromHWND(vhwnd)
        ; lưu bit map thành file .png
    Gdip_SaveBitmapToFile(bmpHaystack,"Haystack.png")
     
  20. duong22112020

    duong22112020 Thành viên mới
    • 1/6

    Tham gia ngày:
    22/11/20
    Bài viết:
    1
    Đã được thích:
    0
    Với những người thường xuyên bận rộn với một núi công việc, có quá nhiều thứ phải làm mà bản thân không phải “ba đầu sáu tay”, trở về nhà chỉ muốn việc nhà đã tươm tất, hưởng thụ những phút giây thư giãn nhất thì thuê người giúp việc là lựa chọn lý tưởng. Tuy nhiên, dù cần người gấp đến đâu bạn cũng tuyệt đối không nên vội vã thuê “bừa” một người giúp việc…

    Xã hội phát triển, đời sống ngày càng được nâng cao đồng nghĩa với việc nhiều gia đình có nhu cầu cần người “gánh bớt” những “công việc không tên” trong nhà. Bởi, với một ngày làm việc mệt mỏi, áp lực, chưa kể có những đầu việc phải mang về nhà để giải quyết thì không một ai muốn “phân thân” để đảm nhận một số việc nhà đơn giản nhưng chiếm khá nhiều thời gian của bản thân. Vậy nên, việc tìm một người san sẻ gánh nặng này là điều dễ hiểu. Cũng chính từ đó mà các loại hình dịch vụ môi giới, cho thuê người giúp việc ra đời. Nhưng, để thuê được người giúp việc tử tế thì lại là một bài toán khó giải nếu bạn không đi đúng cách.

    Trong trường hợp bạn được người thân quen giới thiệu, hiểu rõ về người sắp làm cho gia đình mình thì không có gì để bàn bạc. Tuy nhiên, có những gia đình sẽ phải tìm kiếm một người làm hoàn toàn xa lạ và bắt đầu công cuộc thích nghi ngay từ những thứ nhỏ nhất, may mắn thì gặp được người tốt, không may thì không chỉ mất tiền, mất của mà còn hao tâm khổ tứ, xáo trộn cuộc sống của cả nhà. Vậy nên, thuê người giúp việc tốt không đơn giản như nhiều người vẫn nghĩ.

    Thuê người giúp việc nhanh, cần người giúp việc gấp không có nghĩa là nhanh nhanh chóng chóng tìm kiếm trên các trang mạng không uy tín, trong một bài đăng vội vã hay qua những tờ rơi, qua “cò mồi” đắt đỏ mà không rõ người đó đến từ đâu. Việc làm này chỉ khiến bạn không những chẳng thể chọn được người tử tế, mà còn khiến bạn hoang mang chưa biết nên chọn như thế nào cho đúng. Tâm lý chung của các gia chủ khi đi tìm người giúp việc là muốn họ sẽ tử tế, gắn bó lâu dài và làm được việc, vậy nên việc thuê “bừa” một người phụ giúp việc nhà khi đang cần gấp là một quyết định chẳng mấy sáng suốt. Muốn thuê được giúp việc tử tế, nhanh chóng, bạn cần biết đúng cách!

    Cách ở đây đó chính là nếu không có người thân quen giới thiệu, nhờ cậy được bạn bè hay họ hàng xa thì lựa chọn các trung tâm, công ty giới thiệu người giúp việc uy tín là điều nhất định bạn cần biết. Với những địa chỉ như thế này bạn có thể thoải mái lựa chọn người giúp việc phù hợp với các yêu cầu của gia đình mình, có thể là giúp việc trông trẻ, giúp việc nhà, chăm sóc người già, người bệnh hay giúp việc theo giờ...

    Nguồn: 24h.com.vn/thi-truong-24h/tranh-thue-giup-viec-bua-trong-khi-can-nguoi-giup-viec-gap-c341a1173333.html
     

Chia sẻ trang này

Đang tải...