Tut - Tool [Android] Hướng dẫn Bypass Checksum OBB cho game android engine Unity

Thảo luận trong 'Tut - Tool hướng dẫn dịch game' bắt đầu bởi _Cloud_, 12/5/19.

  1. _Cloud_

    _Cloud_ You're Breathtaking!

    55
    18
    8
    16/8/18
    Nam
    TP.HCM
    1. Yêu cầu
    - Biết xử lý với file .apk
    - Biết kỹ thuật xử lý game dùng engine Unity (tool của Unity rất nhiều nên không cần phải ngại, có thể học dễ dàng)

    2. Tool
    - Apk studio (https://github.com/vaibhavpandeyvpz/apkstudio/releases)
    - Winrar / 7zip
    - Hxd (https://mh-nexus.de/en/downloads.php?product=HxD20)
    - WinMD5 (http://www.winmd5.com/)

    3. Xử lý File

    * Trước tiên decompile không chỉnh sửa và compile lại file apk. Nếu báo lỗi thì bó tay, hiện tại chưa có cách nào để xử lý. Cảm ơn bạn Reishiki đã tìm ra lỗi này.

    - Với File Obb:
    + Giải nén bằng winrar
    + Xử lý như game unity thôi
    + Nén .zip bằng bất kỳ chế độ nào (store-fast...) chỉ có unity mới nén được như vậy, tuy nhiên nên nén sao cho dung lượng obb mới gần bằng obb gốc
    + Đổi tên cho nó giống với Obb gốc

    - Với File Apk:
    + Sau khi decompile apk bằng apk studio, tìm file settings.xml thường nó sẽ nằm trong assets/data, mở file lên
    + Nếu giống như trong hình, có 1 đoạn 32 ký tự là checksum md5 cho obb.

    [​IMG]

    + Mở file obb đã chỉnh sửa bằng Hxd
    + Lấy 65558 byte ở cuối file copy paste vào 1 file mới đặt tên là md5
    ( Video hướng dẫn)


    + Sử dụng WinMD5 check file md5 vừa mới tạo.
    (sử dụng phần mềm khác phải đảm bảo 32 ký tự là chữ thường)
    + Copy 32 ký tự mới paste vào đoạn 32 ký tự cũ trong file settings.xml
    + Build/Sign apk bằng apk studio và dùng file obb mới.
    + Vào game

    4. Nâng cao

    *Bạn nào làm không được hay bị lỗi gì đó thì cứ làm theo mục 3

    Nhận thấy cách trên mỗi lần test game với 1 obb mới phải compile apk rất mất thời gian. Mình sẽ hướng dẫn các bạn tạo 1 file apk duy nhất nhưng obb nào cũng chạy được. Đương nhiên obb của game khác, obb sai phiên bản, hoặc tạo sai obb thì không rồi.

    + Tìm tập tin UnityPlayer.smali thường thì theo đường dẫn này smali\com\unity3d\player\
    + Mở bằng notepad++
    + Tìm dòng này 0x10016
    + Sửa nó thành 0x1
    + Sửa đoạn 32 ký tự checksum trong file settings.xml thành 93b885adfe0da089cdf634904fd59f71
    + Compile apk
    + Done

    Giải thích: Thay vì check 65558 byte thì mình chỉ check 1 byte duy nhất thôi. Nếu nén zip thì phần hex cuối file sẽ là 00. Mà "lỡ" như thật ra mình cũng chưa thấy file zip nào byte cuối là hex khác cả. Bạn có thể tự thêm hex 00 vô cuối file obb.

    5. Một cách khác.

    + Cut hết những file cần edit ( font + text +... ) từ folder assets\bin\Data của obb ( cut không phải là copy )
    + Paste vào folder assets\bin\Data của apk đã decompile
    + Nén file obb mới
    + Sử dụng mục 3 để edit file settings.xml

    4 bước trên chỉ thực hiện 1 lần duy nhất.

    + Xử lý file cần edit trong apk
    + Compile apk
    + Done

    Thay vì xử lý file trong obb mình sẽ đem ra apk để xử lý. Dung lượng obb lớn hơn nhiều so với apk, để test game chỉ cần copy file apk mới là được, copy obb như 2 cách trên mất thời gian.

    Để xử lý luôn vấn đề compile apk lâu thì lúc decompile apk, bỏ hết tick như hình ( apk studio mới nhất hỗ trợ )

    [​IMG]

    Đây là phương pháp tối ưu nhất mà mình nghĩ ra được. Khuyến khích các bạn nên dùng cách này nhé.

    *Game android dùng unity rất nhiều với cách này thì các bạn không phải ngại với file obb của unity nữa.
    Chúc các bạn có thêm nhiều game android việt hóa nha.



    *NOTE:
    Đây chỉ là một thủ thuật nhỏ để các bạn xử lý được cái checksum này dễ dàng. Con số 65558 byte mình tìm thấy ở trên mạng và xem source code java của game.
    Mình sẽ cập nhật thêm phần hướng dẫn chung để xử lý game unity nếu bạn nào cần.
    Bạn nào thắc mắc phần nào thì mình sẽ giải đáp ở đây.
     
    Chỉnh sửa cuối: 15/6/19
    Bánh Dừa Miền Tây thích bài này.
  2. _Cloud_

    _Cloud_ You're Breathtaking!

    55
    18
    8
    16/8/18
    Nam
    TP.HCM
    Đã cập nhật phần Nâng Cao
     
  3. Lka

    Lka Thành viên cấp 1

    65
    30
    18
    30/10/16
    Nam
    TPHCM
    Nai xừ, giúp đỡ các bạn rất nhiều, 5 Tick V !
     
  4. Lka

    Lka Thành viên cấp 1

    65
    30
    18
    30/10/16
    Nam
    TPHCM
    5/5,
    Hay, giúp đỡ rất nhiều
     
  5. _Cloud_

    _Cloud_ You're Breathtaking!

    55
    18
    8
    16/8/18
    Nam
    TP.HCM
    Update mục 5 tiện hơn so với 2 cách cũ.
     
  6. elchevnn

    elchevnn Đừng phán xét ai cả, điều đó sẽ làm họ buồn...

    13
    5
    3
    23/6/19
    Nam
    Hà Nội
    Mà OBB là gì ta? search google nhưng thấy hơi khó hiểu ạ
     
  7. _Cloud_

    _Cloud_ You're Breathtaking!

    55
    18
    8
    16/8/18
    Nam
    TP.HCM
    Là data thêm của game
     

Chia sẻ trang này