Skip to content

Instantly share code, notes, and snippets.

@nomi-san
Last active January 7, 2023 08:48
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save nomi-san/e102ea87a919c0029ef6526064a7426d to your computer and use it in GitHub Desktop.
Save nomi-san/e102ea87a919c0029ef6526064a7426d to your computer and use it in GitHub Desktop.
Mở Nhiều client LMHT (Garena) cùng một lúc

Phương pháp đầu tiên tôi tìm được là sử dụng command line của LeagueClient.exe đang chạy.

Khi khởi động LMHT, GarenaPC sẽ sinh một đoạn command line để chạy RiotClientServices.exe, trong đó có chứa GarenaPlus token và Landing token.

RiotClientServices chủ yếu để giám sát, anti cheat, nó sẽ chuyển tiếp hai token trên vào LeagueClient.exe.

Tóm lại, chỉ cần chạy trực tiếp LeagueClient.exe sẽ nhanh hơn và hạn chế bị ban một cách ngu ngốc.

Để lấy được nhiều command line cùng lúc, chỉ cần tạo một RiotClientServices.exe fake để bắt command line từ GarenaPC. Vì khi RiotClientServices hoặc LeagueClient đang chạy, GaremaPC sẽ chặn.

Từ bản 11 chấm 15 16 gì đấy không nhớ nữa, Riot đã chuyển xác thực login từ LeagueClient sang RiotClientServices, mỗi token chỉ được đăng nhập một lần. Và đây là cách mới...

Hook GarenaPC để hide 2 cái process RiotClientServices.exe và LeagueClient.exe.

Sau đó tạo IFEO debugger để add thêm command line "--allow-multiple-clients" vào RiotClientServices.exe.

@nomi-san
Copy link
Author

nomi-san commented Jan 20, 2022

Sau vài cập nhật vào cuối năm 2021 thì method thêm --allow-multiple-clients vào RCS cũng không còn tác dụng nữa.

Hiện tại có một giải pháp là sử dụng Sanboxie:

  1. Tạo một exe để fake RiotClientServices.exe, mục đích là capture command line mà GPC truyền vào.
  2. Chạy command line đó trong sandboxie. League Client sẽ được khởi chạy, nhưng do vài limit trong Sandboxie khiến cho nó không thể tương tác.
  3. Copy command line của LC trong sandbox, sau đó chạy trực tiếp bên ngoài kèm --allow-multiple-clients.
  4. Đăng nhập GPC vào một tài khoản khác và chạy LMHT.
  5. Copy command line của RCS, sau đó thêm --allow-multiple-clients.

Lưu ý: Không kill RCS và không chạy GPC trong sandbox. Có thể spawn hơn 2 tài khoản nếu bạn cùng lấy RCS command line một lúc và làm thật nhanh (token sẽ die sau ~3p).

@heroes1412
Copy link

giờ qua Riot rồi, có thể thêm shortcut "--allow-multiple-clients" vào thẳng LeagueClient.exe nhưng chỉ vào client dc thôi chứ vào game là bị báo System Error, b có cách gì để vào 2 game trên cùng 1 máy dc k

@nomi-san
Copy link
Author

nomi-san commented Jan 7, 2023

Game sử dụng duy nhất port 2999 trên localhost để giao tiếp với client và rtmp client. Bạn có thể forward port của process game thứ 2, nhưng khá phức tạp. Vd inbound ip:5678 <-> localhost:2999 thành localhost:9999, sau đó forward port trong process game qua 9999. Lý thuyết là vậy nhưng firewall lại không hỗ trợ forward trực tiếp trên process, phần mềm bên thứ 3 thì chắc chắn có. Nhưng dễ nhất vẫn là sử dụng trong môi trường ảo hoá.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment