三国杀移动版解包求助,它的png加密了,无法读取,有没有大佬会解密的指点

33104_3.zip (4.5 MB)
我在安装包里也没有搜到libcocos2dlua.so,实在解不开,求大佬指点


这是十六进制打开后的样子

没有加密, 这只是astc的格式

大佬能教教怎么打开吗,我做spine没有这个材质

有python吗?

我安装了的

那你等会, 我写个批量转换astc为png的脚本给你

感谢大佬

from pathlib import Path
from typing import Union
from PIL.Image import frombytes as covbytes
from texture2ddecoder import decode_astc as ASTC

def SaveAstc(png: Union[Path, str]):
    with open(png, 'rb') as f:
        if f.read(4) != b'\x13\xAB\xA1\x5C':
            return
        block_x, block_y, block_z, dim_x, dim_y, dim_z = [int.from_bytes(f.read(i), byteorder='little', signed=False) for i in [1, 1, 1, 3, 3, 3]]
        image_bytes = ASTC(f.read(), dim_x, dim_y, block_x, block_y)
        image = covbytes('RGBA', (dim_x, dim_y), image_bytes, 'raw', ('BGRA'))
    image.save(png.as_posix() if png.suffix.endswith('.png') else png.parent.joinpath(f'{png.stem}.png').as_posix(), format='PNG')

def batch(png_path: str = '', ext: str = '*.png', subfolder: bool = False):
    path = Path(png_path) if png_path else Path.cwd()
    need = [i for i in (path.rglob(ext) if subfolder else path.glob(ext))]
    for i in need:
        SaveAstc(i)

if __name__ == '__main__':
    path = r'D:\测试' # 指定png所在文件夹
    ext = '*.png' # 指定要转换的文件类型后缀
    subfolder = True # 是否查找子文件夹内的文件
    batch(path, ext, subfolder)

你修改path变量就行

大佬,我打开它就直接闪退了,是不是要安装pil库呢

pip install texture2ddecoder 
pip install Pillow

单个文件转换成png
tacentview.exe -c “{文件路径}” -o png
当前目录中的astc转换成png,不支持子目录
tacentview.exe -c -i astc -o png

感谢大佬帮助已经成功了