Thứ Hai, 10 tháng 5, 2021

Hướng dẫn cách boost skin Aram cho team miễn phí bằng lệnh Batch

Hướng dẫn cách boost skin Aram cho team miễn phí bằng lệnh Batch

Mình là một main Aram! phải nói thật là thế và mình cũng hay tọc mạch tìm hiểu linh tinh bài gần nhất của mình đó là "Auto pick lol"- Auto pick lock yasuo - Bạn nào chưa đọc thì có thể xem nhé.

Trước kia mỗi lần đánh Aram thi thoảng sẽ gặp 1 vài đứa mình gọi là "đại gia" hay buff skin bằng rp cho mọi người, thấy hâm mộ vcc,team thì khen lấy khen để đòi kết bạn với thằng đó để chơi cùng nó nó boost dùng skin free cho.

Cho những ai chưa biết: Chức năng "Khích lệ chiến đấu ARAM" thông thường sẽ tốn 40RP. Cả team sẽ chọn được skin ngẫu nhiên của tướng đã pick, tất nhiên là mỗi người mỗi khác skin nếu swap tướng cho nhau. Kết thúc trận thì người boost sẽ nhận thêm 200 tinh hoa lam.

  • Dùng tool sẽ không tiêu tốn RP.
  • Khả năng bị ban là không thể, nhưng mà ngứa mắt quá thì người ta vẫn có lý do để cho bạn ra đảo.
  • Việc lạm dụng quá chắc chắn sẽ bị fix sớm, chỉ nên dùng khi không có skin thôi nhé

Nhưng sau này dần dần mình đã tìm hiểu ra đó là Liên minh huyền thoại có một tool gọi là tool "Boost skin Aram" - tool này đã xuất hiện từ lâu nhưng chưa công khai trên mạng nhiều và chỉ có một số ít người có để sử dụng. Hôm nay mình sẽ chia sẻ tool đó cho các bạn (Mình sẽ share cách làm đơn giản nhất ở phần đầu cho những bạn mới  - và cụ thể hơn ở đằng sau cho những bạn cần vọc vạch tìm hiểu sâu ).

1. Cách tải Tool và hướng dẫn sử dụng

Bước 1: Các bạn tải file code ở đây nhé: Link Github | Link Driver

Đối với link GiHub thì các bạn vào "code > dowload Zip" nhé còn google driver thì mình ko cần hd nữa
Bước 2: Giải nén file ra đảm bảo cài đặt file curl.exe trong curl.zip và sao chép vào C: \ Windows \ System32 \
Bước 3: Khởi động LOL vào 1 trận Aram và trong lúc cd time màn hình swaps tướng thì hãy bật file Aram- bosster.bat lên (nhớ là bằng quyền Run As Administrator). Ví dụ như ảnh bên dưới:

Sau khi khởi động file Aram- bosster.bat sẽ tự động tắt sau 5s.

Bước 4: Thưởng thức game. 
Và tiếp theo mình sẽ phân tích cụ thể về cách tạo tool cho bạn nào thích vọc vạch sâu nhé. Bạn nào thích cơ bản thì chỉ cần đọc đến đây thôi. ☺☺☺☺

2. Giải thích Tool và tự tạo file 

Đầu tiên là tạo một file có tên aram-booster.bat. 

Bạn nào chưa biết tạo file .bat có thể tạo một file .text bằng notepad nhé. Sau đó các bạn mở file đó lên chọn Save Ass và điền tên file xoá .txt và thay vào là .bat chú ý là chỉnh về all file như hình bên dưới.


@echo off & setlocal endlocal

Lấy port và Auth token:

$ WMIC PROCESS WHERE name='LeagueClientUx.exe' GET commandline

Output của WMIC chứa toàn bộ commandline và vài dòng thừa, vì vậy phải tách ra và lưu nó vào biến.

@echo off & setlocal

for /f "tokens=* USEBACKQ" %%a in (
    `"WMIC PROCESS WHERE name='LeagueClientUx.exe' GET commandline | findstr ."`
) do set cmdline=%%a
  • USEBACKQ để for có thể đọc cả khoảng trắng và xuống dòng
  • Kết hợp findstr . để gom hết ouput của WMIC thành một

Khi for chạy sẽ đọc qua từng dòng, khi đó dòng cuối cùng chứa commandline sẽ được lưu vào biến cmdline.

Tiếp theo là tách port và auth token:

) do set cmdline=%%afor %%a in (%cmdline%) do ( for /f "tokens=1,2 delims==" %%i in (%%a) do ( if "%%i"=="--app-port" set "port=%%j" if "%%i"=="--remoting-auth-token" set "pass=%%j" ) )

  • For thứ nhất sẽ đọc qua từng argument
  • For thứ hai sẽ split argument
  • Hai dòng if để lấy port và pass

Trong trường hợp League Client chưa được mở sẵn hoặc script không được cấp quyền Admin thì biến port chắc chắn chưa được định nghĩa, ta sẽ báo lỗi:

if not defined port goto :err
endlocal

Và label :err

:err
echo Failed to boost!
echo Please make sure League Client is opened,
echo    and run script again as Administrator.
endlocal

Mình thêm một label :end để dừng thoát và kết thúc

:end
timeout /t 5 /nobreak
endlocal

Khi request thành công, response trả về JSON có dạng:

{"body": ... }

Mình sẽ cho curl vào for để lấy response:

for /f "tokens=* USEBACKQ" %%a in (
    `curl -s -g -k -X POST -u riot:%pass% ^
        https://127.0.0.1:%port%/lol-login/v1/session/invoke ^
        -d "destination=lcdsServiceProxy" ^
        -d "method=call" ^
        -d "args=["""",""teambuilder-draft"",""activateBattleBoostV1"",""""]"`
) do set "resp=%%a"

:err

  • -s để bật silent mode, curl chỉ trả về duy nhất response
  • Response sẽ được lưu trong biến resp

Tiến hành kiểm tra response và hiện thông báo:

) do set "resp=%%a"

set success={"body"
if defined %resp% (
    if "%resp:~0,7%"=="%success%" (
        color A
        echo Your game is BOOSTED!
        goto :end
    )
)

  • Lệnh if ngoài sẽ kiểm tra biến resp được định nghĩa hay chưa
  • Lệnh if bên trong kiểm tra response
  • Biến success chứa pattern của response hợp lệ, do không dùng được dấu nháy kép trong if nên mình tách nó ra
  • Nếu thành công thì ta nhảy đến end luôn

Giờ thì tạo một trận ARAM và test thử để cả team cùng vui thôi nào! 

Previous Post
Next Post

post written by: