SquareLine辅助工具

一个妙妙工具, 不要试图用它替换任何文件!!!
和SquareLine_Studio.exe放在一起,版本为1.5.2.

登录之后才会有效果

1 个赞

链接:文件分享 密码:114514

谢谢分享,自己弄的吗
还是某个地方搞的

我写的, 原理比较简单所以没有源码.

牛B啊
希望以后版本可以继续抱大腿 :heart_eyes:

使用frida-il2cpp-bridge重写的版本:

import "frida-il2cpp-bridge"

Il2Cpp.perform(() => {
    const GameAssembly = Il2Cpp.domain.assembly("Assembly-CSharp").image;
    const ProjectManager = GameAssembly.class("ProjectManager");
    const ApplicationSettings = GameAssembly.class("ApplicationSettings");
    const FrontDisplayManager = GameAssembly.class("FrontDisplayManager");
    const LoadProjectAsync = ProjectManager.method<void>("LoadProjectAsync");

    // @ts-ignore
    LoadProjectAsync.implementation = function (value: Il2Cpp.String): void {
        // console.log("123");
        const max_value = 114514;
        ApplicationSettings.field<number>("MAX_WIDTH").value = max_value;
        ApplicationSettings.field<number>("MAX_HEIGHT").value = max_value;

        FrontDisplayManager.field<number>("PERSONAL_MAX_SCREENS").value = max_value;
        FrontDisplayManager.field<number>("PERSONAL_MAX_WIDGETS").value = max_value;
        FrontDisplayManager.field<number>("PERSONAL_MAX_COMPONENTS").value = max_value;
        FrontDisplayManager.field<number>("SMALL_BUSINESS_MAX_COMPONENTS").value = max_value;
        FrontDisplayManager.field<number>("BUSINESS_MAX_SCREENS").value = max_value;
        FrontDisplayManager.field<number>("BUSINESS_MAX_WIDGETS").value = max_value;
        FrontDisplayManager.field<number>("BUSINESS_MAX_COMPONENTS").value = max_value;
        FrontDisplayManager.field<number>("TRIAL_MAX_COMPONENTS").value = max_value;
        FrontDisplayManager.field<number>("TRIAL_MAX_THEMES").value = max_value;
        FrontDisplayManager.field<number>("PERSONAL_MAX_THEMES").value = max_value;
        FrontDisplayManager.field<number>("SMALL_BUSINESS_MAX_THEMES").value = max_value;
        FrontDisplayManager.field<number>("BUSINESS_MAX_THEMES").value = max_value;
        FrontDisplayManager.field<number>("TRIAL_MAX_THEME_COLORS").value = max_value;
        FrontDisplayManager.field<number>("PERSONAL_MAX_THEME_COLORS").value = max_value;
        FrontDisplayManager.field<number>("SMALL_BUSINESS_MAX_THEME_COLORS").value = max_value;
        FrontDisplayManager.field<number>("BUSINESS_MAX_THEME_COLORS").value = max_value;

        this.method("LoadProjectAsync").invoke(value);
    };
});

使用前必须先用pip安装frida-tools,和frida.
build后使用以下命令启动:

frida -l <脚本路径> --runtime=v8 -f <你的程序路径>

现成的脚本:

大佬,1.5.3好像用不了,能更新吗

用frida的版本吧, 手动适配太麻烦了

1 个赞

感谢老哥,已经用上frida版本,能不能再辛苦一下,大佬解决一下字体导出8bpp的限制 :+1:

lvgl仅支持bpp为1/2/4/8的字体

是的,但是个人版的squareline只支持到处1/2/4bpp的字体,8bpp不让导出,必须花钱才行


我这里测试8bpp, 好像没这个限制