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

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

1 个赞


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

没有加密, 这只是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

感谢大佬帮助已经成功了

请问一下,pil的问题是怎么解决的,大佬后面发的代码应该插入哪里