Repository navigation
Releases: LSwzx/OML-project
Releases · LSwzx/OML-project
Release list
OML v1.2.0
OML 1.2.0
本版是界面一致性与可维护性更新:全局弹窗换成 WPF-UI 深色组件,并补齐诊断导出、更新校验与更新源切换。
界面
- 全局弹窗重构:确认、提示、错误与三选一弹窗全部使用 WPF-UI
ContentDialog,
深色背景、圆角按钮、品牌绿主按钮;原生MessageBox已全部移除 - 更新提示条内嵌下载进度条,下载百分比直接显示,不再弹出额外窗口
诊断
- 设置页新增「导出诊断日志」:打包启动器日志、游戏
latest.log、最近崩溃报告、
系统环境、Java 路径/版本与脱敏后的launcher_config.json - 令牌字段(accessToken / refreshToken / secret)递归替换为
***
更新
- 下载完成后校验更新包 SHA-256(缺失时退回大小校验),损坏包删除并提示
「更新包下载损坏,请检查网络后重试」 - 更新源可切换:GitHub / 自定义 / 镜像,设置页直接填地址,切换后下一次检查立即生效
- 锁冲突重试与「可能有另一个更新进程正在运行」提示保留
安装
OML-win-1.2.0-Installer.exe:带目录选择的安装向导(推荐)OML-win-1.2.0-Portable.zip:免安装,解压即用- 安装版自动更新源(
releases.win.json+*.nupkg)已附带
验证
- 构建 0 警告 0 错误;离线自检 194 项通过
- 安装包 / 便携版均通过
--smoke启动检查 - 弹窗使用
--dialog-test离屏截图确认深色样式
OML v1.1.4
OML 1.1.4
本版是修复 1.1.2 → 1.1.3 自动更新失败问题的补丁版本。
修复
- 修复更新时报
Failed to acquire exclusive lock file. Is another operation currently running?:
Velopack 的独占锁被另一个实例或残留Update.exe占用时,不再直接失败,而是
自动等待并重试(5/10/15/20/25 秒,合计约 75 秒),期间更新条显示等待状态 - 按安装目录限制单实例:重复启动会提示「OML 已在运行」并退出,从根源上避免两个进程同时更新
- 重试仍失败时给出中文指引:关闭所有 OML 窗口后重试
验证
- 构建 0 警告 0 错误,离线自检 190 项通过
- 双开测试:第二个实例弹出「OML 已在运行」,第一个实例保持正常
- 安装包 / 便携版均通过
--smoke启动检查
安装
OML-win-1.1.4-Installer.exe:带目录选择的安装向导(推荐)OML-win-1.1.4-Portable.zip:免安装,解压即用- 安装版自动更新源(
releases.win.json+*.nupkg)已附带
如果你在更新时遇到锁冲突,请关闭所有 OML 窗口后重试;仍失败可重启电脑释放锁。
OML v1.1.3
OML 1.1.3
本版加入基岩版支持,并合入社区 PR、下载稳定性修复与文档/许可证更新。
基岩版(新)
- 通过 Microsoft Store 解析正式版 / Preview 安装包,复用多线程下载引擎
Add-AppxPackage静默安装主包与依赖(VCLibs 等),无需管理员权限- 启动前校验
entitlements/mcstore中的product_minecraft_bedrock,未购买会明确提示 - 通过
shell:appsFolder\<PackageFamilyName>!App激活游戏 - 主页基岩卡片显示本地版本;未安装时点击即下载安装,进度进入全局任务栏
下载与任务
- 30 秒读取超时 + 最多 3 次重试,指数退避 2s → 4s → 8s
- 重试日志写入日志面板,状态栏显示「正在重试下载 (n/3)…」
- 最终失败输出 URL、原因、状态码、目标路径;批量失败可点击「查看详情」
- 60 秒无进度的下载任务会被看门狗自动中断并提示
合并社区 PR
- 原子写入与进度上报去重、OptiFine 安装逻辑重构
- 配置字段
autoCheckUpdates/maxDownloadConcurrency持久化 - 默认游戏目录解析修复、整合包路径加固
- 新增 CI:每次 push / PR 自动构建并运行离线自检
文档与许可
- 许可证切换为 GPL-3.0-only(v1.0.2 之前的版本为 MIT)
- 新增多语言 README:简繁中文、文言、英式/美式英语、法语、德语、俄语
- README 增加免责声明:与 Mojang / Microsoft 无关联
安装
OML-win-1.1.3-Installer.exe:带目录选择的安装向导(推荐)OML-win-1.1.3-Portable.zip:免安装,解压即用- 安装版支持自动更新(
releases.win.json+*.nupkg已附带)
验证
- 构建 0 警告 0 错误;离线自检 190 项通过
- Store 解析实测:正式版 1.21.11401.0,Preview 1.21.12020.0
OML v1.1.2
OML 1.1.2
本次加入自动更新,并修复了在 PCL2 已有游戏目录下的兼容性与误重装问题。
自动更新(安装版)
- 启动后静默检查新版本(可在 设置 → 启动时自动检查更新 关闭)
- 发现新版本时窗口顶部显示提示条,点击「后台下载并重启更新」即可升级
- 更新源为本次 Release 附带的
releases.win.json、assets.win.json与OML-1.1.2-full.nupkg - 便携版不支持自动更新,请手动替换
PCL2 / 第三方目录兼容
- 版本扫描不再静默跳过坏 JSON:主页显示「共扫描到 X 个版本,跳过 Y 个」,点击可查看具体异常
- 扫描容错:注释、尾逗号、字段大小写、未知字段、
+0000时间戳都能正确解析 - 已验证 PCL2 目录可识别全部 14 个版本(Forge / Fabric / NeoForge / OptiFine)
不再覆盖已有版本
- 只要
versions/<id>/<id>.json能解析,启动与安装都进入增量修复模式:不写安装标记、不清理、不覆盖 JSON/jar,只补缺失的依赖与资源 - 只有 JSON 缺失或彻底损坏时才会走全新安装
修复启动失败
- 修复 OptiFine / 第三方安装器生成的库没有 downloads/url 时被漏出 classpath,导致
ClassNotFoundException: net.minecraft.launchwrapper.Launch - 实测
1.21.1-OptiFine_J1、1.21.1-Fabric 0.19.5均可从 PCL 目录直接启动
其他
- 启动器图标换成 OML 洋葱 Logo,exe、窗口、安装向导统一
验证
- 自动更新链路实测:安装 1.1.2 → 指向本地 1.1.3 更新源 → 自动下载并重启,
sq.version与文件版本均变为 1.1.3 - 离线自检 179 项通过
OML v1.1.1
OML 1.1.1
本次是 1.1.0 之后的稳定性与体验修复版本,重点解决深色主题可读性、Java 自动补全和下载流程。
界面
- 修复深色主题下大量「深灰底 + 黑字」的问题:账号、设置、下载等页面的说明文字、列表项、弹窗文字统一为浅色
- 下载页改为 PCL 式向导:进入只看到版本列表与搜索框,点击版本弹出附件面板(Forge 版本下拉 / Fabric / OptiFine),确认后关闭面板
启动
- 每次启动前清空日志面板,只显示本次启动的输出
- 32 位 Java 且内存设置超过 2048MB 时,启动前直接拦截并弹窗说明,不再让 JVM 抛 Invalid maximum heap size
- 启动前自动补 Java:缺少运行时或版本过低时自动下载对应组件,进度显示在全局状态栏,下载完成自动继续启动
- 修复配置里残留旧 Java(例如为 1.20 下载的 Java 17)导致 1.21 启动报 UnsupportedClassVersionError:配置路径现在会校验主版本
- 只有自动下载失败时才提示手动指定 Java 路径
下载
- 下载统一补齐完整游戏资源(Assets),不再提供开关;原版 + 加载器 + 资源打包为一个后台任务
- 下载底层加固,解决 The SSL connection could not be established:
- 显式启用 TLS 1.2 / 1.3
- 自动使用系统代理(加速器 / VPN 场景)
- 证书链不完整时用服务器中间证书与 Windows 根存储重建验证,不无条件信任未知根
安装
- 安装包与便携版命名沿用 OML-win-<版本>-Installer.exe / Portable.zip
- 安装向导支持选择目录,卸载保留配置与存档
说明
- 本版本 Release 只提供安装包与便携版两个文件,未附带 Velopack 更新源
- 1.20.1 使用 java-runtime-gamma(17),1.21.1 会自动下载并使用 java-runtime-delta(21)
OML v1.1.0
OML 1.1.0 正式版
本次是 OML 的第一个正式版本,重点在界面重做与内容生态(资源、光影、整合包)的补齐。
界面
- 全新的三栏主界面:左侧导航与全局任务卡片,中间 Java/基岩平台卡片与可折叠启动日志,右侧账号、3D 皮肤预览与启动按钮
- 主题色改为 Modrinth 绿,控件统一圆角,深色主题下按钮对比度修正
- 版本选择改为点击大字弹出列表,直接看到本地所有版本与整合包实例
- 选择基岩版时启动按钮文字随之切换;未接入运行时会给出明确提示,而不是静默失败
3D 皮肤预览
- 接入 WPF-Minecraft-Skin-Viewer(MIT):支持 Slim/Classic 模型与双层皮肤(帽子、袖子)
- 拖动可旋转,空闲后自动旋转
- 离线账号与无皮肤用户使用内置 Steve 皮肤(编入程序集资源,单文件发布可用)
内容
- Modrinth 依赖递归解析:required 依赖会以树状结构展示,可一键连同本体下载
- 光影分类:搜索、详情、下载到 shaderpacks
- 整合包:解析 .mrpack 的 modrinth.index.json,自动安装对应版本与加载器、写入 overrides 与模组
- 整合包实例独立命名(versions/--),不再与加载器版本目录冲突
- 实例元数据(instance.json)与本地图标缓存,断网时主页仍能显示名称与图标
可靠性
- 安装原子性:安装前写 .installing 标记,成功后删除;启动时自动清理中断留下的半成品(保留 mods/存档/配置)
- 全局任务队列:安装与下载切页不中断,支持取消与失败重试
- 安装/下载进度的全局状态条,失败时变红并可重试
安装与更新
- 新增 NSIS 安装向导:安装时可选择目录(Velopack 自带的 Setup/MSI 都没有目录页)
- 继续提供便携版 zip,解压即用
- Velopack 自动更新框架保留,后续版本会在发布资产中附带更新源
其他
- 单文件发布:约 71MB 的自包含 exe,无需安装 .NET 运行时
- 配置迁移到 %AppData%\OML,避免卸载安装目录时误删配置
- 日志面板、Java 探测、自动下载 Java、检查更新等细节补全
完整变更见提交历史。
OML v1.0.0-Alpha
安装说明
- OML-win-Installer.exe:带目录选择页的安装向导(需要自定义安装路径时用这个)
- OML-win-Portable.zip:免安装,解压即用
本次内容(首个测试版)
- 版本管理:在线安装原版 / Fabric / Forge,版本隔离(每个实例独立的 mods、config、存档)
- 资源页:Modrinth 模组、光影、整合包;依赖树递归解析(required 依赖会自动列出并一起下载)
- 整合包:解析 .mrpack 的 modrinth.index.json,自动装对应版本与加载器,写入 instance.json 元数据
- 启动:离线账号、LittleSkin(Yggdrasil)登录,配置 DPAPI 加密
- 任务队列:安装/下载切页不中断,支持取消与失败重试
- 自动更新:Velopack,启动时静默检查,窗口顶部提示后一键下载并重启
- 安装原子性:中断的安装会留下 .installing 标记,下次启动自动清理
已知限制
- 微软正版登录暂未开放(等待 Mojang 应用白名单审核)
- Forge 启动需要完整资源,建议安装时勾选“补全资源文件”
- OptiFine 仅支持导入官方安装包(其安装器没有静默参数)
- 安装到 Program Files 会导致自动更新失败(更新以当前用户身份写入),向导会拒绝不可写目录
升级方式
已安装旧版本的用户无需手动下载:启动器会自动检测到新版本并在顶部提示。