DropOut
English | 中文
DropOut 是一个现代的、可复现的、开发者级别的 Minecraft 启动器。 它不仅仅是为了启动 Minecraft 而设计的,而是将 Minecraft 环境作为确定性的、版本化的工作空间进行管理。
DropOut 使用 Tauri v2 构建,DropOut 提供原生性能和最小资源使用,并配有现代响应式 Web UI(基于 React 19、shadcn/ui 和 Tailwind CSS 4 构建)。
Minecraft 环境是一个复杂的系统。 DropOut 将它们视为软件项目。
为什么选择 DropOut?
大多数 Minecraft 启动器专注于让你进入游戏。 DropOut 专注于保持你的游戏稳定、可调试和可重现。
-
整合包昨天还能游玩,今天却坏了? → DropOut 让它可追溯。
-
分享模组包意味着压缩数 GB 的文件? → DropOut 分享精确的依赖清单。
-
Java、加载器、模组、配置不同步? → DropOut 将它们锁定在一起。
这个启动器是为重视控制、透明度和长期稳定性的玩家构建的。
功能特性
- 高性能:使用 Rust 和 Tauri 构建,实现最小资源使用和快速启动时间。
- 现代工业 UI:使用 React 19、shadcn/ui 和 Tailwind CSS 4 设计的干净、无干扰界面。
- Microsoft 认证:通过官方 Xbox Live 和 Microsoft OAuth 流程(设备代码流程)提供安全登录支持。
- 模组加载器支持:
- Fabric:内置安装程序和版本管理。
- Forge:支持安装和启动 Forge 版本。
- Java 管理:
- 自动检测已安装的 Java 版本。
- 内置 Adoptium JDK/JRE 下载器。
- GitHub 集成:直接从启动器主页查看最新的项目更新和变更日志。
- 游戏管理:
- 完整的版本隔离。
- 高效的并发资产和库下载。
- 可自定义的内存分配和分辨率设置。
路线图
- [x] 账户持久化 — 在会话之间保存登录状态
- [x] 令牌刷新 — 自动刷新过期的 Microsoft 令牌
- [x] JVM 参数解析 — 完全支持
arguments.jvm和arguments.game解析 - [x] Java 自动检测和下载 — 扫描系统并下载 Java 运行时
- [x] Fabric 加载器支持 — 使用 Fabric 安装和启动
- [x] Forge 加载器支持 — 使用 Forge 安装和启动
- [x] GitHub 发布集成 — 在应用内查看变更日志
- [ ] [WIP]实例/配置文件系统 — 多个隔离的游戏目录,具有不同的版本/模组
- [ ] 多账户支持 — 在多个账户之间无缝切换
- [ ] 自定义游戏目录 — 允许用户选择游戏文件位置
- [ ] 启动器自动更新 — 通过 Tauri 更新插件的自更新机制
- [ ] 模组管理器 — 直接在启动器中启用/禁用模组
- [ ] 从其他启动器导入 — MultiMC/Prism 配置的迁移工具
安装
从 Releases 页面下载适用于您平台的最新版本。
| 平台 | 文件 |
|---|---|
| Linux x86_64 | .deb, .AppImage |
| Linux ARM64 | .deb, .AppImage |
| macOS ARM64 | .dmg |
| Windows x86_64 | .msi, .exe |
| Windows ARM64 | .msi, .exe |
从源码构建
先决条件
- Rust:从 rustup.rs 安装。
- Node.js 和 pnpm:用于前端依赖。
- 系统依赖:按照您的操作系统遵循 Tauri 先决条件。
步骤
- 克隆仓库
bash
git clone https://github.com/HsiangNianian/DropOut.git
cd DropOut
- 安装依赖
bash
pnpm install
- 运行开发模式
bash
# 这将启动前端服务器和 Tauri 应用窗口
cargo tauri dev
- 构建发布版本
bash
cargo tauri build
可执行文件将位于 src-tauri/target/release/。
贡献
DropOut 以长期可维护性为目标构建。 欢迎贡献,尤其在这些领域:
- 实例系统设计
- 模组兼容性工具
- UI/UX 改进
- 跨启动器迁移工具
标准的 GitHub 工作流程适用: fork → 功能分支 → 拉取请求。
许可证
根据 MIT 许可证分发。有关更多信息,请参见 LICENSE。