Skip to content
/ scl Public
forked from Steve-xmh/scl

SharpCraftLauncher —— A super light, fast, clean minecraft launcher framework written in rust. 一个用 Rust 编写的无比轻量的,迅速的,简洁的启动器的附属框架们。

License

Notifications You must be signed in to change notification settings

FTS427/scl

 
 

Repository files navigation

scl-core logo

Sharp Craft Launcher Open Source Project

一个无比轻量,迅速,简洁的启动器的附属框架,包括启动器核心库,启动器组件库,启动器 WebView 框架还有更多!

预览图

使用 Rust 编程语言编写,内存占用相当之小,性能相当之优秀,针对二进制大小做了力所能及的压缩优化。

原生跨平台,支持 Windows,Linux,MacOS 三大主流操作系统。

源代码架构

  • scl-core: 启动器核心库,包含了游戏启动,游戏下载,正版登录,模组下载等游戏操作功能
  • scl-webview: 启动器 WebView 网页浏览器库,提供了用于微软正版登录的浏览器窗口
  • scl-macro: 启动器过程宏库,包含了部分用于代码生成的过程宏代码,目前包含图标代码生成的简易过程宏
  • scl-gui-animation: 启动器图形页面动画函数库,包含了一些方便用来制作非线性动画的函数和工具类
  • scl-gui-widgets: 启动器图形页面组件库,基于 Druid 框架,提供了大量基于 WinUI3 设计规范制作的图形页面组件

关于开源协议和代码协作协议

结合 Rust 本身的单执行文件特性,本 SCL 项目使用 LGPL 3.0 开源协议 并免除静态链接的限制,详情可以查阅 COPYING 或者 参考译文

使用简单的说就是,你可以以静态链接本项目的库而不需要开放源代码。

考虑到 SCL 的自身开发情况,如果你需要贡献代码到本仓库,你将默认无条件同意 SteveXMH 使用你所贡献的代码盈利且不可撤销,盈利方式包括但不限于:爱发电支持,微信支付宝等。

故如果同意本贡献协议,请在第一次提交 PR 时在备注中写明以下文字(可复制粘贴,请将[Github账户ID]更换成自己的 Github 账户 ID):

[Github账户ID]无条件同意[SteveXMH](https://github.com/Steve-xmh)使用[Github账户ID]所贡献的代码以任何形式盈利且不会撤销。

版本计划表

1.0 计划表

  • 1.6 的纯净版本支持
  • 1.6 的第三方版本支持
  • 1.6 游戏下载
  • 游戏版本高级设置及其它选项
    • 模组管理
    • 自定义启动参数
  • 1.6 Curseforge 模组下载
  • Modrinth 模组下载
  • 离线登录
  • 正版登录(Mojang)
  • 正版登录(Microsoft)
  • 第三方登录(统一通行证)
  • 第三方登录(Authlib-Injector)
  • 更换下载源(BMCLAPI MCBBS MC)
  • 多 .minecraft 文件夹
  • MacOS 支持
  • 代码结构优化(目前代码还是很乱,命名也不太规范)
  • 可视化主题设置(因 Druid 的内存泄露 BUG 无期限推迟此功能)

2.0 计划表

  • 移植 UI 到 FLTK-RS
  • Linux 使用 MUSL 编译
  • Linux 只留一个 Webkit2GTK 依赖或做成动态导入
  • 可视化主题设置
  • 后台任务可中断
  • 应用程序体积优化

与 SCL 有关联的项目

这里列出了由作者自行开发/二次开发的一些项目,它们都将计划用在 SCL 启动器的开发中。一部分项目使用的是更加宽松甚至是 CC0 的开源共享协议,所以请随意使用吧!

  • optifine-installer: 一个可安装几乎所有 1.7.2 Optifine 的命令行安装器模块,支持指定安装的版本名称,可以用于启动器的 Optifine 安装自动化。使用 CC0 开源协议开源。
  • forge-install-bootstrapper: 一个基于 bangbang93/forge-install-bootstrapper 的改版,目的是支持 Forge 全部版本安装器的自动化安装(自 1.5.2 以来的任何提供安装器的版本)
  • alhc: 一个正在开发中的轻量级系统异步 HTTP 客户端框架,通过调用系统自带的框架实现 HTTP 请求并实现异步

支持

作者自 2021 年 1 月开始做到了现在的项目,喜欢的话请给一个 Star 吧!

如果有能力的话,来爱发电为我发电支持吧

About

SharpCraftLauncher —— A super light, fast, clean minecraft launcher framework written in rust. 一个用 Rust 编写的无比轻量的,迅速的,简洁的启动器的附属框架们。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 100.0%