~ 3 min read

League AI được phát triển như nào?

How was League AI developed?

Đây là gì?

  • Đây là nhật ký phát triển của League AI, ở đây tôi mô tả các công nghệ được sử dụng đằng sau hậu trường. Như đã mô tả, sản phẩm này tôi sử dụng để học tập, thử công nghệ mới và để tập tành làm sản phẩm production. Mặc dù đã thử hết các cách có thể nhưng vẫn còn khá sơ sài 🥲.

  • Lời cảm ơn tới Skinz3, tôi tham khảo API từ nguồn này rất nhiều.

  • Cảm ơn các bạn - những người sử dụng phần mềm đã góp phần báo cáo lỗi để tôi có thể làm cho nó hoàn thiện hơn.

Các thành phần chính

  • Github CI/CD: Phần này là mục tiêu chính khi tôi phát triển. Toàn bộ quy trình phát triển từ viết mã nguồn, dựng chương trình và triển khai đều được tổ chức trên github, sử dụng github action để build và triển khai. Các keyword liên quan: Gitflow Workflow, Release tag Github. Việc tôi cần làm rất đơn giản là đánh tag và đẩy lên github, sau đó quy trình tự động hoá sẽ làm tất các việc còn lại…

  • Các bước chạy tuần tự khi release tới tay người sử dụng bao gồm: build trên windows os -> mã hoá source -> ký mã -> tạo release để đẩy lên kho lưu trữ -> đăng ký sản phẩm lên server -> cập nhật máy chủ.

Những gì tôi đạt được khi làm dự án này.

  • Hiểu biết về CI/CD trên github, có thể nói sau khi vọc vạch về mảng này, tôi tự tin có thể vận hành được một hệ thống hoạt động trên github 😎

  • Sự hiểu biết về chứng chỉ cây, chứng chỉ tự ký và cách thực hiện ký số, xác thực ký điện tử. Mã hoá, giải mã dữ liệu, thậm trí tôi còn làm quá trình giống như viết lại cách hoạt động của https…

  • Hiểu biết về cách Antivirus hoạt động: 🤣 để bypass các cách thức quét của các phần mềm diệt virus, khiến tôi mò mẫm trên mạng đủ các cách thức nhằm vượt qua nó, mặc dù kết quả chưa khả quan lắm, nhưng để làm một phần mềm hoàn hảo bypass hết thì có lẽ đã có cách. Bước quan trọng nhất có lẽ là mua được chứng chỉ ký app.

  • Obfuscator: Sau khi làm tôi có một kiến thức khá rộng về mảng này, có lẽ chưa đủ level để làm một Reverse Engineer. Nhưng những gì mà nó mang lại cho tôi như mở ra một bầu trời kiến thức mới 😂

  • Windows API: Hiểu biết về API trong user32.dll để thao tác giả lập bàn phím và chuột, không mang lại nhiều lợi ích như tôi tưởng, mặc dù có thể thao tác được với hệ thống bên dưới, nhưng những vấn đề về nó đa phần đã được giải quyết.

  • Tìm được một đống tài nguyên về Leagues of Legends: Danh sách API này được sử dụng trong game và portal client của riot. Thời điểm hiện tại đã bị ẩn đi, nhưng vẫn còn sử dụng được.